Book Image

Kinect in Motion - Audio and Visual Tracking by Example

Book Image

Kinect in Motion - Audio and Visual Tracking by Example

Overview of this book

Kinect is a motion-sensing input device by Microsoft for the Xbox 360 video game console and Windows PCs. It provides capabilities to enhance human-machine interaction along with a zero-to-hero journey to engage the user in a multimodal interface dialog with your software solution. Kinect in Motion - Audio and Visual Tracking by Example guides you in developing more than five models you can use to capture gestures, movements, and voice spoken commands. The examples and the theory discussed provide you with the knowledge to let the user become a part of your application. Kinect in Motion - Audio and Visual Tracking by Example is a compact reference on how to master color, depth, skeleton, and audio data streams handled by Kinect for Windows.Starting with an introduction to Kinect and its characteristics, you will first be shown how to master the color data stream with no more than one page of lines of code. Learn how to manage the depth information and map them against the color ones. You will then learn how to define and manage gestures that enable the user to instruct the application simply by moving arms or any other type of natural action. Finally you will complete your journey through a multimodal interface, combining gestures with audio.The book will lead you through many detailed, real-world examples, and even guide you on how to test your application.
Table of Contents (12 chapters)

Summary


In this chapter we learned how to manage the Kinect sensor audio stream data and enhance the Kinect sensor's capabilities for speech recognition.

We have been working mainly using the KinectAudioSource class. This class manages the stream of either raw or modified audio from the microphone array. The audio stream can be modified to include a variety of algorithms to improve its quality, including noise suppression, automatic gain control, and acoustic echo cancellation.

First of all we introduced the concept of grammars for converting sounds in commands. Grammars are defined by XML files or programmatically. For increasing the quality of the speech recognition process, many times applications use specific prefixes to improve accuracy. While implementing a grammar, it is a good practice to define a speech command as a combination of application-specific keywords plus the actual command. This decreases the chance of treating random words as an actual speech command.

While working with...