系統:windows10
Qt版本:5.13.1
OpenCV版本:3.4.3(與4.1.1)
Qt安裝
- Qt下載
??前往官網根據需要下載對應版本,由于Qt5.12.0版本之前只支持x86的編譯器,5.12.0之后才加入x64的MinGW的編譯器,故這邊推薦5.12.0之后的版本,這邊以5.13.1版本為例,
??下載鏈接:http://download.qt.io/archive/qt/



2. Qt安裝
- 運行將剛下載的exe檔案

如下:
點擊“Next”, - 登錄Qt賬戶(以往可以直接“skip”,現在似乎必須登錄)
??先前有注冊過Qt賬戶的直接輸入郵箱密碼登錄;沒有注冊過的,直接在下方輸入郵箱和密碼注冊登錄,密碼至少要包含“小寫字母,大寫字母,數字,符號”中的任意三種,點擊“Next”,


??點擊“下一步”,

- 選擇Qt安裝路徑
??默認是C盤,軟體比較大,不建議安裝在C盤,自行修改安裝路徑,

- 安裝組件選擇
??這也是安裝中最重要的一步,后面配置不成功,很有可能是這邊編譯器選擇的問題,
??按下圖勾選組件選項,這邊選擇MinGW 64位編譯器,
??由于個人作業與考核需要,同時勾選了MinGW 32位編譯器,如果自己電腦已經裝有VS的,可以自行再勾選MSVC編譯器,其他組件根據個人開發需要自行勾選,點擊下一步,

??點擊“agree”,一直點擊“下一步”,直到最后點擊“安裝”,等待安裝完畢,


至此,Qt安裝完畢,
Qt下OpenCV運行環境配置
- 配置環境變數
??打開“此電腦”,空白處右擊選擇“屬性”,點擊左側“高級系統設定”,點擊右下角“環境變數”,翻滾“系統變數”找到“Path”選項,雙擊編輯,

??添加剛才Qt安裝路徑下的下面兩個路徑名,我這邊為MinGW 64位路徑,若配置MinGW 32位路徑則將下面兩條路徑加入Path中,
D:\Qt5.13.1\5.13.1\mingw73_32\bin
D:\Qt5.13.1\Tools\mingw730_32\bin

??繼續在剛才的Path中添加下圖中OpenCV的路徑(根據自己的OpenCV版本和檔案存放路徑添加,我這邊使用的不同編譯器下的OpenCV版本較多,MinGW x86編譯器編譯的OpenCV3.4.3版本添加樣式如下圖紅框部分),


??一共是3個路徑,至此環境變數配置結束, - 新建Qt工程
??為操作方便,將下圖中“開始”選單欄中的Qt快捷方式拉至桌面;雙擊快捷方式運行Qt,

??點擊“New Project”,

??選擇“Qt Console Application”,點擊“下一步”,

??選擇工程存放路徑,點擊“下一步”,繼續點擊“下一步”,

??選擇編譯器型別,這邊以MinGW 32位為例,點擊“下一步”,直到點擊“完成”,工程創建完畢,

- 配置OpenCV運行環境
??點擊右方的.pro檔案,在如下位置加入下圖中OpenCV的包含路徑(這邊根據自己OpenCV的存放路徑修改,注意左斜杠和右斜杠),
INCLUDEPATH += F:/OpenCV/OpenCV3.4.3/opencv_3.4.3_build_qt/include\
F:/OpenCV/OpenCV3.4.3/opencv_3.4.3_build_qt/include/opencv\
F:/OpenCV/OpenCV3.4.3/opencv_3.4.3_build_qt/include/opencv2
LIBS += F:/OpenCV/OpenCV3.4.3/opencv_3.4.3_build_qt/x86/mingw/lib/libopencv_*.dll.a

??若使用OpenCV4.0及以上版本,由于OpenCV4.0取消了所有的C語言介面部分,故路徑配置不需要添加最后一級檔案目錄名為“opencv”的路徑,即需要添加的路徑如下:
INCLUDEPATH += F:/OpenCV/OpenCV4.1.1/opencv_4.1.1_build_qt/include\
F:/OpenCV/OpenCV4.1.1/opencv_4.1.1_build_qt/include/opencv2
LIBS += F:/OpenCV/OpenCV4.1.1/opencv_4.1.1_build_qt/x64/mingw/lib/libopencv_*.dll.a
- 代碼測驗
??輸入以下代碼并運行,成功顯示出圖片,則配置無誤,
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
Mat img = imread("F:\\RM.png"); // 這邊修改成自己的圖片路徑,注意雙斜杠
if(img.empty())
{
cout << "can't read this image!" << endl;
return 0;
}
imshow("image", img);
waitKey(0);
return 0;
}

至此大功告成,耶!!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/188262.html
標籤:其他
