VS2015+OpenCV+Qt
01.OpenCV
下載
- 進入官網鏈接: https://opencv.org,下載所需要的版本;
- 下載完成后直接雙擊,選擇解壓路徑,解壓到響應的文件夾中;
若之后需要把OpenCV的庫配置到Qt中,則選擇3.1.0或者3.0.0的版本,親測可用
添加環境變量
一頓操作進入環境變量配置對話框,向其中添加進相應的路徑,
eg:C:\03ProgrammingSoftware\OpenCV\opencv\build\x64\vc14\bin
注意:VS2015版本用vc14\bin,VS2017用戶用vc15\bin
02.VS2015
下載安裝
- 雙擊軟件的光盤鏡像文件
.iso
來源:同學處拷貝了一個2015的社區版
- 運行安裝程序,進行相應的路徑選擇等操作;
- 選擇自定義安裝只需要選擇直接需要的組件即可;
例如我只需進行C++的代碼編寫,則選擇:編程語言->Visual C++
- 等待安裝完成
配置環境
- 建立一個新的空項目
- 打開:視圖 -> 屬性管理器 -> Debug|x64 -> 右擊選擇:添加新項目屬性表
-
取名后添加后綴名為
.props
,例如我取名為:OpenCVProperty.props
-
在新建的項目屬性表中,選擇剛剛建立的
OpenCVProperty.props
,右擊選擇屬性后:-
VC++目錄 -> 包含目錄 -> 編輯 加上:
- C:\03ProgrammingSoftware\OpenCV\opencv\build\include
- C:\03ProgrammingSoftware\OpenCV\opencv\build\include\opencv
- C:\03ProgrammingSoftware\OpenCV\opencv\build\include\opencv2
-
庫目錄 -> 編輯 加上:
- C:\03ProgrammingSoftware\OpenCV\opencv\build\x64\vc14\lib
-
鏈接器 -> 輸入 -> 附加依賴項 -> 編輯 加上:
- opencv_world310d.lib
該文件在C:\03ProgrammingSoftware\OpenCV\opencv\build\x64\vc14\lib的目錄下
如需要配置release版本的則輸入不需要加d的lib
-
-
應用 -> 確定
-
在你工程的目錄下找你的配置文件
OpenCVProperty.props
,將該文件保存在相應的位置,之后需要用到時再通過屬性管理器添加即可
驗證
- 解決方案平台選擇x64,而不是x86
- 輸入程序
#include <opencv2/opencv.hpp> //頭文件
using namespace cv; //包含cv命名空間
void main()
{
//載入圖片
Mat image = imread("lena.jpg");
//顯示圖片
imshow("圖片", image);
waitKey(0);
}
若不報錯,且出來圖片(圖片記得放到和.cpp)相同的路徑下,則證明已經成功配置。
03.Qt + OpenCV
軟件環境
軟件版本
- CMake V3.9.0
- OpenCV V3.1.0
版本3.0.0和版本3.0.0都配置成功
版本3.4.5配置失敗
- Qt V5.8.0
軟件下載
- cmake:https://cmake.org/files/
下載比較慢,可通過**上網:)
- opencv
參考上述01.
- Qt:
軟件安裝包:百度雲
自定義的安裝過程過:需要選上MinGW這個編譯器
系統變量添加
- cmake環境變量:
- C:\03ProgrammingSoftware\CMake\bin
- qt環境變量:
- C:\03ProgrammingSoftware\Qt5.8.0\Tools\mingw530_32\bin
- C:\03ProgrammingSoftware\Qt5.8.0\5.8\mingw53_32\bin
- 特別注意:
- 若你安裝了anaconda,並且配置的環境變量,那么暫時刪除anaconda的環境變量!
用Cmake進行編譯
- 在cmake的文件夾中找到cmake-gui
- 選擇路徑如下:
- 點擊configure,后續如下圖:Next——Finish
- 配置完成后,勾選中:“WITH_OPENGL”、“WITH_QT”,再次點擊Configure
- 上步運行完畢后,點Generate
- CMake成功
編譯OpenCV
此處是最容易出問題的步驟
請默默祈禱:)
出了問題就百度,希望能找到解決方法:)
- 在剛剛cmake構造的文件夾中:Shift+右鍵,選擇:在此處打開命令窗口
- 輸入
mingw32-make
命令,按回車進行編譯 - 當編譯完成后,在當前目標下輸入
mingw32-make install
,按回車進行安裝 - 這樣可用於Qt的opencv庫文件就生成了!!!
再次添加環境
- 把編譯完成后的文件夾中的的bin目錄,再次添加到環境變量中
- 我的文件是:C:\03ProgrammingSoftware\QtWithOpenCV\bin
在Qt中測試
-
新建一個Qt工程
-
在.pro文件中添加如下路徑:
INCLUDEPATH += C:\03ProgrammingSoftware\OpenCV\opencv\build\include C:\03ProgrammingSoftware\OpenCV\opencv\build\include\opencv C:\03ProgrammingSoftware\OpenCV\opencv\build\include\opencv2 LIBS += C:\03ProgrammingSoftware\QtWithOpenCV\lib\libopencv_*.a
-
在main.cpp文件中輸入
#include "mainwindow.h" #include <QApplication> #include <opencv2/opencv.hpp> int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.show(); cv::Mat image = cv::imread("C:/Users/Zhucc/Desktop/QtTest/testOpencv/lena.png"); cv::imshow("lena", image); return a.exec(); }
-
若出圖像了,那么:)
參考文件
https://blog.csdn.net/Home_Wood/article/details/88162977
https://blog.csdn.net/biaobro/article/details/79141868