IP Library Granted Patent US 12,433,463
Granted Patent B2
US 12,433,463 · App. 17/172,022 · Granted Oct 7, 2025

Mapping an environment around an autonomous vacuum

Inventors: Navneet Dalal (Atherton, CA); Seungho Yang (Mountain View, CA); Gavin Li (Menlo Park, CA); Mehul Nariyawala (Los Altos, CA)
Assignee: MATIC ROBOTS, INC.
A47L9/2847A46B9/005A46B13/006A46D1/0207A47L5/30A47L5/34A47L7/0004A47L7/0009A47L7/0023A47L9/0477A47L9/1409A47L9/1427A47L9/281A47L9/2826A47L11/201A47L11/4052A47L11/4061B01D46/0036B01D46/02G01C21/383G05D1/0044G05D1/0212G05D1/225G05D1/646A46B2200/3033A47L9/2852A47L9/2857A47L2201/00A47L2201/04A47L2201/06B01D2279/55
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 12,433,463
App. No.
17/172,022
Filed
Feb 9, 2021
Granted
Oct 7, 2025
Kind
B2
Art Unit
3666
USPC
700/253
Abstract

An autonomous cleaning robot (e.g., an autonomous vacuum) may use a sensor system to map an environment that may be used to determine where to clean. The autonomous vacuum receives visual data about the environment and determines a ground plane of the environment based on the visual data. The autonomous vacuum detects objects within the environment based on the ground plane. For each object, the autonomous vacuum segments a three-dimensional (3D) representation of the object out of the visual data and determines whether the object is static or dynamic. The autonomous vacuum adds static objects to a long-term level of a map of the environment and dynamic objects to an intermediate level of the map. The autonomous vacuum may further add virtual borders, flags, walls, and messes to the map.

Claims (93)

1. A non-transitory computer-readable storage medium storing instructions that when executed cause a computer processor to:

receive, via a sensor system, visual data about a home environment;

determine a ground plane of the home environment in the visual data;

detect objects within the home environment based on the detected ground plane;

for each object:

segment a three-dimensional representation of the object out of the visual data,

determine an object type of the object based on visual data of the object,

wherein the object type is a classification of different objects found in the home environment,

apply a descriptor tag to the object indicating the object type of the object,

determine whether the object is static or dynamic,

responsive to determining the object is static, map the three-dimensional representation to a long-term level of a map of the home environment, and

responsive to determining the object is dynamic, map the three-dimensional representation to an intermediate level of the map of the home environment;

wherein a first set of objects having a first descriptor tag indicating a first object type is mapped to the long-term level and a second set of objects having the first descriptor tag indicating the first object type is mapped to the intermediate level;

localize a current position of an autonomous vacuum in the home environment based on objects mapped to the long-term level of the map of the home environment while excluding objects mapped to the intermediate level of the map;

determine navigation instructions to navigate the autonomous vacuum along a path from the current position of the autonomous vacuum to a target position where a mess is located, the path being based on the current position of the autonomous vacuum and objects detected within the environment in the long-term level of the map and the intermediate level of the map; and

instruct an actuator assembly to move the autonomous vacuum to vacuum dirt in the home environment using the map of the home environment and the navigation instructions.

2. The non-transitory computer-readable storage medium of claim 1 , the instructions further comprising instructions that, when executed, cause the computer processor to:

responsive to detecting a first object is within a threshold radius of an autonomous vacuum, map the first object to an immediate level of the map.

3. The non-transitory computer-readable storage medium of claim 2 , wherein the threshold radius varies by time of day.

4. The non-transitory computer-readable storage medium of claim 2 , wherein object mappings at the immediate level are updated as the autonomous vacuum moves around the home environment.

5. The non-transitory computer-readable storage medium of claim 1 , the instructions further comprising instructions that, when executed, cause the computer processor to:

identify a first object based on an object database; and

responsive to determining that the first object is of an object type indicating that the first object is a person, determine a fingerprint of the person based on the visual data and audio data captured by the sensor system.

6. The non-transitory computer-readable storage medium of claim 5 , wherein the fingerprint of the person comprises an image of the person's face, an outline of the person's body, a representation of the person's clothing, and a voice print describing aspects of the person's voice.

7. The non-transitory computer-readable storage medium of claim 1 , wherein the visual data includes camera data, lidar data, and infrared data.

8. The non-transitory computer-readable storage medium of claim 1 , the instructions further comprising instructions that, when executed, cause the computer processor to:

identify a first object based on an object database;

tag the three-dimensional representation of the first object in the map with a warning; and

construct a virtual border around the three-dimensional representation of the first object in the map.

