opencv-1-QT_OPENCV 安装

既然我们是从头开始的, 那我们就从 opencv 的安装开始吧, 主要环境为:

安装

由于 QT 默认的 C++ 编译器是 minGW, 而 opencv 编译好的 dll 文件和 lib 文件都是 只有 vc14版本与vc15版本[1].

PS: 如果你使用 minGW 编译 opencv 的程序会 会提示很多错误, 主要是编译得到的库 不支持的原因, 这里要做对照, VS的版本可以 是 VS2015或者 VS2017 对应 opencv 的 vc14和vc15目录, VS2019 暂时无法对应QT的版本, 所以一定要注意这里

个人喜欢的安装顺序是,

  1. VS2017
  2. QT
  3. opencv

1. VS2017 安装

自从 VS 2017版本之后, 都是线上安装了, 对于以前的版本如VS2015,需要先下载一个 7G的 iso 文件, 再虚拟光驱的方式安装了, 省事不少.
微软官方-VS2017下载

在线安装 安装文件只有几兆, 点击运行之后能够在线下载, 很快很快. 推荐这个方法来, 安装的时候 建议勾选 全部下载后安装.

VS installer

VS installer

我已经安装了 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, 都很小, 就都装上了, 如果感觉, 红框标出来的最好都勾选, 黄色标记的建议勾选, 其他的随意吧, 个人习惯,

QT 组件选择

QT 组件选择

安装可以选择文件夹, 建议选择大点的空间, 我这样选择也是占有 3.6G 的空间, 全选可能有 10G,
其实安装完成之后可以去安装文件夹找到 MaintenanceTool.exe 的程序, 能够对QT 程序进行卸载, 自己可以查阅相关博客看到, 不做介绍.

完成安装之后, 我们打开 QTCreator [3]

依次点击菜单栏上的 工具--选项--Kits--套件, 由于我们先安装VS, QT安装之后会自动检测到相应的版本, 如果失败, 前面会有红色感叹号或者黄色警告, 我们选择 Desktop Qt5.14.2 MSVC2017 64bit , 会列出来具体的参数信息, 我们尽量将 Compiler (编译器这里) 都选择 amd64 的 编译器,

QT套件设置

QT套件设置

在上面我们让 安装了 CDB, 这里 就是第二个箭头指出来的 cdb.exe, 不然此处无法选择, 就会是 黄色的感叹号了, 也不能使用 QT 调试 程序了,

PS: 只是不能在 MSVC2017 下调试程序 , cdb 配套 MSVC 编译器, GDB 配套 MinGW 里面的 gcc 和 g++ 编译器 也能进行程序的调试, 只是如果配置这套工具链, 我们需要参考OpenCV+Qt+Win10开发环境配置 这篇文章里面 的步骤去编译 mingw 的opencv ,
我的设备需要编译将近一天时间才能完成, 太浪费时间了.

MinGW QT 调试

MinGW QT 调试

3. OpenCV 安装

opencv 可以在官方 release页面直接下载, 我们这里选择下载opencv4.3.0 windows 版本, 下载包有 202M

opencv 真的是越来越大了

