Virtual video camera device with three-dimensional tracking and virtual object insertion
First Claim
1. A method of generating a stream of virtual camera video frame images, comprising:
- receiving a stream of video frame images from an input video frame buffer connected to a video source;
locating one or more features within a video frame image of the received stream of video frame images based on an injected content feature selected for insertion within the received stream of video frame images;
generating a set of three-dimensional coordinates that contains three-dimensional coordinates for the one or more located features;
generating a three-dimensional image of the selected injected content feature based on the generated set of three-dimensional coordinates;
inserting the generated three-dimensional image into the received video frame image based on the set of three-dimensional coordinates to generate a virtual camera video frame image; and
outputting the virtual camera video frame image to a virtual camera video frame output buffer.
0 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus are described that provide a hardware independent virtual camera that may be seamlessly integrated with existing video camera and computer system equipment. The virtual camera supports the ability to track a defined set of three-dimensional coordinates within a video stream and to dynamically insert rendered 3-D objects within the video stream on a real-time basis. The described methods and apparatus may be used to manipulate any sort of incoming video signal regardless of the source of the video. Exemplary application may include real-time manipulation of a video stream associated, for example, with a real-time video conference generated by a video camera, or a video stream generated by a video player (e.g., a video tape player, DVD, or other device) reading a stored video recording.
-
Citations
40 Claims
-
1. A method of generating a stream of virtual camera video frame images, comprising:
-
receiving a stream of video frame images from an input video frame buffer connected to a video source; locating one or more features within a video frame image of the received stream of video frame images based on an injected content feature selected for insertion within the received stream of video frame images; generating a set of three-dimensional coordinates that contains three-dimensional coordinates for the one or more located features; generating a three-dimensional image of the selected injected content feature based on the generated set of three-dimensional coordinates; inserting the generated three-dimensional image into the received video frame image based on the set of three-dimensional coordinates to generate a virtual camera video frame image; and outputting the virtual camera video frame image to a virtual camera video frame output buffer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A virtual video camera, comprising:
-
a virtual camera controller that receives a stream of video frame images from an input video frame buffer connected to a video source and transmits a generated stream of virtual camera video frame images to a virtual camera video frame output buffer; a tracking engine that locates one or more features within a video frame image of the received stream of video frame images based on an injected content feature selected for insertion within the received stream of video frame images, and generates a set of three-dimensional coordinates that contains three-dimensional coordinates for the one or more located features; and a 3-D engine that generates a three-dimensional image of the selected injected content feature based on the generated set of three-dimensional coordinates, and inserts the generated three-dimensional image into the received video frame image based on the set of three-dimensional coordinates to generate the virtual camera video frame image. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
Specification