Getting started with Kinect SDK

Microsoft’s Kinect allows a gamer to use his body to play without a controller. But, actually, it is more than a virtual remote: Kinect is a step forward in controlling technology with natural gestures. It allows to interact with a PC without touching  the mouse, keyboard or touchscreen.

The Kinect has a color camera, a depth camera and a 4 microphone array.  Both cameras are used for motion tracking and the multiarray microphone is used for speech recognition.

The Kinect SDK enables developers to create applications that support gesture and voice recognition.There are lots of step-by-step tutorials (and videotutorials), so in this post I will try to summarize the main ones.

Installing the Kinect

  1. Kinect SDK: It includes the drivers to use on Windows.
  2. Kinect Developer Toolkit: Contains code samples and sources to simplify developing applications.
  3. Visual Studio Express 2010: IDE for developing on Windows.
  4. .NET Framework 4: developer platform to build apps for Windows.

For C++ SkeletalViewer samples:

Speech Recognition software:

Kinect SDK Sample Applications

The Developer Toolkit includes applications and samples to provide a starting point for working with the SDK: skeletal and face tracking, speech recognition, the kinect explorer, the shape game… To start using it, you just have to load the project on Visual Studio and start playing.

Creating a new Project

  1. Create a new Windows Based application project.
  2. Add references to the Kinect library by right-click on References menu in the Explorer Pannel.


Starting the sensor

Kinect must be initialized before it can begin producing data for the application. The initializing process consists on three steps:

  1. Enumerate Kinect sensors
  2. Enable Data Streaming
  3. Start the Kinect

Writing the source code

Once Kinect is started and a stream is enabled, the application extracts frame data from the stream and processes it as long as a new stream is available. For each frame of data:

  1. Register an event which fires when data is ready
  2. Implement an event handler
  3. Allocate storage for the data
  4. Get the data

Running the application 

The Visual Studio IDE is also used to compile a project, build the application and run it on a new window. 

Loading and recording data

Kinect Studio is a tool to read and write depth and color streams. It is used to create scenarios for testing and analyze performance.

To start loading/recording data, you just have to run your coded application on Visual Studio and start reading/writing data on Kinect Studio.