IP Library Granted Patent US 9,058,063
Granted Patent B2
US 9,058,063 · App. 12/789,358 · Granted Jun 16, 2015

Tracking system calibration using object position and orientation

Inventors: Richard Lee Marks (Pleasanton, CA); Eric Larsen (Foster City, CA)
Assignee: SONY COMPUTER ENTERTAINMENT INC.
G06F3/0304G01S3/7803G01S3/784G06F3/0346
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,058,063
App. No.
12/789,358
Granted
Jun 16, 2015
Kind
B2
Abstract

To calibrate a tracking system, a computing device receives positional data of a tracked object from an optical sensor as the object is pointed approximately toward the optical sensor. The computing device computes a first angle of the object with respect to an optical axis of the optical sensor using the received positional data. The computing device receives inertial data corresponding to the object, wherein a second angle of the object with respect to a plane normal to gravity can be computed from the inertial data. The computing device determines a pitch of the optical sensor using the first angle and the second angle.

Claims (47)

1. A computer implemented method of calibrating a tracking system, comprising:

receiving positional data of a tracked object from an optical sensor by a computing device;

computing a first angle of the object with respect to an optical axis of the optical sensor based on the received positional data;

receiving inertial data corresponding to the object by the computing device;

based on the inertial data, determining a second angle of an orientation of the object with respect to a plane normal to gravity; and

in response to a calibrate command from a user, determining a pitch of the optical sensor based on both the computed first angle and the determined second angle.

2. The method of claim 1 , wherein the second angle is computed from the inertial data by the computing device.

3. The method of claim 1 , wherein the calibrate command is received while the user holds the object at a momentarily fixed position or orientation.

4. The method of claim 1 , wherein the first angle is computed based on a focal length of the optical sensor and a vertical distance between the object and the optical axis in an image taken by the optical sensor.

5. The method of claim 4 , further comprising:

computing a relative yaw between the optical sensor and the object based on the focal length, the determined pitch of the optical sensor and a horizontal distance between the object and the optical axis in the image.

6. The method of claim 1 , further comprising:

computing a relative yaw between the optical sensor and the object concurrent to computing the pitch of the optical sensor, wherein the pitch and the yaw are computed by:

determining a first three dimensional vector that points from the optical axis to a center of the object in a reference frame of the optical sensor;

determining a second three dimensional vector that points from the optical axis to the center of the object in a world reference frame that has an axis aligned with gravity;

computing a three dimensional rotation between the first vector and the second vector; and

decomposing the three dimensional rotation into a first two dimensional rotation that represents the pitch of the optical sensor and a second two dimensional rotation that represents the relative yaw between the optical sensor and the object.

7. A computer readable storage medium including instructions that, when executed by a processing system, cause the processing system to perform a method comprising:

receiving positional data of a tracked object from an optical sensor by a computing device;

computing a first angle of the object with respect to an optical axis of the optical sensor based on the received positional data;

receiving inertial data corresponding to the object by the computing device;

based on the inertial data, determining a second angle of an orientation of the object with respect to a plane normal to gravity; and

in response to a calibrate command from a user, determining a pitch of the optical sensor based on both the computed first angle and the computed second angle.

8. The computer readable storage medium of claim 7 , wherein the second angle is computed from the inertial data by the computing device.

9. The computer readable storage medium of claim 7 , wherein the calibrate command is received while the user holds the object at a momentarily fixed position or orientation.

10. The computer readable storage medium of claim 7 , wherein the first angle is computed based on a focal length of the optical sensor and a vertical distance between the object and the optical axis in an image taken by the optical sensor.

11. The computer readable storage medium of claim 10 , the method further comprising:

computing a relative yaw between the optical sensor and the object based on the focal length, the determined pitch of the optical sensor and a horizontal distance between the object and the optical axis in the image.

12. The computer readable storage medium of claim 7 , the method further comprising:

computing a relative yaw between the optical sensor and the object concurrent to computing the pitch of the optical sensor, wherein the pitch and the yaw are computed by:

determining a first three dimensional vector that points from the optical axis to a center of the object in a reference frame of the optical sensor;

determining a second three dimensional vector that points from the optical axis to the center of the object in a world reference frame that has an axis aligned with gravity;

computing a three dimensional rotation between the first vector and the second vector; and

decomposing the three dimensional rotation into a first two dimensional rotation that represents the pitch of the optical sensor and a second two dimensional rotation that represents the relative yaw between the optical sensor and the object.

13. A tracking system, comprising:

a tracked object that includes one or more inertial sensors, the tracked object to gather inertial data, and to transmit the inertial data to a computing device;

the optical sensor, to gather positional data of the tracked object as the object is pointed approximately toward the optical sensor, and to transmit the positional data to the computing device; and

the computing device, to receive the inertial data and the positional data, to compute a first angle of the object with respect to an optical axis of the optical sensor based on the received positional data, to compute a second angle of an orientation of the object with respect to a plane normal to gravity from the inertial data, and in response to a calibrate command from a user, to determine a pitch of the optical sensor based on both the computed first angle and the computed second angle.

14. The tracking system of claim 13 , wherein the calibrate command is received while the user holds the object at a momentarily fixed position or orientation.

15. The tracking system of claim 13 , wherein the computing device to compute the first angle based on a focal length of the optical sensor and a vertical distance between the object and the optical axis in an image taken by the optical sensor.

16. The tracking system of claim 15 , the computing device further to compute a relative yaw between the optical sensor and the object based on the focal length, the computed pitch and a horizontal distance between the object and the optical axis in the image.

17. The tracking system of claim 13 , the computing device further to compute a relative yaw between the optical sensor and the object concurrent to computing the pitch of the optical sensor, wherein the pitch and the yaw are computed by:

determining a first three dimensional vector that points from the optical axis to a center of the object in a reference frame of the optical sensor;

determining a second three dimensional vector that points from the optical axis to the center of the object in a world reference frame that has an axis aligned with gravity;

computing a three dimensional rotation between the first vector and the second vector; and

decomposing the three dimensional rotation into a first two dimensional rotation that represents the pitch of the optical sensor and a second two dimensional rotation that represents the relative yaw between the optical sensor and the object.

18. The method of claim 4 , wherein the first angle is computed based on a ratio of the vertical distance to the focal length, wherein the first angle is computed as an arctangent of the ratio.

Assignments (2)
CHANGE OF NAME Recorded Jul 1, 2016
From: SONY COMPUTER ENTERTAINMENT INC.
To: SONY INTERACTIVE ENTERTAINMENT INC.
Reel/Frame 039239/0356 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2010
From: MARKS, RICHARD LEE; LARSEN, ERIC
To: SONY COMPUTER ENTERTAINMENT INC.
Reel/Frame 024620/0962 →
Continuity (2)
Provisional Application 61182702 · May 30, 2009
Related Publication 20100302378A1 · Dec 2, 2010