A depth camera system obtains data regarding the location of a human or other object in a physical space. The camera may have one or more sensors that have pixels that collect light intensity. Depth values may be determined from the light intensity. For example, the light intensity data from two sensors may be correlated and a depth value may be determined for each pixel. The depth values may be input to an application in a computing system for a wide variety of applications. Many applications are possible, such as for military, entertainment, sports and medical purposes. For instance, depth values regarding a human can be mapped to a three-dimensional (3-D) human skeletal model and used to create an animated character or avatar.
To determine depth values, the depth camera may project light onto an object in the camera's field of view. The light reflects off the object and back to one or more image sensors in the camera, which collect light intensity. The sensors may be for example, CCD or CMOS sensors. The sensors may comprise a pixel array, such that each pixel integrates light intensity over time, based on how many photons reach the pixel. The light intensity at the pixels may be processed to determine the depth values. One technique for determining distance to the object is based on the round trip time-of-flight of the light.
However, differences in reflectance of objects may lead to problems. For example, two objects at the same distance but with different reflectivity will result in different light intensity readings at the sensor. In order to combat this problem, and others, some techniques perform two different depth measurements and combine the results. The two different depth measurements might use the same sensor, but be taken at different times. Therefore, there might be object (or camera) motion between the time the measurements were captured by the sensor. Alternatively, using two sensors allows the depth measurements to be taken at the same time. However, the two sensors need to be located in different physical locations, which could lead to parallax differences. The data collected from the two measurements needs to be correlated (or matched) to create a single depth image. However, the aforementioned differences in the two depth measurements can make correlating the depth measurements difficult or lead to inaccuracies.
Additionally, depth cameras may suffer from noisy depth measurements. For example, there may be some background light that might be collected along with the light reflected off objects. Noise can result in many other ways.
Therefore, further refinements are needed which allow a more accurate determination of the depth of objects within a field of view of a depth camera. The techniques should be compatible with existing depth detection cameras.