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

【Qt+opencv】编译、配置opencv

文章目录

  • 前言
  • 下载opencv
  • 编译opencv
    • mingw版本
  • 总结


前言

OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库,它包含了超过2500个优化的算法。这些算法可以用来检测和识别面部,识别对象,分类人类行为,跟踪相机运动,跟踪移动物体等。Qt是一个跨平台的C++图形用户界面应用程序开发框架。在Qt中使用OpenCV,可以方便地实现图像处理和计算机视觉的功能。本文将介绍如何在Qt环境下编译OpenCV。


下载opencv

下载地址如下:Opencv download
在这里插入图片描述

如果你下载较慢可看下面链接:

编译opencv

mingw版本

  1. 填写Where is the source code:填写opencv文件夹路径。添加Where to build the binaries,他是编译生成的二进制文件,你需要在opencv文件夹里面新建build文件夹,填写他。
    在这里插入图片描述
  2. 在Configure里面的Specify the generator for this project选择Mingw makefiles,下面的选项选择Use default native compilers,然后点击finish
  3. 接着等待完成,完成后点击Generate
  4. cmd打开opencv文件夹,把你的mingw make.exe拖到cmd里面,回车,等待编译
  5. 最后使用mingw make.exe + install即可

mingw make.exe是你自己需要填写的,根据你自己的写
在这里插入图片描述
制作template工程:

  1. 首先新建qt工程,这里不做演示
  2. 在build文件夹找到install文件夹

在这里插入图片描述
接着找到include文件夹:
在这里插入图片描述
最后,把里面的opencv2文件夹复制到我们的template工程

  1. 在.pro文件中添加这行INCLUDEPATH += $${PWD}/opencv2
  2. 回到build/lib里面,这里面有我们需要的库,你可以使用哪些就加哪些,比如使用core核心内容,就加
    在这里插入图片描述
    使用下面这行代码加:
LIBS+=E:/opencv-4.10.0/build/lib/libopencv_core4100.dll.a

最后就大功告成了:

#include <QCoreApplication>
#include "opencv.hpp"
using namespace cv;int main(int argc, char *argv[])
{QCoreApplication a(argc, argv);return a.exec();
}

总结

通过以上的步骤,我们已经成功地在Qt环境下编译了OpenCV。现在,你可以开始创建你的项目,并使用OpenCV来实现各种图像处理和计算机视觉的功能。记住,OpenCV是一个强大的工具,它提供了许多高级功能,如面部识别,对象检测,人类行为分类等。因此,花一些时间来学习和掌握OpenCV将会对你的项目开发大有裨益。

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

相关文章:

  • RDMA建链的3次握手和断链的4次挥手流程?
  • 实验4 图像空间滤波
  • 独辟蹊径:我是如何用Java自创一套工作流引擎的(下)
  • 【Python】pycharm常用快捷键操作
  • es6语法复习一
  • 【python入门】自定义函数
  • ONLYOFFICE 桌面编辑器 8.1 版发布:全面提升文档处理效率的新体验
  • ESP32实现UDP连接——micropython版本
  • Windows Ternimal
  • Unity扩展编辑器功能的特性
  • API类别 - UI核心
  • Redis-主从复制-配置主从关系
  • DigiRL:让 AI 自己学会控制手机
  • 04.Ambari自定义服务开发-自定义服务配置文件在Ambari中的设置方法
  • LSTM时间序列基础学习
  • 『Z-Workshop』 6月22日线下ALCOVE分享活动
  • 【机器学习】机器学习重要方法——迁移学习:理论、方法与实践
  • uniapp, ‍[⁠TypeError⁠]‍ “Failed to fetch dynamically imported module“ 报错解决思路
  • 四川省高等职业学校大数据技术专业建设暨专业质量监测研讨活动顺利开展
  • 深入解析三大跨平台开发框架:Flutter、React Native 和 uniapp
  • 【吊打面试官系列-MyBatis面试题】#{}和${}的区别是什么?
  • 解决HTTP 400 Bad Request错误的方法
  • Html的表单标签。(Java程序员需要掌握的前端)
  • Arduino (esp ) 下String的内存释放
  • 图灵虚拟机配置
  • 【SQL常用日期函数(一)】
  • C++操作系列(二):VSCode安装和配置C++开发环境
  • 【java12】java12新特性之File的mismatch方法
  • uni-app (通过HBuilderX 和 VS Code 开发)详细连接过程教学。
  • 安宝特方案 | AR术者培养:AR眼镜如何帮助医生从“看”到“做”?