为Qt配置OpenCV的简便方法

将Qt与OpenCV结合,进行图像处理,会带来很多方便。相比于vs的MFC,Qt更受欢迎。

在Qt上使用OpenCV需要编译其源码,但其编译过程繁琐,且容易出错。

我为Qt配置OpenCV时,用到的工具有 :

1.cmake-3.15.3-win64-x64

2.opencv-3.4.7-vc14_vc15

3.Qt 5.13.0

整体过程是,先安装Qt(注意勾选MinGW-64bit这个编译器,最好把MSVC2017编译器也勾上),然后用cmake编译OpenCV源码,最后为Qt添加相应的环境变量和配置文件。

我在自己电脑上一次性安装成功,然后利用上述方法给我朋友的电脑配置时,卡在了第二个步骤,编译源码老出问题。尝试好几遍后(浪费很多个小时时间),差点放弃,准备用VS+OpenCV作为开发环境。

最后,转念一想,编译源码其目的是生成.dll文件,然后让Qt调用生成的文件。而我电脑已经编译好了,直接拷贝到其他电脑上不就可以了吗?因此以下介绍的方法直接跳过了编译源码的繁琐过程,如果已经安装好Qt,配置也许就5分钟就ok了。编译好的文件已经传入百度云盘。

链接:https://pan.baidu.com/s/1nDZQTDnKBzxTSgc1kG4tAA 
提取码:71xe 

步骤1:到opencv官网下载:opencv-3.4.7-vc14_vc15,然后解压至某一路径。

步骤2:按Qt,可以安装5.13.0或5.13.1等。

步骤3:解压从云盘下载的压缩包,将其放在opencv中,如下图所示(其实可以放在任意路径),这样只是方便管理。

我的文件结构如下图,请根据自己的路径进行配置。

步骤4:添加环境变量

右键桌面上“我的电脑”,选择属性,进入到如下页面:选择“高级系统设置”

选择“环境变量”

然后在系统变量下选择Path,再点击编辑。(如果没有Path,可以自己新建一个

在Path的编辑界面根据自己的路径加入如下三个路径(图中红框部分)

前两个是Qt的安装路径下面的,第三个是刚才从云盘上下载的文件解压后,其中“bin”的路径。请根据自己的文件位置编辑。

步骤5:配置Qt工程

打开Qt creator,新建一个工程,选择Application->Qt Widgets Application,然后下一步。

然后是工程的名字和路径,这个自己确定即可。再下一步是选择编译器,如下图,请选择MinGW 64,依次下一步至结束。

在工程目录中,打开.pro文件,加入如下代码:

第一部分是你opencv解压后,其中文件的路径,请根据自己的文件位置适当修改。

第二部分是云盘文件解压后,文件夹中第二个文件夹——lib中相关文件的路径,请根据自己的文件位置适当修改。

INCLUDEPATH+=E:\opencv\build\include\opencv\
             E:\opencv\build\include\opencv2\
             E:\opencv\build\include

LIBS+=E:\opencv\install\lib\libopencv_core_pch_dephelp.a \
       E:\opencv\install\lib\libopencv_core347.dll.a \
       E:\opencv\install\lib\libopencv_dnn347.dll.a \
       E:\opencv\install\lib\libopencv_features2d347.dll.a \
       E:\opencv\install\lib\libopencv_flann347.dll.a \
       E:\opencv\install\lib\libopencv_highgui347.dll.a \
       E:\opencv\install\lib\libopencv_imgcodecs347.dll.a \
       E:\opencv\install\lib\libopencv_imgproc347.dll.a \
       E:\opencv\install\lib\libopencv_ml347.dll.a \
       E:\opencv\install\lib\libopencv_objdetect347.dll.a \
       E:\opencv\install\lib\libopencv_photo347.dll.a \
       E:\opencv\install\lib\libopencv_shape347.dll.a \
       E:\opencv\install\lib\libopencv_stitching347.dll.a \
       E:\opencv\install\lib\libopencv_superres347.dll.a \
       E:\opencv\install\lib\libopencv_ts347.a \
       E:\opencv\install\lib\libopencv_video347.dll.a  \
       E:\opencv\install\lib\libopencv_videoio347.dll.a \
       E:\opencv\install\lib\libopencv_videostab347.dll.a

我的文件结构如下图:

至此,所有配置已经完成,可以写代码测试配置结果了。

测试效果如下:注意,图片文件路径一定要对。

补充:Qt可以并行编译,从而加快编译速度,操作方法参考:https://blog.csdn.net/zhouxu5768503/article/details/78520402

也可以采用以下方法:

以上就是整个过程,如果有问题,欢迎留言交流哦~。

发布了7 篇原创文章 · 获赞 17 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/LTstudying/article/details/102074424