IP Library Granted Patent US 12,370,686
Granted Patent B2
US 12,370,686 · App. 17/196,660 · Granted Jul 29, 2025

Determining a virtual representation of an environment by projecting texture patterns

Inventors: Gary Bradski (Mountain View, CA); Kurt Konolige (Mountain View, CA); Ethan Rublee (Mountain View, CA)
Assignee: Google LLC
B25J9/1671B25J5/00B25J9/0093B25J9/1612B25J9/162B25J9/163B25J9/1664B25J9/1687B25J9/1694B25J9/1697B25J19/00B25J19/021B65G41/008B65G47/46B65G47/50G01B11/254G06T7/13G06T7/529G06T7/55G06T7/593G06T7/60G06T17/00G06T19/003G06V20/10G06V20/64H04N13/239B65G61/00B65H67/065G05B2219/31312G05B2219/39391G05B2219/40053G05B2219/40298G05B2219/40442G05B2219/40543G06T2200/04H04N2013/0081Y10S901/01Y10S901/02Y10S901/06Y10S901/09Y10S901/47
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,370,686
App. No.
17/196,660
Granted
Jul 29, 2025
Kind
B2
Abstract

Example methods and systems for determining 3D scene geometry by projecting patterns of light onto a scene are provided. In an example method, a first projector may project a first random texture pattern having a first wavelength and a second projector may project a second random texture pattern having a second wavelength. A computing device may receive sensor data that is indicative of an environment as perceived from a first viewpoint of a first optical sensor and a second viewpoint of a second optical sensor. Based on the received sensor data, the computing device may determine corresponding features between sensor data associated with the first viewpoint and sensor data associated with the second viewpoint. And based on the determined corresponding features, the computing device may determine an output including a virtual representation of the environment that includes depth measurements indicative of distances to at least one object.

Claims (54)

1. A method comprising:

causing a projector to project a plurality of different patterns of light during a given time period;

receiving sensor data comprising a first sequence of infrared images corresponding to the given time period and captured from a first viewpoint of a first optical sensor and a second sequence of infrared images corresponding to the given time period and captured from a second viewpoint of a second optical sensor;

determining a first spatio-temporal image based on a combination of the first sequence of infrared images, wherein the combination comprises a plurality of footprints, wherein each footprint of the plurality describes a corresponding segment of pixels by combining information over the given time period for the corresponding segment of pixels from each image of the first sequence of images;

determining a second spatio-temporal image based on a combination of the second sequence of infrared images, wherein the combination comprises a plurality of footprints, wherein each footprint of the plurality describes a corresponding segment of pixels by combining information over the given time period for the corresponding segment of pixels from each image of the second sequence of images;

determining, by the computing device, corresponding features between the first spatio-temporal image and the second spatio-temporal image; and

based on the determined corresponding features, determining, by the computing device, an output including a virtual representation of an environment, wherein the output comprises a depth measurement indicative of a distance from the first optical sensor to at least one object in the environment.

2. The method of claim 1 , wherein the determined corresponding features comprise corresponding segments of pixels.

3. The method of claim 1 , wherein projecting the plurality of different patterns of light comprises projecting a first texture pattern during a first portion of the given time period and projecting a second texture pattern during a second portion of the given time period.

4. The method of claim 3 , wherein:

the first sequence of infrared images comprises at least one image of the first texture pattern and at least one image of the second texture pattern, and

the second sequence of infrared images comprises at least one image of the first texture pattern and at least one image of the second texture pattern.

5. The method of claim 1 , wherein:

the first spatio-temporal image is a data structure that stores information about changes in images of the first sequence of infrared images over time, and

the second spatio-temporal image is a data structure that stores information about changes in images of the second sequence of infrared images over time.

6. The method of claim 1 , wherein the first optical sensor and the second optical sensor are coupled to a robotic manipulator.

7. The method of claim 6 , wherein the projector is coupled to the robotic manipulator.

8. The method of claim 1 , wherein the projector is coupled to a robotic manipulator.

9. The method of claim 1 , wherein:

determining the first spatio-temporal image comprises summing the plurality of different patterns of light projected during the given time period and captured in the first sequence of infrared images; and

determining the second spatio-temporal image comprises summing the plurality of different patterns of light projected during the given time period and captured in the second sequence of infrared images.

10. A system comprising:

a projector;

a first optical sensor;

a second optical sensor; and

a computing device comprising one or more processors and a memory, wherein the one or more processors is configured to perform functions comprising:

causing the projector to project a plurality of different patterns of light during a given time period;

receiving sensor data comprising a first sequence of infrared images corresponding to the given time period and captured from a first viewpoint of the first optical sensor and a second sequence of infrared images corresponding to the given time period and captured from a second viewpoint of the second optical sensor;

