文档章节

OpenCV——Windows10+QT5.9(MinGW)+OpenCV3.2

d
 defined01
发布于 2017/07/28 19:12
字数 765
阅读 88
收藏 1

使用到的东西

Windows10 (其实Windows7、Windows8都没所谓啦)

QT5.9.1:

http://caesar.ftp.acc.umu.se/mirror/qt.io/qtproject/archive/qt/5.9/5.9.1/qt-opensource-windows-x86-5.9.1.exe

CMake3.8.1(话说不用贴32位的地址了吧,我真的不是鄙视32位来着):

https://cmake.org/files/v3.8/cmake-3.8.1-win64-x64.msi

OpenCV3.2.0 (此处直接使用github上的最新版):

https://codeload.github.com/opencv/opencv/zip/3.2.0

安装QT5.9

这个不用说了,一路Next就好了。(有个注册想注册也行,不想注册跳过就好了)

我为了分离大型应用程序到机械硬盘上,装到了D盘(D:\QT5.9\),下面需要用到安装路径的时候大家可以自行调整

环境变量

QT安装好后要记得添加\\bin到环境变量中去

这里我的是D:\QT5.9\Tools\mingw530_32\bin

编译OpenCV3.2

这个是这个文章的重头戏,共分为两个步骤:CMakeMake && install

CMake

先安装CMake.msi,不用多讲。

解压OpenCV的压缩包

然后启动CMake(GUI)

随后CMake会自动开始第一轮编译

红的项目表示仍旧未经过验证合法性,不要怕,先设置几个关键变量

CMAKE_BUILD_TYPE选择DEBUG或者RELEASE,对应生产调试阶段和发行阶段,这里选DEBUG

BUILD_EXAMPLES        附加例子,可要可不要

WITH_QT                    编译QT,必须要

分别设置既可(图像经过裁剪),然后按下Configure按钮。

途中可能会遇到需要“联网”下载OpenCV_FFmpeg.dll的情况,请自行“联网”,CMake会自动下载。

随后又多出来几个新选项,依次仿照上图格式填好既可(不同版本可能有部分路径不同,请自行调整)

再次Configure,多出来一个新选项,再次配置即可

最后一次Configure,然后再Generate,完毕。

CMake可以光荣退休了。

mingw32-make

进入刚才编译出来的目录(Windows7以上可以直接在文件夹中Ctrl+Shift+右键呼出的弹出菜单中选择“在此处打开CMD”),运行mingw32-make -j 8。

-j选项指定make时使用的多线程数,可根据自己情况更改。

等到编译完成100%后继续安装:mingw32-make install

等到安装也完成了就可以正式使用OpenCV啦!

使用

在QT的.pro文件中加入:

INCLUDEPATH+=D:\OpenCV\opencv-master\buil\include\opencv\
	D:\OpenCV\opencv-master\buil\include\opencv2\
	D:\OpenCV\opencv-master\buil\include
 
LIBS+=D:\OpenCV\opencv-master\buil\lib\libopencv_calib3d244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_contrib244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_core244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_features2d244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_flann244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_gpu244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_highgui244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_imgproc244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_legacy244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_ml244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_objdetect244.dll.a\
	D:\OpenCV\opencv-master\buil\lib\libopencv_video244.dll.a

测试

在main.cpp中输入:

#include <opencv2/opencv.hpp> //Include file for every supported OpenCV function
int main( int argc, char** argv )
{
  cv::Mat img = cv::imread("pic.jpg");
  if( img.empty() ) return -1;
  cv::namedWindow( "Example1", cv::WINDOW_AUTOSIZE );
  cv::imshow( "Example1", img );
  cv::waitKey( 0 );
  cv::destroyWindow( "Example1" );
  return 0;
} 

然后在你的工程目录下放置一个名为pic.jpg的图片,运行即可看见效果啦~~~~

在弹出窗口上按下任意键即可退出~~~~~

© 著作权归作者所有

共有 人打赏支持
d
粉丝 0
博文 6
码字总数 7811
作品 0
东莞
私信 提问
qt5.3.1+opencv2.4.9编译环境的搭建

到官网下载qt-opensource-windows-x86-mingw482_opengl-5.3.1.exe文件,执行该文件,选择默认安装即可实现QT的安装(安装在C盘的根目录下),该文件封装好了Qt libraries、Qt Creator,其中Q...

peizhenfly
2015/04/05
0
0
OpenCV使用CMake和MinGW的编译安装及其在Qt配置运行

软件环境 Windows-10-64bit Qt-5.9.3 MinGW-5.3.0-32bit CMake-3.9.2 OpenCV-3.3.1 / 3.4.1(适用) 编译好的 OpenCV(MinGW 版): Github . huihut/OpenCV-MinGW-Build OpenCV 的 MSVC 版及 ......

数据为王
05/21
0
0
Windows编译OpenCV4Android解决undefined reference to std错误

OpenCV4Android支持三种使用方式 1.Java层调用 2.NDK调用动态库(方便,但是会包含整个.so库) 3.NDK调用静态库(灵活,比如没有用到机器学习模块,libopencv_ml.a里的代码是不会打包到动态库...

2523984508
11/05
0
0
OpenCV2.4.2+Qt SDK1.2.1安装配置详解(WIN7环境上安装)

原文为《OpenCV2.3.1+Qt SDK1.2.1安装配置详解(WIN7环境下安装)》,2.4.2可以用同样的方法配置,不过2.4.3暂时无法通过编译。原文如下: 1、安装工具下载地址 OpenCV2.3.1 :点击打开链接 ...

vazor
2012/11/15
0
0
qt5.9.1安装在win10_64位

环境:win10_64位 1、下载 http://download.qt.io/archive/qt/ 选择版本 --- 1、qt-opensource-windows-x86-5.9.1 2、选择路径 3、选择编译器和平台模块 6、安装完成 如果要使用opencv,安装时...

OceanStar
08/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

自定义 Maven 的 repositories

有时,应用中需要一些比较新的依赖,而这些依赖并没有正式发布,还是处于milestone或者是snapshot阶段,并不能从中央仓库或者镜像站上下载到。此时,就需要 自定义Maven的<repositories>。 ...

waylau
30分钟前
1
0
徒手写一个es6代码库

mkdir democd demonpm initnpm install -g babelnpm install -g babel-clinpm install --save-dev babel-preset-es2015-node5 在项目目录创建两个文件夹 functional-playground ......

lilugirl
30分钟前
2
0
linux定位应用问题的一些常用命令,特别针对内存和线程分析的dump命令

1.jps找出进程号,找到对应的进程号后面才好继续操作 2.linux查看进程详细信息 ps -ef | grep 进程ID 3. dump内存信息 Jmap -dump:format=b,file=YYMMddhhmm.dump pid 4.top查看cpu占用信息 ...

noob_chr
30分钟前
1
0
Android TV开发-按键焦点

写在前面 按键焦点过程了解 2.1 dispatchKeyEvent 过程了解 2.2 焦点查找请求过程了解 1.2.1 第一次获取焦点 1.2.3 按键焦点 焦点控制 焦点记忆 应用场景 参考资料 [TOC] 1. 写在前面 工...

冰雪情缘l
30分钟前
1
0
java框架学习日志-3

这章主要是补充一些ioc创建对象的方式,ioc容器在写好<bean></bean>的时候就已经创建对象了。在之前的例子中,一直都是无参的构造方法。下面给出有参的构造方法的对象的创建,没有什么难点重...

白话
33分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部