OpenCV 2.4.9 + QT5 no Ubuntu

opencv

A área de visão computacional tem chamado a atenção nos últimos anos e tem se tornado cada vez mais acessível a todos, não apenas à indústria mas também aos usuários comuns. Processadores potentes aliados com câmeras de boa resolução possibilitou-se criar programas capazes de processar video em tempo real.

No intuito de facilitar o desenvolvimento, foi criado o OpenCV, que é uma biblioteca para desenvolvimento de aplicativos na área de visão computacional. Ela foi originalmente desenvolvida pela Intel em meados de 2000 e é livre para uso acadêmico e comercial seguindo o modelo BSD Intel.

A biblioteca OpenCV pode ser usada em C++ na versão atual, chamada OpenCV2 e em C na versão anterior, chamada OpenCV. Também pode ser desenvolvida uma aplicação em outras linguagens, como Python. Possui uma extensa e completa documentação que pode ser encontrada na página de documentação do projeto.

Instalando o QT

Para o desenvolvimento de programas usando essa biblioteca, usaremos o QT que é um framework multiplataforma bem conhecido da comunidade. A instalação é simples. Visite a site do projeto para fazer o download ou via linha de comando e siga as instruções do instalador:

mkdir qt5
cd qt5
wget https://download.qt-project.org/official_releases/online_installers/qt-opensource-linux-x64-1.6.0-4-online.run
chmod +x ./qt-opensource-linux-x64-1.6.0-4-online.run
sudo ./qt-opensource-linux-x64-1.6.0-4-online.run

Compilando OpenCV

Primeiro, vamos instalar alguns pacotes necessários para compilar o OpenCV:

sudo apt-get install build-essential
sudo apt-get install  libgtk2.0-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev

Faça o download da última versão da biblioteca aqui e salve num diretório chamado opencv5.

cd opencv5
unzip ./opencv-2.4.9.zip
cd opencv-2.4.9
mkdir build
cd build
cmake -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_GTK_2_X=ON ..
make
sudo make install

A biblioteca, por padrão, será instalada em /usr/local/lib. Para as opções do cmake veja o arquivo CMakeLists.txt.

Agora, para poder linkar as novas bibliotecas, vamos criar um novo arquivo chamado opencv.conf em /etc/ld.so.conf.d/. Edite-o com o seguinte conteúdo:

/usr/local/lib

 e depois execute o seguite comando:

sudo ldconfig

Testando OpenCV

Para testar, vá para o diretório bin criado dentro do diretório build e execute por exemplo:

cd ./bin
cd ./opencv_test_core

Integrando QT5 + OpenCV

Inicie o QTCreator. Via linha de comando seria:

/opt/Qt/Tools/QtCreeator/bin/qtcreator

Nesta máquina ela foi instalada em /opt/Qt. Se desejar você também pode iniciar via modo gráfico, no KDE por exemplo:

open_QTCreator

Crie um projeto console no QT Creator.

Selecione Desktop como plataforma e siga as instruções do wizard até o fim.

No arquivo .pro adicione o path onde foi instalada a biblioteca opencv e inclua o caminho para os headers instalados no início do post.

INCLUDEPATH += .
INCLUDEPATH += /usr/local/include
INCLUDEPATH += /usr/local/include/opencv
INCLUDEPATH += /usr/local/include/opencv2
INCLUDEPATH += /usr/local/include/opencv2/core
INCLUDEPATH += /usr/local/include/opencv2/highgui
INCLUDEPATH += /usr/local/include/opencv2/imgproc
INCLUDEPATH += /usr/local/include/opencv2/flann
INCLUDEPATH += /usr/local/include/opencv2/photo
INCLUDEPATH += /usr/local/include/opencv2/video
INCLUDEPATH += /usr/local/include/opencv2/features2d
INCLUDEPATH += /usr/local/include/opencv2/objdetect
INCLUDEPATH += /usr/local/include/opencv2/calib3d
INCLUDEPATH += /usr/local/include/opencv2/ml
INCLUDEPATH += /usr/local/include/opencv2/contrib

LIBS += `pkg-config opencv --cflags --libs`

Para o primeiro exemplo, vamos carregar a famosa foto da lena.  Para isso a copie no diretório do teu projeto dentro da pasta Debug se estiver em modo debug ou Release se estiver em modo release. 

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

using namespace cv;
using namespace std;

int main(int argc, char *argv[])
{
    Mat image;
    image = imread("lena.jpg");   // Read the file

    if(!image.data)
    {
        cout << "nenhuma imagem!";
    }
    else
    {
        cout << "imagem carregada!";
    }

    cv::namedWindow("Teste imagem");
    cv::imshow("Teste imagem", image);
    cv::waitKey(0);
    return 0;
}

Clique em Run para compilar e executar o código, se tudo estiver correto,  a seguinte imagem será exibida.

lena_result

Nos próximos posts iremos abordar alguns temas interessantes nessa vasta área de visão por computador. E você leitor, qual o seu interesse nessa área? Com o que tem trabalhado e como tem usado o OpenCV em seus projetos?

Referências

https://qt-project.org/doc/qtcreator-2.5/creator-overview.html
https://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html
https://karytech.blogspot.ca/2012/05/opencv-24-on-ubuntu-1204.html
https://linuxconfig.org/introduction-to-computer-vision-with-opencv-on-linux
Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
Comentários:
Notificações
Notificar
4 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
vinifr
vinifr
27/08/2014 13:40
Jéssica Motta
Jéssica Motta
31/08/2017 10:12

Excelente artigo. Me ajudou muito!!

Home » Software » Sistemas Operacionais » OpenCV 2.4.9 + QT5 no Ubuntu

EM DESTAQUE

WEBINARS

VEJA TAMBÉM

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Talvez você goste: