User-driven three-dimensional interactive gaming environment

Information

  • Patent Grant
  • 11010971
  • Patent Number
    11,010,971
  • Date Filed
    Wednesday, October 26, 2011
    13 years ago
  • Date Issued
    Tuesday, May 18, 2021
    3 years ago
Abstract
An invention is provided for affording a real-time three-dimensional interactive environment using a depth sensing device. The invention includes obtaining depth values indicating distances from one or more physical objects in a physical scene to a depth sensing device. The depth sensing device is configurable to be maintained at a particular depth range defined by a plane so that objects between the particular depth range and the depth sensing device are processed by the depth sensing device, wherein the particular depth range establishes active detection by the depth sensing device, as depth values of objects placed through the particular depth range and toward the depth sensing device are detected and depth values of objects placed beyond the particular depth range are not detected. The objects placed through the particular depth range are rendered and displayed in a virtual scene based on geometric characteristics of the object itself.
Description
BACKGROUND OF THE INVENTION
1. Field of the Invention

This invention relates generally to video image processing, and more particularly to providing a real-time interactive computer environment using a three-dimensional camera.


2. Description of the Related Art

With the increased processing capabilities of today's computer technology, new creative methods for interacting with computer systems have become available. For example, new on-line keyboards allow individuals to enter information without the need for a physical keyboard, and new game controllers with a plurality of joysticks and directional keys enhance the user's ability to interact with the computer system. In addition to hand held input devices, input devices employing video images are currently available that allow user control of objects on a graphical display such as a video monitor.


Such video input devices often are responsive to the movement or position of a user in the field of view of a video capture device. More recently, video image processing has been used to translate the movement of the user that has been captured as a sequence of video images into signals for game control. Prior art input systems include a video capture device that scans a field of view in which a system user stands. The captured video image is applied to a video digitizer that provides digital output to a processor that analyzes and processes the digital information received from the digitizer.


Based upon the position or movement of the participant in the field of view, the processor produces signals that are used by the graphics generating system to move objects on the display. Although the operation or output of the devices or graphical displays can thereby be affected by the position or movement of the participant, the computer processing time required is frequently very extensive and complex, tending to require substantial computer and/or time resources.


In addition, known devices and methods employing user video image data that are used to affect the movement of an object on a graphical display are typically characterized by significant encumbrances upon the participant within the video camera field of view. Such systems may include additional equipment that the participant is required to wear, such as arm coverings or gloves with integral, more easily detectable portions or colors, and/or visible light sources such as light emitting diodes. Unfortunately, such systems do not allow for the ease-of-use, quick response, and simplicity needed to provide a user input device capable of meeting marketability requirements for consumer items such as might be required of video game controllers.


In view of the foregoing, there is a need for enhanced systems and methods that allow interaction in a three-dimensional environment. The methods should allow user interaction without requiring additional equipment, such as arm coverings or gloves. In addition, the method should not require overly burdensome processing ability and should have the ability to function in real-time, thus providing the user with a natural computer interaction experience.


SUMMARY OF THE INVENTION

Broadly speaking, embodiments of the present invention fill these needs by providing a real-time three-dimensional interactive environment using a three-dimensional camera. Generally, embodiments of the present invention allow the user to interactive with, and affect, computer-generated objects and environments that are combined visually with the user's actual physical environment. In one embodiment, a method is disclosed for providing a real-time three-dimensional interactive environment. The method includes obtaining two-dimensional data values for a plurality of pixels representing a physical scene, and obtaining a depth value for each pixel of the plurality of pixels using a depth sensing device. Each depth value indicates a distance from a physical object in the physical scene to the depth sensing device. At least one computer-generated virtual object is inserted into the scene, and an interaction between a physical object in the scene and the virtual object is detected based on coordinates of the virtual object and the obtained depth values. For example, the two-dimensional values for the plurality of pixels can be color values, and each depth value can indicate a distance from a physical object in the physical scene represented by the corresponding pixel to the sensing device. In one aspect, the interaction can be a collision between a physical object in the scene and the virtual object. In this aspect, the collision is detected when the virtual object and a physical object occupy a same three-dimensional space based on three-dimensional coordinates of the virtual object and three-dimensional coordinates of the physical object. Optionally, an appearance of a physical object in the scene can be visually altered. For example, the physical object can be a user, and computer-generated clothing can be mapped to the user based on the depth values for pixels representing the user. In addition, a maximum depth range can be defined that indicates the farthest distance for which depth values will be obtained. In this aspect, depth values for the user may be detected only when the user is within a distance less than the maximum depth range to the sensing device.


A computer program embodied on a computer readable medium for providing a real-time three-dimensional interactive environment is disclosed in an additional embodiment of the present invention. The computer program includes program instructions that obtain two-dimensional data values for a plurality of pixels representing a physical scene. Also, program instructions are included that obtain a depth value for each pixel of the plurality of pixels using a depth sensing device. As above, each depth value indicates a distance from a physical object in the physical scene to the depth sensing device. Program instructions also are included that insert at least one virtual object into the scene, the virtual object being computer-generated. Further, program instructions are included that detect an interaction between a physical object in the scene and the virtual object based on coordinates of the virtual object and the obtained depth values. As above, the two-dimensional values for the plurality of pixels are color values, and each depth value can indicate a distance from a physical object in the physical scene represented by the corresponding pixel to the sensing device. Optionally, program instructions can be included that define a maximum depth range that indicates the farthest distance for which depth values will be obtained.


In a further embodiment, a system is disclosed for providing a real-time three-dimensional interactive environment. The system includes a depth sensing device capable of obtaining two-dimensional data values for a plurality of pixels representing a physical scene. The depth sensing device is further capable of obtaining a depth value for each pixel of the plurality of pixels. As above, each depth value indicates a distance from a physical object in the physical scene to the depth sensing device. Also included in the system is logic that inserts at least one computer-generated virtual object into the scene. Further, the system includes logic that detects an interaction between a physical object in the scene and the virtual object based on coordinates of the virtual object and the obtained depth values. As above, the two-dimensional values for the plurality of pixels can be color values, and each depth value can indicate a distance from a physical object in the physical scene represented by the corresponding pixel to the sensing device. Optionally, the system can include logic that defines a maximum depth range, the maximum depth range indicating the farthest distance for which depth values will be obtained. In this aspect, logic can also be included that that detects depth values for a user only when the user is within a distance less than the maximum depth range to the sensing device.


A further method for providing a real-time three-dimensional interactive environment is disclosed in an additional embodiment of the present invention. As above, the method includes obtaining two-dimensional data values for a plurality of pixels representing a physical scene. Also as above, a depth value for each pixel of the plurality of pixels is obtained using a depth sensing device. Each depth value indicates a distance from a physical object in the physical scene to the depth sensing device. Based on the obtained two-dimensional data values and the obtained depth values, three-dimensional volume information is estimated for each physical object in the physical scene. In addition, computer-generated virtual objects having three-dimensional volume information for the virtual object can be inserted into the scene. In this manner, interactions between physical and virtual objects in the scene can be detected based on the coordinates of the three-dimensional volume information for the virtual object and the physical object. Other aspects and advantages of the invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the invention.





BRIEF DESCRIPTION OF THE DRAWINGS

The invention, together with further advantages thereof, may best be understood by reference to the following description taken in conjunction with the accompanying drawings in which:



