Você está na página 1de 2

Conhecendo o projeto OpenKinect

O OpenKinect[1] surgiu na corrida para ganhar acesso do Microsoft Kinect no PC em novembro de 2010. Héctor Martin liberou o código da libfreenect no Github que pode
ser visto o primeiro commit em 10 de novembro de 2010. No dia 17 de dezembro foi implementado a libfreenect para plataforma win32 usando a libusbemu um emulador da
biblioteca libusb 1.0 do linux dentre disto o projeto foi só aumentado e aumentado o suporte.

OpenKinect é uma comunidade de pessoas interessadas em utilizar o Kinect do videogame Xbox em computadores e outros dispositivos criando bibliotecas livres para
que a Kinect seja utilizada no Windows, Linux e Mac.

A comunidade OpenKinect consiste em mais de 2000 membros contribuindo com tempo e códigos para o Projeto. Atualmente o foco principal é o software libfreenect. Os
Códigos contribuídos no OpenKinect sempre que possíveis são disponibilizados sob uma licença Apache 2.0 ou opcionalmente GPL2.

Código fonte disponível em: https://github.com/OpenKinect/libfreenect

Se você quiser participar ou somente assistir o progresso do esforço OpenKinect, se inscreva lista de e-mail. OpenKinect.

A libfreenect

O framework OpenKinect possui o driver libfreenect que inclui todo o código necessário para ativar, inicializar e fazer a comunicação de dados com o hardware Microsoft
Kinect, o OpenKinect não possui detecção de gestos por padrão, mas você também pode usar em conjunto a biblioteca OpenCV que possui módulos de processamento de
Imagens e Vídeo I/O, estrutura de dados, álgebra linear, GUI, controle de mouse e teclado, além de algoritmos de visão computacional como: filtros de imagem, calibração
de câmera, reconhecimento de objetos, análise estrutural e outros.

Suporte da libfreenect;

Imagens de profundidade e RGB (Cor e infravermelho)


Motor vertical
Acelerômetro
LED
Áudio em implementação

A API que funciona em Windows, Linux e Mac OS X e possui extensões para várias linguagens / plataformas:
Python
C Synchronous
Actionscript
C++
C#
Java JNI
Java JNA
Javascript

API possui alguns toolkits ou utilitários;


Record- Pegando os dados da Kinect em arquivos PPM, PGM, e um dump binário para RGB, profundidade, e Aceleração respectivamente.

Fakenect - libfreenect simulador/mock interface que permite o use dos demos da kinect sem você ter um sensor kinect (dados de plays backs gravados)

Algumas diferenças de características entre os frameworks OpenNI e OpenKinect

Características OpenKinect OpenNI


Driver (módulo) libfreenect SensorKinect Avin2 / CL NUI
Câmera RGB Sim Sim
Câmera Infravermelho Sim Sim
Projetor Infravermelho Sim sim
LED Sim Sim
Motor vertical Sim Em implementação
Áudio Em implementação Em implementação
Detecção de gestos Não possui dentro da API, mas pode ser implementado NITE Middleware
na aplicação. Exemplo de uso OpenCV que possui
módulos de processamento de imagem.
Detecção do Esqueleto Não Sim
Detecção da Mão Não Sim
Analisador de Cenas Não Sim

Instalando a libfreenect no Debian

Você pode adicionar em seus repositórios do apt / aptitude o repositório, assim a instalação será facilitada e não precisara se preocupar com dependências.

Você abrirá o arquivo com permissões de root que fica em;

Abrindo pelo gedit no Gnome;


#gedit /etc/apt/sources.list

Adicione no final da linha;

deb http://ftp.br.debian.org/debian experimental main non-free


Execute o comando para atualizar (eu prefiro o aptitude rsrs);
#aptitude update

Após isso execute o comando para instalar;


#aptitude install libfreenect-dev libfreenect-demos

Será instalado a libfreenect e alguns demos que você pode executar.

$freenect-cppview

$freenect-glpclview
A aplicação glpcview mostra demonstra a capacidade das câmeras de infravermelho e RGB que demonstra a imagem tridimensional você pode usar e abusar da captura
3D do infravermelho use o seu mouse para testar.
Você pode estudar o código e ver as funções e bom uso!

$freenect-glview
A aplicação glview demonstra a captura da câmera RGB e infravermelho, e mostra que você pode mudar o LED do Kinect apertando teclas do teclado 1 à 4 , e inclinar o
motor verticial para cima e para baixo apertando 'W' para cima e 'S' para baixo.
Você pode estudar o código e ver as funções e bom uso!

Figura mostrando a aplicação glview (mostra câmera rgb e infravermelho)

Compilando a libfreenect no Linux

Você precisara resolver algumas dependências, se você estiver usando ubuntu/debian tente procurar em seu repositório, a seguir;

* cmake
* libusb-1.0-0
* libusb-1.0-0-dev
* pkg-config
* libglut3
* libglut3-dev

Instale o git em sua máquina para fazer download do repositório do OpenKinect a libfreenect ou faça download direto do site;

$ git clone https://github.com/OpenKinect/libfreenect.git


$ cd libfreenect

Após isso você fara o processo de compilação;

$ mkdir build
$ cd build
$ cmake ..
$ make
$ sudo make install
$ sudo ldconfig /usr/local/lib64/

Após isso faça o teste entre na pasta libfreenect/wrappers/ e veja o exemplos em linguagens que você preferir.
Veja também exemplos dentro da pasta libfreenect/examples em C/C++ e veja como é fácil utilizar a API OpenKinect para chamar as câmeras usando OpenGL para
desenhar.

Alguns métodos da biblioteca podem ser encontrados no link http://openkinect.org/wiki/Low_Level

Referências

[1] http://openkinect.org – OpenKinect.org