opencv 的安装包其实就是一个自解压文件, 点击运行选择目的路径即可.

  1. opencv430 


  2. +—build 


  3. | +—bin 


  4. | +—etc 


  5. | | +—haarcascades 


  6. | | +—lbpcascades 


  7. | | \—licenses 


  8. | +—include 


  9. | | \—opencv2 


  10. | | +—calib3d 


  11. | | +—core 


  12. | | +—dnn 


  13. | | +—features2d 


  14. | | +—flann 


  15. | | +—gapi 


  16. | | +—highgui 


  17. | | +—imgcodecs 


  18. | | +—imgproc 


  19. | | +—ml 


  20. | | +—objdetect 


  21. | | +—photo 


  22. | | +—stitching 


  23. | | +—video 


  24. | | \—videoio 


  25. | +—java 


  26. | | +—x64 


  27. | | \—x86 


  28. | +—python 


  29. | | \—cv2 


  30. | \—x64 


  31. | +—vc14 


  32. | | +—bin 


  33. | | \—lib 


  34. | \—vc15 


  35. | +—bin 


  36. | \—lib 


  37. \—sources 


  38. +–-3rdparty 


  39. | +—carotene 


  40. | +—cpufeatures 


  41. | +—ffmpeg 


  42. | +—include 


  43. | +—ippicv 


  44. | +—ittnotify 


  45. | +—libjasper 


  46. | +—libjpeg 


  47. | +—libjpeg-turbo 


  48. | +—libpng 


  49. | +—libtengine 


  50. | +—libtiff 


  51. | +—libwebp 


  52. | +—openexr 


  53. | +—openvx 


  54. | +—protobuf 


  55. | +—quirc 


  56. | +—tbb 


  57. | \—zlib 


  58. | \—patches 


  59. +—apps 


  60. | +—annotation 


  61. | +—createsamples 


  62. | +—interactive-calibration 


  63. | +—traincascade 


  64. | +—version 


  65. | \—visualisation 


  66. +—cmake 


  67. | +—android 


  68. | +—checks 


  69. | +—FindCUDA 


  70. | +—platforms 


  71. | \—templates 


  72. +—data 


  73. | +—haarcascades 


  74. | +—haarcascades_cuda 


  75. | +—hogcascades 


  76. | +—lbpcascades 


  77. | \—vec_files 


  78. +—doc 


  79. | +—images 


  80. | +—js_tutorials 


  81. | +—pattern_tools 


  82. | +—py_tutorials 


  83. | +—tools 


  84. | \—tutorials 


  85. +—include 


  86. | \—opencv2 


  87. +—modules 


  88. | +—calib3d 


  89. | +—core 


  90. | +—dnn 


  91. | +—features2d 


  92. | +—flann 


  93. | +—gapi 


  94. | +—highgui 


  95. | +—imgcodecs 


  96. | +—imgproc 


  97. | +—java 


  98. | +—js 


  99. | +—ml 


  100. | +—objdetect 


  101. | +—photo 


  102. | +—python 


  103. | +—stitching 


  104. | +—ts 


  105. | +—video 


  106. | +—videoio 


  107. | \—world 


  108. +—platforms 


  109. | +—android 


  110. | +—ios 


  111. | +—js 


  112. | +—linux 


  113. | +—maven 


  114. | +—osx 


  115. | +—scripts 


  116. | +—wince 


  117. | +—winpack_dldt 


  118. | \—winrt 


  119. \—samples 


我们放置在了 F:\Vision\opencv430文件夹下面, 得到了上面的 文件列表, 主要用到的库文件都是在 build 文件夹内, source 文件夹下面是 源代码,

实际上 我们在程序中需要用的 只有 这里需要的程序, 动态链接库 dll 文件, 静态库 lib 文件, 以及 包含目录 include 文件夹,

  1. opencv430 


  2. +—dll 


  3. | opencv_videoio_ffmpeg430_64.dll 


  4. | opencv_world430.dll 


  5. | opencv_world430.pdb 


  6. | opencv_world430d.dll 


  7. | opencv_world430d.pdb 


  8. |  


  9. +—include 


  10. | \—opencv2 


  11. | +—calib3d 


  12. | +—core 


  13. | +—dnn 


  14. | +—features2d 


  15. | +—flann 


  16. | +—gapi 


  17. | +—highgui 


  18. | +—imgcodecs 


  19. | +—imgproc 


  20. | +—ml 


  21. | +—objdetect 


  22. | +—photo 


  23. | +—stitching 


  24. | +—video 


  25. | \—videoio 


  26. \—lib 


  27. opencv_world430.lib 


  28. opencv_world430d.lib 


如果不是需要调试信息的话, dll 文件夹下面的 pdb 文件可以全部删除,
在忽略 dll 文件之后, 我将自己常用的 C++ 的依赖库 都放在了 github上
SChen1024/CVDepend
有需要的可以去查看下载,

后续

到这里, 我们才算是完成了第一步的安装程序, 后面 开始上手进行使用 opencv 了


  1. 《VS(Visual Studio)与VC(Visual C++)版本对应关系_C/C++_aoanng的博客-CSDN博客》. 见于 2020年4月20日. https://blog.csdn.net/colourful_sky/article/details/79495536.

  2. 《Win10, VS2017环境下OpenCV3.4.2的配置 – Jisongxie – 博客园》. 见于 2020年4月20日. https://www.cnblogs.com/jisongxie/p/9316283.html.

  3. QT自带的代码 UI IDE

版权声明:本文为hugochen1024原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/hugochen1024/p/12736909.html