Windows平台Qt添加OpenCV模块
最近科技立项的项目需要同时用到QPainter来实现Canvas功能,同时要用OpenCV来识别绘图,需要在Qt里添加OpenCV模块
opencv默认支持vc系列的编译器,在下载的时候就有build和source俩文件夹,build里就是默认支持的几种形式,可以看到x64即64位系统中可以支持vc14和vc15,如下图
在之前用VS的时候只要添加路径就行(详见链接)
而很不幸的是QT有自己的MinGW系列编译器,我们需要用CMake再编译一个类似于build的文件夹来作为Qt的依赖,即蓝框中的MinGWver(即MinGW-version,我自己起的名字,文件夹名字没有规范,毕竟build已经被占了)
具体操作:
CMake下载
windows上的CMake大部分是其他编译器带来的,为保险还是单独下载一个
CMake官网下载地址:
https://cmake.org/download/
正常安装即可
Qt下载
也是正常下载安装,但要记得自己装在哪个文件夹,后面会多次用到
环境变量配置1
首先将自己装的CMake和Qt里的两个文件夹添加到系统的Path里
关机重启
配置CMake
打开CMake,source目录就是你下载的OpenCV文件夹下的sources文件夹,build目录就随便取,记住就行
随后要经过两次或以上Configure和一次Generate
由于需要用MinGW编译,第一次Configure时配置如下:
next后,选择MinGW Makefiles
多提一嘴,当时在Linux上时我们用的时如下的Unix Makefiles,是相当于直接把OpenCV编译后的目录添加到了Linux的系统环境变量,所以我们在Linux上的操作要简单许多,但Qt只认MinGW,所以我们也得用MinGW来编译
Next后,选择你Qt/Tools/mingw730_64/bin/gcc.exe作为C语言编译器,Qt/Tools/mingw730_64/bin/g++.exe作为C++编译器,这个“730_64”可能不太一样,前面的是MinGW版本,后面数值代表64位系统,只要保证整个工程编译的时候用的MinGW处处版本一致就行
等待第一次Configure完成后,选中“WITH_OPENGL”、“WITH_QT”,将“WITH_IPP”取消。然后再次点【Configure】
第二次Configure可能报错,我没遇到过,如果遇到可以按如下方式更改红色项(改完还是红色,但不会报错,改完还报错就是地址没改对):
再有报错也是一样解决,直到不再报错为止
随后Generate
编译OpenCV
进入刚刚配置好的文件夹(被我命名为MinGWver)打开终端
mingw32-make
mingw32-make install
注意:就算前面用的是64位下的MinGW730_64,这里同样是用mingw32-make
环境变量配置2
把编译后,目标目录下的bin目录路径,即 **C:\opencv\MinGWver\bin,C:\opencv\MinGWver\install\x64\mingw\bin **添加到Path环境变量中
关机重启
Qt项目添加
对于Qt工程,我们只需要在.pro文件加上如下代码,并保证整个工程编译的时候用的MinGW处处版本一致就行
INCLUDEPATH += C:\opencv\build\includeC:\opencv\build\include\opencvC:\opencv\build\include\opencv2
LIBS += C:\opencv\MinGWver\lib\libopencv_*.a
注意改一下路径,LIBS里的 * 是通配符,有兴趣可以看看这些文件(通配符真伟大)
Windows平台Qt添加OpenCV模块相关推荐
- Windows 平台Qt 程序发布
Windows 平台Qt 程序发布 使用 windeployqt 工具查找依赖库 打包程序 Enigma Virtual Box 生成单执行文件 Inno Setup 打包 资源 Qt Creator ...
- QT添加OpenCV库
1.软件环境 Qtcreator Qt5.12.1 Windows10 64位系统 cmake3.13.2 opencv3.4.16 下载地址 QT: http://download.qt.io/ar ...
- windows下QT creator+openCV配置和使用
原文地址:http://blog.csdn.net/u012234115/article/details/41871449?utm_source=tuicool&utm_medium=refe ...
- Windows平台RTMP直播推送集成简要说明
好多开发者在集成大牛直播SDK (官方)的Windows平台RTMP推送模块时吓一跳,怎么这么多接口?本文做个简单的拆分: 初始化 初始化之前,如需设置日志路径,调用NTSmartLog.NT_SL_ ...
- 深入探究Windows平台客户端安全问题-进程地址空间入侵和白加黑高阶利用
标 题: 深入探究Windows平台客户端安全问题-进程地址空间入侵和白加黑高阶利用 时 间: 2014-09-08,00:03:51 前言 为了避免被读者骂"标题党",笔者在文章 ...
- Windows平台摄像头或屏幕RTMP推送:OBS VS SmartPublisher
好多开发者问道,既然有了OBS,你们为什么还要开发SmartPublisher? 的确,在我们进行Windows平台RTMP推送模块开发之前,市面上为数不多的Windows平台RTMP推流工具当属OB ...
- Windows平台下如何实现Unity3D下的RTMP推送
好多开发者苦于很难在unity3d下实现RTMP直播推送,本次以大牛直播SDK(Github)的Windows平台RTMP推送模块(以推摄像头为例,如需推屏幕数据,设置相关参数即可)为例,介绍下uni ...
- Windows平台摄像头或屏幕RTMP推送:OBS还是SmartPublisher
好多开发者问道,既然有了OBS,你们为什么还要开发SmartPublisher? 的确,在我们进行Windows平台RTMP推送模块开发之前,市面上为数不多的Windows平台RTMP推流工具当属OB ...
- windows平台下基于QT和OpenCV搭建图像处理平台
在之前的博客中,已经分别比较详细地阐述了"windows平台下基于VS和OpenCV"以及"Linux平台下基于QT和OpenCV"搭建图像处理框架,并 ...
- Windows 平台下基于MinGW和Qt 的OpenCV 之CMake 项目配置
1. MinGW 编译OpenCV 参考其他教程 2. 添加系统环境变量 OpenCV_DIR 如果有执行 mingw32-make install, 则为 build 目录下install 文件的完 ...
最新文章
- pytorch指定gpu
- 单片机c语言调用函数费时,下头函数,只要被调用就会导致单片机死机,请大家帮忙分析...
- C语言退出多层嵌套循环技巧
- (chap4 IP协议) 全局地址和私有地址
- IPv6 IS-ISv3路由协议
- 计算机应用基础 第三版 实验报告,计算机应用基础实验报告(windows).doc
- 单页面与多页面的优缺点
- 自定义异常throw
- 软件测试英语笔试,软件测试英文面试笔试题
- ekf pose使用方法 ros_【百川小课堂】第13课—ROS学习(二)
- oracle迁移数据到mysql
- 小学思维导图免费模板合集!家长必收藏
- 诺基亚N9—刷机教程
- vue前端上传文件夹的插件_vue文件上传插件
- 【新知实验室】-多人视频会议体验
- 十位语言大师给你的英语学习建议
- 三菱IPM驱动芯片PSS15S92\PSS20S92分析
- 小学计算机教师教育教学故事,小学教师教育叙事故事
- Git常用命令(汇总)
- 如何从 GRUB rescue 恢复 Win7,win7 USB恢复盘制作