IP Library Granted Patent US 7,679,532
Granted Patent B2
US 7,679,532 · App. 11/559,359 · Granted Mar 16, 2010

Systems and methods for using multiple hypotheses in a visual simultaneous localization and mapping system

Assignee: Evolution Robotics, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,679,532
App. No.
11/559,359
Granted
Mar 16, 2010
Kind
B2
Abstract

The invention is related to methods and apparatus that use a visual sensor and dead reckoning sensors to process Simultaneous Localization and Mapping (SLAM). These techniques can be used in robot navigation. Advantageously, such visual techniques can be used to autonomously generate and update a map. Unlike with laser rangefinders, the visual techniques are economically practical in a wide range of applications and can be used in relatively dynamic environments, such as environments in which people move. One embodiment further advantageously uses multiple particles to maintain multiple hypotheses with respect to localization and mapping. Further advantageously, one embodiment maintains the particles in a relatively computationally-efficient manner, thereby permitting the SLAM processes to be performed in software using relatively inexpensive microprocessor-based computer systems.

Claims (46)

1. A method of localizing a mobile device via a multiple-particle autonomous localization and mapping system, the method comprising:

performing autonomous localization and mapping with a plurality of particles, where a particle includes a device pose estimate and a map, where the map includes one or more landmarks;

receiving an indication that a landmark has been recognized and a visually-measured relative pose to the landmark has been estimated, where the landmark has been recognized using visual features from a visual sensor coupled to the mobile device, where the relative pose corresponds to a visually-measured difference in pose between a landmark pose and a pose corresponding to the visual observation; and updating at least one of the plurality of particles at least partly in response to receiving the indication of the recognized landmark, wherein updating further comprises:

using a prior pose estimate and dead reckoning sensor data to compute a new pose estimate for particles in a selected group based on the estimated change in pose; and

using the landmark pose and the visually-measured relative pose estimate to compute the new pose estimate for particles not in the selected group;

wherein performing autonomous localization and mapping, receiving the indication, and updating at least one of the plurality of particles are performed by computer hardware.

2. The method as defined in claim 1 , wherein updating at least one of the plurality of particles is performed each time that a landmark is recognized.

3. The method as defined in claim 1 , wherein particles are grouped to be in the selected group or not in the selected group each time that a landmark is recognized.

4. The method as defined in claim 1 , wherein particles are independently categorized into the selected group such that a probability of one particle being categorized into the selected group is about the same as the probability of another particle being categorized into the selected group.

5. The method as defined in claim 1 , wherein using the prior pose estimate and dead reckoning sensor data to compute the new pose estimate for particles in the selected group further comprises:

using the prior pose estimate, the dead reckoning sensor data, and simulated random noise to compute a perturbed predicted pose;

using the perturbed predicted pose and the visually-measured relative pose to compute a hypothetical landmark pose;

obtaining an uncertainty measure associated with the particle based at least in part on an uncertainty measure associated with the landmark and particle and an uncertainty measure associated with the visual sensor;

computing an importance factor for the particle, where the importance factor is based at least in part on the uncertainty measure associated with the particle and a comparison between the calculated hypothetical landmark pose and a prior landmark pose estimate; and

using the perturbed predicted pose with the importance factor to calculate the new pose.

6. The method as defined in 5 , wherein the simulated random noise exhibits an uncertainty measure estimated for the dead reckoning sensor data.

7. The method as defined in 5 , wherein the prior landmark pose estimate corresponds to a most recent update of landmark pose.

8. The method as defined in claim 1 , wherein using the landmark pose estimate and the visually-measured relative pose further comprises:

using the landmark pose estimate corresponding to the landmark and the visually-measured relative pose to compute a hypothetical device pose;

perturbing the hypothetical device pose with simulated random noise;

obtaining an uncertainty measure associated with the particle based at least in part on an uncertainty measure associated with the landmark and particle and an uncertainty measure associated with the dead reckoning measurements;

computing an importance factor for the particle, where the importance factor is based at least in part on the uncertainty measure associated with the particle and a comparison between the hypothetical device pose and a prior device pose estimate and the dead reckoning sensor data; and

using the perturbed predicted pose with the importance factor to calculate the new pose.

9. The method as defined in 8 , wherein the simulated random noise exhibits an uncertainty measure estimated for a visual sensor.

10. The method as defined in 8 , where the uncertainty measure of the dead reckoning measurements corresponds to an odometer covariance matrix C odom .

11. The method as defined in claim 1 , further comprising resampling selected particles from the plurality of particles.

