IP Library Granted Patent US 9,111,347
Granted Patent B2
US 9,111,347 · App. 13/380,421 · Granted Aug 18, 2015

Method for determining the pose of a camera with respect to at least one real object

Inventor: Mohammed Selim Ben Himane (Munich, DE)
Assignee: Metaio GmbH
G06T7/0046G06T2207/30244
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 9,111,347
App. No.
13/380,421
Granted
Aug 18, 2015
Kind
B2
Abstract

A method for determining the pose of a camera with respect to at least one real object, the method comprises the following steps: operating the camera ( 1 ) for capturing a 2-dimensional (or 3-dimensional) image ( 4 ) including at least a part of the real object ( 3 ), providing a transformation matrix (T) which includes information regarding a correspondence between 3-dimensional points (Pi*) associated with the real object ( 3 ) and corresponding 2-dimensional points (or 3-dimensional points) (p,) of the real object ( 5 ) as included in the 2-dimensional (or 3-dimensional) image ( 4 ), and determining an initial estimate of the transformation matrix (Tl) as an initial basis for an iterative minimization process used for iteratively refining the transformation matrix, determining a Jacobian matrix (J) which includes information regarding the initial estimate of the transformation matrix (Tl) and reference values of 3-dimensional points (Pi*) associated with the real object ( 3 ). Further, in the iterative minimization process, in each one of multiple iteration loops determining a respective updated version of the transformation matrix (T) based on a respective previous version of the transformation matrix (T) and based on the Jacobian matrix (J), wherein the Jacobian matrix is not updated during the iterative minimization process, and determining the pose of the camera ( 1 ) with respect to the real object ( 3 ) using the transformation matrix (T) determined at the end of the iterative minimization process. As a result, the camera pose can be calculated with rather low computational time.

Claims (48)

1. A method for determining the pose of a camera with respect to at least one real object, the method comprising the steps of:

operating the camera for capturing a 2-dimensional image including at least a part of the real object;

providing a transformation matrix (T) which includes information regarding a correspondence between 3-dimensional points (Pi*) associated with the real object and corresponding 2-dimensional points (p i ) of the real object as included in the 2-dimensional image;

determining an initial estimate of the transformation matrix (Tl) as an initial basis for an iterative minimization process used for iteratively refining the transformation matrix;

determining a Jacobian matrix (J) which includes information regarding the initial estimate of the transformation matrix (Tl) and reference values of 3-dimensional points (Pi*) associated with the real object;

in the iterative minimization process, in each one of multiple iteration loops determining a respective updated version of the transformation matrix (T) based on a respective previous version of the transformation matrix (T) and based on the Jacobian matrix (J), wherein the Jacobian matrix is not updated during the iterative minimization process; and

determining the pose of the camera with respect to the real object using the transformation matrix (T) determined at the end of the iterative minimization process.

2. The method of claim 1 , wherein the iterative minimization process involves the algorithm of Gauss-Newton or the algorithm of Levenberg-Marquardt.

3. The method of claim 1 , wherein the iterative minimization process involves a compositional update process in which the respective updated version of the transformation matrix (T) is computed from a multiplication between a matrix (ΔT(d)) built with update parameters of the respective previous transformation matrix and the respective previous transformation matrix (T).

4. The method of claim 1 , wherein the iterative minimization process involves the algorithm of Gauss-Newton, the iterative minimization process in each iteration loop comprising the steps of:

determining an error vector e;

determining an update vector d by solving the system: J d=e, with J being the Jacobian matrix; and

determining a respective updated version of the transformation matrix based on a respective previous version of the transformation matrix at the beginning of the respective iteration loop and based on the update vector d;

wherein after determining the respective updated version of the transformation matrix the iterative minimization process returns to determining a new error vector e based on the respective updated version of the transformation matrix.

5. The method of claim 4 , wherein the update vector d is computed from: d=(J T J) −1 j T e=J p e with J p being computed at the beginning of the iterative minimization process and kept fixed in multiple iteration loops during the iterative minimization process.

6. The method of claim 4 , further comprising

determining an update matrix ΔT(d) using the update vector d,

wherein the update matrix ΔT(d) is parameterized using Lie Algebra.

7. The method of claim 6 , wherein the update matrix ΔT(d) is parameterized using Lie Algebra se(3) associated to the Lie group SE(3).

