Tutoriais‎ > ‎OpenCV‎ > ‎

Configurando o OpenCV no Raspberry2

postado em 31 de ago de 2015 12:16 por Prof. Rodrigo Costa
Neste post, serão descritos os procedimentos necessários para configurar o OpenCV no Raspberry PI 2.

Antes de iniciar as configurações, é necessário obter os seguintes pre-requisitos:

Pré-requisitos

  • Imagem do RASPIBIAN, disponível no site: https://www.raspberrypi.org/downloads/raspbian/ gravada no sdcard do raspberrypi

  • Servidor SSH habilitado no raspberry
  • Cliente SSH, por exemplo, putty. 
  • Opcional: cliente x-windows, configuração no windows disponível no meu site https://sites.google.com/site/rodccosta/tutoriais/windows/Putty-Xming

1. Instalando os pacotes

Deve-se alterar o arquivo /etc/hosts e /etc/hostname. 
[email protected] $ sudo su
[email protected] # apt-get install libcv2* libcv-dev libcvaux* libhighgui* opencv-doc python-opencv pkg-config gcc g++ make

Depois disto, deve-se criar os links simbólicos de algumas bibliotecas, pois o apt-get não criou os links de todas as libs.
[email protected] # ln -s /usr/lib/libopencv_photo.so.2.4.1 /usr/lib/libopencv_photo.so
[email protected] # ln -s /usr/lib/libopencv_ts.so.2.4.1 /usr/lib/libopencv_ts.so
[email protected] # ln -s /usr/lib/libopencv_stitching.so.2.4.1 /usr/lib/libopencv_stitching.so
[email protected] # ln -s /usr/lib/libopencv_videostab.so.2.4.1 /usr/lib/libopencv_videostab.so

2. Configurando o pkg-config 

 Para facilitar as configurações de compilação do opencv, configura-se o pkg-config para armazenar as diretrizes de compilação e ligação
[email protected] # mkdir /var/lib/pkg-config
[email protected] # cd /var/lib/pkg-config 
[email protected] # nano opencv.pc

O conteudo do opencv.pc está disponível a seguir:
prefix=/usr
exec_prefix=${prefix}
libdir=${prefix}
includedir_old=${prefix}/include/opencv
includedir_new=${prefix}/include

Name: OpenCV
Description: Intel(R) Open Source Computer Vision Library
Version: 2.4.1
Libs: -L${libdir} -lopencv_calib3d -lopencv_contrib -lopencv_core -lopencv_features2d -lopencv_flann -lopencv_highgui -lopencv_imgproc -lopencv_legacy -lopencv_ml -lopencv_objdetect -lopencv_photo -lopencv_stitching -lopencv_ts -lopencv_video -lopencv_videostab
Cflags: -I${includedir_old} -I${includedir_new}

Para concluir a configuração, deve-se criar uma variável de ambiente PKG_CONFIG_PATH apontando para o diretório /var/lib/pkg-config. Para fazer isto, deve-se inserir no final do arquivo .bashrc o seguinte comando.
[email protected] # echo "export PKG_CONFIG_PATH=/var/lib/pkg-config" >> ~/.bashrc
[email protected] # echo "export PKG_CONFIG_PATH=/var/lib/pkg-config" >> /home/pi/.bashrc

Para testar o pkg-config usa-se
[email protected] # sh ~/.bashrc
[email protected] # pkg-config opencv --cflags
[email protected] # pkg-config opencv --libs

Após as configurações, deve-se reiniciar o raspberry e pronto, o opencv já está configurado e pronto pra criar programas.

3. Testando

Neste tutorial será criado um programa que carrega uma imagem gravada no sdcard do raspberry e a exibe na interface gráfica em seguida. 
[email protected] ~ $ nano teste.cpp

O conteúdo do arquivo teste.cpp é descrito a seguir

#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <iostream>

using namespace std;
using namespace cv;

int main(void)
{
        Mat img = imread("imagem.jpg");
        imshow("Original",img);
        waitKey(0);
}

Depois disso, basta compilar o arquivo
[email protected] ~ $ c++ -c teste.cpp -o teste.o `pkg-config opencv --cflags`
[email protected] ~ $ c++ teste.o -o teste.bin `pkg-config opencv --libs`

Pronto, concluído estas instruções, executa-se o programa compilado e a imagem é exibido na tela
[email protected] ~ $ ./teste.bin

A seguir é mostrado o resultado final dos testes realizados no windows com o x-ming

Vídeo

Foi criado um video executando este tutorial, disponível no youtube.com/rodccosta
ċ
opencv.pc
(1k)
Prof. Rodrigo Costa,
31 de ago de 2015 12:16
Comments