12. A computer program embodied in a computer-readable medium for localizing a mobile device via a multiple-particle autonomous localization and mapping system, the computer program comprising:

a module with instructions configured to perform autonomous localization and mapping with a plurality of particles, where a particle includes a device pose estimate and a map, where the map includes one or more landmarks;

a module with instructions configured to receive an indication that a landmark has been recognized and a visually-measured relative pose to the landmark has been estimated, where the landmark has been recognized using visual features from a visual sensor coupled to the mobile device, where the relative pose corresponds to a visually-measured difference in pose between a landmark pose and a pose corresponding to the visual observation; and

a module with instructions configured to update at least one of the plurality of particles at least partly in response to receiving the indication of the recognized landmark, wherein the module with instructions configured to update further comprises:

instructions configured to use a prior pose estimate and dead reckoning sensor data to compute a new pose estimate for particles in a selected group based on the estimated change in pose; and

instructions configured to use the landmark pose and the visually-measured relative pose estimate to compute the new pose estimate for particles not in the selected group.

13. The computer program as defined in claim 12 , wherein particles are independently categorized into the selected group such that a probability of one particle being categorized into the selected group is about the same as the probability of another particle being categorized into the selected group.

14. The computer program as defined in claim 12 , wherein the module with instructions configured to use the prior pose estimate and dead reckoning sensor data to compute the new pose estimate for particles in the selected group further comprises instructions configured to:

use the prior pose estimate, the dead reckoning sensor data, and simulated random noise to compute a perturbed predicted pose;

use the perturbed predicted pose and the visually-measured relative pose to compute a hypothetical landmark pose;

obtain an uncertainty measure associated with the particle based at least in part on an uncertainty measure associated with the landmark and particle and an uncertainty measure associated with the visual sensor;

compute an importance factor for the particle, where the importance factor is based at least in part on the uncertainty measure associated with the particle and a comparison between the calculated hypothetical landmark pose and a prior landmark pose estimate; and

use the perturbed predicted pose with the importance factor to calculate the new pose.

15. The computer program as defined in claim 12 , wherein module with instructions configured to use the landmark pose estimate and the visually-measured relative pose further comprises instructions configured to:

use the landmark pose estimate corresponding to the landmark and the visually-measured relative pose to compute a hypothetical device pose;

perturb the hypothetical device pose with simulated random noise;

obtain an uncertainty measure associated with the particle based at least in part on an uncertainty measure associated with the landmark and particle and an uncertainty measure associated with the dead reckoning measurements;

compute an importance factor for the particle, where the importance factor is based at least in part on the uncertainty measure associated with the particle and a comparison between the hypothetical device pose and a prior device pose estimate and the dead reckoning sensor data; and

use the perturbed predicted pose with the importance factor to calculate the new pose.

16. The computer program as defined in claim 12 , further comprising a module with instructions configured to resample selected particles from the plurality of particles.

Assignments (8)
NOTICE OF ASSIGNMENT OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Nov 25, 2025
From: TCG SENIOR FUNDING L.L.C., AS COLLATERAL AGENT
To: SANTRUM HONG KONG CO., LIMITED, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 073707/0516 →
SECURITY INTEREST Recorded Aug 9, 2023
From: IROBOT CORPORATION
To: TCG SENIOR FUNDING L.L.C., AS COLLATERAL AGENT
Reel/Frame 064532/0856 →
RELEASE OF SECURITY INTEREST Recorded Jul 31, 2023
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: IROBOT CORPORATION
Reel/Frame 064430/0001 →
SECURITY INTEREST Recorded Nov 3, 2022
From: IROBOT CORPORATION
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 061878/0097 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2013
From: EVOLUTION ROBOTICS, INC.
To: IROBOT CORPORATION
Reel/Frame 030486/0104 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2012
From: FUTURE VISION HOLDINGS, INC.
To: EVOLUTION ROBOTICS, INC.
Reel/Frame 028831/0824 →
CHANGE OF NAME Recorded Aug 22, 2012
From: EVOLUTION ROBOTICS, INC.
To: FUTURE VISION HOLDINGS, INC.
Reel/Frame 028828/0646 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2012
From: DOMINGUES GONCALVES, LUIS FILIPE; BERNARDO, ENRICO DI; PIRJANIAN, PAOLO; KARLSSON, L. NIKLAS
To: EVOLUTION ROBOTICS, INC.
Reel/Frame 028820/0860 →
Continuity (4)
Division 1073990200 · Dec 17, 2003
Provisional Application 6043426900 · Dec 17, 2002
Provisional Application 6043904900 · Jan 9, 2003
Related Publication 20070090973A1 · Apr 26, 2007