8. The method of claim 1 , wherein the iterative minimization process involves the algorithm of Levenberg-Marquardt, the iterative minimization process in each iteration loop comprising the steps of:

determining an error vector e;

determining an update vector d by solving the system: (J T J+λ Id) d=J T e, with J being the Jacobian matrix; and

determining a respective updated version of the transformation matrix based on a respective previous version of the transformation matrix at the beginning of the respective iteration loop and based on the update vector d;

wherein after determining the respective updated version of the transformation matrix the iterative minimization process returns to determining a new error vector e based on the respective updated version of the transformation matrix or determining a new update vector d.

9. The method of claim 8 , wherein the update vector d is computed from: d=(Q+λ Id) −1 J T e, with Q=J T J being computed at the beginning of the iterative minimization process and kept fixed in multiple iteration loops during the iterative minimization process.

10. The method of claim 1 , wherein in the iterative minimization process Lie Algebra parameterization is used.

11. A method for determining the pose of a camera with respect to at least one real object, the method comprising the steps of:

operating the camera for capturing a 3-dimensional image including at least a part of the real object;

providing a transformation matrix (T) which includes information regarding a correspondence between 3-dimensional points (Pi*) associated with the real object and corresponding 3-dimensional points (p t ) of the real object as included in the 3-dimensional image;

determining an initial estimate of the transformation matrix (Tl) as an initial basis for an iterative minimization process used for iteratively refining the transformation matrix,

determining a Jacobian matrix (J) which includes information regarding the initial estimate of the transformation matrix (Tl) and reference values of 3-dimensional points (Pi*) associated with the real object;

in the iterative minimization process, in each one of multiple iteration loops determining a respective updated version of the transformation matrix (T) based on a respective previous version of the transformation matrix (T) and based on the Jacobian matrix (J), wherein the Jacobian matrix is not updated during the iterative minimization process; and

determining the pose of the camera with respect to the real object using the transformation matrix (T) determined at the end of the iterative minimization process.

12. The method of claim 11 , wherein the iterative minimization process involves the algorithm of Gauss-Newton or the algorithm of Levenberg-Marquardt.

13. The method of claim 11 , wherein the iterative minimization process involves a compositional update process in which the respective updated version of the transformation matrix (T) is computed from a multiplication between a matrix (ΔT(d)) built with update parameters of the respective previous transformation matrix and the respective previous transformation matrix (T).

14. The method of claim 11 , wherein the iterative minimization process involves the algorithm of Gauss-Newton, the iterative minimization process in each iteration loop comprising the steps of:

determining an error vector e;

determining an update vector d by solving the system: J d=e, with J being the Jacobian matrix; and

determining a respective updated version of the transformation matrix based on a respective previous version of the transformation matrix at the beginning of the respective iteration loop and based on the update vector d;

wherein after determining the respective updated version of the transformation matrix the iterative minimization process returns to determining a new error vector e based on the respective updated version of the transformation matrix.

15. The method of claim 11 , wherein the iterative minimization process involves the algorithm of Levenberg-Marquardt, the iterative minimization process in each iteration loop comprising the steps of:

determining an error vector e;

determining an update vector d by solving the system: (J T J+λ Id) d=J T e, with J being the Jacobian matrix; and

determining a respective updated version of the transformation matrix based on a respective previous version of the transformation matrix at the beginning of the respective iteration loop and based on the update vector d;

wherein after determining the respective updated version of the transformation matrix the iterative minimization process returns to determining a new error vector e based on the respective updated version of the transformation matrix or determining a new update vector d.

16. The method of claim 11 , wherein in the iterative minimization process Lie Algebra parameterization is used.

17. A non-transitory computer program product adapted to be loaded into the internal memory of a computer, which is coupled with a camera for taking images of a real environment, and comprising software code sections by means of which the steps according to claim 1 are performed when said product is running on said computer.

18. A non-transitory computer program product adapted to be loaded into the internal memory of a computer, which is coupled with a camera for taking images of a real environment, and comprising software code sections by means of which the steps according to claim 11 are performed when said product is running on said computer.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2016
From: METAIO GMBH
To: APPLE INC.
Reel/Frame 040821/0462 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 5, 2012
From: BEN HIMANE, MOHAMED SELIM
To: METAIO GMBH
Reel/Frame 027484/0276 →
Continuity (1)
Related Publication 20120120199A1 · May 17, 2012