FIG. 1A is a block diagram of an exemplary system for providing a real-time three-dimensional interactive environment, in accordance with an embodiment of the present invention;



FIG. 1B is an illustration showing a two-dimensional data captured using a typical depth camera;



FIG. 1C is an illustration showing depth data captured using a typical depth camera;



FIG. 1D illustrates an exemplary system environment for providing a real-time three-dimensional interactive environment, in accordance with an embodiment of the present invention;



FIG. 2 is a flowchart showing a method for providing a real-time three-dimensional interactive environment, in accordance with an embodiment of the present invention;



FIG. 3 is an illustration showing a top view of a user interacting with a maximum range plane, in accordance with an embodiment of the present invention;



FIG. 4 is an illustration showing two-dimensional data for an exemplary scene, in accordance with an embodiment of the present invention;



FIG. 5 illustrates z-values for the exemplary scene of FIG. 4, in accordance with an embodiment of the present invention;



FIG. 6 is an illustration showing computer generated virtual objects inserted into a scene, in accordance with an embodiment of the present invention;



FIG. 7 is an illustration showing computer-generated changes to the physical objects within the room, in accordance with an embodiment of the present invention; and



FIG. 8 is a block diagram of a computer processing system for providing a three-dimensional interactive environment, in accordance with an embodiment of the present invention.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

An invention is disclosed for providing a real-time three-dimensional interactive environment using a three-dimensional camera. Generally, embodiments of the present invention allow the user to interactive with, and affect, computer objects and environments that are combined visually with the user's actual physical environment. Through the use of a three-dimensional camera, three-dimensional images can be obtained in real-time. These three-dimensional images are utilized to place digital objects within the user's environment, track the user's movement, and accurately detect when the user interacts with the digital objects. In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without some or all of these specific details. In other instances, well known process steps have not been described in detail in order not to unnecessarily obscure the present invention.


In the following description, the terms “depth camera” and “three-dimensional camera” will refer to any camera that is capable of obtaining distance or depth information as well as two-dimensional pixel information. For example, a depth camera can utilize controlled infrared lighting to obtain distance information. Another exemplary depth camera can be a stereo camera pair, which triangulates distance information using two standard cameras. Similarly, the term “depth sensing device” will refer to any type of device that is capable of obtaining distance information as well as two-dimensional pixel information.


Recent advances in three-dimensional imagery have opened the door for increased possibilities in real-time interactive computer animation. In particular, new “depth cameras” provide the ability to capture and map the third-dimension in addition to normal two-dimensional video imagery. With the new depth data, embodiments of the present invention allow the placement of computer-generated objects in various positions within a video scene in real-time, including behind other objects.


Moreover, embodiments of the present invention provide real-time interactive gaming experiences for users. For example, users can interact with various computer-generated objects in real-time. Furthermore, video scenes can be altered in real-time to enhance the user's game experience. For example, computer generated costumes can be inserted over the user's clothing, and computer generated light sources can be utilized to project virtual shadows within a video scene. Hence, using the embodiments of the present invention and a depth camera, users can experience an interactive game environment within their own living room.



FIG. 1A is a block diagram of an exemplary system 100 for providing a real-time three-dimensional interactive environment, in accordance with an embodiment of the present invention. As shown in FIG. 1A, the system 100 includes a depth camera 102, an input image processor 104, an output image processor 106, and a video display device 108.


As mentioned above, the depth camera 102 provides the ability to capture and map the third-dimension in addition to normal two-dimensional video imagery. FIGS. 1B and 1C illustrated the images generated by a typical depth camera 102. In particular, FIG. 1B is an illustration showing two-dimensional data 120 captured using a typical depth camera. Similar to normal cameras, a depth camera captures two-dimensional data for a plurality of pixels that comprise the video image. These values are color values for the pixels, generally red, green, and blue (RGB) values for each pixel. In this manner, objects captured by the camera appear as two-dimension objects on a monitor. For example, in FIG. 1B, the exemplary scene includes a cylinder object 122 and a sphere object 124 disposed on a table 126, which is situated among hills 128, illustrated in the background.


However, unlike a conventional camera, a depth camera also captures depth values for the scene. FIG. 1C is an illustration showing depth data 150 captured using a typical depth camera. As illustrated in FIG. 1B, the depth camera captures the x and y components of a scene using RGB values for each pixel in the scene. However, as shown in FIG. 1C, the depth camera also captures the z-components of the scene, which represent the depth values for the scene. Since the depth values correspond to the z-axis, the depth values are often referred to as z-values.


In operation, a z-value is captured for each pixel of the scene. Each z-value represents a distance from the camera to a particular object in the scene corresponding to the related pixel. For example, in FIG. 1C, z-values are illustrated for the cylinder object 152, the sphere object 154, and part of the table 156. In addition, a maximum detection range is defined beyond which depth values will not be detected. For example, in FIG. 1C the maximum depth range 158 appears as vertical plane wherein all pixels are given the same depth value. As will be described in greater detail below, this maximum range plane can be utilized by the embodiments of the present invention to provide user defined object tracking. Thus, using a depth camera, each object can be tracked in three dimensions. As a result, a computer system of the embodiments of the present invention can utilize the z-values, along with the two-dimensional pixel data, to create an enhanced three-dimensional interactive environment for the user.


Referring back to FIG. 1A, the input image processor 104 translates the captured video images and depth data into signals that are delivered to an output image processor. The output image processor 106 is programmed to effect movement and status of virtual objects on the video display device 108 in response to signals received from the input image processor 104.


These and additional aspects of the present invention may be implemented by one or more processors which execute software instructions. According to one embodiment of the present invention, a single processor executes both input image processing and output image processing. However, as shown in the figures and for ease of description, the processing operations are shown as being divided between an input image processor 104 and an output image processor 106. It should be noted that the invention is in no way to be interpreted as limited to any special processor configuration, such as more than one processor. The multiple processing blocks shown in FIG. 1A and the other Figures are shown only for convenience of description.



FIG. 1D illustrates an exemplary system environment for providing a real-time three-dimensional interactive environment, in accordance with an embodiment of the present invention. The system environment includes, depth camera 170, video display device 172, and console 174 having processor functionality, such as a video game machine. Generally, a user and their environment, such as a living room, are located within the field of view of the depth camera 170. The processing system 174 can be implemented by an entertainment system, such as a Sony® Playstation™ II or Sony® Playstation™ I type of processing and computer entertainment system. It should be noted, however, that processing system 174 can be implemented in other types of computer systems, such as personal computers, workstations, laptop computers, wireless computing devices, or any other type of computing device that is capable of receiving and processing graphical image data.



FIG. 2 is a flowchart showing a method 200 for providing a real-time three-dimensional interactive environment, in accordance with an embodiment of the present invention. In an initial operation 202, preprocess operations are performed. Preprocess operations can include defining three-dimensional objects, adjusting a depth camera for optimum performance, and other preprocess operations that will be apparent to those skilled in the art after a careful reading of the present disclosure.


In operation 204, a maximum depth range is defined. As described above, a maximum depth range is defined beyond which depth values will not be detected. Typically, the maximum depth range appears as vertical plane wherein all pixels are given the same depth value. This maximum range plane can be utilized by the embodiments of the present invention to provide user defined object tracking, as illustrated in FIG. 3.



