To pytanie musi być powtórzone wiele razy, ale po prostu nie działa, a czasami nadal pozostaje bez odpowiedzi. Źródłami informacji są głównie tych
http://www.laganiere.name/opencvCookbook/chap1s1_2.shtml
http://www.youtube.com/watch?v=dgcXYQijV6c
Jak połączyć opencv w QtCreator i korzystać z biblioteki Qt
Jest to podsumowanie tego, co myślę, że jeden powinien/może zrobić. (A teraz to działa dla mnie.) Mam nadzieję, że wspomniałem o wszystkim od samego początku, celem jest napisanie bardzo przejrzystego samouczka.
Instalacja OpenCV dla Qt Creator
- już zainstalowany MS Visual Studio 2010 Professional. (Mam darmową licencję jako student) - myślę, że to nie jest konieczne, wystarczy wspomnieć
- Download: Qt 5.0.1 dla Windows 32-bit (MinGW 4.7, 823 MB)
2,1 Instalacja: Ostrzeżenie, wszystko, czego używa Qt (np. OpenCV), musi znajdować się w katalogach, które nie zawierają białych znaków w swoich nazwach. - "Program Files" jest niepoprawny. (Ale nie chcę, aby różne pliki programu gromadziły się bezpośrednio w C, więc utworzyłem tylko folder "Programy", w którym wszystko, co ważne jest zainstalowane) - Pobierz: cmake-2.8.10.2-win32-x86 .exe - Instalacja dla wszystkich użytkowników (może to być w Program Files)
- download: OpenCV-2.4.0.exe, wyciąg do: C: \ Programy \ opencv24 - będzie to stworzyć dir „OpenCV "; dodaj kolejny folder "opencv_bin". Teraz wygląda to tak:
C: \ Programs \ opencv24 \ OpenCV *
C: \ Programy \ opencv24 \ opencv_bin - Set środowiskowej PATH zmiennej, tak że być linkiem do MinGW kompilatora . na przykład C: \ Programs \ Qt \ Qt5.0.1 \ Tools \ MinGW \ bin;
- start cmake-gui.exe
6,1 kod źródłowy: ustawić domyślny dir dla OpenCV; C: \ Programs \ opencv24 \ opencv
6.2 pliki binarne: ustaw katalog opencv_bin; C: \ Programy \ copencv24 \ opencv_bin
6,3 kliknij Konfiguruj:- Wybierz MinGW Makefile i Określ natywne kompilatory, kliknij obok
- Pole C jest dla gcc.exe; C: /Programy/Qt/Qt5.0.1/Tools/MinGW/bin/gcc.exe
- Pole C++ dla g ++. Exe; C. /Programs/Qt/Qt5.0.1/Tools/MinGW/bin/g ++ exe Pole Fortran może być pusta, kliknij przycisk Zakończ
- WITH_QT - należy wybrać.
- WITH_TBB, WITH_IPP, WITH_CUDA - musi być odznaczone
- CMAKE_BUILD_TYPE - kliknij i wprowadź tekst "Debugowanie" (bez cudzysłowów). Wyczyść tekst z pola wyszukiwania.
- Przejdź do wiersza polecenia (~) terminala, cd do katalogu, gdzie są buduje (opencv_bin) i rodzaj mingw32-make
- Gdy proces kończy się po długim czasie, typ mingw32-make install
- Dodaj do zmiennej PATH ścieżkę do Qt Creator/bin C: \ Programy \ Qt \ Qt5.0.1 \ Tools \ bin \ Qt Creator
Teraz stworzyłem nową aplikację konsolową w QtCreator.
//cvHello.pro
QT += core
QT -= gui
TARGET = cvHello
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
INCLUDEPATH += C:/Programs/opencv24/opencv_bin2/install/include
LIBS += "C:/Programs/opencv24/opencv_bin2/bin/*.dll"
SOURCES += main.cpp
OTHER_FILES += \
img.JPG
A głównym pliku:
//main.cpp
#include <iostream>
#include "opencv2/core/core.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv/cv.h"
using namespace std;
int main()
{
cout << "Hello World!" << endl;
cv::Mat mat;
mat = cv::imread("img.JPG");
cvNamedWindow("hello");
cv::imshow("hello",mat);
cvWaitKey(0);
return 0;
}
Definiuję tutaj LIBS, aby używać katalogu opencv_bin2, ponieważ kilka razy przebudowałem opencv. –
Mój projekt [cvImage] (https://github.com/karlphillip/GraphicsProgramming/tree/master/cvVideo) jest dostępny na GitHub i pokazuje, jak zbudować aplikację wieloplatformową z Qt/OpenCV. Sprawdź plik **. Pro **. – karlphillip
Musiałem użyć "CMAKE_BUILD_TYPE = Release" zamiast Debugowania, jak podano w [tutaj] (http://www.laganiere.name/opencvCookbook/chap1s1_2.shtml) - twoje pierwsze źródło. – inblueswithu