determining a first spatio-temporal image based on a combination of the first sequence of infrared images, wherein the combination comprises a plurality of footprints, wherein each footprint of the plurality describes a corresponding segment of pixels by combining information over the given time period for the corresponding segment of pixels from each image of the first sequence of images;

determining a second spatio-temporal image based on a combination of the second sequence of infrared images, wherein the combination comprises a plurality of footprints, wherein each footprint of the plurality describes a corresponding segment of pixels by combining information over the given time period for the corresponding segment of pixels from each image of the second sequence of images;

determining corresponding features between the first spatio-temporal image and the second spatio-temporal image; and

based on the determined corresponding features, determining an output including a virtual representation of an environment, wherein the output comprises a depth measurement indicative of a distance from the first optical sensor to at least one object in the environment.

11. The system of claim 10 , wherein the determined corresponding features comprise corresponding segments of pixels.

12. The system of claim 10 , wherein projecting the plurality of different patterns of light comprises projecting a first texture pattern during a first portion of the given time period and projecting a second texture pattern during a second portion of the given time period.

13. The system of claim 12 , wherein:

the first sequence of infrared images comprises at least one image of the first texture pattern and at least one image of the second texture pattern, and

the second sequence of infrared images comprises at least one image of the first texture pattern and at least one image of the second texture pattern.

14. The system of claim 10 , wherein:

the first spatio-temporal image is a data structure that stores information about changes in images of the first sequence of infrared images over time, and

the second spatio-temporal image is a data structure that stores information about changes in images of the second sequence of infrared images over time.

15. The system of claim 10 , further comprising a robotic manipulator,

wherein the first optical sensor and the second optical sensor are coupled to the robotic manipulator.

16. The system of claim 10 , further comprising a robotic manipulator, wherein the projector is coupled to the robotic manipulator.

17. A non-transitory computer-readable medium having stored therein instructions, that when executed by a computing device, cause the computing device to perform functions comprising:

causing the projector to project a plurality of different patterns of light during a given time period;

receiving sensor data comprising a first sequence of infrared images corresponding to the given time period and captured from a first viewpoint of the first optical sensor and a second sequence of infrared images corresponding to the given time period and captured from a second viewpoint of the second optical sensor;

determining a first spatio-temporal image based on a combination of the first sequence of infrared images, wherein the combination comprises a plurality of footprints, wherein each footprint of the plurality describes a corresponding segment of pixels by combining information over the given time period for the corresponding segment of pixels from each image of the first sequence of images;

determining a second spatio-temporal image based on a combination of the second sequence of infrared images, wherein the combination comprises a plurality of footprints, wherein each footprint of the plurality describes a corresponding segment of pixels by combining information over the given time period for the corresponding segment of pixels from each image of the second sequence of images;

determining corresponding features between the first spatio-temporal image and the second spatio-temporal image; and

based on the determined corresponding features, determining an output including a virtual representation of an environment, wherein the output comprises a depth measurement indicative of a distance from the first optical sensor to at least one object in the environment.

18. The non-transitory computer-readable medium of claim 17 , wherein the determined corresponding features comprise corresponding segments of pixels.

19. The non-transitory computer-readable medium of claim 17 , wherein projecting the plurality of different patterns of light comprises projecting a first texture pattern during a first portion of the given time period and projecting a second texture pattern during a second portion of the given time period.

20. The non-transitory computer-readable medium of claim 19 , wherein: the first sequence of infrared images comprises at least one image of the first texture pattern and at least one image of the second texture pattern, and

the second sequence of infrared images comprises at least one image of the first texture pattern and at least one image of the second texture pattern.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2025
From: GOOGLE LLC
To: GDM HOLDING LLC
Reel/Frame 071465/0754 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2023
From: X DEVELOPMENT LLC
To: GOOGLE LLC
Reel/Frame 064658/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2021
From: BRADSKI, GARY; KONOLIGE, KURT; RUBLEE, ETHAN
To: INDUSTRIAL PERCEPTION, INC.
Reel/Frame 055546/0358 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2021
From: INDUSTRIAL PERCEPTION, LLC
To: GOOGLE LLC
Reel/Frame 055546/0384 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2021
From: GOOGLE LLC
To: X DEVELOPMENT LLC
Reel/Frame 055546/0396 →
CHANGE OF NAME Recorded Mar 10, 2021
From: INDUSTRIAL PERCEPTION, INC.
To: INDUSTRIAL PERCEPTION LLC
Reel/Frame 055546/0547 →
Continuity (8)
Continuation 15827321 · Nov 30, 2017
Continuation 14961607 · Dec 7, 2015
Continuation 14212514 · Mar 14, 2014
Provisional Application 61798425 · Mar 15, 2013
Provisional Application 61793151 · Mar 15, 2013
Provisional Application 61798564 · Mar 15, 2013
Provisional Application 61798505 · Mar 15, 2013
Related Publication 20210187736A1 · Jun 24, 2021
References Cited (47)
US 4907169A · Lovoi · 1990 [cited by applicant]
US 5870490A · Takahashi et al. · 1999 [cited by applicant]
US 6970600B2 · Abe · 2005 [cited by applicant]
US 7075625B2 · Abe · 2006 [cited by applicant]
US 8010231B2 · Sumida et al. · 2011 [cited by applicant]
US 8180486B2 · Saito et al. · 2012 [cited by applicant]
US 8363907B2 · Hassebrock et al. · 2013 [cited by applicant]
US 8545517B2 · Bodduluri et al. · 2013 [cited by applicant]
US 8982182B2 · Shpunt et al. · 2015 [cited by applicant]
US 9233470B1 · Bradski et al. · 2016 [cited by applicant]
US 9862093B2 · Bradski et al. · 2018 [cited by applicant]
US 20030231788A1 · Yukhin et al. · 2003 [cited by applicant]
US 20040151365A1 · An Chang · 2004 [cited by examiner]
US 20070009150A1 · Suwa · 2007 [cited by examiner]
US 20080279446A1 · Hassebrook et al. · 2008 [cited by applicant]
US 20080285843A1 · Lim · 2008 [cited by examiner]
US 20100165195A1 · Ratner et al. · 2010 [cited by applicant]
US 20100166282A1 · Hirota · 2010 [cited by applicant]
US 20110050859A1 · Kimmel · 2011 [cited by examiner]
US 20110164114A1 · Kobayashi et al. · 2011 [cited by applicant]
US 20120152877A1 · Tadayon · 2012 [cited by applicant]
US 20120262553A1 · Chen · 2012 [cited by examiner]
US 20120268567A1 · Nakazato et al. · 2012 [cited by applicant]
US 20120287247A1 · Stenger et al. · 2012 [cited by applicant]
US 20120294510A1 · Zhang et al. · 2012 [cited by applicant]
US 20120327430A1 · Lee · 2012 [cited by examiner]
US 20130156330A1 · Kane · 2013 [cited by examiner]
US 20130182077A1 · Holz · 2013 [cited by applicant]
US 20130335535A1 · Kane et al. · 2013 [cited by applicant]
US 20140037146A1 · Taguchi · 2014 [cited by examiner]
US 20140168379A1 · Heidemann · 2014 [cited by examiner]
US 20140240464A1 · Lee · 2014 [cited by examiner]
US 20150103358A1 · Flascher · 2015 [cited by examiner]
US 20160084642A1 · Bradski et al. · 2016 [cited by applicant]
US 20180093377A1 · Bradski et al. · 2018 [cited by applicant]
WO 2007050776A2 · 2007 [cited by applicant]
Zhang et al. “Real-time scalable depth sensing with hybrid structured light illumination.” IEEE Transactions on Image Processing 23.1 (Oct. 2013): 97-109. (Year: 2013). [cited by examiner]
Raskar et al. “Prakash: lighting aware motion capture using photosensing markers and multiplexed illuminators.” ACM Transactions on Graphics (TOG) 26.3 (2007): 36-es. (Year: 2007). [cited by examiner]
Curless, Brian et al., A Volumetric Method for Building Complex Models from Range Images, Proceedings of the 23rd annual conference on Computer Graphics and Interactive Techniques, p. 303-312, ACM, New York, New York, A… [cited by applicant]
Davis, James et al., Spacetime Stereo: A Unifying Framework for Depth from Triangulation, Princeton Computer Science Tech Report TR-689-04, 2004. [cited by applicant]
Konolige, Kurt, Projected Texture Stereo, Proceedings of the 2010 IEEE International Conference on Robotics and Automation (ICRA), p. 148-155, May 3-7, 2010. [cited by applicant]
Lorensen et al., Marching Cubes: A High Resolution 3D Surface Construction Algorithm, Computer Graphics, vol. 21, No. 4, p. 163-169, Jul. 1987. [cited by applicant]
Newcombe et al., KinectFusion: Real-Time Dense Surface Mapping and Tracking, Proceedings of the 2011 10th IEEE Inernational Symposium on Mixed and Augmented Reality, p. 127-136, IEEE Computer Society, Washington, DC, 20… [cited by applicant]
Okutomi et al., A Multiple-Baseline Stereo, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 15, No. 4, p. 353-363, Apr. 1993. [cited by applicant]
Non-Final Office Action received for U.S. Appl. No. 14/212,514 mailed May 4, 2015. [cited by applicant]
Non-Final Office Action received for U.S. Appl. No. 14/961,607 mailed Jun. 29, 2017. [cited by applicant]
Non-Final Office Action received for U.S. Appl. No. 15/827,321 mailed Apr. 14, 2020. [cited by applicant]