IP Library Granted Patent US 9,934,612
Granted Patent B2
US 9,934,612 · App. 14/633,386 · Granted Apr 3, 2018

Methods and systems for determining the pose of a camera with respect to at least one object of a real environment

Inventors: Peter Meier (Munich, DE); Selim Ben Himane (Munich, DE); Stefan Misslinger (Reith im Alpbachtal, AT); Ben Blachnitzky (Munich, DE)
Assignee: Apple Inc.
G06T19/006G06T7/75G06T15/00H04N5/2224G06T2207/20092G06T2207/30244G06T2210/04
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,934,612
App. No.
14/633,386
Granted
Apr 3, 2018
Kind
B2
Abstract

Method for determining the pose of a camera with respect to an object of a real environment for use in authoring/augmented reality application that includes generating a first image by the camera capturing a real object of a real environment, generating first orientation data from at least one orientation sensor associated with the camera or from an algorithm which analyzes the first image for finding and determining features which are indicative of an orientation of the camera, allocating a distance of the camera to the real object, generating distance data indicative of the allocated distance, determining the pose of the camera with respect to a coordinate system related to the real object of the real environment using the distance data and the first orientation data. May be performed with reduced processing requirements and/or higher processing speed, in mobile device such as mobile phones having display, camera and orientation sensor.

Claims (47)

1. A method for superimposing a virtual model with a real environment, comprising:

receiving, from a camera, an image depicting a real environment;

generating first orientation data describing a vector normal to a 3D plane within a reference coordinate system;

placing a virtual model at a first location within the reference coordinate system, wherein the virtual model represents an object;

determining first position data indicative of at least one distance between the at least one camera and the 3D plane within the reference coordinate system;

moving the virtual model to a second location in the reference coordinate system, the second location positioned on the 3D plane defined by the first orientation data and the first position data;

modifying a dimension of the virtual model to generate a modified virtual model such that a first projection of the virtual model onto the image from the first location substantially equals a second projection of the modified virtual model onto the image from the second location; and

generating a modified version of an additional image of the real environment by projecting the modified virtual model from the second location onto the additional image of the real environment.

2. The method according to claim 1 , wherein a camera pose associated with capturing the additional image is different from a camera pose associated with capturing the image.

3. The method according to claim 1 , wherein modifying the dimension of the virtual model comprises scaling a size of the virtual model.

4. The method according to claim 1 , wherein modifying the dimension of the virtual model comprises scaling or moving a coordinate system related to the virtual model.

5. The method according to claim 1 , wherein the additional image is received from an additional camera that is distinct from the camera.

6. The method according to claim 1 , wherein the additional image is received from the camera.

7. The method according to claim 1 , wherein the first orientation data is generated based on features of the image or data received from an orientation sensor associated with the camera.

8. The method according to claim 1 , wherein the 3D plane is parallel to an Earth ground plane.

9. The method according to claim 1 , wherein the first position data is determined based on data received from a distance sensor associated with the camera.

10. The method according to claim 1 , wherein

the reference coordinate system is associated with a position where the camera captures the image; or

the reference coordinate system is associated with at least part of the real environment.

11. The method according to claim 1 , wherein moving the virtual model to be positioned on the 3D plane further comprises:

identifying a line defined by a center of the camera and a point of the virtual model; and

moving the virtual model along the line.

12. The method according to claim 1 , wherein the virtual model is placed at the first location within the reference coordinate system according to the first orientation data.

13. The method of claim 1 , further comprising generating second orientation data associated with the additional image using an orientation sensor associated with the camera.

14. The method of claim 1 , wherein the first position data is determined based on features of the image and features of the additional image.

15. The method according to claim 1 , further comprising moving the virtual model along the 3D plane.

16. A method for superimposing a virtual model with a real environment, comprising:

receiving, from a camera, an image depicting a real environment;

generating first orientation data describing a vector normal to a 3D plane within a reference coordinate system;

placing a virtual model at a first location within the reference coordinate system, wherein the virtual model represents an object;

determining first position data indicative of at least one distance between the camera and the 3D plane within the reference coordinate system;

casting at least one ray from a position in the reference coordinate system where the camera captured the image to at least one point of the virtual model placed at the first location;

identifying at least one intersection point where the at least one ray intersects the 3D plane; and

generating a modified version of an additional image by projecting the virtual model onto the additional image such that the at least one point of the virtual model is superimposed with the corresponding at least one intersection point.

17. The method according to claim 16 , wherein the additional image is received from an additional camera that is distinct from the camera.

18. The method according to claim 16 , wherein the first position data is generated based on:

data received from a distance sensor associated with the camera; or

features of the image and the additional image.

19. The method according to claim 16 , wherein the first orientation data is generated based on data received from an orientation sensor associated with the camera.

20. A system for superimposing a virtual model with a real environment, comprising a processing device coupled with at least one camera, wherein the processing device is configured to:

receive, from the at least one camera, an image depicting a real environment;

generate first orientation data describing a vector normal to a 3D plane within a reference coordinate system;

place a virtual model at a first location within the reference coordinate system, wherein the virtual model represents an object;

determine first position data indicative of at least one distance between the at least one camera and the 3D plane within the reference coordinate system;

move the virtual model to a second location in the reference coordinate system, the second location positioned on the 3D plane defined by the first orientation data and the first position data;

modify a dimension of the virtual model to generate a modified virtual model such that a first projection of the virtual model onto the image from the first location substantially equals a second projection of the modified virtual model onto the image from the second location; and

generate a modified version of an additional image of the real environment by projecting the modified virtual model from the second location onto the additional image.

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 Feb 27, 2015
From: MEIER, PETER; HIMANE, SELIM BEN; MISSLINGER, STEFAN; BLACHNITZKY, BEN
To: METAIO GMBH
Reel/Frame 035049/0375 →
Continuity (2)
Division 12371490 · Feb 13, 2009
Related Publication 20150310666A1 · Oct 29, 2015