FIG. 3 is an illustration showing a top view 300 of a user 302 interacting with a maximum depth range plane 158, in accordance with an embodiment of the present invention. As shown in FIG. 3, a maximum depth range plane 158, which defines tracking distance, is defined. Objects in front of the maximum depth range plane 158 are tracked, while objects behind the maximum depth range plane 158 are not tracked. In this manner, the user 302 can determine when to interact with the system by allowing part of the user's body, or an object, to cross the maximum depth range plane 158.


For example, when the user 302 of FIG. 3 places their hands 304 in front of the maximum depth range plane 158, the system detects and tracks their hands 304. In this manner, the user 302 controls when to interact with the system, and the system can avoid any confusing information caused, for example, by unexpected body movement. In addition, motion confusion caused by other people moving behind the user, or for example, a family pet, can be avoided.


For example, in one embodiment of the present invention, the user 302 is allowed to drag and drop objects on the screen by gesturing with their hands across the maximum depth range plane 158. In this embodiment, a user can extend their hand 304 or other object across the maximum depth range plane 158 to initiate interaction with objects on a screen. The movement of the user's hand is then tracked using the depth data provided by the depth camera. Tracking is then terminated when the user retracts their hand behind the maximum depth range plane 158. During tracking, objects encountered by the user's hand movement can be moved and manipulated, as described in greater detail subsequently.


Referring back to FIG. 2, two-dimensional data values are obtained for each pixel comprising the scene, in operation 206. As mentioned above, a depth camera can capture two-dimensional data for a plurality of pixels that comprise a video image. These values are color values for the pixels, and generally red, green, and blue (RGB) values for each pixel. In this manner, objects captured by the camera appear as two-dimension objects on a monitor.


For example, FIG. 4 is an illustration showing two-dimensional data 400 for an exemplary scene, in accordance with an embodiment of the present invention. The exemplary scene on FIG. 4 illustrates a user 302 in the living room of their home. However, it should be noted that embodiments of the present invention can be utilized in any location, as desired by the user. As can be appreciated, various physical objects are located in this environment. For example, in FIG. 4 there is a vase 402 and sofa 404, as well as a picture on the back wall 406 of the room. As will be discussed in greater detail subsequently these exemplary objects will illustrate properties of the embodiments of the present invention.


Generally, the user 302 positions the depth camera in a suitable position in front of them. In addition, various adjustments can be made to the camera angle, aperture setting, and other settings that will be apparent to those skilled in the art after a careful reading of the present disclosure. The camera then captures video data for the scene, generally comprising color values for the pixels comprising the scene.


Referring back to FIG. 2, depth values are obtained for each pixel comprising the scene, in operation 208. In addition to two-dimensional data capture, a depth camera also captures depth values for the scene. As discussed above, the depth camera captures the x and y components of a scene using RGB values for each pixel in the scene. However, the depth camera also captures the z-components of the scene, which represent the depth values for the scene.


Thus, in operation 208, a z-value is captured for each pixel of the scene. Each z-value represents a distance from the camera to a particular object in the scene corresponding to the related pixel. For example, FIG. 5 illustrates z-values for the exemplary scene of FIG. 4, in accordance with an embodiment of the present invention. The z-values are included for the user 302, however, in the example of FIG. 5 the maximum depth range plane 158 has been defined just behind the user 302. Thus, excluding depth values for the other objects in the scene, including the vase, sofa, and back wall. However, it should be noted that the maximum depth range plane 158 can be defined at any distance. Thus, the maximum depth range plane 158 can be defined farther back in the exemplary scene to include the vase, sofa, and back wall.


In this manner, the position and movement of the user 302 can be tracked. Moreover, using the depth information, the user 302 can be tracked in three dimensions, thus allowing for realistic placement of objects within the scene. Furthermore, using the three-dimensional data allows users to interact with a virtual environment in a realistic manner thus enhancing the user's 302 experience.


In addition, one embodiment of the present invention can construct complete 3D volume information for objects in the scene using the z-values. In general, a depth camera does not itself provide full volume information. That is, the depth camera provides z-values for pixels of object surfaces that are visible to the camera. Hence, the z-values for the surfaces, such as the user's 302 back are not provided by the depth camera. Thus, one embodiment of the present invention estimates the complete volume information for objects in the scene to create complete 3D volumes, which can later be intersected with other 3D objects to determine collisions or for measuring distances between the objects.


For example, in FIG. 5, one embodiment of the present invention estimates the “back” z-values of the user 302, which are not visible to the depth camera. In one embodiment, a pre-generated model is utilized to estimate the volume of a particular object. Although the pre-generated model may not be absolutely accurate, and good estimation of volume can be achieved. For example, when estimating a volume of a particular person, the depth of the person can be estimated to be equal to the width of the person. When the model is accurate, embodiments of the present invention orient the model to match the orientation the actual object, and then utilize the model to estimate the volume of the object. For example, when the object is a couch, embodiments of the present invention orient a model couch to match the couch object, then determine the volume of the couch object based on the couch size and the model data.


In this manner, a complete 3D volume of the user 302 can be constructed, which can later be utilized to interact with computer generated virtual objects. In this manner, embodiments of the present invention can process both real and virtual objects in a single consistent manner.


Referring back to FIG. 2, in operation 210, virtual objects are inserted into the scene. With the new depth data obtained in operation 208, embodiments of the present invention allow the placement of computer-generated objects in various positions within a video scene in real-time, including behind other objects in operation 210.


In this manner, embodiments of the present invention provide real-time interactive gaming experiences for users. For example, users can interact with various computer-generated objects in real-time. Furthermore, video scenes can be altered in real-time to enhance the user's game experience. For example, computer generated costumes can be inserted over the user's clothing, and computer generated light sources can be utilized to project virtual shadows within a video scene. Hence, using the embodiments of the present invention and a depth camera, user's can experience an interactive game environment within their own living room.


For example, FIG. 6 is an illustration showing computer-generated virtual objects inserted into a scene, in accordance with an embodiment of the present invention. As in FIG. 4, the scene includes a vase 402 and sofa 404, as well as a picture on the back wall 406 of the room. The depth camera captures these physical objects using two-dimensional pixel data, as described previously. In addition, also described above, the depth camera captures depth data, in this example for the user 302. Using the depth data, embodiments of the preset invention insert virtual objects into the scene. For example, in FIG. 6 two virtual objects 600 and 602 were added to the scene. As illustrated, the virtual objects 600 and 602 can be inserted into the scene in a realistic manner because of the added depth information available.


That is, the depth data obtained in operation 208 can be utilized to determine the exact position of the user 302 in three-dimensional space. As a result, the virtual “pencil” object 600 can be positioned, altered, and animated to appear to be “behind” the user 302. Similarly, the virtual sphere 602 can be positioned, altered, and animated to appear, for example, in “front” of the user 302. Moreover, by extending the maximum depth range to approximately the position of the back wall 406, the inserted virtual objects can appear to interact with other objects in the user's room. In addition, one embodiment of the present invention inserts a virtual light source in the scene to cast “shadows” 604 and 606 from the virtual objects, which further increase the realism of the virtual scene. Since, the exact three-dimensional position of the floor and sofa 404 can be determined from the depth data, the computer-generated shadow 606 of the virtual sphere 602 can appear to be cast on the floor and the computer-generated shadow 604 of the virtual pencil 602 can appear to be cast on the sofa 404 and on the floor. Virtual objects can also include computer-generated changes to the physical objects within the room, as illustrated in FIG. 7.



