#KINECTSDK – Speech recogntition now available in SDK V2 !!!

Hola !!!

Después de tanto pedirlo, por fin tenemos weekly builds del nuevo SDK de Kinect V2. Ahora lo interesante es que tenemos una pila de trabajo interesante en cada release para ver lo que tenemos dentro. Asi que hoy,un pequeño review de algo que ya existe en Kinect SDK V1.8 y que necesitábamos en V2: Speech Recognition.

La base es simple y seguro que lo conoces, crear un diccionario con palabras dentro del mismo. Lo interesante es que en la l’inea 18 hacemos la asociación del audio feed de Kinect con el speech grammar que se define en la línea 5


private void WindowLoaded(object sender, RoutedEventArgs e)
{
kinectSensor = KinectSensor.GetDefault();
kinectSensor.Open();
var audioBeamList = kinectSensor.AudioSource.AudioBeams;
var audioStream = audioBeamList[0].OpenInputStream();
convertStream = new KinectAudioStream(audioStream);
Var ri = GetKinectRecognizer();
recognitionSpans = new List<Span> { forwardSpan, backSpan, rightSpan, leftSpan };
speechEngine = new SpeechRecognitionEngine(ri.Id);
// Create a grammar definition …
speechEngine.SpeechRecognized += SpeechRecognized;
speechEngine.SpeechRecognitionRejected += SpeechRejected;
convertStream.SpeechActive = true;
speechEngine.SetInputToAudioStream(
convertStream, new SpeechAudioFormatInfo(EncodingFormat.Pcm, 16000, 16, 1, 32000, 2, null));
speechEngine.RecognizeAsync(RecognizeMode.Multiple);
}
private static RecognizerInfo GetKinectRecognizer()
{
foreach (RecognizerInfo recognizer in SpeechRecognitionEngine.InstalledRecognizers())
{
string value;
recognizer.AdditionalInfo.TryGetValue("Kinect", out value);
if ("True".Equals(value, StringComparison.OrdinalIgnoreCase) && "en-US".Equals(recognizer.Culture.Name, StringComparison.OrdinalIgnoreCase))
{
return recognizer;
}
}
return null;
}

Otro punto importante es la sección para obtener el KinectRecognizer al final. A ver si cuando llego a Madrid puedo hacer una dem and video cool sobre esto 😀

And as always, the disclaimer

“This is preliminary software and/or hardware and APIs are preliminary and subject to change“

Saludos @AVE

El Bruno

Leave a comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: