sexta-feira, 20 de dezembro de 2013

Configurando OpenCV no Eclipse (Eclipse-CDT) - Xubuntu 13.10


Tentei achar um tutorial para configurar o OpenCV no Eclipse com o plugin CDT (C/C++ Development Tooling) para o Xubuntu 13.10, mas não consegui seguir os exemplos de configurações que encontrei, devido um retorno diferente de uma linha de comando. Fiz este post para registrar a sequência de passos que usei para configurar o meu ambiente de desenvolvimento, caso precise configurar novamente e também se alguém precisar utilizá-lo.
Estou considerando que você, assim como eu, seguiu a instalação padrão e não alterou nenhum diretório da biblioteca OpenCV. Instalei a biblioteca OpenCV e o plugin eclipse-cdt via apt-get, respectivamente: 

apt-get install libopencv-dev
apt-get install eclipse-cdt

Note que o eclipse-cdt é plugin! O IDE eclipse já estava instalada na minha máquina. Agora abra o seu eclipse e crie um projeto em: 

File -> Nem -> C++ Project 

Defina um nome para o projeto e avance até finalizar. Agora veja as propriedades do projeto (ALT + Enter), clique em “C/C++ Building” e depois em “Setting”. Agora procure pela aba “Tool settings” e nesta procure por “Cross G++ Compiler”, clique em “Includes” e em “Include paths (-I)” adicione o diretório: “-I/usr/include/opencv” (Você pode encontrar esse diretório buscando pelo terminal com a seguinte linha de comando: “pkg-config --cflags opencv”). Detalhes na imagem a seguir:

Configuração do Cross G++ Compiler para a biblioteca OpenCV
Retorne à aba“Tool settings”, desta vez procure por “Cross G++ Libraries” e em “Library search path (-L)” adicione o seguinte diretório: “/usr/lib” (Tentei executar a seguinte linha de comando que vi em vários tutoriais: “pkg-config --libs opencv”, mas só retornou os links simbólicos nesta versão do Xubuntu 13.10. Então procurei no diretório padrão e vi que os arquivos .so estão em “/usr/lib”). Agora, em “Libraries (-l)” adicione todas as libs: “opencv_calib3d” “opencv_contrib” “opencv_core” “opencv_features2d” “opencv_flann” “opencv_gpu” “opencv_highgui” “opencv_imgproc” “opencv_legacy” “opencv_ml” “opencv_objdetect” “opencv_ocl” “opencv_photo” “opencv_stitching” “opencv_superres” “opencv_ts” “opencv_video” “opencv_videostab”. Detalhes da configuração na imagem seguir:
Configuração do Cross G++ Linker para a biblioteca OpenCV
Testando o ambiente com um código do Laboratório do Projeto SHIVA. Aplicação do filtro gaussiano com máscara 7x7, detalhes a seguir:
OpenCV rodando!
Espero que este post possa ajudar alguém, qualquer dúvida pode deixar uma mensagem que lerei e, quando possível, responderei!