9. The non-transitory computer-readable storage medium of claim 1 , the instructions further comprising instructions that, when executed, cause the computer processor to:

receive real-time visual data of the home environment; and

responsive to detecting pixels at or above the ground plane that do not match a surface type of the ground plane:

segment the pixels from the real-time visual data;

compare the segmented pixels to the long-term level of the map; and

responsive to determining that the segmented pixels do not match the long-term level of the map, flag an area corresponding to the pixels as containing a mess in the intermediate level of the map.

10. The non-transitory computer-readable storage medium of claim 1 , the instructions further comprising instructions that, when executed, cause the computer processor to:

detect walls within the home environment based on the visual data; and

map an outline of the walls to each level of the map.

11. The non-transitory computer-readable storage medium of claim 1 , the instructions further comprising instructions that, when executed, cause the computer processor to, at a subsequent time period:

receive, via the sensor system, additional visual data about the home environment;

detect a first object at a current position within the home environment;

determine that the first object is mapped to the intermediate level of the map at a prior position within the home environment; and

responsive to determining that the intermediate level of the map contains the three-dimensional representation of the first object, update a location of the first object in the intermediate level of the map from the prior position to the current position.

12. The non-transitory computer-readable storage medium of claim 1 , the instructions further comprising instructions that, when executed, cause the computer processor to:

receive real-time visual data of the home environment; and

apply a neural network to the real-time visual data to detect the dirt in the home environment, the neural network trained on image data labeled with surface type and inclusion of dirt, wherein the computer processor is caused to instruct the actuator assembly responsive to detecting the dirt in the real-time visual data.

13. The non-transitory computer-readable storage medium of claim 1 , wherein object mappings at the long-term level are updated when an autonomous vacuum is at a docking station.

14. A method for mapping a home environment around an autonomous vacuum, the method comprising:

receiving, via a sensor system, visual data about the home environment;

determining a ground plane of the home environment in the visual data;

detecting objects within the home environment based on the detected ground plane;

for each object:

segmenting a three-dimensional representation of the object out of the visual data,

determining an object type of the object based on visual data of the object,

wherein the object type is a classification of different objects found in the home environment,

applying a descriptor tag to the object indicating the object type of the object,

determining whether the object is static or dynamic,

responsive to determining the object is static, mapping the three-dimensional representation to a long-term level of a map of the home environment, and

responsive to determining the object is dynamic, mapping the three-dimensional representation to an intermediate level of the map of the home environment;

wherein a first set of objects having a first descriptor tag indicating a first object type is mapped to the long-term level and a second set of objects having the first descriptor tag indicating the first object type is mapped to the intermediate level;

localizing a current position of an autonomous vacuum in the home environment based on objects mapped to the long-term level of the map of the home environment while excluding objects mapped to the intermediate level of the map;

determining navigation instructions to navigate the autonomous vacuum along a path from the current position of the autonomous vacuum to a target position where a mess is located, the path being based on the current position of the autonomous vacuum and objects detected within the environment in the long-term level of the map and the intermediate level of the map; and

instructing an actuator assembly to move the autonomous vacuum to vacuum dirt in the home environment using the map of the home environment and the navigation instructions.

15. The method of claim 14 , the method further comprising:

responsive to detecting the object is within a threshold radius of the autonomous vacuum,

mapping the object to an immediate level of the map.

16. The method of claim 15 , wherein the threshold radius varies by time of day.

17. The method of claim 14 , the method further comprising:

identify a first object based on an object database; and

responsive to determining that the first object is of an object type indicating that the first object is a person, determining a fingerprint of the person based on the visual data and audio data captured by the sensor system, wherein the fingerprint of the person comprises an image of the person's face, an outline of the person's body, a representation of the person's clothing, and a voice print describing aspects of the person's voice.

18. The method of claim 14 , the method further comprising:

identifying a first object based on an object database;

tagging the three-dimensional representation of the first object in the map with a warning; and

constructing a virtual border around the three-dimensional representation of the first object in the map.

19. A computer system comprising:

a computer processor; and

a non-transitory computer-readable storage medium storing instructions that when executed cause a computer processor to perform actions comprising:

receiving, via a sensor system, visual data about a home environment;

determining a ground plane of the home environment in the visual data;

detecting objects within the home environment based on the detected ground plane;

for each object:

segmenting a three-dimensional representation of the object out of the visual data,

determining an object type of the object based on visual data of the object, wherein the object type is a classification of different objects found in the home environment,

applying a descriptor tag to the object indicating the object type of the object,

determining whether the object is static or dynamic,

