1. 程式人生 > >Win7下 OpenCV+Qt開發環境搭建

Win7下 OpenCV+Qt開發環境搭建

tro enc 銷毀 vid 使用 detect ack text []

1所需軟件工具:

(1)OpenCV開發庫,2.4.9版;包括源文件(source文件夾)和編譯後的文件(build文件夾),但最好自己使用CMake又一次編譯。否則easy出錯。

2Qt Creator,在官網下載最新版的,選擇MinGW版本號。

3CMake,官網下載最新版。

2、安裝OpenCV。即將源文件和編譯後文件,解壓到文件夾:

F:\ProgramFiles\programme\openCV\openCV249

當中包括兩個文件夾:build(編譯後文件)和sources(源碼文件夾)。

3、安裝Qt

技術分享

技術分享

(1)安裝時,須要勾選上“MinGW4.8”,默認沒有勾選。

(2)安裝完畢,將Qt的3個環境變量增加“系統環境變量”Path:

F:\ProgramFiles\programme\Qt\Qt560\Tools\mingw492_32\bin(gcc編譯器所在路徑,請依據自己所選安裝文件夾選擇);

F:\ProgramFiles\programme\Qt\Qt560\5.6\mingw49_32\bin(增加該路徑。是避免MinGW Config時報錯)

F:\ProgramFiles\programme\Qt\Qt560\Tools\mingw492_32\i686-w64-mingw32\lib(增加該路徑,是避免MinGW Config時報錯)

(3)註意Qt全然安裝,所占磁盤空間非常大。達到了5G以上,註意安排足夠的磁盤空間以免空間不足導致安裝失敗。

4、安裝CMake,並使用CMake控制OpenCV的編譯過程。

(1)配置編譯環境,“Configure”,然後選擇“MinGW Makefiles”,默認選項“Use default native compilers(MinGW通過系統環境變量找到gccg++

編譯器。)

(2)設置要編譯的OpenCV“源文件路徑”和生成的“目標路徑”。例如以下圖。

技術分享

3CMake編譯結束後,勾選生成列表中的選項“WITH_OPENGL”和“WITH_QT”,其它項最好不要動。

技術分享

(4)再次點擊“Configure”button。紅色消失。

技術分享

(5)點擊“Generate”button,生成makefile文件。成功後,底下會提示Generating done

(出現紅色警告。能夠忽略。

。。)

技術分享

(6)打開cmd。進入剛才設置的目標路徑

F:\ProgramFiles\programme\openCV\buildBin,輸入“mingw32-make”命令開始編譯。此過程較長,須要30分鐘左右。

技術分享

(7)運行安裝命令“mingw32-make install”,此過程較快,大約須要12分鐘。

5、配置Qt CreatorOpenCV開發環境

(1)將步驟4中編譯生成的“目標路徑”中的文件夾(binlib文件夾)和OpenCV安裝文件夾下的“build/include”文件夾放在一個文件夾下。(目標路徑中的其它文件夾已經不須要,能夠刪除。)例如以下。將文件夾

F:\ProgramFiles\programme\openCV\openCV249\opencv\build\include”放到目標路徑文件夾“F:\ProgramFiles\programme\openCV\buildBin”下。

2)將目標路徑的bin文件夾。加入到“系統環境變量Path”中。

F:\ProgramFiles\programme\openCV\buildBin\bin”。

6至此,Qt Creator下的OpenCV開發環境已經配置好。

以下在Qt Creator下測試是否已配置成功。

1)打開Qt Creator。新建一個空project,然後加入一個cpp文件main.cpp

技術分享

2pro文件裏加入例如以下OpenCV的依賴文件

INCLUDEPATH+=F:\ProgramFiles\programme\openCV\selfBin\include\opencv\

F:\ProgramFiles\programme\openCV\selfBin\include\opencv2\

F:\ProgramFiles\programme\openCV\selfBin\include

LIBS+=F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_calib3d244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_contrib244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_core244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_features2d244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_flann244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_gpu244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_highgui244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_imgproc244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_legacy244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_ml244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_objdetect244.dll.a\

F:\ProgramFiles\programme\openCV\selfBin\lib\libopencv_video244.dll.a

事實上有種簡單的做法。可是有個缺點是可能包括鏈接庫較多(親測,這樣的方法沒有成功。)

INCLUDEPATH+=F:\ProgramFiles\programme\openCV\selfBin\include\opencv\

F:\ProgramFiles\programme\openCV\selfBin\include\opencv2\

F:\ProgramFiles\programme\openCV\selfBin\include

LIBS+=F:\ProgramFiles\programme\openCV\selfBin\lib

3main.cpp文件裏內容例如以下:

#include"cv.h"

#include"cxcore.h"

#include"highgui.h"

intmain(intargc,char*argv[])

{

//聲明IplImage指針

IplImage*pImg;

//加載圖片

pImg=cvLoadImage("E:/OpenCV/FirstOpenCV/home.jpg",1);

//創建窗體

cvNamedWindow("Image",1);

//顯示圖像

cvShowImage("Image",pImg);

//等待按鍵

cvWaitKey(0);

//銷毀窗體

cvDestroyWindow("Image");

//釋放圖像

cvReleaseImage(&pImg);

return0;

}

3.4)執行程序。可看到圖片展示。

技術分享

Win7下 OpenCV+Qt開發環境搭建