Em primeiro lugar, baixei a versão 2.4 pois a versão 3 não consegui buildar e vi algumas pessoas como mesmo problema, então caso esteja com problemas para buildar o opencv e esteja utilizando a versão 3 pode ser este o seu problema.
Para instalar o OpenCV, é necessário baixar 3 programas
Caso você possua alguma IDE com o MinGW, recomendo desinstalar, pois ja tive problemas assim.
Primeiro vamos instalar o MinGW:
Após selecionar a pasta e instalar o manager, clique em continue
Os pacotes necessários são o mingw-gcc-g++ e o mingw-base, o resto é opcional
Após selecionar os pacotes, vá em Installation->Apply Changes
Após concluir a instalação do MinGW, adicione o path às variáveis de ambiente do windows.
Para isso, clique com botão direito no Meu Computador, vá em Propriedades->Configurações avançadas->Variáveis de ambiente e edite o PATH das variáveis do sistema e adicione o diretório bin que está dentro da pasta MinGW, no meu caso, C:\MinGW\bin
Para conferir se a variável foi setada, abra um cmd e digite path para listar as variáveis. os diretórios inseridos devem estar na lista, caso contrário, reinicie o computador e verifique novamente.
Agora que o MinGW já foi instalado e configurado,instale o CMake, que não tem segredos. Então, vamos instalar o OpenCV
Extraia o arquivo para uma pasta raiz (já tive problema com extensão muito longa de arquivos, portanto é interessante manter o diretório o mais curto possível).
Após extrair, abra o CMake e no campo Source, coloque o diretório .../OpenCV/sources
No campo Build, coloque o diretório .../OpenCV/build/x86/mingw e clique em Generate e espere o CMake fazer o trabalho dele.
Após ter feito isto, vamos na pasta do MinGW e procurar um arquivo chamado commctrl.h e edita-lo (tive de fazer isso para arrumar um problema que tive durante a build)
Abra-o e procure esta linha que deve estar logo no começo
edite o if para 1 e o 0x0300 para 0x0500. Deve ficar assim
Feito isso, vamos na pasta do OpenCV que criamos com o CMake .../OpenCV/build/x86/mingw. Na pasta, aperte SHIFT e clique com o botão direito para abrir um cmd já na pasta.
abrindo o cmd, digite g++ --version para verificar se o MinGW foi instalado corretamente. Se foi instalado corretamente, deve aparecer a seguinte mensagem
Agora para construir o opencv, digite mingw32-make. O processo demora um pouco para completar. Na minha máquina demorou cerca de 30 minutos
Após o opencv ser construido, vamos inserir uma nova variável de ambiente para o opencv (se não inserir, ao tentar executar um projeto, o windows não vai encontrar alguns dlls e o projeto não será executado.) a variável é .../OpenCV/build/x86/mingw/bin
Assim como anteriormente, verifique em um cmd o path se está setado.
Agora o seu OpenCV já deve estar funcionando corretamente. Vamos testar com um projeto "hello world do opencv" que é um programa simples que abre uma imagem utilizando o opencv.
Instale o CodeBlocs sem compilador e configure para utilizar o MinGW instalado.
Crie um projeto
Após criar o projeto, devemos configurar o projeto para que seja utilizado as bibliotecas do opencv.
Para isso, clique com o botão direito no projeto e vá em Build Options
Vá na aba Search Directories -> Compiler e adicione o diretório .../OpenCV/build/include
Agora na aba Linker, adicione o diretório .../OpenCV/build/x86/mingw/lib
Na aba Linker Settings adicione todos os arquivos que estão dentro da pasta .../OpenCV/build/x86/mingw/lib
Agora que o projeto está configurado (você pode coloca-lo como um projeto padrão para que não precise configurar outros projetos futuros) vamos para o código:
coloque este código no seu projeto e execute:
#include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> using namespace cv; int main() { Mat image;// new blank image image = cv::imread("test.png", 0);// read the file namedWindow( "Display window", CV_WINDOW_AUTOSIZE );// create a window for display. imshow( "Display window", image );// show our image inside it. waitKey(0);// wait for a keystroke in the window return 0; }
Coloque uma imagem com o nome test.png na pasta de seu projeto e compile e execute. Pronto!





















No comments:
Post a Comment