responsive to determining the object is static, mapping the three-dimensional representation to a long-term level of a map of the home environment, and

responsive to determining the object is dynamic, mapping the three-dimensional representation to an intermediate level of the map of the home environment;

wherein a first set of objects having a first descriptor tag indicating a first object type is mapped to the long-term level and a second set of objects having the first descriptor tag indicating the first object type is mapped to the intermediate level;

localizing a current position of an autonomous vacuum in the home environment based on objects mapped to the long-term level of the map of the home environment while excluding objects mapped to the intermediate level of the map;

determining navigation instructions to navigate the autonomous vacuum based on the position of the autonomous vacuum along a path from the current position of the autonomous vacuum to a target position where a mess is located, the path being based on the current position of the autonomous vacuum and objects detected within the environment in the long-term level of the map and the intermediate level of the map; and

instructing an actuator assembly to move the autonomous vacuum to vacuum dirt in the home environment using the map of the home environment and the navigation instructions.

20. The computer system of claim 19 , the actions further comprising:

responsive to detecting the object is within a threshold radius of an autonomous vacuum, mapping the object to an immediate level of the map.

Assignments (2)
CHANGE OF NAME Recorded Nov 15, 2023
From: MATICIAN, INC.
To: MATIC ROBOTS, INC.
Reel/Frame 065583/0940 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2021
From: DALAL, NAVNEET; YANG, SEUNGHO; LI, GAVIN; NARIYAWALA, MEHUL
To: MATICIAN, INC.
Reel/Frame 055484/0665 →
Continuity (3)
Provisional Application 63121842 · Dec 4, 2020
Provisional Application 62972563 · Feb 10, 2020
Related Publication 20210244254A1 · Aug 12, 2021
References Cited (87)
US 3995414A · Kerr et al. · 1976 [cited by applicant]
US 4084948A · Macfarland · 1978 [cited by applicant]
US 4257791A · Wald · 1981 [cited by applicant]
US 4429423A · Syrenne · 1984 [cited by applicant]
US 4749391A · Demarco · 1988 [cited by applicant]
US 4836141A · Whitfield · 1989 [cited by applicant]
US 5198198A · Gladfelter et al. · 1993 [cited by applicant]
US 5236135A · Wilson et al. · 1993 [cited by applicant]
US 5389346A · Copeland · 1995 [cited by applicant]
US 5595731A · Vallieres · 1997 [cited by applicant]
US 5601659A · Rohrbacher · 1997 [cited by applicant]
US 6171369B1 · Schultink et al. · 2001 [cited by applicant]
US 6261679B1 · Chen et al. · 2001 [cited by applicant]
US 7534398B2 · Dee et al. · 2009 [cited by applicant]
US 8388587B1 · Gmuer et al. · 2013 [cited by applicant]
US 8764990B1 · Julian et al. · 2014 [cited by applicant]
US 9038233B2 · Jones et al. · 2015 [cited by applicant]
US 9195236B1 · Fairfield · 2015 [cited by examiner]
US 9333475B1 · Baselli et al. · 2016 [cited by applicant]
US 10292560B2 · Doughty · 2019 [cited by applicant]
US 10517454B2 · Jones et al. · 2019 [cited by applicant]
US 10568483B2 · Lewis · 2020 [cited by applicant]
US 11058271B2 · Blouin · 2021 [cited by applicant]
US 11103113B2 · Schregardus et al. · 2021 [cited by applicant]
US 11116374B2 · Dhindsa et al. · 2021 [cited by applicant]
US 11278173B2 · Jones et al. · 2022 [cited by applicant]
US 20030226773A1 · Shaffer · 2003 [cited by applicant]
US 20050028316A1 · Thomas et al. · 2005 [cited by applicant]
US 20060081000A1 · Trinh et al. · 2006 [cited by applicant]
US 20060085095A1 · Reindle et al. · 2006 [cited by applicant]
US 20060233470A1 · Jacoby et al. · 2006 [cited by applicant]
US 20060278087A1 · Sepke et al. · 2006 [cited by applicant]
US 20070042146A1 · Sharp · 2007 [cited by applicant]
US 20080060162A1 · Burnham · 2008 [cited by applicant]
US 20080179330A1 · Brooks et al. · 2008 [cited by applicant]
US 20080264029A1 · Sepaniak · 2008 [cited by applicant]
US 20100187135A1 · Broering et al. · 2010 [cited by applicant]
US 20100256812A1 · Tsusaka et al. · 2010 [cited by applicant]
US 20110015560A1 · Marasco · 2011 [cited by applicant]
US 20110047733A1 · Jiang et al. · 2011 [cited by applicant]
US 20110158563A1 · Soletski · 2011 [cited by applicant]
US 20110271469A1 · Ziegler et al. · 2011 [cited by applicant]
US 20120102670A1 · Jang et al. · 2012 [cited by applicant]
US 20130205716A1 · Savla · 2013 [cited by applicant]
US 20140013538A1 · Dyson et al. · 2014 [cited by applicant]
US 20140207281A1 · Angle et al. · 2014 [cited by applicant]
US 20140336863A1 · So · 2014 [cited by examiner]
US 20150107038A1 · Lee · 2015 [cited by applicant]
US 20150128364A1 · Dooley et al. · 2015 [cited by applicant]
US 20150342432A1 · Blackwell et al. · 2015 [cited by applicant]
US 20150352480A1 · Morison et al. · 2015 [cited by applicant]
US 20170038188A1 · Handel · 2017 [cited by applicant]
US 20170103658A1 · Djordjevic · 2017 [cited by examiner]
US 20170298304A1 · Vesterager · 2017 [cited by applicant]
US 20170311768A1 · Tibberts · 2017 [cited by applicant]
US 20170341317A1 · Roberts · 2017 [cited by applicant]
US 20180143645A1 · Lee · 2018 [cited by examiner]
US 20180184865A1 · Lee et al. · 2018 [cited by applicant]
US 20180184870A1 · Moon et al. · 2018 [cited by applicant]
US 20180199785A1 · Farmer et al. · 2018 [cited by applicant]
US 20180315200A1 · Davydov · 2018 [cited by examiner]
US 20180344116A1 · Schriesheim · 2018 [cited by examiner]
US 20190045992A1 · Brede · 2019 [cited by examiner]
US 20190094870A1 · Afrouzi · 2019 [cited by examiner]
US 20190246867A1 · Ziamandanis · 2019 [cited by applicant]
US 20190254490A1 · Marutani et al. · 2019 [cited by applicant]
US 20190261826A1 · Goff · 2019 [cited by applicant]
US 20190328589A1 · Tanguay et al. · 2019 [cited by applicant]
US 20190377355A1 · Kwak et al. · 2019 [cited by applicant]
US 20200008641A1 · Gunter et al. · 2020 [cited by applicant]
US 20200196831A1 · Renner et al. · 2020 [cited by applicant]
US 20200293050A1 · Cheong · 2020 [cited by applicant]
US 20200317442A1 · Cox · 2020 [cited by applicant]
US 20200334887A1 · Salfity · 2020 [cited by examiner]
US 20210096579A1 · Artes · 2021 [cited by examiner]
US 20210130070A1 · Zhu et al. · 2021 [cited by applicant]
US 20220280007A1 · Jang · 2022 [cited by examiner]
EP 1195127A2 · 2002 [cited by applicant]
X. Yu, J. Wang, W. Chen and H. Wang, “A Map Accessibility Analysis Algorithm for Mobile Robot Navigation in Outdoor Environment,” 2019 IEEE International Conference on RCAR, Irkutsk, Russia, 2019, <https://ieeexplore.ie… [cited by examiner]
Hongjun Zhou and Shigeyuki Sakane, “Localizing objects during robot SLAM in semi-dynamic environments,” 2008 IEEE/ASME International Conference on Advanced Intelligent Mechatronics, Xian, 2008, pp. 595-601 <https://ieee… [cited by examiner]
Dhiman, N.K., Deodhare, D. & Khemani, D. “Where am I? Creating spatial awareness in unmanned ground robots using SLAM: A survey.” Sadhana 40, 1385-1433 (2015). <https://link.springer.com/article/10.1007/s12046-015-0402-… [cited by examiner]
United States Office Action, U.S. Appl. No. 17/172,030, filed Nov. 16, 2022, 20 pages. [cited by applicant]
Invitation to Pay Additional Fees, Patent Cooperation Treaty Application No. PCT/US2021/017295, Apr. 13, 2021, three pages. [cited by applicant]
International Search Report and Written Opinion, Patent Cooperation Treaty Application No. PCT/US2021/017295, Jun. 24, 2021, 43 pages. [cited by applicant]
Ramalingam et al., “Vision-Based Dirt Detection and Adaptive Tiling Scheme for Selective Area Coverage,” [cited by applicant]
United States Office Action, U.S. Appl. No. 17/172,030, filed Jun. 22, 2023, 23 pages. [cited by applicant]
United States Office Action, U.S. Appl. No. 18/410,528, filed Apr. 11, 2025, 12 pages. [cited by applicant]