Framework desenvolvimento para o Microsoft Kinect
Autor: Gustavo Jordan | Publicado: 2011-05-06T00:01:00-03:00

Os drivers de acesso ao Microsoft Kinect para o computador permitem acesso a todo seu hardware, existem dois a libfreenect[1] do projeto OpenKinect[2] que pode ser usada middlewares como OpenCV[7] para detecção, SensorKinect[3] um fork do módulo PrimeSensor da OpenNI[4] todos sob licenças GPL.

O SensorKinect está dentro da API OpenNI [4] (interação natural aberto) uma framework sob GPL. Isso cria uma ponte para o middleware PrimeSense’s Natural Interaction Technology for End-user (NITE), que faz leitura do ambiente em 3D, com base disso gera um vetor de pontos (x, y, z) do esqueleto humano, permitindo a captura de movimento em tempo real ela também inclui o reconhecimento de gestos com as mãos e comandos de voz e um "analisador de cena", que detecta figuras em primeiro plano e os separa do fundo.

Bem como Kinect, OpenNI também suporta outros hardwares com mesmas características do Microsoft Kinect tal como The PrimeSense [5] e o WAVI Xition [6] da ASUS.


Figura (1) Controle gestos da mão
Controle de gestos da mão é ilustrada na Figura (1). A imagem mostra uma sala cheia com os telespectadores. NITE é capaz de identificar as palmas de todos os telespectadores que são candidatos para pedir para ganhar controle sobre a TV. No entanto, apenas um espectador irá controlar a TV, em um determinado momento A NITE é capaz de identificar este espectador e impedir os espectadores de outros interferindo com a interação em curso. A ilustração mostra NITE trancada em um visualizador específico, acompanhamento de palma do espectador e, permitindo que o espectador para controlar um aplicativo de navegação de mídia. 

Interação natural com corpo é normalmente associada com o jogo, onde um jogador está na frente da TV com uma experiência de imersão. O objetivo do middleware de detecção de corpo a NITE é extrair as características importantes do esqueleto durante seu movimento. Como resultado, o aplicativo receber os dados do esqueleto em ponto simples e gestos do esqueleto para que se possa atribuir facilmente entradas de controle ao jogo como demonstrado na Figura (02).

Figura (02) Controle pelo esqueleto

Breve falei sobre o desenvolvimento e mostrarei alguns samples de uso dos dois exemplos.

[1] libfreenect. &lt;https://github.com/OpenKinect/libfreenect&gt;. Acesso em 05 de maio de 2011.

[2] OpenKinect.  is an open community of people interested in making use of the amazing Xbox Kinect hardware with our PCs and other devices. We are working on free, open source libraries that will enable the Kinect to be used with Windows, Linux, and Mac. &lt;http://openkinect.org&gt;.&nbsp;Acesso em 05 de maio de 2011..&nbsp;
[3] SensorKinect. PrimeSense Sensor Module for OpenNI &lt;https://github.com/avin2/SensorKinect&gt;.&nbsp;Acesso em 05 de maio de 2011.

[4] OpenNI. The OpenNI organization is an industry-led, not-for-profit organization formed to certify and promote the compatibility and interoperability of Natural Interaction (NI) devices, applications and middleware. &lt;http://www.openni.org/documentation&gt;.&nbsp;Acesso em 05 de maio de 2011.

[5] PrimeSense. “PrimeSense has delivered an important component to the technology, helping us deliver revolutionary controller-free entertainment experiences” &lt;http://www.primesense.com/&gt;.&nbsp;Acesso em 05 de maio de 2011.

[6] WAVI Xtion. Intuitive living room experience http://event.asus.com/wavi/.&nbsp;Acesso em 05 de maio de 2011.

[7] OpenCV.&nbsp;http://opencv.willowgarage.com/wiki/. Acesso em 05 de maio de 2001.