IP Library Granted Patent US 11,520,332
Granted Patent B1
US 11,520,332 · App. 16/702,008 · Granted Dec 6, 2022

System for automated exploration by an autonomous mobile device using markers based on image features

Inventors: James Charles Zamiska (Palo Alto, CA); David Allen Fotland (San Jose, CA); Roger Robert Webster (Los Altos, CA); Mohit Deshpande (San Jose, CA); Robert Franklin Ebert (Los Altos Hills, CA); Nikhil Sharma (Fremont, CA); Rachel Liao (Santa Clara, CA); Chang Young Kim (Newark, CA)
Assignee: AMAZON TECHNOLOGIES, INC.
G05D1/0088G01S17/931G05D1/0251
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 11,520,332
App. No.
16/702,008
Granted
Dec 6, 2022
Kind
B1
Abstract

An autonomous mobile device (AMD) uses sensors to explore a physical space and determine the locations of obstacles. Simultaneous localization and mapping (SLAM) techniques are used by the AMD to designate as keyframes some images and their associated descriptors of features in the space. Each keyframe indicates a location and orientation of the AMD relative to those features. Anchors are specified relative to keyframes. A marker is specified relative to one or more anchors. Because markers are associated with features in the physical space, they maintain their association with the physical space through various processes such as SLAM loop closures. Markers may specify locations in the physical space, such as navigation waypoints, navigation destinations such as a goal pose for exploring an unexplored area, as an observation target to facilitate exploration, and so forth. Markers may also be used to specify block listed locations to be avoided during exploration.

Claims (112)

1. A method performed at least in part by an autonomous mobile device (AMD), the method comprising:

determining an occupancy map representative of a physical space, wherein the occupancy map comprises a plurality of cells with each cell of the plurality of cells being associated with an area in the physical space;

determining a first set of cells that are associated with a first frontier region of the physical space that is located between an unoccupied and observed portion of the physical space and an unobserved portion of the physical space;

determining, from the first set of cells, a first cell associated with a first area of the first frontier region;

determining a first marker associated with the first cell, wherein the first marker is indicative of a first location in the physical space with respect to one or more features depicted in a first image;

determining, based on the first cell, a first pose that is indicative of a second cell and a first orientation, wherein the second cell is associated with a first area of the observed portion of the physical space;

determining a second marker associated with the first pose, wherein the second marker is indicative of a second location and second orientation in the physical space with respect to one or more features depicted in a second image;

moving the AMD to the second location;

determining, while at the second location, first sensor data using one or more sensors; and

determining first data based at least in part on the first sensor data, wherein the first data indicates one or more of: the first marker or the second marker are not to be subsequently used while exploring the unobserved portion of the physical space.

2. The method of claim 1 , the determining the second marker further comprising:

determining a first anchor that is indicative of a third location in the physical space with respect to one or more features in a third image, wherein:

the third location was previously visited by the AMD,

the third location is closest to the second location; and

based at least in part on the occupancy map, no obstacle is present between the second location and the third location; and

wherein the second marker comprises a first rigid transform that describes the second location with respect to the third location.

3. The method of claim 1 , the determining the occupancy map comprising:

determining, based at least in part on image data comprising a plurality of images, a first trajectory of the AMD through the physical space, wherein the first trajectory comprises a first plurality of poses and each pose, of the first plurality of poses, is associated with a descriptor indicative of a feature depicted in a portion of the image data that is associated with the pose;

determining a first submap that is associated with a first portion of the physical space and is indicative of presence or absence of an obstacle in the first portion of the physical space;

associating, with the first submap, a first pose of the first plurality of poses, wherein the first pose is associated with a third location; and

the determining the second marker comprising:

determining that the second location is closest to the third location; and

wherein the second marker is described relative to the first pose.

4. The method of claim 1 , further comprising:

determining, at a third location in the physical space, a keyframe using a simultaneous localization and mapping system;

determining data indicative of a rigid transform that describes the third location with respect to the second location; and

wherein the second marker comprises the data indicative of the rigid transform.

5. The method of claim 1 , wherein the second marker is indicative of one or more of:

a map identifier indicative of a map of the physical space,

a position relative to a first anchor that is indicative of a third location in the physical space with respect to one or more features in a third image,

illumination data indicative of lighting conditions associated with the one or more features depicted in the second image,

orientation data indicative of orientation with respect to the one or more features depicted in the first image, or

one or more coordinates with respect to the occupancy map.

6. The method of claim 1 , further comprising:

determining that the unobserved portion of the physical space is less than a threshold value;

determining input that is associated with a third location and a third orientation in the physical space;

determining a third marker that is indicative of the third location and the third orientation in the physical space with respect to one or more features depicted in a third image; and

storing, in persistent storage, the first data and the third marker.

7. The method of claim 1 , further comprising:

acquiring the second image with a first illumination;

acquiring a third image with a second illumination; and

wherein the second marker is indicative of the second location in the physical space with respect to one or more features depicted in the third image.

8. The method of claim 1 , the determining the first data comprising:

moving the AMD to the second location;

determining, while at the second location, first sensor data using one or more sensors;

determining, based at least in part on the first sensor data, that the first area of the first frontier region is unobserved; and

