Sensor sensitivity to temperature/time
Recently we were interested by a presentation at the 3D body scanning conference (Lugano, 2012), it suggested that the depth readings given by the Kinect change with time. This prompted us (Sean Clarkson) to perform a quick test to investigate this.
The Kinect was placed parallel to a plane at a distance of approximately 1 m (measured from the front face of the IR projecter) – the plane filled the field of view.
Custom software built on the Microsoft SDK was used to collect a 3D scan every 30 seconds. Scans at 5 minute intervals were compared with the initial scan to form a discrepancy map. This map shows how individual points on the depth map vary from that first snapshot (in mm). The results of this study are shown below.
Deviation maps produced using depth maps at 5 minute intervals (click to enlarge)
Towards the start of the investigation (at around 5 minutes) the Kinect depth estimate increases in the bottom left corner. After around 10 and 15 minutes this starts to reduce and after 20 minutes depth estimates start to decrease. Unfortunately it is difficult to precisely measure the distance of the plane from the sensor. Therefore we don’t know at what point the Kinect is returning its most accurate depth measures. What is clear is that if left, the Kinect’s depth values can change by around 1 cm in places. This seems to vary depending on the region of the sensor.
The results presented at the conference suggested an under estimation of depth after the projector had been enabled for 15 minutes, this happens some time later in our own study.
The Kinect uses a projected speckle pattern to calculate depth values – the pattern is created using a diffraction grating. Diffraction gratings are extremely wavelength dependent  the Kinect includes a Peltier cooling plate behind the IR projector so it remains in a tight 10oC operating range . The Peltier plate can be set to cool or heat depending which way the current is passed. This ensures the IR projector remains in the tight operating range and displays the correct speckle pattern. The variation visible in the plots above may be explained by the temperature control system not maintaining a tight control on the IR projector temperature – it could be the limit of the system.
The Kinect also includes an internal fan to increase airflow through the device, should the need arise. A 102oC thermal cut out  provides a final degree of protection should the fan or Peltier plate fail, otherwise causing break down of the laser diode or diffraction grating.
While only an initial study it would suggest that depth values can vary considerably (at least by scanning standards) over a period of half an hour. If precision or consistency is paramount it may be worth ensuring the Kinect has air flow, is not in direct sunlight or a hot room and is not left on for long periods.
 OpenKinect, “Kinect Hardware Info,” 2011. [Online]. Available: http://openkinect.org/wiki/Hardware_info.
 B. Klug, “Taking apart the Kinect,” 2010. [Online]. Available: http://www.anandtech.com/Show/Index/4057?cPage=6&all=False&sort=0&page=2&slug=microsoft-kinect-the-anandtech-review.