FIG. 7 is an illustration showing computer-generated changes to the physical objects within the room, in accordance with an embodiment of the present invention. As in FIG. 4, the scene includes a vase 402 and sofa 404, as well as a picture on the back wall 406 of the room. The depth camera captures these physical objects using two-dimensional pixel data, as described previously. In addition, also described above, the depth camera captures depth data, in this example for the user 302. Using the depth data, embodiments of the preset invention can visually alter physical objects in the scene. For example, in FIG. 7, a computer-generated costume 700 has been inserted into the scene over the user's clothing. Since the z-values obtained from the depth camera allow the system to track the user's movement, the computer-generated costume 700 can be animated to move with the user, creating the appearance that the user 302 is “wearing” the computer-generated costume.


Referring back to FIG. 2, the user's interactions with the virtual objects are detected based on the obtained two-dimensional data and the depth values. As is well known in the art, computer-generated three-dimensional objects are located in a virtual three-dimensional space and processed, often using matrixes, to generate a two-dimensional projection of the three-dimensional scene, typically viewed using a monitor or television. In one embodiment of the present invention, the virtual three-dimensional space is configured to coincide with the physical space of the user. For example, referring to FIG. 6, the virtual three-dimensional space can be configured to coincide with the living room of the user 302. In this manner, embodiments of the present invention can detect when objects, both virtual and physical, occupy the same three-dimensional space.


Thus, embodiments of the present invention can, utilizing the z-values from the depth camera, allow the user 302 to interact with the virtual objects. For example, a user can swing at the virtual sphere 602 and the system can detect when the user's 302 hand, for example, occupies the same space as the virtual sphere 602, indicating a collision. Thereafter, an appropriate response to the collision can be generated, for example, the virtual sphere 602 can be made the “virtually fly” across the room.


Post process operations are performed in operation 214. Post process operations can include saving locations of virtual objects on a computer storage medium, loading of saved virtual objects from the computer storage medium, and other post process operation that will be apparent to those skilled in the art after a careful reading of the present disclosure.


In one embodiment, the three-dimensional interactive system and methods of the embodiments of the present invention are implemented using a computer processing system illustrated by the block diagram of FIG. 8. The processing system may represent a computer-based entertainment system embodiment that includes a central processing unit (“CPU”) 804 coupled to a main memory 802 and graphical processing unit (“GPU”) 806. The CPU 804 is also coupled to an Input/Output Processor (“TOP”) Bus 808. In one embodiment, the GPU 806 includes an internal buffer for fast processing of pixel based graphical data. Additionally, the GPU can include an output processing portion or functionality to convert the image data processed into standard television signals, for example NTSC or PAL, for transmission to a television monitor 807 connected external to the entertainment system 800 or elements thereof. Alternatively, data output signals can be provided to a display device other than a television monitor, such as a computer monitor, LCD (Liquid Crystal Display) device, or other type of display device.


The IOP bus 808 couples the CPU 804 to various input/output devices and other busses or device. IOP bus 808 is connected to input/output processor memory 810, a controller 812, a memory card 814, a Universal Serial Bus (USB) port 816, an IEEE1394 (also known as a Firewire interface) port, and bus 830. Bus 830 couples several other system components to CPU 804, including operating system (“OS”) ROM 820, flash memory 822, a sound processing unit (“SPU”) 824, an optical disc controlling unit 826, and a hard disk drive (“HDD”) 828. In one aspect of this embodiment, the video capture device can be directly connected to the IOP bus 808 for transmission therethrough to the CPU 804; there, data from the video capture device can be used to change or update the values used to generate the graphics images in the GPU 806.


Programs or computer instructions embodying aspects of the present invention can be provided by several different methods. For example, the user input method for interaction with graphical images can be provided in the form of a program stored in HDD 828, flash memory 822, OS ROM 820, or on a memory card 812. Alternatively, the program can be downloaded to the processing unit 800 through one or more input ports coupled to the CPU 804. The program modules defining the input method can be provided with the game or application program that is executed by the CPU 804 and displayed on display device 807 or they may be provided separately from the application program, such as for execution from local main memory 802.


Embodiments of the present invention also contemplate distributed image processing configurations. For example, the invention is not limited to the captured image and display image processing taking place in one or even two locations, such as in the CPU or in the CPU and one other element. For example, the input image processing can just as readily take place in an associated CPU, processor or device that can perform processing; essentially all of image processing can be distributed throughout the interconnected system. Thus, the present invention is not limited to any specific image processing hardware circuitry and/or software; it is also not limited to any specific combination of general hardware circuitry and/or software, nor to any particular source for the instructions executed by processing components.


Although the foregoing invention has been described in some detail for purposes of clarity of understanding, it will be apparent that certain changes and modifications may be practiced within the scope of the appended claims. Accordingly, the present embodiments are to be considered as illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims.

