当前位置: 首页 > news >正文

【QT搭建opencv环境】

本文参考以下文章:
https://blog.csdn.net/weixin_43763292/article/details/112975207
https://blog.csdn.net/qq_44743171/article/details/124335100

使用软件

QT 5.14.2

下载地址:download.qt.io
选择版本:Qt 5.14.2
Qt 5.14.2百度网盘链接:https://pan.baidu.com/s/1ycfiU34xCnBvbnSBoCrtIw
提取码:zj4c

CMake 3.24.2

各版本下载官网地址:https://cmake.org/files/
选择版本:cmake-3.15.7-win64-x64.msi(CMake 版本选择无所谓)
cmake 3.15.7 百度网盘链接:https://pan.baidu.com/s/1WFWYT1IGdpCp4wlMziLZDA
提取码:x5jn

openCV 4.5.3

下载地址:https://opencv.org/releases/
选择版本:opencv 4.5.3
opencv 4.5.3 百度网盘链接:https://pan.baidu.com/s/1vzkp3BfFZGmO0kDx3ThYVw
提取码:m2xo

opencv_contrib 4.5.3

下载地址:https://github.com/opencv/opencv_contrib/tags
选择版本:opencv_contrib 4.5.3(需要与 OpenCV 版本相同,否则编译时可能会报错)
opencv_contrib 4.5.3 百度网盘链接:https://pan.baidu.com/s/1o4t-qugwC-_XMvV3Yx9Mkg
提取码:vuwc

准备工作

  1. 添加MinGW环境变量:将“QT安装目录\Tools\mingw730_32\bin”路径加入环境变量
  2. 添加CMake环境变量:将“CMake安装目录\bin”路径加入环境变量
  3. 安装opencv:双击下载的opencv-4.5.3-vc14_vc15.exe文件进行安装
  4. 解压contrib模块:将下载的opencv_contrib-4.5.3.zip解压到opencv安装目录下
  5. 创建build目录:在opencv安装目录下创建一个build_xxx目录(命名随意)

编译

1.首先双击运行CMake安装目录\bin\下的cmake-gui.exe,并进行如下的配置:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 在配置过程中,会出现CMake Warning,原因是有两个dll没有下载成功,需要手动进行下载,下载的路径可以去编译目录下生成的CMakeDownloadLog.txt里查看,找到所有"https://“开头,”.dll"结尾的网址,进行手动下载,再找到"missing"关键字,将下载的文件放入missing后面路径对应的源码路径下
  2. 进行一些选项勾选
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
4. 再次点击“Configuration"进行配置,出现以下报错:
在这里插入图片描述

原因是OPENCV_EXTRA_MODULES_PATH的路径斜杠不对,这个路径我是直接复制粘贴过来的,windows路径默认是反斜杠"“,而CMake要使用正斜杠”/“,这里可以直接点击”…“按钮浏览选择路径,就不用一个个改了
在这里插入图片描述
5. 再次点击"Configuration"进行配置,直到没有红色选项,点击"Generate”
在这里插入图片描述
在这里插入图片描述
6. 在编译目录下打开cmd,输入:

    mingw32-make -j 8

“-j 8” 表示使用 8 线程来处理,可以根据电脑硬件条件进行调整。使用单线程编译命令为:

    mingw32-make
  1. 等待。。。

  2. 出现问题:
    在这里插入图片描述

  3. add Entry —>>> BOOL —>>> OPENCV_VS_VERSIONINFO_SKIP 打钩

  4. 重新Configuration,Generate时出现问题:
    在这里插入图片描述

  5. 根据以上流程使用32位的mingw可以编译成功

http://www.lryc.cn/news/602940.html

相关文章:

  • 商城系统-项目测试
  • redis未授权getshell四种方式
  • Ubuntu24安装MariaDB/MySQL后不知道root密码如何解决
  • 基于STM32设计的智慧果园云监测系统_256
  • 基于Uniapp及Spring Boot的奢侈品二手交易平台的设计与实现/基于微信小程序的二手交易系统
  • linux安装zsh,oh-my-zsh,配置zsh主题及插件的方法
  • 机器学习基础-numpy
  • OpenMP 并行编程核心机制详解:从变量作用域到同步优化
  • SwinTransformer改进(14):集成MLCA注意力机制的Swin Transformer模型
  • Linux DNS解析2 -- 网关DNS代理的作用
  • 如何实现安卓端与苹果端互通的多种方案
  • unisS5800XP-G交换机配置命令之端口篇
  • 【安卓笔记】OOM与内存优化
  • React Router v6 核心组件
  • Linux进程概念(五)进程地址空间
  • 吃透 lambda 表达式(匿名函数)
  • 关闭 UniGetUI 自动 Pip 更新,有效避免 Anaconda 环境冲突教程
  • 3.DRF视图和路由
  • sqlite3学习---基础知识、增删改查和排序和限制、打开执行关闭函数
  • SpringBoot数学实例:高等数学实战
  • (二)Eshop(RabbitMQ手动)
  • 【计算机网络】OSI七层模型
  • Qt项目中使用 FieldManager 实现多进程间的字段数据管理
  • EXCEL怎么使用数据透视表批量生成工作表
  • 十七、K8s 可观测性:全链路追踪
  • django 按照外键排序
  • 未授权访问
  • 项目如何按时交付?重点关注的几点
  • 进程间通信————system V 共享内存
  • Python day27