IP Library Granted Patent US 8,233,664
Granted Patent B2
US 8,233,664 · App. 12/269,076 · Granted Jul 31, 2012

Determining relative depth of points in multiple videos

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 8,233,664
App. No.
12/269,076
Granted
Jul 31, 2012
Kind
B2
Abstract

A relative depth of points captured by at least two recording sources are determined. A first sequence of image frames acquired from a first source and a second sequence of image frames acquired from a second source are received by a data processing system. The data processing system identifies a plurality of points-of-interest, each point-of-interest being present in both the first sequence and the second sequence. The points-of-interest are clustered into common depth planes at least by comparing motion across the sequences of different points-of-interest. Results of the clustering are stored in a processor-accessible memory system.

Claims (44)

1. A method for determining a relative depth of points captured by at least two cameras, the method implemented at least in part by a data processing system and comprising the steps of:

receiving a first sequence of image frames acquired from a first camera;

receiving a second sequence of image frames acquired from a second camera;

identifying a plurality of points-of-interest, each point-of-interest being present in both the first sequence of image frames and the second sequence of image frames;

clustering the points-of-interest into common depth planes at least by comparing motion across the sequences of image frames of different points-of-interest;

storing results of the clustering in a processor-accessible memory system;

identifying sets of trajectories, each set of trajectories associated with a single point-of-interest and comprising two trajectories, each of the two trajectories in each set indicating motion of a point-of-interest across only one of the sequences of image frames;

identifying a mapping function for each set of trajectories, each mapping function associated with a single point-of-interest; and

applying the mapping functions to sets of trajectories associated with different points-of-interest than the point-of-interest associated with the mapping function being applied, wherein the comparing of motion in the clustering step occurs at least based on results of the applying step.

2. The method of claim 1 , wherein the step of applying comprises determining an error amount associated with each application of a mapping function to a set of trajectories associated with a different point-of-interest, and wherein the results of the applying step used in the clustering step include the error amounts.

3. The method of claim 1 , further comprising the step of associating non-point-of-interest points with clusters determined in the clustering step.

4. The method of claim 3 , wherein the associating of non-point-of-interest points occurs at least through the use of optical flow vectors.

5. The method of claim 1 , further comprising the step of determining a quantitative distance of at least one of the depth planes from at least one of the cameras based at least upon an analysis of camera focal length, camera angles of tilt relative to a constant set of world coordinates, or camera 3-dimensional world coordinates relative to a fixed 3-dimensional landmark.

6. The method of claim 5 , further comprising the steps of:

synthesizing an image-based-rendering result image based at least upon the determined quantitative distance and associated trajectories.

7. The method of claim 1 , wherein motion between the first camera and the second camera is non-negligible, and wherein the method further comprises the step of negating the motion prior to the step of identifying sets of trajectories.

8. A processor-accessible memory system storing instructions configured to cause a data processing system to implement a method for determining a relative depth of points captured by at least two cameras, wherein the instructions comprise:

instructions for receiving a first sequence of image frames acquired from a first camera;

instructions for receiving a second sequence of image frames acquired from a second camera;

instructions for identifying a plurality of points-of-interest, each point-of-interest being present in both the first sequence of image frames and the second sequence of image frames;

instructions for clustering the points-of-interest into common depth planes at least by comparing motion across the sequences of image frames of different points-of-interest;

instructions for storing results of the clustering in a processor-accessible memory system;

instructions for identifying sets of trajectories, each set of trajectories associated with a single point-of-interest and comprising two trajectories, each of the two trajectories in each set indicating motion of a point-of-interest across only one of the sequences of image frames;

instructions for identifying a mapping function for each set of trajectories, each mapping function associated with a single point-of-interest; and

instructions for applying the mapping functions to sets of trajectories associated with different points-of-interest than the point-of-interest associated with the mapping function being applied, wherein the comparing of motion in the clustering step occurs at least based on results of the applying step.

9. The system of claim 8 , wherein the applying comprises determining an error amount associated with each application of a mapping function to a set of trajectories associated with a different point-of-interest, and wherein the results of the applying used in the clustering step include the error amounts.

10. The system of claim 8 , wherein the instructions further comprise instructions for associating non-point-of-interest points with clusters determined in the clustering.

11. The system of claim 10 , wherein the associating of non-point-of-interest points occurs at least through the use of optical flow vectors.

12. The system of claim 8 , wherein motion between the first camera and the second camera is non-negligible, and wherein the instructions further comprise instructions for negating the motion prior to identifying sets of trajectories.

13. A system comprising:

a data processing system; and

a processor-accessible memory system communicatively connected to the data processing system and storing instructions configured to cause the data processing system to implement a method for determining a relative depth of points captured by at least two cameras, wherein the instructions comprise:

instructions for receiving a first sequence of image frames acquired from a first camera;

instructions for receiving a second sequence of image frames acquired from a second camera;

instructions for identifying a plurality of points-of-interest, each point-of-interest being present in both the first sequence of image frames and the second sequence of image frames;

instructions for clustering the points-of-interest into common depth planes at least by comparing motion across the sequences of image frames of different points-of-interest;

instructions for storing results of the clustering in the processor-accessible memory system;

instructions for identifying sets of trajectories, each set of trajectories associated with a single point-of-interest and comprising two trajectories, each of the two trajectories in each set indicating motion of a point-of-interest across only one of the sequences of image frames;

instructions for identifying a mapping function for each set of trajectories, each mapping function associated with a single point-of-interest; and

instructions for applying the mapping functions to sets of trajectories associated with different points-of-interest than the point-of-interest associated with the mapping function being applied, wherein the comparing of motion in the clustering step occurs at least based on results of the applying step.

14. The system of claim 13 , wherein the applying comprises determining an error amount associated with each application of a mapping function to a set of trajectories associated with a different point-of-interest, and wherein the results of the applying used in the clustering step include the error amounts.

15. The system of claim 13 , wherein the instructions further comprise instructions for associating non-point-of-interest points with clusters determined in the clustering.

16. The system of claim 15 , wherein the associating of non-point-of-interest points occurs at least through the use of optical flow vectors.

17. The system of claim 13 , wherein motion between the first camera and the second camera is non-negligible, and wherein the instructions further comprise instructions for negating the motion prior to identifying sets of trajectories.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2013
From: EASTMAN KODAK COMPANY
To: APPLE INC.
Reel/Frame 029939/0508 →
PATENT RELEASE Recorded Feb 1, 2013
From: CITICORP NORTH AMERICA, INC.; WILMINGTON TRUST, NATIONAL ASSOCIATION
To: EASTMAN KODAK COMPANY; EASTMAN KODAK INTERNATIONAL CAPITAL COMPANY, INC.; FAR EAST DEVELOPMENT LTD.; KODAK (NEAR EAST), INC.; KODAK AMERICAS, LTD.; KODAK PORTUGUESA LIMITED; KODAK REALTY, INC.; LASER-PACIFIC MEDIA CORPORATION; KODAK AVIATION LEASING LLC; KODAK PHILIPPINES, LTD.; NPEC INC.; FPC INC.; KODAK IMAGING NETWORK, INC.; PAKON, INC.; QUALEX INC.; CREO MANUFACTURING AMERICA LLC
Reel/Frame 029913/0001 →
SECURITY INTEREST Recorded Feb 21, 2012
From: EASTMAN KODAK COMPANY; PAKON, INC.
To: CITICORP NORTH AMERICA, INC., AS AGENT
Reel/Frame 028201/0420 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2008
From: ARDIS, PAUL; SINGHAL, AMIT
To: EASTMAN KODAK COMPANY
Reel/Frame 021819/0584 →