page 1 | microsoft work with color data kinect for windows video courses jan 2013
TRANSCRIPT
Page 1 | Microsoft
Work WithColor Data
Kinect for Windows Video CoursesJan 2013
Page 2 | Microsoft
Demo: How to get color data
Page 3 | Microsoft
Kinect For Windows SDK & Toolkit• Download SDK & Toolkit:
http://www.microsoft.com/en-us/kinectforwindows/• Install SDK & Toolkit.• Install examples provided in toolkit (ColorBasics-WPF)
Page 4 | Microsoft
4 Steps to Get Color Data• Find an available Kinect sensor.• Enable color data stream.• Register stream ready event handler function.• Start capturing data.
Page 5 | Microsoft
4 Steps to Get Color Data – Find an available Kinect Sensor• KinectSensor object represents a Kinect sensor entity.• Enumerate all Kinect sensors and find a usable one.
foreach (var potentialSensor in KinectSensor.KinectSensors) { if (potentialSensor.Status == KinectStatus.Connected) { this.sensor = potentialSensor; break; } }
Page 6 | Microsoft
4 Steps to Get Color Data – Find an available Kinect Sensor• Status of Kinect sensor:
• Disconnected – Sensor has been plugged off USB port.• Connected – Sensor is ready to use.• Initializing – Sensor is being initialized.• Not powered – Sensor is connected to USB port but power line is disconnected.
Page 7 | Microsoft
4 Steps to Get Color Data – Enable color data stream• KinectSensor.ColorStream implements API functions related to color data
retrieving and processing.• Initialize to enable color data stream:
this.sensor.ColorStream.Enable(ColorImageFormat.RgbResolution640x480Fps30);
Page 8 | Microsoft
4 Steps to Get Color Data – Register Stream Ready Event Handler Function• Register the stream event handler function to Kinect sensor so that when a
new color frame comes in, the handler function is called to retrieve and process the data.
this.sensor.ColorFrameReady += this.SensorColorFrameReady;
Page 9 | Microsoft
4 Steps to Get Color Data – Start Kinect sensor• Call KienctSensor.Start() to let Kinect sensor begin capturing the data.
try { this.sensor.Start(); } catch (IOException) { this.sensor = null; }
Page 10 | Microsoft
Retrieve color data• When new incoming data frame is ready, stream data ready event is
triggered.• Open image frame in stream data ready event handler function.
private void SensorColorFrameReady(object sender, ColorImageFrameReadyEventArgs e){ using (ColorImageFrame colorFrame = e.OpenColorImageFrame())
{ if (colorFrame != null) { // Copy the pixel data from the image to a temporary array colorFrame.CopyPixelDataTo(this.colorPixels);
// Do whatever you need to do with the depth data } }
}
Page 11 | Microsoft
• OverviewHardware overview and SDK installation
• Color• Introduction to color stream• Demo: How to get color data• Demo: ColorBasics sample
• Depth• Introduction to depth stream• Demo: How to get depth data• Demo: DepthBasics sample
• Skeleton• Introduction to skeleton stream• Demo: How to get skeleton data• Demo: SkeletonBasics sample
• Audio• Introduction to audio stream• Demo: How to capture audio• Demo: Speech recognition
• Advanced Topics• Streams sync and coordinate mapping• Demo: Streams sync and coordinates
mapping• Accelerometer and tilt angle• Demo: How to get accelerometer and tilt
angle
Page 12 | Microsoft
Learn More About Kinect for Windows in MSDN
http://msdn.microsoft.com/en-us/library/hh855352
Page 13 | Microsoft
Thanks
Contact us: http://social.msdn.microsoft.com/Forums/en-US/kinectsdk
Page 14 | Microsoft