IP Library Granted Patent US 10,274,325
Granted Patent B2
US 10,274,325 · App. 15/340,807 · Granted Apr 30, 2019

Systems and methods for robotic mapping

Inventors: Jaldert Rombouts (San Diego, CA); Borja Ibarz Gabardos (La Jolla, CA); Jean-Baptiste Passot (Solana Beach, CA); Andrew Smith (San Diego, CA)
Assignee: Brain Corporation
G01C21/32G01S17/89G01S15/89
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 10,274,325
App. No.
15/340,807
Granted
Apr 30, 2019
Kind
B2
Abstract

Systems and methods for robotic mapping are disclosed. In some exemplary implementations, a robot can travel in an environment. From travelling in the environment, the robot can create a graph comprising a plurality of nodes, wherein each node corresponds to a scan taken by a sensor of the robot at a location in the environment. In some exemplary implementations, the robot can generate a map of the environment from the graph. In some cases, to facilitate map generation, the robot can constrain the graph to start and end at a substantially similar location. The robot can also perform scan matching on extended scan groups, determined from identifying overlap between scans, to further determine the location of features in a map.

Claims (52)

1. A method of generating a map by a robot, comprising:

traveling, by the robot, in an environment;

generating a graph comprising a plurality of nodes, a respective node of the plurality of nodes corresponds to a scan generated by a sensor of the robot at a location in the environment;

performing scan matching on extended scan groups, the extended scan groups being determined in-part on at least two or more nodes of the plurality of nodes; and

constraining the graph between a start location and an end location, the start location and the end location being at a substantially similar location in the environment.

2. The method of claim 1 , further comprising:

associating a range of possible locations in the environment with the respective one of the plurality of nodes based at least in-part on the scan matching;

determining confidences associated with a respective one of the range of possible locations;

optimizing the graph to find a location of the plurality of nodes based at least in-part on the confidences; and

generating the map from the optimized graph, the generation of the map comprises ray tracing with the scans generated by the sensor, the scans being associated with the plurality of nodes.

3. The method of claim 2 , wherein the optimizing of the graph, comprises:

generating a cost function based at least in-part on: (1) relative locations of each of the plurality of nodes, and (2) the confidences associated with each of the plurality of nodes; and

solving the cost function for a minimum value.

4. The method of claim 2 , wherein the associated confidences further includes,

using a probability distribution indicative at least in-part of a probability that the respective node is in a respective location.

5. The method of claim 1 , wherein the constraining of the graph to the start and end locations includes constraining the graph to the start and end locations in view of a home locator.

6. The method of claim 1 , wherein the traveling, by the robot, in the environment further includes,

navigating the robot under user control.

7. The method of claim 1 , wherein the extended scan groups determined at least in part from groups of the plurality of nodes, further includes,

selecting a root node as a reference location;

finding overlap in measurements of distinct features in scans taken at least two of the respective nodes of the plurality of nodes, the root note is different from the respective node; and

grouping the the at least two of the respective nodes into extended scan groups based at least in-part on overlapping distinct features of the scans at the at least two of the respective nodes.

8. A robot, comprising:

a sensor configured to generate scans of an environment at a plurality of nodes, a respective node of the plurality of nodes is associated with a location in the environment; and

a mapping and localization unit configured to execute computer readable instructions to:

generate a graph of the plurality of nodes based at least in part on the generated scans;

determine extended scan groups in-part on at least two or more nodes of the plurality of nodes;

perform scan matching on the extended scan groups; and

constrain the graph between a start location and an end location, the start location and the end location being at a substantially similar location in the environment.

9. The robot of claim 8 , wherein the mapping and localization unit is further configured to execute computer readable instructions to,

determine confidences associated with the location in the environment of each node of the plurality of nodes.

10. The robot of claim 9 , wherein the mapping and localization unit is further configured to execute computer readable instructions to,

generate a cost function based at least in-part on the confidences and the location of each node of the plurality of nodes, the location of each node in the graph being determined based on solving the cost function for a minimum value.

11. The robot of claim 8 , wherein the mapping and localization unit is further configured to execute computer readable instructions to,

render a map from the graph, the map based at least in-part on ray tracings of the scans.

12. The robot of claim 8 , further comprising:

an actuator configured to move the robot between locations in the environment.

13. The robot of claim 8 , further comprising:

a user interface for controlling the robot by at least one user.

14. The robot of claim 8 , further comprising:

a navigation unit configured to navigate the robot autonomously without the user.

15. A non-transitory computer-readable medium having computer readable instructions stored thereon, that when executed by at least one processor, configure the at least one processor to:

transmit a signal to at least one sensor to generate scans of an environment at a plurality of nodes, a respective node of the plurality of nodes being associated with a location in the environment;

generate a graph of the plurality of nodes based in-part on the generated scans;

determine extended scan groups based at least in part on two or more nodes of the plurality of nodes;

perform scan matching on the extended scan groups; and

constrain the graph between a start location and an end location, the start location and the end location being at a substantially similar location.

16. The non-transitory computer-readable medium of claim 15 , wherein each extended scan group includes at least three or more scans.

17. The non-transitory computer-readable medium of claim 15 , wherein the at least one processor is further configured to execute the computer readable instructions to,

determine a cost function based at least in-part on confidences associated with the location of each node of the plurality of nodes.

18. The non-transitory computer-readable medium of claim 17 , wherein the at least one processor is further configured to execute the computer readable instructions to,

generate a map based at least in-part on minimizing the cost function.

Assignments (2)
SECURITY INTEREST Recorded Oct 8, 2021
From: BRAIN CORPORATION
To: HERCULES CAPITAL, INC.
Reel/Frame 057851/0574 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2017
From: ROMBOUTS, JALDERT; GABARDOS, BORJA IBARZ; PASSOT, JEAN-BAPTISTE; SMITH, ANDREW
To: BRAIN CORPORATION
Reel/Frame 042215/0172 →
Continuity (1)
Related Publication 20180120116A1 · May 3, 2018
Cited By (1)
US 12,346,111