Claims
  • 1. A computer implemented method having access to memory, the method providing a real-time three-dimensional interactive environment, comprising the operations of: obtaining depth values indicating distances from one or more physical objects in a physical scene to a depth sensing device, the depth sensing device being maintained at a particular depth range defined by a plane that is substantially perpendicular to a view direction of the depth sensing device, so that objects within a field of view of the depth sensing device and between the particular depth range and the depth sensing device are processed by the depth sensing device, and objects within the field of view and beyond the particular depth range are not visible to, nor processed by, the depth sensing device, wherein depth values of surfaces of objects within the field of view and placed through the particular depth range toward, and unobstructed to, the depth sensing device are provided by the depth sensing device, and depth values of surfaces of objects within the field of view placed beyond the particular depth range that are unobstructed to the depth sensing device are not provided by the depth sensing device, wherein the objects placed through the particular depth range are rendered and displayed in a virtual scene based on geometric characteristics of the object itself;wherein the depth sensing device captures depth values for pixels of the scene corresponding to surfaces placed through the particular depth range and towards the depth sensing device, and wherein the depth sensing device does not capture depth values for pixels of the scene corresponding to surfaces that are beyond the particular depth range;initiating tracking of the objects when the objects are placed through the particular depth range and toward the depth sensing device, and terminating tracking of the objects when the objects are placed beyond the particular depth range.
  • 2. A method as recited in claim 1, further comprising, detecting an interaction between only objects placed through the particular depth range and the virtual object based on coordinates of the virtual object and the obtained depth values of the objects placed through the particular depth range.
  • 3. A method as recited in claim 1, wherein the depth sensing device is a depth camera using controlled infrared lighting.
  • 4. A method as recited in claim 1, further comprising, estimating three-dimensional volume information for each physical object within the particular depth range based on the obtained depth values.
  • 5. A method as recited in claim 1, wherein the objects include a hand of a user;wherein tracking of the hand of the user is initiated when placed through the particular depth range and toward the depth sensing device, and wherein tracking of the hand of the user is terminated when placed beyond the particular depth range;wherein the virtual scene is rendered to a display device.
  • 6. A method as recited in claim 1, further comprising: inserting at least one virtual object into the virtual scene after obtaining the depth values, the virtual object being computer-generated and configured to be inserted within and beyond the particular depth range;
  • 7. A method as recited in claim 6, wherein the one or more virtual shadows includes a shadow of the at least one virtual object cast on one or more of the objects placed through the particular depth range that are rendered and displayed in the virtual scene.
  • 8. A computer program embodied on a non-transitory computer readable medium for providing a real-time three-dimensional interactive environment, comprising: program instructions that obtain depth values indicating distances from one or more physical objects in a physical scene to a depth sensing device, the depth sensing device being maintained at a particular depth range defined by a plane that is substantially perpendicular to a view direction of the depth sensing device, so that objects within a field of view of the depth sensing device and between the particular depth range and the depth sensing device are processed by the depth sensing device, and objects within the field of view and beyond the particular depth range are not visible to, nor processed by the depth sensing device, wherein depth values of surfaces of objects placed through the particular depth range toward, and unobstructed to, the depth sensing device are provided by the depth sensing device, and depth values of surfaces of objects within the field of view placed beyond the particular depth range that are unobstructed to the depth sensing device are not provided by the depth sensing device, wherein the objects placed through the particular depth range are rendered and displayed in a virtual scene based on geometric characteristics of the object itself;wherein the depth sensing device captures depth values for pixels of the scene corresponding to surfaces placed through the particular depth range and towards the depth sensing device, and wherein the depth sensing device does not capture depth values for pixels of the scene corresponding to surfaces that are beyond the particular depth range;program instructions that initiate tracking of the objects when the objects are placed through the particular depth range and toward the depth sensing device, and terminate tracking of the objects when the objects are placed beyond the particular depth range.
  • 9. A computer program as recited in claim 8, further comprising, program instructions that detect an interaction between only objects placed through the particular depth range and the virtual object based on coordinates of the virtual object and the obtained depth values of the objects placed through the particular depth range.
  • 10. A computer program as recited in claim 8, wherein the depth sensing device is a depth camera using controlled infrared lighting.
  • 11. A computer program as recited in claim 8, further comprising, program instructions that estimate three-dimensional volume information for each physical object within the particular depth range based on the obtained depth values.
  • 12. A computer program as recited in claim 8, wherein the objects include a hand of a user;wherein tracking of the hand of the user is initiated when placed through the particular depth range and toward the depth sensing device, and wherein tracking of the hand of the user is terminated when placed beyond the particular depth range;wherein the virtual scene is rendered to a display device.
  • 13. A system for providing a real-time three-dimensional interactive environment, comprising: a depth sensing device capable of obtaining depth values indicating distances from one or more physical objects in a physical scene to a depth sensing device, the depth sensing device being maintained at a particular depth range defined by a plane that is substantially perpendicular to a view direction of the depth sensing device, so that objects within a field of view of the depth sensing device and between the particular depth range and the depth sensing device are processed by the depth sensing device, and objects within the field of view and beyond the particular depth range are not visible to, nor processed by the depth sensing device, wherein depth values of surfaces of objects within the field of view and placed through the particular depth range toward, and unobstructed to, the depth sensing device are provided by the depth sensing device, and depth values of surfaces of objects within the field of view placed beyond the particular depth range that are unobstructed to the depth sensing device are not provided by the depth sensing device;wherein the depth sensing device captures depth values for pixels of the scene corresponding to surfaces placed through the particular depth range and towards the depth sensing device, and wherein the depth sensing device does not capture depth values for pixels of the scene corresponding to surfaces that are beyond the particular depth range; anda console having logic configured to render and display the objects placed through the particular depth range in a virtual scene based on geometric characteristics of the object itself, the console further having logic that initiates tracking of the objects when the objects are placed through the particular depth range and toward the depth sensing device, and terminates tracking of the objects when the objects are placed beyond the particular depth range.
  • 14. A system as recited in claim 13, further comprising, logic that detects an interaction between only objects placed through the particular depth range and the virtual object based on coordinates of the virtual object and the obtained depth values of the objects placed through the particular depth range.
  • 15. A system as recited in claim 13, wherein the depth sensing device is a depth camera using controlled infrared lighting.
  • 16. A system as recited in claim 13, further comprising, logic that estimates three-dimensional volume information for each physical object within the particular depth range based on the obtained depth values.
  • 17. A system as recited in claim 13, wherein the objects include a hand of a user;wherein tracking of the hand of the user is initiated when placed through the particular depth range and toward the depth sensing device, and wherein tracking of the hand of the user is terminated when placed beyond the particular depth range;wherein the console is configured to render the virtual scene to a display device.
CLAIM OF PRIORITY

This application claims priority as a continuation of U.S. patent application Ser. No. 10/448,614, filed May 29, 2003 (now U.S. Pat. No. 8,072,470, issued Dec. 6, 2011), and entitled “SYSTEM AND METHOD FOR PROVIDING A REAL-TIME THREE-DIMENSIONAL INTERACTIVE ENVIRONMENT,” which is incorporated herein by reference. This application is related to U.S. patent application Ser. No. 10/365,120, filed Feb. 11, 2003, and entitled “Method and Apparatus for Real-Time Motion Capture,” which is incorporated herein by reference.

