OpenCV-3.4.2基于Qt-5.10.1的编译
OpenCV-3.4.2基于Qt-5.10.1的编译
由于本人在使用CMake和MinGW编译OpenCV是遇到了很多问题,在这里记录下来。至于所需软件的安装和相应环境变量的设置,网上有很多详细的教程,这里不再重复。
软件环境:
⦁ Windows-10-64bit
⦁ Qt-5.10.1
⦁ OpenCV-3.4.2
⦁ CMake-3.11.1
添加 MinGW 到环境变量
为系统变量 Path 添加 D:\Qt\Qt5.10.1\Tools\mingw530_32\bin
使用 CMake 生成 OpenCV 的 Makefile:
打开 cmake-gui,设置源码和生成路径:
⦁ Where is the source code: D:\OpenCV\opencv-3.4.2
⦁ Where to build the binaries: F:\Others\OpenCV
点击 Configure,设置编译器:
⦁ Specify the generator for this project: MinGW Makefiles
⦁ Specify native compilers
然后:
⦁ Compilers C: D:\Qt\Qt5.10.1\Tools\mingw530_32\bin\gcc.exe
⦁ Compilers C++: D:\Qt\Qt5.10.1\Tools\mingw530_32\bin\g++.exe
最后点:Finish
预处理:
修改D:\OpenCV\opencv-3.4.2\modules\videoio\src\cap_dshow.cpp文件,在#include "DShow.h"这行的上面加一行#define NO_DSHOW_STRSAFE,如:
#define NO_DSHOW_STRSAFE
#include "DShow.h"
编译配置:
⦁ 勾选 WITH_OPENGL
⦁ 勾选 WITH_QT
⦁ 勾选 WITH_OPENMP(用于并行计算)
⦁ 勾选 ENABLE_CXX11
⦁ 不勾选 ENABLE_PRECOMPILED_HEADERS
⦁ 不勾选 WITH_IPP
⦁ 不勾选 WITH_TBB(OpenCV-3.4.2版本出现的问题,之前的版本需要看情况)
⦁ 不勾选 WITH_MSMF(同上)
点击 Configure,Generate 生成 Makefile
编译 OpenCV:
在build目录空白处按住快捷键win+R,运行cmd
打开终端进行编译:mingw32-make (之前需要设置环境变量)
该过程一般需要很长时间,接近一个小时
装载Opencv:
mingw32-make install
该命令会将编译后生成的头文件及动态库文件复制到目录:“F:\Others\OpenCV\install”。该目录包括运行OpenCV程序所需要的全部资源。
参考链接:
https://blog.huihut.com/2017/12/03/CompiledOpenCVRunInQt/
https://blog.csdn.net/quxing10086/article/details/79576085
https://blog.csdn.net/davidhopper/article/details/78757572
http://answers.opencv.org/question/192758/compile-error-when-compiling-for-windows-341-dev/
OpenCV-3.4.2基于Qt-5.10.1的编译的更多相关文章
- 基于Qt 5.9.8,编译Qtxlsx
1.源码下载地址:https://github.com/dbzhang800/QtXlsxWriter 2.下载并安装编译时需要的工具 Perl:https://www.perl.org/get.ht ...
- windows平台下基于QT和OpenCV搭建图像处理平台
在之前的博客中,已经分别比较详细地阐述了"windows平台下基于VS和OpenCV"以及"Linux平台下基于QT和OpenCV"搭建图像处理框架,并 ...
- 基于QT的一个简易的安防
工程描述 opencv2.4.8 QT5 背景建模后,当有异物入侵时,把入侵的帧写到视频文件 使用BackgroundSubtractorMOG2背景建模 程序基于QT对话框 .pro #------ ...
- 基于QT开发的第三方库
基于Qt开发的第三方库 分类: Qt2014-02-12 11:34 1738人阅读 评论(0) 收藏 举报 QT第三方库 目录(?)[+] 文章来源:http://blog.csdn.net ...
- 基于QT的webkit与ExtJs开发CB/S结构的企业应用管理系统
一:源起 1.何为CB/S的应用程序 C/S结构的应用程序,是客户端/服务端形式的应用程序,这种应用程序要在客户电脑上安装一个程序,客户使用这个程序与服务端通信,完成一定的 ...
- 【Qt编程】基于Qt的词典开发系列<一>--词典框架设计及成品展示
去年暑假的时候,作为学习Qt的实战,我写了一个名为<我爱查词典>的词典软件.后来由于导师项目及上课等原因,时间不足,所以该软件的部分功能欠缺,性能有待改善.这学期重新拿出来看时,又有很多东 ...
- 【Qt编程】基于Qt的词典开发系列<四>--无边框窗口的缩放与拖动
在现在,绝大多数软件都向着简洁,时尚发展.就拿有道的单词本和我做的单词本来说,绝大多数用户肯定喜欢我所做的单词本(就单单界面,关于颜色搭配和布局问题,大家就不要在意了). 有道的单词本: 我所做的单词 ...
- 基于Qt的wifi智能小车的制作(一)
基于Qt的wifi智能小车的制作(一) 好久不写博客了,真的是有点惭愧了.翻开上一次的博客,到现在已经2个多月了,只能说是自己太懒惰了!忙是另一回事!趁今天晚上有点时间回顾下这一段时间的收获以及做的 ...
- 采用Qt快速绘制多条曲线(折线),跟随鼠标动态显示线上点的值(基于Qt的开源绘图控件QCustomPlot进行二次开发)
QCustomPlot是一个开源的基于Qt的第三方绘图库,能够绘制漂亮的2D图形. QCustomPlot的官方网址:https://www.qcustomplot.com/ 从官网下载QCustom ...
随机推荐
- 利用DSB2017冠军开源代码为LUNA16生成mask
代码地址:https://github.com/lfz/DSB2017 先展示下生成的mask与真实mask subset9 subset8 subset7 subset6 subset5 subse ...
- Unity 使用小技巧
本文介绍我遇到过我Unity使用小技巧,有了这些技巧,项目做起来,溜得飞起 1.快速设置相机的位置 2.固定面板
- ButterKnife 8.4注入失败
1,第一步:项目的gradle中增加 classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'buildscript { repositor ...
- python__画图表可参考(转自:寒小阳 逻辑回归应用之Kaggle泰坦尼克之灾)
出处:http://blog.csdn.net/han_xiaoyang/article/details/49797143 2.背景 2.1 关于Kaggle 我是Kaggle地址,翻我牌子 亲,逼格 ...
- 利用vue-cli搭建vue项目
手把手教你用vue-cli搭建vue项目 本篇主要是利用vue-cli来搭建vue项目,其中前提是node和npm已经安装好,文章结尾将会简单提到一个简单的例子.使用vue-cli搭建项目最开始我也是 ...
- js和jq中常见的各种位置距离之offset和offset()的区别(三)
offsetLeft:元素的边框的外边缘距离与已定位的父容器(offsetparent)的左边距离(不包括元素的边框和父容器的边框). offset().left:返回的是相对于当前文档的坐标,使用o ...
- xshell如何传输文件-yum
1.安装 sudo yum install lrzsz -y 2.检查是否安装成功 #rpm -qa |grep lrzsz 出现如下,表示安装成功 3.上传文件的执行命令: #rz 就会打开本地选 ...
- 【LDAP】LDAP 中 CN, OU, DC 的含义
1. LDAP的存储规则 区分名(DN,Distinguished Name) 和自然界中的树不同,文件系统/LDAP/电话号码簿目录的每一片枝叶都至少有一个独一无二的属性,这一属性可以帮助我们来区别 ...
- Java对于成对括号的提取
在工作的项目当中,经运营人员的反馈,发现提供服务的指定属性字段的值为空,导致搜索引擎无法正常搜索到正确的结果. 原始的字符串提取程序为: // 只取对应符号分割的第一部分name.split(&quo ...
- React.js 小书 Lesson6 - 使用 JSX 描述 UI 信息
作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson6 转载请注明出处,保留原文链接和作者信息. 这一节我们通过一个简单的例子讲解 React.j ...