Basicamente seguiremos 3 passos:
- Instalação Ubuntu 10.04
- PS3 Eye
- 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://kaswy.free.fr/?q=node/49
http://wiki.nuigroup.com/Brazilian_Portuguese_translation_Multitouch_terminology
http://www.musa.cc/index.php/mesa-multi-toque/
Até a próxima!