IP Library Granted Patent US 11,265,526
Granted Patent B2
US 11,265,526 · App. 16/939,350 · Granted Mar 1, 2022

Methods for automatic registration of 3D image data

Inventors: Patrick O'Keefe (San Francisco, CA); Jeffrey Roger Powers (San Francisco, CA); Nicolas Burrus (Madrid, ES)
Assignee: Occipital, Inc.
H04N13/122G06K9/0063G06K9/00201G06T7/337H04N13/128H04N13/239H04N13/246H04N13/25H04N13/261H04N13/271G06T2207/10012G06T2207/10021G06T2207/10024G06T2207/10028G06T2207/20221G06T2207/30244H04N13/257H04N2013/0077H04N2013/0081H04N2013/0085
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,265,526
App. No.
16/939,350
Granted
Mar 1, 2022
Kind
B2
Abstract

A method for automatic registration of 3D image data, captured by a 3D image capture system having an RGB camera and a depth camera, includes capturing 2D image data with the RGB camera at a first pose; capturing depth data with the depth camera at the first pose; performing an initial registration of the RGB camera to the depth camera; capturing 2D image data with the RGB camera at a second pose; capturing depth data at the second pose; and calculating an updated registration of the RGB camera to the depth camera.

Claims (71)

1. A method comprising:

capturing first 2D image data with a red-green-blue (RGB) camera of a 3D image capture system at a first time;

capturing first depth data with a depth camera of the 3D image capture system at the first time;

determining a first pose associated with the 3D image capture system at the first time;

performing registration of the RGB camera to the depth camera based at least in part on the first pose;

capturing second 2D image data with the RGB camera at a second time;

capturing second depth data at the second time;

determining a second pose associated with the 3D image capture system at the second time; and

correcting the registration of the RGB camera to the depth camera based at least in part on the second pose.

2. The method of claim 1 , wherein correcting the registration comprises:

identifying a set of points common to the first depth and the second depth data;

calculating a texture error function for the set of points; and

updating the registration to reduce the texture error function.

3. The method of claim 2 , wherein identifying the set of points common to the first depth data and the second depth data comprises identifying the set of points using an iterative closest point algorithm.

4. The method of claim 1 , further comprising:

identifying a set of points common to the first depth—and the second depth data;

calculating a color/texture error function for the set of points;

updating the registration to reduce the color/texture error function; and

tracking motion of the 3D image capture system between the first pose and the second pose; and

wherein identifying the set of points common to the first depth data and the second depth data comprises identifying the set of points by applying a rigid body transform based at least in part on the motion.

5. The method of claim 1 , further comprising:

tracking motion of the 3D image capture system between the first pose and the second pose;

wherein capturing the second depth data comprises capturing depth data using a derived data technique; and

wherein using the derived data technique comprises calculating the second depth data based at least in part on the first depth data.

6. The method of claim 1 , wherein the second time is occurs after a threshold period of time has elapsed since the first time.

7. The method of claim 1 , wherein updating the registration comprises performing bounded iterative linearization using, at least in part, the first 2D image data, the second 2D image data, the first depth data, the second depth data, the first pose, and the second pose.

8. The method of claim 1 , further comprising:

temporally synchronizing the RGB camera and the depth camera based at least in part on timing signals provided to the RGB camera and the depth camera; and

causing the RGB camera to capture two frames for every frame captured by the depth camera.

9. The method of claim 1 , wherein performing the registration of the RGB camera to the depth camera comprises performing the registration using an image feature detection technique.

10. The method of claim 1 , further comprising:

receiving user input corresponding to one or more registration parameters; and

correcting the registration of the RGB camera to the depth camera based on at least in part on the user input.

11. The method of claim 10 , wherein receiving user input comprises:

displaying a depth map image overlaid on an RGB image on a display;

enabling user alignment of the depth map image and the RGB image on the display; and

measuring transformations resulting from the user alignment of the depth map image and the RGB image.

12. The method of claim 1 , further comprising:

identifying a set of points common to the first depth data and the second depth data;

determining a color error function from the set of points; and

updating the registration of the RGB camera to the depth camera to reduce misalignment between the RGB camera and the depth camera based at least in part on—the color error function.

13. A method comprising:

capturing first 2D image data captured by a red-green-blue (RGB) camera at a first time;

capturing first depth data captured by a depth camera at the first time;

performing registration of the RGB camera to the depth camera based at least in part on motion data at the first time;

receiving second 2D image data captured by the RGB camera at a second time;

receiving second depth data captured by the depth camera at the second time;

identifying a set of points common to the first depth data and the second depth data;

determining a color error function from the set of points; and

updating the registration of the RGB camera to the depth camera to reduce misalignment between the RGB camera and the depth camera based at least in part on—the color error function.

14. The method of claim 13 , wherein the second depth data and the second 2D image data is captured in response to the motion data indicating a change in position of a system including the RGB camera and the depth camera.

15. The method of claim 13 , wherein identifying the set of points common to the first depth data and the second depth data comprises identifying the set of points using an iterative closest point algorithm.

16. A method comprising:

receiving first 2D image data from a red-green-blue (RGB) camera of a three-dimensional (3D) system;

receiving first depth data from a depth camera, the first depth data and the first 2D image data captured at substantially a first time, the depth camera located on the 3D system at a location proximate to the RGB camera but different from the RGB camera;

determining a first pose associated with the 3D system at the first time;

performing registration of the RGB camera to the depth camera based at least in part on a comparison of the first 2D data to the first depth data;

receiving second 2D image data form the RGB camera;

receiving second depth data from the depth camera, the second depth data captured and the second 2D data captured at substantially a second time;

determining a second pose associated with the system at the second time; and

correcting the registration of the RGB camera to the depth camera based at least in part on the second pose, the second depth data, and the second 2D image data.

17. The method of claim 16 , wherein correcting the registration comprises:

identifying a set of points common to the first depth—and the second depth data;

calculating a color error function for the set of points; and

updating the registration to reduce the color error function.

18. The method of claim 16 , further comprising correcting the registration of the RGB camera to the depth camera based on at least in part on a user input.

19. The method of claim 16 , wherein correcting the registration comprises:

identifying a set of points common to the first depth—and the second depth data;

calculating a texture error function for the set of points; and

updating the registration to reduce the texture error function.

20. The method of claim 16 , wherein performing the registration of the RGB camera to the depth camera includes overlaying the depth data on the RGB image data.

Assignments (4)
SECURITY INTEREST Recorded Apr 21, 2026
From: XRPRO, LLC
To: DANLAW, INC.
Reel/Frame 075436/0662 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2022
From: OCCIPITAL, INC.
To: XRPRO, LLC
Reel/Frame 061296/0846 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2022
From: OCCIPITAL, INC.
To: XRPRO, LLC
Reel/Frame 061408/0869 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2020
From: O'KEEFE, PATRICK; POWERS, JEFFREY; BURRUS, NICOLAS
To: OCCIPITAL, INC.
Reel/Frame 054272/0059 →
Continuity (5)
Continuation 16514225 · Jul 17, 2019
Continuation 15956347 · Apr 18, 2018
Continuation 14716640 · May 19, 2015
Provisional Application 62000420 · May 19, 2014
Related Publication 20200358997A1 · Nov 12, 2020