CONTENT Introduction to Kinect Some Libraries for Kinect Implement

advertisement
CONTENT
1. Introduction to Kinect
2. Some Libraries for Kinect
3. Implement
4. Conclusion & Future works
1
Introduction to Kinect
1. Kinect camera
Kinect is a motion sensing input device by Microsoft for the Xbox
360 video game console and Windows PCs. Based around a webcamstyle add-on peripheral for the Xbox 360 console, it enables users to
control and interact with Xbox 360 without the need to touch a game
controller, through a natural user interface using gestures and spoken
Kinect included of:
* A camera RGB with sensitive 640x480
* 3D depth sensor
* Microphone
* A motor to control kinect up and down
2
Introduction to Kinect
Figure 1.1 Kinect camera
3
Introduction to Kinect
2. Calculating the depth on Kinect
On Kinect, we have IR projector combined IR camera to calculate
value image depth by Light Coding technology of Primesense.
4
Introduction to Kinect
5
Introduction to Kinect
Suppose, Projector send a single light along the red line. It will be
captured by the camera once it hits a surface.
We have 3 plane, a reference plane, a plane close and a distant
plane.
When the point hits a surface in the close plane it will appear right
in the image than if it was hitting a surface in the reference plane.
Likewise, when the point is projected onto an object on a plane which
is more distant than the reference plane, the point will appear more to
the left.
When the origin and direction of the light is known beforehand,
and the horizontal position of the dot is known for a reference depth,
then it is possible to find out the depth of the surface which the point
hits based on its horizontal position in the cameras image plane
6
Introduction to Kinect
According to Nicolas Burrus, who pioneered with information
about the Kinect from his own experiments, the depth of a point z can
be calculated in meters from the raw disparity of the point d (as
provided by the Kinect hardware) using the following equation[9]:
z = 1.0/(-0.0030711016 x d + 3.3309495161)
d is an 11-bit integer which ranges from 0 to 2047. z will change
sign from positive to negative when d is around 1084, so values
beyond that are useless for depth measurement.
7
Introduction to Kinect
Implementation tests with the Kinect pointing straight at a wall
and found that it is was to unable to reliability measure depth values
below 50 cm (see gure 2). These facts mean that only d values of
about 434 to 1084 represent actual measurable depth values
8
Some Libraries for Kinect
1. Kinect SDK beta
SDK beta released by Microsoft on 16th June 2011, SDK
beta allow to access all function of Kinect but This library only
support on Visual studio 2010.
* Support:
- Process sound
- Control motor angle of repose on Kinect.
- Good for the applications Skeleton tracking.
9
Some Libraries for Kinect
2. Open NI
Open NI supports many API functions, can combine
middleware to increase ability for Kinect.
* Support:
- Detect gesture.
- Skeleton tracking
- Windows, Linux, Mac OSX
10
Some Libraries for Kinect
3. Point cloud library
Point cloud is library to process image in 3D space. Having many
algorithms such as: filtering, surface reconstruction, segmentation,
feature estimation… PCL can apply on many platforms such as:
Window, Mac OS, Linux, Android,…
11
Download