opencv-1-QT_OPENCV 安装
opencv-1-QT_OPENCV 安装
既然我们是从头开始的, 那我们就从 opencv 的安装开始吧, 主要环境为:
- win10 1909 – 18363.720 版本
- VS2017 15.9.22
- QT 5.14.2
- opencv 4.3.0
安装
由于 QT 默认的 C++ 编译器是 minGW, 而 opencv 编译好的 dll 文件和 lib 文件都是 只有 vc14版本与vc15版本[1].
PS: 如果你使用 minGW 编译 opencv 的程序会 会提示很多错误, 主要是编译得到的库 不支持的原因, 这里要做对照, VS的版本可以 是 VS2015或者 VS2017 对应 opencv 的 vc14和vc15目录, VS2019 暂时无法对应QT的版本, 所以一定要注意这里
个人喜欢的安装顺序是,
- VS2017
- QT
- opencv
1. VS2017 安装
自从 VS 2017版本之后, 都是线上安装了, 对于以前的版本如VS2015,需要先下载一个 7G的 iso 文件, 再虚拟光驱的方式安装了, 省事不少.
微软官方-VS2017下载
在线安装 安装文件只有几兆, 点击运行之后能够在线下载, 很快很快. 推荐这个方法来, 安装的时候 建议勾选 全部下载后安装.

我已经安装了 VS2017, 所以可以直接启动, 点击可用选择 VS2017 专业版本(VS2017 Professional) 或者 社区(Community) 版本, 后者是免费的, 前者自己选择试用或者 自己搜索方法,
具体的版本区别可以看《VS2017各版本区别_开发工具_大白的求知路-CSDN博客》
VS 系列都比较大, 会安装很多依赖库, 如果C盘比较小的话, 建议安装在其他硬盘, 能够节省一点空间
其实在安装 VS之后, 我们就能进行opencv 的代码编写了, 具体的可以参考Win10, VS2017环境下OpenCV3.4.2的配置, 其实大部分的教程都是这么做的, 但是我们是做 的更深入, 所以这里如果只是想使用 opencv 的可以参考链接进行
[2], 我们要做的是一个图像处理的平台, 所以要做的比较深入,
为了能够在QT 上调试程序, 可以参考这篇文章QT使用CDB调试程序, 介绍了
windows CDB 下载链接
先安装, 后面会介绍.
2. QT 安装
使用 QT官方 release下载相应版本的QT, 我们这里使用的是 QT5.14.2
一路 next , 如果需要必须登录的话, 就去注册一个, 以前好像能跳过的, 现在不能跳过了
如果出现 必须启用一个资源库之类的提示, 就直接配置就好

QT的组件不需要全部选择,
选择你需要的部分就行了, 其实 MinGW 可以全部取消的 ,暂时先留着, , UWP是 win10 商店的, 其实没人用 , 自己考虑就好, 源代码不需要, QT的一堆组件其实只有 不到20M, 都很小, 就都装上了, 如果感觉, 红框标出来的最好都勾选, 黄色标记的建议勾选, 其他的随意吧, 个人习惯,

安装可以选择文件夹, 建议选择大点的空间, 我这样选择也是占有 3.6G 的空间, 全选可能有 10G,
其实安装完成之后可以去安装文件夹找到 MaintenanceTool.exe
的程序, 能够对QT 程序进行卸载, 自己可以查阅相关博客看到, 不做介绍.
完成安装之后, 我们打开 QTCreator
[3]
依次点击菜单栏上的 工具--选项--Kits--套件
, 由于我们先安装VS, QT安装之后会自动检测到相应的版本, 如果失败, 前面会有红色感叹号或者黄色警告, 我们选择 Desktop Qt5.14.2 MSVC2017 64bit
, 会列出来具体的参数信息, 我们尽量将 Compiler (编译器这里) 都选择 amd64 的 编译器,

在上面我们让 安装了 CDB, 这里 就是第二个箭头指出来的 cdb.exe
, 不然此处无法选择, 就会是 黄色的感叹号了, 也不能使用 QT 调试 程序了,
PS: 只是不能在 MSVC2017 下调试程序 , cdb 配套 MSVC 编译器, GDB 配套 MinGW 里面的 gcc 和 g++ 编译器 也能进行程序的调试, 只是如果配置这套工具链, 我们需要参考OpenCV+Qt+Win10开发环境配置 这篇文章里面 的步骤去编译 mingw 的opencv ,
我的设备需要编译将近一天时间才能完成, 太浪费时间了.

3. OpenCV 安装
opencv 可以在官方 release页面直接下载, 我们这里选择下载opencv4.3.0 windows 版本, 下载包有 202M
opencv 真的是越来越大了
opencv 的安装包其实就是一个自解压文件, 点击运行选择目的路径即可.
- opencv430
- +—build
- | +—bin
- | +—etc
- | | +—haarcascades
- | | +—lbpcascades
- | | \—licenses
- | +—include
- | | \—opencv2
- | | +—calib3d
- | | +—core
- | | +—dnn
- | | +—features2d
- | | +—flann
- | | +—gapi
- | | +—highgui
- | | +—imgcodecs
- | | +—imgproc
- | | +—ml
- | | +—objdetect
- | | +—photo
- | | +—stitching
- | | +—video
- | | \—videoio
- | +—java
- | | +—x64
- | | \—x86
- | +—python
- | | \—cv2
- | \—x64
- | +—vc14
- | | +—bin
- | | \—lib
- | \—vc15
- | +—bin
- | \—lib
- \—sources
- +–-3rdparty
- | +—carotene
- | +—cpufeatures
- | +—ffmpeg
- | +—include
- | +—ippicv
- | +—ittnotify
- | +—libjasper
- | +—libjpeg
- | +—libjpeg-turbo
- | +—libpng
- | +—libtengine
- | +—libtiff
- | +—libwebp
- | +—openexr
- | +—openvx
- | +—protobuf
- | +—quirc
- | +—tbb
- | \—zlib
- | \—patches
- +—apps
- | +—annotation
- | +—createsamples
- | +—interactive-calibration
- | +—traincascade
- | +—version
- | \—visualisation
- +—cmake
- | +—android
- | +—checks
- | +—FindCUDA
- | +—platforms
- | \—templates
- +—data
- | +—haarcascades
- | +—haarcascades_cuda
- | +—hogcascades
- | +—lbpcascades
- | \—vec_files
- +—doc
- | +—images
- | +—js_tutorials
- | +—pattern_tools
- | +—py_tutorials
- | +—tools
- | \—tutorials
- +—include
- | \—opencv2
- +—modules
- | +—calib3d
- | +—core
- | +—dnn
- | +—features2d
- | +—flann
- | +—gapi
- | +—highgui
- | +—imgcodecs
- | +—imgproc
- | +—java
- | +—js
- | +—ml
- | +—objdetect
- | +—photo
- | +—python
- | +—stitching
- | +—ts
- | +—video
- | +—videoio
- | \—world
- +—platforms
- | +—android
- | +—ios
- | +—js
- | +—linux
- | +—maven
- | +—osx
- | +—scripts
- | +—wince
- | +—winpack_dldt
- | \—winrt
- \—samples
我们放置在了 F:\Vision\opencv430
文件夹下面, 得到了上面的 文件列表, 主要用到的库文件都是在 build 文件夹内, source 文件夹下面是 源代码,
实际上 我们在程序中需要用的 只有 这里需要的程序, 动态链接库 dll 文件, 静态库 lib 文件, 以及 包含目录 include 文件夹,
- opencv430
- +—dll
- | opencv_videoio_ffmpeg430_64.dll
- | opencv_world430.dll
- | opencv_world430.pdb
- | opencv_world430d.dll
- | opencv_world430d.pdb
- |
- +—include
- | \—opencv2
- | +—calib3d
- | +—core
- | +—dnn
- | +—features2d
- | +—flann
- | +—gapi
- | +—highgui
- | +—imgcodecs
- | +—imgproc
- | +—ml
- | +—objdetect
- | +—photo
- | +—stitching
- | +—video
- | \—videoio
- \—lib
- opencv_world430.lib
- opencv_world430d.lib
如果不是需要调试信息的话, dll 文件夹下面的 pdb 文件可以全部删除,
在忽略 dll 文件之后, 我将自己常用的 C++ 的依赖库 都放在了 github上
SChen1024/CVDepend
有需要的可以去查看下载,
后续
到这里, 我们才算是完成了第一步的安装程序, 后面 开始上手进行使用 opencv 了