QT + OpenCV +Ubuntu
环境
- QT 5.9.x
- OpenCV 3.4
- Ubuntu 18.04
步骤
- 下载QT(官网)、OpenCV源码
- 编译OpenCV(略)
- QT新建工程中修改pro文件
# 增加的内容
# 头文件包含路径
INCLUDEPATH += /usr/local/include \
/usr/local/include/opencv \
/usr/local/include/opencv2
# 编译生成的so文件(类似于windows下的dll文件)
LIBS += /usr/local/lib/libopencv_calib3d.so \
/usr/local/lib/libopencv_core.so \
/usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_imgproc.so \
/usr/local/lib/libopencv_imgcodecs.so\
/usr/local/lib/libopencv_objdetect.so\
/usr/local/lib/libopencv_photo.so \
/usr/local/lib/libopencv_dnn.so \
/usr/local/lib/libopencv_shape.so\
/usr/local/lib/libopencv_features2d.so \
/usr/local/lib/libopencv_stitching.so \
/usr/local/lib/libopencv_flann.so\
/usr/local/lib/libopencv_superres.so \
/usr/local/lib/libopencv_videoio.so \
/usr/local/lib/libopencv_video.so\
/usr/local/lib/libopencv_videostab.so \
/usr/local/lib/libopencv_ml.so
QT + Windows + OpenCV (VS编译器,x64)
环境
- QT 5.9.x
- OpenCV 3.4
- Windows 10
- vs2015 (对应vc14)
步骤
- 下载QT(官网)
- 下载OpenCV(下载预编译好的版本,省去自己用cmake编译的过程)
- 添加OpenCV的环境变量,如:D:\opencv3.4.5\build\x64\vc14\bin
- QT新建工程中修改pro文件,示例如下:
TEMPLATE = app
CONFIG += console c++11
CONFIG -= app_bundle
CONFIG -= qt
SOURCES += \
main.cpp
INCLUDEPATH += D:\opencv3.4.5\build\include \
D:\opencv3.4.5\build\include\opencv \
D:\opencv3.4.5\build\include\opencv2
LIBS += D:\opencv3.4.5\build\x64\vc14\lib\opencv_world345.lib \
D:\opencv3.4.5\build\x64\vc14\lib\opencv_world345d.lib
QT + Windows + OpenCV (MinGW编译器)
环境
- QT 5.9.x
- OpenCV 3.4.5
- Windows 10
步骤
- 下载QT(官网)、OpenCV源码
- 编译OpenCV
- cmake编译源码(configure->generate),存放路径为:D:\opencv3.4.5\buildQT
- 转到编译好的源码根目录,执行mingw32-make.exe -j4
- 继续执行 mingw32-make.exe install
- 添加环境变量:D:\opencv3.4.5\buildQT\install\x86\mingw\bin
- QT新建工程中修改pro文件,示例如下:
TEMPLATE = app
CONFIG += console c++11
CONFIG -= app_bundle
CONFIG -= qt
SOURCES += \
main.cpp
INCLUDEPATH += D:\opencv3.4.5\buildQT\install\include \
D:\opencv3.4.5\buildQT\install\include\opencv \
D:\opencv3.4.5\buildQT\install\include\opencv2
LIBS +=D:/opencv3.4.5/buildQT/lib/libopencv_*.a \
注意事项(cmake: configure部分)
- 选用MinGW Makefiles编译,并手动查找QT下的mingw路径(tools文件夹下)
- ENABLE_CXX11 – YES
- WITH_IPP – NO
- WITH_OPENGL – YES
- QT5Concurrent_DIR等以QT5开头的6项需要手动选中路径,如:QT5.9.7/5.9.7/mingw53_32/lib/cmake/QT*
注意事项(mingw32-make.exe部分)
- 在执行mingw32-make.exe前,修改\OpenCV_3.3.1\opencv\sources\modules\videoio\src\cap_dshow.cpp文件: 在#include "DShow.h"这行的上面加一行#define NO_DSHOW_STRSAFE,否则可能报错(测试Opencv3.4会有这个问题,其他版本未测试)
define NO_DSHOW_STRSAFE
include "DShow.h"