001】Qt 5.10.1下配置OpenCV開發環境及Demo
阿新 • • 發佈:2019-02-10
一、開發環境
1、Windows 7 64位 SP1 旗艦版;
2、Qt 5.10.1;
3、OpenCV 3.4.1
二、環境配置
圖1 OpenCV庫資料夾
2、開啟Qt Creator,新建基於控制檯的專案,此處專案命名為“OpenCV_ShowImage”;
3、將OpenCV庫複製到工程目錄,放在資料夾“OpenCV_Qt”下;
4、開啟“OpenCV_ShowImage.pro”檔案,新增如下路徑包含程式碼:
1)專案資料夾下相對路徑1:
INCLUDEPATH += $$PWD/OpenCV_Qt/include\ $$PWD/OpenCV_Qt/include/opencv\ $$PWD/OpenCV_Qt/include/opencv2 LIBS += -L $$PWD/OpenCV_Qt/lib/libopencv_*.a
2)專案資料夾下相對路徑2:
INCLUDEPATH += $$PWD/../OpenCV_Qt/include\
$$PWD/../OpenCV_Qt/include/opencv\
$$PWD/../OpenCV_Qt/include/opencv2
LIBS += -L $$PWD/../OpenCV_Qt/lib/libopencv_*.a
3)絕對路徑:INCLUDEPATH += D:/OpenCV_Qt/include\ D:/OpenCV_Qt/include/opencv\ D:/OpenCV_Qt/include/opencv2 LIBS += -L D:/OpenCV_Qt/lib/libopencv_*.a
4)新增完整包含:
INCLUDEPATH += $$PWD/../OpenCV_Qt/include\ $$PWD/../OpenCV_Qt/include/opencv\ $$PWD/../OpenCV_Qt/include/opencv2 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_calib3d341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_core341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_dnn341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_features2d341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_flann341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_highgui341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_imgcodecs341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_imgproc341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_ml341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_objdetect341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_photo341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_shape341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_stitching341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_superres341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_video341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_videoio341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -llibopencv_videostab341 unix|win32: LIBS += -L$$PWD/../OpenCV_Qt/bin/ -lopencv_ffmpeg341
以上4種路徑設定均可,取決於OpenCV庫所放的位置;其中第4種將所有庫檔案均包含進來,簡單粗暴,不過不容易出錯;不同版本的OpenCV庫,僅需要修改後面的版本號即可。以上4種僅為參考,專案編寫過程中需根據具體情況來設定,遇到問題適當調整即可解決。
經過上述步驟,即完成OpenCV庫的環境配置,下面是簡單的示例程式,用來演示配置是否有效。
三、示例Demo
1、完成第二部分配置後,開啟“main.cpp”檔案,新增如下程式碼:
#include <QCoreApplication>
#include "opencv2/opencv.hpp"//新增Opencv相關標頭檔案
using namespace cv;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
Mat img = cv::imread("test.jpg");//載入並圖片,延時2後自動關閉視窗
imshow("Image", img);
waitKey(2000);
destroyAllWindows();
return a.exec();
}
2、將自定義的圖片新增到合適位置;
3、構建並執行程式,執行效果如圖2所示。
圖2 執行效果圖