Constrained mobility mapping

US11416003B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11416003-B2
Application numberUS-201916573284-A
CountryUS
Kind codeB2
Filing dateSep 17, 2019
Priority dateAug 6, 2019
Publication dateAug 16, 2022
Grant dateAug 16, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method of constrained mobility mapping includes receiving from at least one sensor of a robot at least one original set of sensor data and a current set of sensor data. Here, each of the at least one original set of sensor data and the current set of sensor data corresponds to an environment about the robot. The method further includes generating a voxel map including a plurality of voxels based on the at least one original set of sensor data. The plurality of voxels includes at least one ground voxel and at least one obstacle voxel. The method also includes generating a spherical depth map based on the current set of sensor data and determining that a change has occurred to an obstacle represented by the voxel map based on a comparison between the voxel map and the spherical depth map. The method additional includes updating the voxel map to reflect the change to the obstacle.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving, at data processing hardware, from at least one sensor of a robot, at least one original set of sensor data and a current set of sensor data, each of the at least one original set of sensor data and the current set of sensor data corresponding to an environment about the robot, the robot comprising a body; generating, by the data processing hardware, a voxel map comprising a plurality of voxels based on the at least one original set of sensor data, the plurality of voxels comprising at least one ground voxel and at least one obstacle voxel; generating, by the data processing hardware, a spherical depth map based on the current set of sensor data; comparing, by the data processing hardware, one or more vertical columns of the voxel map to one or more corresponding vertical columns of the spherical depth map; determining, by the data processing hardware, that a change has occurred to an object represented by the voxel map as an obstacle based on the comparison between the one or more vertical columns of the voxel map and the one or more corresponding vertical columns of the spherical depth map; and updating, by the data processing hardware, the voxel map to reflect the change to the object within the environment. 2. The method of claim 1 , wherein the robot comprises four legs defining a quadruped. 3. The method of claim 1 , wherein generating the voxel map comprises: determining whether three-dimensional units of space about the robot are occupied; and for each three-dimensional unit that is occupied, classifying a respective unit as one of ground, an obstacle, or neither ground nor an obstacle. 4. The method of claim 1 , wherein the voxel map comprises a three-dimension (3D) grid and wherein the method further comprises, for each cell of the 3D grid of the voxel map, consolidating, by the data processing hardware, contiguous voxels of one or more respective vertical columns to form a segment, the segment comprising a height and a point weight, the point weight indicating a degree of certainty that one or more voxels forming the segment are occupied based on the at least one original set of sensor data. 5. The method of claim 4 , further comprising reducing, by the data processing hardware, the point weight of a respective segment when the current set of sensor data does not include sensor data defining the respective segment. 6. The method of claim 4 , further comprising: comparing, by the data processing hardware, the height of the segment at a location in the voxel map to a height range from the one or more corresponding vertical columns at a respective location in the spherical depth map, the location of the segment and the respective location of the one or more corresponding vertical columns corresponding to the same location relative to the robot; and determining, by the data processing hardware, that the height of the segment and the height range from the one or more corresponding vertical columns fail to match. 7. The method of claim 1 , wherein the spherical depth map comprises a spherical representation of the current set of sensor data, the spherical representation comprising rectangular structures defined by points of the sensor data at a distance and a height from the at least one sensor capturing the current set of sensor data. 8. The method of claim 1 , wherein updating the voxel map to reflect the change to the object within the environment comprises removing one or more voxels from the voxel map corresponding to the obstacle associated with the change. 9. The method of claim 8 , wherein removing the one or more voxels comprises: using heuristics to identify nearby voxels that are associated with the change to the object with the environment; and removing the identified nearby voxels. 10. The method of claim 4 , wherein updating the voxel map to reflect the change to the object within the environment comprises trimming the segment corresponding to the obstacle associated with the change. 11. A method comprising: receiving, at data processing hardware, original sensor data corresponding to an environment about a robot from at least one sensor of the robot, the robot comprising a body; generating, by the data processing hardware, a voxel map comprising a plurality of voxels based on the original sensor data, the plurality of voxels comprising at least one ground voxel and at least one obstacle voxel; receiving, by the data processing hardware, a spherical depth map generated based on a current set of sensor data corresponding to the environment about the robot; comparing, by the data processing hardware, one or more vertical columns of the voxel map to one or more corresponding vertical columns of the spherical depth map; determining, by the data processing hardware, that a change has occurred to an object represented by the at least one obstacle voxel of the voxel map based on the comparison between the one or more vertical columns of the voxel map and the one or more corresponding vertical columns of the spherical depth map; updating, by the data processing hardware, the voxel map to reflect the change to the object; based on the updated voxel map, generating, by the data processing hardware, a body obstacle map configured to indicate locations in the environment where the body of the robot is capable of moving without interference with an obstacle in the environment, the body obstacle map divided into cells, wherein a plurality of the cells comprise an indication of a nearest obstacle boundary, the nearest obstacle boundary derived from the at least one obstacle voxel of the updated voxel map; and communicating, by the data processing hardware, the body obstacle map to a control system, the control system configured to move the robot about the environment. 12. The method of claim 11 , wherein the indication comprises an estimate of a distance to the nearest obstacle boundary and a direction to the nearest obstacle boundary. 13. The method of claim 12 , wherein generating the body obstacle map comprises generating a vector field comprising a plurality of vectors, each vector of the plurality of vectors indicating a direction of obstacle avoidance, and wherein each vector comprises a vector direction opposite the direction to the nearest obstacle boundary. 14. The method of claim 11 , wherein the control system is configured to use the body obstacle map to control horizontal motion of the body of the robot and yaw rotation of the body of the robot. 15. The method of claim 11 , further comprising: filtering, by the data processing hardware, the plurality of voxels of the updated voxel map based on a point weight associated with each voxel of the plurality of voxels, the point weight indicating a degree of certainty that a respective voxel is occupied based on the sensor data, and wherein generating the body obstacle map based on the updated voxel map comprises translating to the body obstacle map the filtered plurality of voxels that satisfy a point weight threshold and correspond to an obstacle voxel. 16. A method comprising: receiving, at data processing hardware, original sensor data corresponding to an environment about a robot from at least one sensor of the robot, the robot comprising a body and legs, each leg comprising a distal end; generating, by the data processing hardware, a voxel map comprising a plurality of segments based on the original sensor data, each segment of the plurality of segments corresponding to a vertical column defined by one or more voxels, the plurality of segments comprising at

Assignees

Inventors

Classifications

  • Sensor fusion · CPC title

  • with legs · CPC title

  • Extracting 3D information · CPC title

  • Obstacle avoidance (predicting or avoiding probable or impending collision of road vehicles B60W30/08) · CPC title

  • G05D1/606Primary

    Compensating for or utilising external environmental conditions, e.g. wind or water currents (station keeping G05D1/611) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11416003B2 cover?
A method of constrained mobility mapping includes receiving from at least one sensor of a robot at least one original set of sensor data and a current set of sensor data. Here, each of the at least one original set of sensor data and the current set of sensor data corresponds to an environment about the robot. The method further includes generating a voxel map including a plurality of voxels ba…
Who is the assignee on this patent?
Boston Dynamics Inc
What technology area does this patent fall under?
Primary CPC classification G05D1/606. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 16 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).