storing the second marker in the first data.

9. The method of claim 1 , the determining the first data comprising:

moving the AMD along at least a portion of a path to the second location;

determining the AMD is unable to place itself at the second location; and

storing one or more of the second marker or data indicative of the second location in the first data.

10. An autonomous mobile device (AMD) comprising:

one or more sensors to acquire sensor data;

one or more memories storing first computer-executable instructions; and

one or more processors to execute the first computer-executable instructions to:

determine, based at least in part on the sensor data, a first set of datum locations, wherein each datum location is associated with a prior location of the AMD in a physical space and a descriptor indicative of a feature in a first portion of the sensor data that is associated with the datum location;

determine a first marker indicative of a first location in the physical space relative to a subset of the first set of datum locations;

determine a first submap of a first area in the physical space;

determine a first anchor, associated with the first submap, that is indicative of a second location in the physical space with respect to one or more features in the first portion of the sensor data, wherein:

the second location was previously visited by the AMD,

the second location is closest to the first location; and

wherein the first marker comprises data indicative of a first rigid transform that describes the first location with respect to the second location.

11. The AMD of claim 10 , further comprising instructions to:

determine, at a third location in the physical space, a keyframe using a simultaneous localization and mapping system;

determine the data is indicative of the rigid transform that describes the first location with respect to the second location; and

wherein the first marker comprises the data indicative of the rigid transform.

12. The AMD of claim 10 , further comprising instructions to:

determine a first occupancy map representative of the physical space at a first time, wherein the first occupancy map comprises a plurality of cells with each cell of the plurality of cells being associated with an area in the physical space;

determine an association between the subset of the first set of datum locations and corresponding cells of the first occupancy map;

determine an association between the first location and a first cell of the first occupancy map; and

wherein the first set of datum locations comprises:

a first datum location that is closest to the first location; and

for which, based at least in part on the first occupancy map, no obstacle is present between the first location and the first datum location; and

wherein a rigid transform describes a relationship between the first location and the first datum location.

13. The AMD of claim 10 , further comprising instructions to:

determine a command to move the AMD to the first marker;

determine a first occupancy map representative of the physical space at a first time, wherein the first occupancy map comprises a plurality of cells with each cell of the plurality of cells being associated with an area in the physical space;

determine an association between the subset of the first set of datum locations and corresponding cells of the first occupancy map;

determine, relative to the corresponding cells of the first occupancy map, a first cell associated with the first area in the physical space; and

move the AMD to the first area in the physical space.

14. The AMD of claim 13 , further comprising instructions to:

determine, while at the first area in the physical space, first sensor data using one or more sensors;

determine, based at least in part on the first sensor data, that a third area of a first frontier region is unobserved; and

prevent an attempt to observe the third area from the first marker.

15. The AMD of claim 10 , further comprising instructions to:

move the AMD along at least a portion of a path to the first location;

determine the AMD is unable to place itself at the first location; and

prevent an attempt to move again to the first marker.

16. The AMD of claim 10 , further comprising instructions to:

determine, at a first time, a first set of coordinates with respect to a first occupancy map that are associated with the first marker;

determine, at a second time after the first time, a second occupancy map representative of the physical space at the second time; and

determine, at the second time, a second set of coordinates with respect to the second occupancy map that are associated with the first marker, wherein the first set of coordinates are different from the second set of coordinates.

17. The AMD of claim 10 , wherein the first marker comprises one or more of:

a map identifier indicative of the physical space,

illumination data indicative of lighting conditions associated with one or more features depicted in the sensor data associated with the first marker,

orientation data indicative of orientation with respect to the one or more features depicted in the sensor data associated with the first marker, or

one or more coordinates with respect to a first occupancy map.

18. A method comprising:

determining, based at least in part on sensor data, a first set of datum locations, wherein each datum location is associated with a prior location of a device in a physical space and a descriptor indicative of a feature in a portion of the sensor data that is associated with the datum location;

determining a first marker indicative of a first location in the physical space relative to a subset of the first set of datum locations;

determining a command to move the device to the first marker;

determining a first occupancy map representative of the physical space at a first time, wherein the first occupancy map comprises a plurality of cells with each cell of the plurality of cells being associated with an area in the physical space;

determining an association between the subset of the first set of datum locations and corresponding cells of the first occupancy map;

determining, relative to the corresponding cells of the first occupancy map, a first cell associated with a first area in the physical space; and

moving the device to the first area in the physical space.

19. The method of claim 18 further comprising:

moving the device along at least a portion of a path to the first location;

determining the device is unable to place itself at the first location; and

preventing an attempt to move again to the first marker.

20. The method of claim 18 , further comprising:

determining, based at least in part on the sensor data, that a second area of a first frontier region is unobserved; and

preventing an attempt to observe the second area from the first marker.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2020
From: ZAMISKA, JAMES CHARLES; FOTLAND, DAVID ALLEN; WEBSTER, ROGER ROBERT; DESHPANDE, MOHIT; EBERT, ROBERT FRANKLIN; SHARMA, NIKHIL; LIAO, RACHEL; KIM, CHANG YOUNG
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 053018/0282 →
Cited By (3)
US 12,479,293 US 12,560,928 US 12,724,422