qt的opencv,以及opencv_contrib(额外的库)环境编译

本文详细介绍了如何在Qt环境中集成OpenCV,包括所需版本、安装步骤、解决常见配置问题及最终使用方法。适合希望在Qt应用程序中加入图像处理功能的开发者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1原材料:

1.1qt:版本为5.6.1

1.2 opencv:版本3.1.0

1.3 opencv_contrib:3.1.0

1.4cmake:3.7.2

2安装

2.1qt,直接安装就行,路径不要有中文和空格等奇怪路径

2.2用cmake编译opencv,第一个选opencv源码路径,第二个框选你要build的路径

可以选择第二个选项,那样c/c++就要选qt安装路径下tools文件的gcc.exe和gc++.exe,一般选择第一个选项就行了

2.2.2点击configure配置,出现如下错误

网上说找到NameCMAKE_MAKE_PROGRAM的一项,把它的Value填写为C:/Qt/Qt5.xxx/Tools/mingwxxx_32/bin/mingw32-make.exe即可。再次点击Configure,但是这里没有CMAKE_MAKE_PROGRAM,经查找发现要勾上Advanced选项才有

 

选择好CMAKE_MAKE_PROGRAM路径后,再次configure

2.3.2可以编译,但是很难完成,因为卡在opencv_ffmpeg.dll、opencv_ffmpeg_64.dll、protobuf-cpp-3.1.0.tar.gz、vgg_generated_64.i,速度很慢

可以到通过opencv的exe方式安装的build目录下的bin里面找到opencv_ffmpeg310.dll和opencv_ffmpeg310_64.dll去掉310然后放在源目录的3rdparty的ffmpeg目录下

2.4添加contrib模块,在opencv_extra_module_path添加额外库opencv_contrib下面的module文件路径,继续configure后generate,然后打开mingw的cmd命令进去刚才cmake填的build路径下,使用mingw32-make,这里可能会因为bioinspired这个东西导致崩溃退出,这时可以再cmake的configure的选项中去掉Build_ opencv_bioinspired,或者去额外的库opencv_contrib的modules\bioinspired\src\opencl下面打开retina_kernel.cl这个文件,把里面的注释全部删掉继续mingw32-make,然后就可以mingw32-make install

可以发现在D:/Code-software/opencv_3_1_0/build的路径(就是刚才cmake填的第二个路径)下生成install文件,可以把里面的include,以及x86/mingw32的bin和lib文件拿出来放在自己的新建的路径,比如我的是D:/Code-software/opencv_3_1_0/Opencv_Qt_install/

3使用opencv

3.1在项目*.pro文件中添加如下语句,比如我的是D:/Code-software/opencv_3_1_0/Opencv_Qt_install/

INCLUDEPATH+=D:/Code-software/opencv_3_1_0/Opencv_Qt_install/include\

D:/Code-software/opencv_3_1_0/Opencv_Qt_install/include/opencv2\

D:/Code-software/opencv_3_1_0/Opencv_Qt_install/include/opencv

LIBS+=-LD:/Code-software/opencv_3_1_0/Opencv_Qt_install/lib/libopencv_*.a

3.2*.cpp文件中代码如下:

#include"mainwindow.h"

#include<QApplication>

#include<opencv2/opencv.hpp>

usingnamespacestd;

usingnamespacecv;

intmain(intargc,char*argv[])

{

QApplicationa(argc,argv);

MainWindoww;

cv::Matframe2;

//cv::namedWindow("1",0);

//cv::imshow("1",frame2);

w.show(); 

returna.exec();

}

3.3点击编译运行,这时可能会出现crashed


或者调试时0xc0000135

这可能是没找到库路径

1可在系统环境变量Path里面添加opencv install的库路径,比如我的是

也可以把D:\Code-software\opencv_3_1_0\Opencv_Qt_install\lib一同加进去

2第二种方法在


的run enviroment里面的path添加一方法中的bin和lib路径

然后最好重新新建一个项目,这个项目不要(因为我的这个原始项目一直不行,但是新建的可以)

 

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值