在C++上如何使用OpenCV头文件是什么_OpenCV开发笔记():使用mingw530_32编译openCV3.4.1源码,搭建Qt5.9.3的openCV开发环境...

搭建openCV3环境

第一步:下载CMake并配置系统环境。

到官网下载最新版本的CMake:https://cmake.org/download/ 1d495177741c246320b582eb6e6cae16.png  因为官网下载太慢,我们到其他地方下一个版本3.10,百度自己下载。 e8f3cbcb17937a85fa0461d271ce1423.png   解压到当前文件夹,将cmake添加进系统PAPH    cee48ba80b68d2743d4d29da5154c0d2.png  使用命令行,输入cmake–version查看,显示版本号表示添加路径成功。   f197c6a114a49c4a2715135a02713a2b.png

第二步:下载openCV3.4.1。

下载源码,目前最新的版本,我们使用源码编译,编译源码这是作为使用开源库的基本技能。下载地址:https://www.opencv.org/releases.html 80b7e17fce5c61235ba77e23c24847b0.png 03d83fdb839db1d4d45e2efce8b43e73.png将其赋值到F盘。解压到当前文件夹,打开目录下CMakeList.txt可以大致判断出需要的CMake版本。 b4d0b3d75f09531f0318f35b2b6db050.png

步骤三:使用CMake编译openCV的mingw版本。

点击cmake-gui.exe d5cf29b7aa5725c8bd3f0e056131fb52.png 5484f254dd8309ae2fbeb7bbd24778cf.png按照如下操作: 4b3da4fc8e875832930851acb28849a6.png会出现如下错误: 2e4280f8eb01c92e395197107d9b8fe2.png这是需要添加环境变量,于是我们重新配置,先点击菜单File删除缓存。 98290609b3fe0f2515f600151aff3d2c.png然后重新配置: 28b2503738c1677c45aba0f244282bc4.png 719607f6841d77edf7dd60dada2832bd.png搜索CMAKE_MAKE_PROGRAM,填入mingw32-make.exe的地址 aa407909e471b235c70aebcfa84ffc76.png配置编译的版本 2ecbd9ab9c389f02933d3a0cd4893b48.png漫长的“Configure”等待 cf8457191eb34245a847569f0f9f6fcb.png配置成功,如下图: 9a73e85993b50e641519a6865808ea54.png点击“Generate”生成mingw的工程 01466ade28e49f4f65bb0d607d6d6a20.png配置成功。

第四步:使用mingw32-make编译openCV3.4.1库

打开命令行,到openCV-3.4.1的 build目录下(之前为cmake专门创建的) 013cf9854b5f7879c006a3ff58af78fc.png出现错误 db237fc4b6fdc6e005ca17a67733575f.png这是因为c++11引入了nullptr,所以给make添加参数,笔者直接回到cmake添加: a7c642b94efbefbe7b8136c32f84f553.png重新Configure和Generate,然后mingw32-make,正常通过 d8cf5efb0dbf768af95681bd2f65668d.png然后又是很漫长的编译过程,出现错误 f44ab17c7c7b1af9f02c2c75505e1b04.png这回应该找到源码 modules\videoio\src\cap_dshow.cpp,搜索#include“DShow.h” ac1e0f71f7e408b5740939069c772063.png修改后,无需cmake,直接继续回到cmd编译,通过。 f51eb4b3a24d2ead8e8750ce5c4cba26.png编译成功后: 7c05608c87e508d362513039d70de2da.png然后安装 d097259c80a99da54c7fa1c7483ef6ff.png 57f02c73582b74a5bed6459997f5d159.png

第五步:搭建qt+opencv3.4.1的工程模版

将以下文件,复制到工程摸模块目录下: f9d54e1b1f2010f8038d6ecff1d0271a.png将以下的库文件,复制到工程目录下(两种添加的方法):

方法一:添加.a(推荐方法二,此方法复制移动位置可能会存在问题-运行错误)

887fe02cd3b1b0435dfcd3fa20149f26.png

方法二:直接添加bin目录下的库(可运行库),笔者推荐这种方法

ea58546f0dc60266032ad15820788917.png

第六步:编写程序,测试

856a53e84d5f1c8de4602ac78c94c408.png经过测试: 5fb8f7d68c88742b7470dfe362327515.png

搭建openCV2环境

使用已编好的库openCV2

第一步:下载openCV

      地址:https://sourceforge.net/projects/opencvlibrary/       因下载太慢,换了一个2.4.10版本的,地址:http://101.110.118.68/jaist.dl.sourceforge.net/project/opencvlibrary/opencv-win/2.4.10/opencv-2.4.10.exe

第二步:解压opencv到D:/opencv-2.4.10,头文件的文件夹:

D:\opencv-2.4.10\opencv\build\include\opencv
D:\opencv-2.4.10\opencv\build\include\opencv2
库文件夹下的库,分为发布版本和调试版本(带d)
LIBS += -LD:\opencv-2.4.10\opencv\build\x86\vc10\lib \        -lopencv_calib3d2410 \        -lopencv_contrib2410 \        -lopencv_core2410 \        -lopencv_features2d2410 \        -lopencv_flann2410 \        -lopencv_gpu2410 \        -lopencv_highgui2410 \        -lopencv_imgproc2410 \        -lopencv_legacy2410 \        -lopencv_ml2410 \        -lopencv_nonfree2410 \        -lopencv_objdetect2410 \        -lopencv_ocl2410 \        -lopencv_photo2410 \        -lopencv_stitching2410 \        -lopencv_superres2410 \        -lopencv_ts2410 \        -lopencv_video2410 \        -lopencv_videostab2410
各种尝试找不到opencv2的函数,所以选择重新编译(建议读者重编)。

重新编译opencv2(17年使用的Qt5.2.0)

直接使用qtcreator进行cmake,这是对于qt更便捷的方法(与配置opencv3不一样的地方,笔者强烈使用opencv3的配置方法较为通用,编译其他版本或者与编译与qt完全无关的版本都适用)

步骤一:下载cmake,安装cmake,特别注意要加入环境变量;

步骤二:打开qtcreator,打开工程,直接来打开CMakeLists文件;

a6e00447e716de52f82cd89d91fb5c2d.png

步骤三:打开后会会进行解析配置,解析配置完成,成为了Qt工程;

步骤四:作为qt工程直接编译;

c251a99c65b6710b505178e68e9d0ee0.png 42980d2be275b56d0733effb7dbeb386.png

步骤五:编译后的源代码和文件夹中的include里面的头文件大部分都不见了,但是opencv下还有一个build,从里面获取头文件;

步骤六:从编译后source-build/bin中获取.dll

Qt使用Opencv 88edfe2cc8b218043b6352ed028549e5.png 92aa187ba26ebe3cde97848fa92d3eb1.png

显示图片运行结果

截图直接截的qt帮助文件 fcc8424a5121ac96b86939f747dfbf4d.png上一篇:无下一篇: 《OpenCV开发笔记(一):OpenCV介绍、编译》
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值