最近科技立项的项目需要同时用到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模块相关推荐

  1. Windows 平台Qt 程序发布

    Windows 平台Qt 程序发布 使用 windeployqt 工具查找依赖库 打包程序 Enigma Virtual Box 生成单执行文件 Inno Setup 打包 资源 Qt Creator ...

  2. QT添加OpenCV库

    1.软件环境 Qtcreator Qt5.12.1 Windows10 64位系统 cmake3.13.2 opencv3.4.16 下载地址 QT: http://download.qt.io/ar ...

  3. windows下QT creator+openCV配置和使用

    原文地址:http://blog.csdn.net/u012234115/article/details/41871449?utm_source=tuicool&utm_medium=refe ...

  4. Windows平台RTMP直播推送集成简要说明

    好多开发者在集成大牛直播SDK (官方)的Windows平台RTMP推送模块时吓一跳,怎么这么多接口?本文做个简单的拆分: 初始化 初始化之前,如需设置日志路径,调用NTSmartLog.NT_SL_ ...

  5. 深入探究Windows平台客户端安全问题-进程地址空间入侵和白加黑高阶利用

    标 题: 深入探究Windows平台客户端安全问题-进程地址空间入侵和白加黑高阶利用 时 间: 2014-09-08,00:03:51 前言 为了避免被读者骂"标题党",笔者在文章 ...

  6. Windows平台摄像头或屏幕RTMP推送:OBS VS SmartPublisher

    好多开发者问道,既然有了OBS,你们为什么还要开发SmartPublisher? 的确,在我们进行Windows平台RTMP推送模块开发之前,市面上为数不多的Windows平台RTMP推流工具当属OB ...

  7. Windows平台下如何实现Unity3D下的RTMP推送

    好多开发者苦于很难在unity3d下实现RTMP直播推送,本次以大牛直播SDK(Github)的Windows平台RTMP推送模块(以推摄像头为例,如需推屏幕数据,设置相关参数即可)为例,介绍下uni ...

  8. Windows平台摄像头或屏幕RTMP推送:OBS还是SmartPublisher

    好多开发者问道,既然有了OBS,你们为什么还要开发SmartPublisher? 的确,在我们进行Windows平台RTMP推送模块开发之前,市面上为数不多的Windows平台RTMP推流工具当属OB ...

  9. windows平台下基于QT和OpenCV搭建图像处理平台

        在之前的博客中,已经分别比较详细地阐述了"windows平台下基于VS和OpenCV"以及"Linux平台下基于QT和OpenCV"搭建图像处理框架,并 ...

  10. Windows 平台下基于MinGW和Qt 的OpenCV 之CMake 项目配置

    1. MinGW 编译OpenCV 参考其他教程 2. 添加系统环境变量 OpenCV_DIR 如果有执行 mingw32-make install, 则为 build 目录下install 文件的完 ...

最新文章

  1. pytorch指定gpu
  2. 单片机c语言调用函数费时,下头函数,只要被调用就会导致单片机死机,请大家帮忙分析...
  3. C语言退出多层嵌套循环技巧
  4. (chap4 IP协议) 全局地址和私有地址
  5. IPv6 IS-ISv3路由协议
  6. 计算机应用基础 第三版 实验报告,计算机应用基础实验报告(windows).doc
  7. 单页面与多页面的优缺点
  8. 自定义异常throw
  9. 软件测试英语笔试,软件测试英文面试笔试题
  10. ekf pose使用方法 ros_【百川小课堂】第13课—ROS学习(二)
  11. oracle迁移数据到mysql
  12. 小学思维导图免费模板合集!家长必收藏
  13. 诺基亚N9—刷机教程
  14. vue前端上传文件夹的插件_vue文件上传插件
  15. 【新知实验室】-多人视频会议体验
  16. 十位语言大师给你的英语学习建议
  17. 三菱IPM驱动芯片PSS15S92\PSS20S92分析
  18. 小学计算机教师教育教学故事,小学教师教育叙事故事
  19. Git常用命令(汇总)
  20. 如何从 GRUB rescue 恢复 Win7,win7 USB恢复盘制作

热门文章

  1. windows server域服务器作用,windows server 2012 r2AD域搭建以及域的简单功能介绍
  2. css fixed定位失效问题
  3. JZOJ 3339. 【NOI2013模拟】wyl8899和法法塔的游戏【NIM博弈】【暴力】
  4. golang实现的文件服务器
  5. 用xshell ssh连接测试服务器时候出的问题
  6. 老王的JAVA基础课:序言
  7. matlab中floor函数,floor函数
  8. 我在华为的十年----徐家俊
  9. Datawhale:愿竞赛圈少一些人身攻击和热点炒作
  10. 李彦宏对话IMF总裁拉加德:缓解B端焦虑,要看AI这道主菜味道如何