US Referenced Citations (357)
Number Name Date Kind
3943277 Everly et al. Mar 1976 A
4263504 Thomas Apr 1981 A
4313227 Eder Jan 1982 A
4558864 Medwedeff Dec 1985 A
4565999 King et al. Jan 1986 A
4787051 Olson Nov 1988 A
4802227 Elko et al. Jan 1989 A
4823001 Kobayashi et al. Apr 1989 A
4843568 Krueger et al. Jun 1989 A
4963858 Chien Oct 1990 A
5034986 Karmann et al. Jul 1991 A
5055840 Bartlett Oct 1991 A
5111401 Everett et al. May 1992 A
5128671 Thomas, Jr. Jul 1992 A
5144594 Gilchrist Sep 1992 A
5195179 Tokunaga Mar 1993 A
5260556 Lake et al. Nov 1993 A
5297061 Dementhon et al. Mar 1994 A
5335011 Addeo et al. Aug 1994 A
5394168 Smith, III et al. Feb 1995 A
5426450 Drumm Jun 1995 A
5435554 Lipson Jul 1995 A
5455685 Mori Oct 1995 A
5473701 Cezanne et al. Dec 1995 A
5485273 Mark et al. Jan 1996 A
5517333 Tamura et al. May 1996 A
5528265 Harrison Jun 1996 A
5534917 MacDougall Jul 1996 A
5543818 Scott Aug 1996 A
5557684 Wang et al. Sep 1996 A
5563988 Maes et al. Oct 1996 A
5568928 Munson et al. Oct 1996 A
5581276 Cipolla et al. Dec 1996 A
5583478 Renzi Dec 1996 A
5586231 Florent et al. Dec 1996 A
5611000 Szeliski et al. Mar 1997 A
5611731 Bouton et al. Mar 1997 A
5616078 Oh Apr 1997 A
5639229 Thomas, III Jun 1997 A
5649021 Matey et al. Jul 1997 A
5675825 Dreyer et al. Oct 1997 A
5675828 Stoel et al. Oct 1997 A
5677710 Thompson-Rohrlich Oct 1997 A
5706364 Kopec et al. Jan 1998 A
5768415 Jagadish et al. Jun 1998 A
5796354 Cartabiano et al. Aug 1998 A
5818425 Korth Oct 1998 A
5846086 Bizzi Dec 1998 A
5850222 Cone Dec 1998 A
5850473 Andersson Dec 1998 A
5861910 McGarry et al. Jan 1999 A
5870100 DeFreitas Feb 1999 A
5883616 Koizumi et al. Mar 1999 A
5889672 Schuler et al. Mar 1999 A
5900863 Numazaki May 1999 A
5913727 Ahdoot Jun 1999 A
5914723 Gajewska Jun 1999 A
5917493 Tan et al. Jun 1999 A
5917936 Katto Jun 1999 A
5923306 Smith et al. Jul 1999 A
5923318 Zhai et al. Jul 1999 A
5929444 Leichner Jul 1999 A
5930383 Netzer Jul 1999 A
5930741 Kramer Jul 1999 A
5937081 O'Brill et al. Aug 1999 A
5959596 McCarten et al. Sep 1999 A
5963250 Parker et al. Oct 1999 A
5978772 Mold Nov 1999 A
5993314 Dannenberg et al. Nov 1999 A
6009210 Kang Dec 1999 A
6014167 Suito et al. Jan 2000 A
6021219 Andersson et al. Feb 2000 A
6031545 Ellenby et al. Feb 2000 A
6031934 Ahmad et al. Feb 2000 A
6037942 Millington Mar 2000 A
6044181 Szeliski et al. Mar 2000 A
6049619 Anandan et al. Apr 2000 A
6056640 Schaaij May 2000 A
6057909 Yahav et al. May 2000 A
6061055 Marks May 2000 A
6072494 Nguyen Jun 2000 A
6075895 Qiao et al. Jun 2000 A
6091905 Yahav et al. Jul 2000 A
6094625 Ralston Jul 2000 A
6097369 Wambach Aug 2000 A
6100517 Yahav et al. Aug 2000 A
6100895 Miura et al. Aug 2000 A
6101289 Kellner Aug 2000 A
6115052 Freeman et al. Sep 2000 A
6134346 Berman et al. Oct 2000 A
6144367 Berstis Nov 2000 A
6151009 Kanade et al. Nov 2000 A
6156368 Faeger Dec 2000 A
6160540 Fishkin et al. Dec 2000 A
6166744 Jaszlics et al. Dec 2000 A
6173059 Huang et al. Jan 2001 B1
6175343 Mitchell et al. Jan 2001 B1
6184863 Sibert et al. Feb 2001 B1
6191773 Maruno et al. Feb 2001 B1
6195104 Lyons Feb 2001 B1
6215898 Woodfill et al. Apr 2001 B1
6243074 Fishkin et al. Jun 2001 B1
6243491 Andersson Jun 2001 B1
6275213 Tremblay et al. Aug 2001 B1
6281930 Parker et al. Aug 2001 B1
6282362 Murphy et al. Aug 2001 B1
6295064 Yamaguchi Sep 2001 B1
6297838 Chang et al. Oct 2001 B1
6304267 Sata Oct 2001 B1
6307549 King et al. Oct 2001 B1
6307568 Rom Oct 2001 B1
6323839 Fukuda et al. Nov 2001 B1
6323942 Bamji Nov 2001 B1
6326901 Gonzales Dec 2001 B1
6327073 Yahav et al. Dec 2001 B1
6331911 Manassen et al. Dec 2001 B1
6346929 Fukushima et al. Feb 2002 B1
6351661 Cosman Feb 2002 B1
6371849 Togami Apr 2002 B1
6375572 Masuyama et al. Apr 2002 B1
6392644 Miyata May 2002 B1
6393142 Swain et al. May 2002 B1
6394897 Togami May 2002 B1
6400374 Lanier Jun 2002 B2
6409602 Wiltshire et al. Jun 2002 B1
6411392 Bender et al. Jun 2002 B1
6411744 Edwards Jun 2002 B1
6417836 Kumar Jul 2002 B1
6441825 Peters Aug 2002 B1
6473516 Kawaguchi et al. Oct 2002 B1
6498860 Sasaki et al. Dec 2002 B1
6504535 Edmark Jan 2003 B1
6513160 Dureau Jan 2003 B2
6516466 Jackson Feb 2003 B1
6519359 Nafis Feb 2003 B1
6533420 Eichenlaub Mar 2003 B1
6542927 Rhoads Apr 2003 B2
6545706 Edwards et al. Apr 2003 B1
6546153 Hoydal Apr 2003 B1
6556704 Chen Apr 2003 B1
6577748 Chang Jun 2003 B2
6580414 Wergen et al. Jun 2003 B1
6580415 Kato et al. Jun 2003 B1
6587573 Stam et al. Jul 2003 B1
6587835 Treyz et al. Jul 2003 B1
6593956 Potts Jul 2003 B1
6595642 Wirth Jul 2003 B2
6621938 Tanaka et al. Sep 2003 B1
6628265 Hwang Sep 2003 B2
6674415 Nakamura et al. Jan 2004 B2
6676522 Rowe et al. Jan 2004 B2
6677967 Swano et al. Jan 2004 B2
6677987 Girod Jan 2004 B1
6709108 Levine et al. Mar 2004 B2
6712703 Miyamoto et al. Mar 2004 B2
6720949 Pryor et al. Apr 2004 B1
6727988 Kim et al. Apr 2004 B2
6741741 Farrell May 2004 B2
6746124 Fischer et al. Jun 2004 B2
6749510 Giobbi Jun 2004 B2
6751338 Wallack Jun 2004 B1
6753849 Curran et al. Jun 2004 B1
6767282 Matsuyama et al. Jul 2004 B2
6769769 Podoleanu et al. Aug 2004 B2
6772057 Breed et al. Aug 2004 B2
6785329 Pan et al. Aug 2004 B1
6789967 Forester Sep 2004 B1
6791531 Johnston et al. Sep 2004 B1
6795068 Marks Sep 2004 B1
6809776 Simpson Oct 2004 B1
6819318 Geng Nov 2004 B1
6846238 Wells Jan 2005 B2
6847311 Li Jan 2005 B2
6863609 Okuda Mar 2005 B2
6870526 Zngf et al. Mar 2005 B2
6873747 Askary Mar 2005 B2
6881147 Naghi et al. Apr 2005 B2
6884171 Eck et al. Apr 2005 B2
6890262 Oishi et al. May 2005 B2
6917688 Yu et al. Jul 2005 B2
6919824 Lee Jul 2005 B2
6924787 Kramer et al. Aug 2005 B2
6928180 Stam et al. Aug 2005 B2
6930725 Hayashi Aug 2005 B1
6931125 Smallwood Aug 2005 B2
6931596 Gutta et al. Aug 2005 B2
6943776 Ehrenburg Sep 2005 B2
6945653 Kobori et al. Sep 2005 B2
6947576 Stam et al. Sep 2005 B2
6952198 Hansen Oct 2005 B2
6965362 Ishizuka Nov 2005 B1
6970183 Monroe Nov 2005 B1
6990639 Wilson Jan 2006 B2
7006009 Newman Feb 2006 B2
7016411 Azuma et al. Mar 2006 B2
7016532 Boncyk et al. Mar 2006 B2
7023475 Bean et al. Apr 2006 B2
7039199 Rui May 2006 B2
7039253 Matsuoka et al. May 2006 B2
7042440 Pryor et al. May 2006 B2
7043056 Edwards et al. May 2006 B2
7054452 Ukita May 2006 B2
7059962 Watashiba Jun 2006 B2
7061507 Tuomi et al. Jun 2006 B1
7071914 Marks Jul 2006 B1
7084887 Sato et al. Aug 2006 B1
7090352 Kobor et al. Aug 2006 B2
7098891 Pryor et al. Aug 2006 B1
7102615 Marks Sep 2006 B2
7106366 Parker et al. Sep 2006 B2
7113635 Robert et al. Sep 2006 B2
7116330 Marshall et al. Oct 2006 B2
7116342 Dengler et al. Oct 2006 B2
7121946 Paul et al. Oct 2006 B2
7139767 Taylor et al. Nov 2006 B1
7148922 Shimada Dec 2006 B2
7156311 Atha et al. Jan 2007 B2
7158118 Liberty Jan 2007 B2
7161634 Long Jan 2007 B2
7164413 Davis et al. Jan 2007 B2
7174312 Harper et al. Feb 2007 B2
7183929 Antebi et al. Feb 2007 B1
7212308 Morgan May 2007 B2
7223173 Masuyama et al. May 2007 B2
7224384 Iddan et al. May 2007 B1
7227526 Hildreth et al. Jun 2007 B2
7227976 Jung et al. Jun 2007 B1
7239301 Liberty et al. Jul 2007 B2
7245273 Eberl et al. Jul 2007 B2
7259375 Tichit et al. Aug 2007 B2
7262760 Liberty Aug 2007 B2
7263462 Funge et al. Aug 2007 B2
7274305 Luttrell Sep 2007 B1
7283679 Okada et al. Oct 2007 B2
7296007 Funge et al. Nov 2007 B1
7301530 Lee et al. Nov 2007 B2
7301547 Martins et al. Nov 2007 B2
7305114 Wolff et al. Dec 2007 B2
7346387 Wachter et al. Mar 2008 B1
7352359 Zalewski et al. Apr 2008 B2
7363645 Hendricks Apr 2008 B1
7364297 Goldfain et al. Apr 2008 B2
7379559 Wallace et al. May 2008 B2
7391409 Zalewski et al. Jun 2008 B2
7414611 Liberty Aug 2008 B2
7436887 Yeredor et al. Oct 2008 B2
7446650 Schofield et al. Nov 2008 B2
7489298 Liberty Feb 2009 B2
7489299 Liberty et al. Feb 2009 B2
7545926 Mao Jun 2009 B2
7555157 Davidson et al. Jun 2009 B2
7558698 Funge et al. Jul 2009 B2
7570281 Ono Aug 2009 B1
7613610 Zimmerman et al. Nov 2009 B1
7623115 Marks Nov 2009 B2
7627139 Marks et al. Dec 2009 B2
7636697 Dobson et al. Dec 2009 B1
7636701 Funge Dec 2009 B2
7676372 Marks et al. Jan 2010 B1
7665041 Wilson et al. Feb 2010 B2
7697700 Mao Apr 2010 B2
7721231 Wilson May 2010 B2
20010056477 McTernan et al. Dec 2001 A1
20020010655 Kjallstrom Jan 2002 A1
20020023027 Simonds Feb 2002 A1
20020036617 Pryor Mar 2002 A1
20020041327 Hildreth Apr 2002 A1
20020056114 Fillebrown et al. May 2002 A1
20020070916 Noro et al. Jun 2002 A1
20020072414 Stylinski et al. Jun 2002 A1
20020075286 Yonezawa et al. Jun 2002 A1
20020083461 Hutcheson et al. Jun 2002 A1
20020085097 Colmenarez et al. Jul 2002 A1
20020094189 Navab et al. Jul 2002 A1
20020110273 Dufour Aug 2002 A1
20020126899 Farrell Sep 2002 A1
20020134151 Naruoka et al. Sep 2002 A1
20020158873 Williamson Oct 2002 A1
20030014212 Ralston et al. Jan 2003 A1
20030020718 Marshall et al. Jan 2003 A1
20030022716 Park et al. Jan 2003 A1
20030032466 Watashiba Feb 2003 A1
20030032484 Ohshima et al. Feb 2003 A1
20030093591 Hohl May 2003 A1
20030100363 Ali May 2003 A1
20030123705 Stam et al. Jul 2003 A1
20030160862 Charlier et al. Aug 2003 A1
20030232649 Gizis et al. Dec 2003 A1
20040001082 Said Jan 2004 A1
20040017355 Shim Jan 2004 A1
20040035925 Wu et al. Feb 2004 A1
20040054512 Kim et al. Mar 2004 A1
20040063480 Wang Apr 2004 A1
20040070565 Nayar et al. Apr 2004 A1
20040087366 Shum et al. May 2004 A1
20040095327 Lo May 2004 A1
20040140955 Metz Jul 2004 A1
20040150728 Ogino Aug 2004 A1
20040178576 Hillis et al. Sep 2004 A1
20040189720 Wilson et al. Sep 2004 A1
20040212589 Hall et al. Oct 2004 A1
20040213419 Varma et al. Oct 2004 A1
20040227725 Calarco et al. Nov 2004 A1
20040254017 Cheng Dec 2004 A1
20050037844 Shum et al. Feb 2005 A1
20050047611 Mao Mar 2005 A1
20050088369 Yoshioka Apr 2005 A1
20050102374 Moragne et al. May 2005 A1
20050105777 Koslowski et al. May 2005 A1
20050117045 Abdellatif et al. Jun 2005 A1
20050162384 Yokoyama Jul 2005 A1
20050198095 Du et al. Sep 2005 A1
20050226431 Mao Oct 2005 A1
20050239548 Ueshima et al. Oct 2005 A1
20060033713 Pryor Feb 2006 A1
20060035710 Festejo et al. Feb 2006 A1
20060038819 Festejo et al. Feb 2006 A1
20060204012 Marks et al. Sep 2006 A1
20060233389 Mao et al. Oct 2006 A1
20060252541 Zalewski et al. Nov 2006 A1
20060252543 Van Noland et al. Nov 2006 A1
20060256081 Zalewski et al. Nov 2006 A1
20060264258 Zalewski et al. Nov 2006 A1
20060264259 Zalewski et al. Nov 2006 A1
20060264260 Zalewski et al. Nov 2006 A1
20060269072 Mao Nov 2006 A1
20060269073 Mao Nov 2006 A1
20060274032 Mao et al. Dec 2006 A1
20060274911 Mao et al. Dec 2006 A1
20060280312 Mao Dec 2006 A1
20060282873 Zalewski et al. Dec 2006 A1
20060287084 Mao et al. Dec 2006 A1
20060287085 Mao et al. Dec 2006 A1
20060287086 Zalewski et al. Dec 2006 A1
20060287087 Zalewski et al. Dec 2006 A1
20070015559 Zalewski et al. Jan 2007 A1
20070021208 Mao et al. Jan 2007 A1
20070025562 Zalewski et al. Feb 2007 A1
20070061413 Larsen et al. Mar 2007 A1
20070066394 Ikeda et al. Mar 2007 A1
20070072675 Hammano et al. Mar 2007 A1
20070120834 Boillot May 2007 A1
20070120996 Boillot May 2007 A1
20070260340 Mao Nov 2007 A1
20070260517 Zalewski et al. Nov 2007 A1
20070261077 Zalewski et al. Nov 2007 A1
20080056561 Sawachi Mar 2008 A1
20080070684 Haigh-Hutchinson Mar 2008 A1
20080091421 Gustaysson Apr 2008 A1
20080208613 Scibora Aug 2008 A1
20090010494 Bechtel et al. Jan 2009 A1
20090016642 Hart Jan 2009 A1
20090221368 Yen et al. Sep 2009 A1
20090221374 Yen et al. Sep 2009 A1
20090288064 Yen et al. Nov 2009 A1
20100004896 Yen et al. Jan 2010 A1
20100137064 Shum et al. Jun 2010 A1
Foreign Referenced Citations (32)
Number Date Country
0 353 200 Jan 1990 EP
0 613 294 Aug 1994 EP
0 652 686 May 1995 EP
0 750 202 Dec 1996 EP
0 823 683 Feb 1998 EP
0 835 676 Apr 1998 EP
1 435 258 Jul 2004 EP
2814695 Apr 2002 FR
2832892 May 2003 FR
2 206 716 Jan 1989 GB
2 376 397 Dec 2002 GB
2 388 418 Nov 2003 GB
6102980 Apr 1994 JP
1284897 Jan 1997 JP
9128141 May 1997 JP
9185456 Jul 1997 JP
11-038949 Feb 1999 JP
2000-172431 Jun 2000 JP
2000-259856 Sep 2000 JP
2000-350859 Dec 2000 JP
2001-166676 Jun 2001 JP
2002-369969 Dec 2002 JP
2004-145448 May 2004 JP
8805942 Aug 1988 WO
9848571 Oct 1998 WO
9926198 May 1999 WO
9935633 Jul 1999 WO
0118563 Mar 2001 WO
0227456 Apr 2002 WO
03079179 Sep 2003 WO
2005073838 Aug 2005 WO
2008056180 May 2008 WO
Non-Patent Literature Citations (28)
Entry
Kawakita et al., “Axi-Vision Camera (real-time distance-mapping camera),” Aug. 2000, Optical Society of America, vol. 39, No. 22, pp. 3937-3938.
Iddan et al., “3D Imaging in the Studio (and Elsewhere . . . ),” Apr. 2001, Proceedings of SPIE, vol. 4298, pp. 48-55.
Gvili et al., “Depth Keying,” May 2003, Proceedings of SPIE, vol. 5006, pp. 564-574.
Bolt, R.A., “Put-That-There”: Voice and Gesture at the Graphics Interface, Computer Graphics, vol. 14, No. 3 (ACM SIGGRAPH Conf. Proceedings) Jul. 1980, pp. 262-270.
DeWitt et al., “Pantomation: A System for Position Tracking,” Proceedings of the 2nd Symposium on Small Computers in the Arts, Oct. 1982, pp. 61-69.
Ephraim et al., “Speech Enhancement Using a Minimum Mean-Square Error Short-Time Spectral Amplitude Estimator,” 1984, IEEE (13 pgs.).
Ephraim et al., “Speech Enhancement Using a Minimum Mean-Square Error Log-Spectral Amplitude Estimator,” 1985, IEEE (3 pgs.).
“The Tracking Cube: A Three-Dimensional Input Device,” IBM Technical Disclosure Bulletin, Aug. 8, 1989, vol. 32, No. 3B, IBM Corp., New York, U.S., pp. 91-95.
Hemmi et al., “3-D Natural Interactive Interface-Using Marker Tracking From a Single View,” Systems and Computers in Japan vol. 23, No. 11, 1992, New York, U.S. (12 pgs.).
K.B. Shimoga etal., “Touch and Force Reflection for Telepresence Surgery,” Engineering in Medicine and Biology Opportunities of the IEEE, Baltimore, MD, U.S., Nov. 1994, New York, U.S., pp. 1049-1050.
Kanade et al., “A Stereo Machine for Video-rate Dense Depth Mapping and Its New Applications,” The Robotics nstitute, Carnegie Mellon University, Pittsburgh, PA, 1996 IEEE (7 pgs.).
Fujitsu, “Internet Development of Emulators” Abstract, Mar. 1997, vol. 48, No. 2.
T. Richardson et al., “Virtual Network Computing,” IEEE Internet Computing, vol. 2, No. 1, Jan./Feb. 1998 (7 pgs.).
N. Jojie et al., “Tracking Self-Occluding Articulated Objects in Dense Disparity Maps,” Computer Vision, 1999, The Proceedings of the Seventh IEEE International Conf. on Kerkyra, Greece, Sep. 1999, Los Alamitos, CA U.S., pp. 123-130.
Nakagawa et al., “A Collision Detection and Motion Image Synthesis Between a Background Image and a Foreground 3-Dimensional Object,” TVRSJ vol. 4, No. 2, pp. 425-430, 1999, Japan.
“Reality Fusion GameCam Lets Players Get Inside the Game,” Business Wire, FindArticles.Com, retrieved Jul. 12, 2010, http://findarticles.com/p/articles/mi_m0EIN/is_1999_0ct_1/ai_55932662/.
G. Klinker et al., “Distributed User Tracking Concepts for Augmented Reality Applications,” Augmented Reality, 2000, IEEE and ACM International Symposium, XP010520308, ISBN: 0-7695-0846-4, Germany, pp. 37-44.
J. Lanier, “Virtually There: Three-Dimensional Tale-immersion May Eventually Bring the World to Your Desk,” Scientific American, ISSN: 0036-8733, 2001 (15 pgs.).
H. D'Hooge et al., “Game Design Principles for the Intel Play Me2Cam Virtual Game System,” 2001, Intel Technology Journal, pp. 1-9.
N. Nishida et al., “A Method of Estimating Human Shapes by Fitting the Standard Human Model to Partial Measured Data,” D-II vol. J84-D-II, No. 7, Jul. 2001, Japan, pp. 1310-1318.
G.J. Iddan et al., “3D Imaging in the Studio (and Elsewhere . . . ),” Proceedings of the SPIE, SPIE, Bellingham, VA, U.S., vol. 4298, Jan. 2001, XP008005351, pp. 48-55.
I. Mihara et al., “A Realtime Vision-Based Interface Using Motion Processor and Applications to Robotics,” vol. J84-D-11, No. 9, Sep. 2001, Japan, pp. 2070-2078.
K. Wilson et al., “Audio-Video Array Source Localization for Intelligent Environments,” 2002 IEEE, Dept. of Electrical Engineering and Computer Science, MIT, Cambridge, MA (4 pgs.).
R. Gvili et al., “Depth Keying,” SPIE vol. 5006 (2003) 2003 SPIE-Is&T, pp. 564-574.
International Search Report issued in International Application No. PCT/US2004/015094, dated Oct. 4, 2004 (4 pages).
Y. Nakamura et al., “A Consideration on Reconstructing 3-D Model Using Object Views,” 2004-01601-003, Kokkaido University, Japan, pp. 17-21.
Fiala et al., “A Panoramic Video and Acoustic Beamforming Sensor for Videoconferencing,” 2004 IEEE, Computational Video Group, National Research Council, Ottawa, Canada K1A OR6.
“CFS and FS95/98/2000: How to Use the Trim Controls to Keep Your Aircraft Level,” Aug. 2007, XP-002453974, http://support.microsoft.com/?scid=kb%3Ben-us%3B175195&x=13&y=15.
Related Publications (1)
Number Date Country
20120038637 A1 Feb 2012 US
Continuations (1)
Number Date Country
Parent 10448614 May 2003 US
Child 13282369 US