IP Library Granted Patent US 8,131,015
Granted Patent B2
US 8,131,015 · App. 12/493,958 · Granted Mar 6, 2012

Multiple camera control system

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,131,015
App. No.
12/493,958
Granted
Mar 6, 2012
Kind
B2
Abstract

A multiple camera tracking system for interfacing with an application program running on a computer is provided. The tracking system includes two or more video cameras arranged to provide different viewpoints of a region of interest, and are operable to produce a series of video images. A processor is operable to receive the series of video images and detect objects appearing in the region of interest. The processor executes a process to generate a background data set from the video images, generate an image data set for each received video image, compare each image data set to the background data set to produce a difference map for each image data set, detect a relative position of an object of interest within each difference map, and produce an absolute position of the object of interest from the relative positions of the object of interest and map the absolute position to a position indicator associated with the application program.

Claims (52)

1. A computer-implemented method comprising:

accessing, by a processor, a first image of a scene and a second image of the scene, wherein the first image comprises a first view of the scene and the second image comprises a second view of the scene;

analyzing, by the processor, the first image and the second image to detect an object of interest in at least one of the first image and the second image;

determining, by the processor, three-dimensional coordinates representing a location of the detected object of interest;

generating, by the processor, a history comprising the determined three-dimensional coordinates of the object of interest;

detecting, by the processor, an occurrence of a gesture made by the object of interest by analyzing the history of three-dimensional coordinates; and

controlling, by the processor, an electronic application based on detecting the occurrence of the gesture.

2. The method of claim 1 , wherein the object comprises a human hand.

3. The method of claim 1 , wherein the electronic application presents a visual representation of an instance of the electronic application, the visual representation comprises a selectable screen object, and controlling the electronic application comprises causing selection of the screen object based on detecting the occurrence of the gesture.

4. The method of claim 3 , wherein the selectable screen object comprises one or more of a button or a visual icon.

5. The method of claim 1 , wherein controlling the electronic application based on detection of the occurrence of the gesture comprises providing the electronic application with an emulation of a user-input generated by a keyboard or a joystick.

6. The method of claim 1 , wherein:

the object of interest is detected in the first image and in the second image, determining three-dimensional coordinates comprises determining a first three-dimensional coordinate representing a location of the detected object of interest in the first image and a second three-dimensional coordinate representing a location of the object of interest the second image, and

the history comprises the first and second three-dimensional coordinates.

7. The method of claim 6 , wherein detecting an occurrence of the gesture made by the object of interest by analyzing the history of three-dimensional coordinates comprises comparing the first three-dimensional coordinate to the second three-dimensional coordinate.

8. The method of claim 1 , wherein detecting the occurrence of the gesture made by the object of interest by analyzing the history comprises analyzing the history to determine a minimum and a maximum value for each dimension, determining a difference between the minimum and maximum values, and comparing the difference to a threshold.

9. The method of claim 1 , wherein the electronic application presents a three-dimensional virtual environment, the virtual environment comprises a screen object, and controlling the electronic application comprises causing a cursor to touch or allow interaction with the screen object.

10. The method of claim 1 , wherein the gesture comprises a poking gesture.

11. The method of claim 1 , wherein the gesture represents an operation of an input device.

12. The method of claim 11 , wherein the gesture represents a clicking of a mouse.

13. The method of claim 11 , wherein the gesture represents typing on a keyboard.

14. The method of claim 11 , wherein the gesture represents an operation made with a joystick.

15. An apparatus comprising:

one or more processing devices and a computer-readable medium coupled to the one or more processing devices, the medium storing instructions which, when executed by the one or more processing devices, cause the one or more processing devices to:

access a first image of a scene and a second image of the scene, wherein the first image comprises a first view of the scene and the second image comprises a second view of the scene;

analyze the first image and the second image to detect an object of interest in at least one of the first image and the second image;

determine three-dimensional coordinates representing a location of the detected object of interest;

generate a history comprising the determined three-dimensional coordinates of the object of interest; and

means for detecting an occurrence of a gesture made by the object of interest by analyzing the history of three-dimensional coordinate, and controlling an electronic application based on detecting the occurrence of the gesture.

16. A device comprising:

a camera configured to acquire a first image of a scene; and

a processor configured to:

access the first image of the scene and a second image of the scene;

analyze the first image and the second image to detect an object of interest in at least one of the first image and the second image;

determine three-dimensional coordinates representing a location of the detected object of interest;

generate a history comprising the determined three-dimensional coordinates of the object of interest;

detect an occurrence of a gesture made by the object of interest by analyzing the history of three-dimensional coordinates; and

control an electronic application based on detecting the occurrence of the gesture.

17. A computer-readable medium encoded with a computer program comprising instructions that, when executed, operate to cause a processor to:

access a first image of a scene and a second image of the scene, wherein the first image comprises a first view of the scene and the second image comprises a second view of the scene;

analyze the first image and the second image to detect an object of interest in the first image and the second image;

determine three-dimensional coordinates representing a location of the detected object of interest;

generate a history comprising the determined three-dimensional coordinates of the object of interest;

detect an occurrence of a gesture made by the object of interest by analyzing the history of three-dimensional coordinates; and

control an electronic application based on detecting the occurrence of the gesture.

18. A computer-implemented method comprising:

capturing a series of images of a scene using one or more cameras;

analyzing, by a computer system, the images to detect at least one object of interest in at least one of the images;

determining, by the computer system, three-dimensional coordinates representing a location of the at least one-detected object of interest in the at least one image;

generating, by the computer system, a history comprising the determined three-dimensional coordinates of the detected object of interest;

detecting, by the computer system, an occurrence of a gesture made by at least one detected object of interest by analyzing the history of three-dimensional coordinates; and

controlling, by the computer system, an electronic application based on detecting the occurrence of the gesture.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2011
From: GESTURETEK, INC.
To: QUALCOMM INCORPORATED
Reel/Frame 026690/0421 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME AND ADDRESS, AND DATE OF EXECUTION PREVIOUSLY RECORDED ON REEL 023335 FRAME 0935. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNEE'S NAME IS JESTERTEK, INC. AND THE ADDRESS IS 151 BRISTOL DRIVE, WOODBURY, NY 11797. THE EXECUTION DATE IS 10/03/2001. Recorded Jul 7, 2011
From: HILDRETH, EVAN; MACDOUGALL, FRANCIS
To: JESTERTEK, INC.
Reel/Frame 026559/0189 →
CHANGE OF NAME Recorded Jul 7, 2011
From: JESTERTEK, INC.
To: GESTURETEK, INC.
Reel/Frame 026559/0370 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2009
From: HILDRETH, EVAN; MACDOUGALL, FRANCIS
To: GESTURETEK, INC.
Reel/Frame 023335/0935 →