CCV, PS3 Eye e Ubuntu 10.04

Basicamente seguiremos 3 passos:

  1. Instalação Ubuntu 10.04
  2. PS3 Eye
  3. Instalação CCV através do código fonte

Instalação Ubuntu 10.04

O Ubuntu 10.04 é um sistema operacional , desenvolvido pela Canonical e pela comunidade. Sua instalação é fácil, simples e pode ser feita de diferentes formas. Faça o download, e siga as instruções na página para a instalação. Qualquer dúvida deixe um comentário!

PS3 Eye

Repare que a PS3 Eye funciona por padrão no Ubuntu 10.04, porém o CCV não a reconhece, para isso temos que instalar a biblioteca unicap que irá trabalhar com o driver gspca, vamos fazer o download da última versão (Lembre-se de substituir “dinomagri” por seu usuário padrão):

cd /home/dinomagri
wget http://unicap-imaging.org/downloads/unicap-0.9.5.tar.gz

Descompactar:

tar -xvzf unicap-0.9.5.tar.gz

Fazer o download o Patch do Kaswy:

http://kaswy.free.fr/sites/default/files/download/ps3eye/unicap/unicap-gspca.patch

Antes de aplica-lo, precisamos do pacote patch, então:

sudo apt-get install patch
patch -p0 < unicap-gspca.patch

Agora configurar e compilar:

cd /home/dinomagri/unicap-0.9.5
./configure
make
sudo make install

Caso ocorra algum erro, verifique novamente os passos ou deixe um comentário.

Esses passos foram retirados do blog do Kaswy. Obrigado pelo patch Kaswy :-)

Instalação CCV através do código fonte

O Community Core Vision (aka tbeta) é um software open source para visão por computador e máquina de sensoriamento, muito útil na construção de aplicações multi-toques. O CCV recebe como entrada um sinal de vídeo, para realizar um mapeamento no sinal e retornar como saída as coordenadas e o tamanho de um blob (objeto brilhante luminecente) e eventos(termo usado para descrever quando um sistema sabe se um objeto foi tocado por um dispositivo multi-toque) que descrevem a direção do movimneto de um dedo ou se um dedo foi pressionado ou solto. Também suporta webcams internas e externas, como poder se conectar  a diversas aplicações TUIO/OSC/XML. Suporta diversas técnicas de multi-toque, como por exemplo FTIR, DI, DSI e LLP

Para mais detalhes sobre tecnologias multi-toques, leia o livro Multitouch Technologies, escrito pela comunidade NUI Group.

Bom primeiro temos que instalar o Subversion, que é um sistema de controle de versão:

sudo apt-get install subversion

Feito isso iremos baixar os códigos, criar uma pasta no home do seu usuário, digite:

cd /home/dinomagri/
svn checkout http://nuicode.svnrepository.com/svn/tbeta/trunk/tbeta/Linux Linux-ccv

Esse processo irá demorar um pouco, relaxe … tome um café :). Após terminar o download acesse a pasta de scripts:

cd Linux-ccv/scripts/ubuntu/

Dê permissão de execução ao arquivo “install_codeblocks.sh” e execute o arquivo:

chmod +x install_codeblocks.sh
sudo ./install_codeblocks.sh

O script irá adicionar dois repositórios na source.lst e irá instalar o Code::Blocks. Faço o mesmo processo para o script “install_dependencies.sh”:

chmod +x install_dependencies.sh
sudo ./install_dependencies.sh

Esse script irá instalar várias bibliotecas e programas. Acesse, Aplicativos -> Desenvolvimento -> Code::Blocks IDE. Abra o projeto em “apps/addonsExamples/Codeblocks_8_linux/Community Core Vision.cbp” e então Build e Run,

O seguinte erro irá aparecer:

Linking console executable: bin/Community_Core_Vision
../../../libs/fmodex/lib/libfmodex.so: file not recognized: File format not recognized
collect2: ld returned 1 exit status

Vamos arrumar:

cd /home/dinomagri/CCV/Linux-ccv/libs/fmodex/lib/
mv libfmodex.so libfmodex.so.bkp
mv libfmodexp.so libfmodexp.so.bkp
ln -s libfmodex-4.22.00.so libfmodex.so
ln -s libfmodexp-4.22.00.so libfmodexp.so

Agora, antes de compilar e rodar novamente o programa, vamos alterar o arquivo config.xml, que está localizado em “../../Codeblocks_8_linux/bin/data”:

cd /home/dinomagri/CCV/Linux-ccv/apps/addonsExamples/Codeblocks_8_linux/bin/data/
gedit config.xml

Editar os  parâmetros:

<CAMERA_0>
        <USECAMERA>1</USECAMERA>
        <DEVICE>1</DEVICE>
        <WIDTH>640</WIDTH>
        <HEIGHT>480</HEIGHT>
        <FRAMERATE>60</FRAMERATE>
</CAMERA_0>

Compile e rode novamente. Agora sim, já está funcionando.

Para executar o programa sem utilizar o Code:Blocks, temos que modificar as libs que ficam dentro de bin/libs, para isso:

cd /home/dinomagri/CCV/Linux-ccv/apps/addonsExamples/Codeblocks_8_linux/bin/libs
mv libfmodex.so libfmodex.so.bkp
mv libfmodexp.so libfmodexp.so.bkp
ln -s libfmodex-4.22.00.so libfmodex.so
ln -s libfmodexp-4.22.00.so libfmodexp.so

Agora podemos executar o script “clickToLaunchApp.sh” para abrir o CCV, sem ter que abrir o Code::Blocks! Para isso:

cd /home/dinomagri/CCV/Linux-ccv/apps/addonsExamples/Codeblocks_8_linux/bin/
chmod +x clickToLaunchApp.sh
./clickToLaunchApp.sh

Pronto, agora temos tudo funcional! Qualquer dúvida entre em contato ou deixe um comentário.

Referências:

http://www.ubuntu.com

http://kaswy.free.fr/?q=node/49

http://wiki.nuigroup.com/Brazilian_Portuguese_translation_Multitouch_terminology

http://www.tuio.org/

http://nuigroup.com/

http://www.musa.cc/index.php/mesa-multi-toque/

Até a próxima!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *