VS2022搭建QT及OpenCV环境

server/2024/10/22 16:50:09/

1.背景

由于之前VS2022和QT已经安装好了,所以本次的任务主要是下载OpenCV以及在VS2022上集成QT和OpenCV。关于VS2022和QT的安装大家可以参考别的博客。QT选择的版本是6.2.4,OpenCV版本为3.4.5,Windows版本为Win11。

2.OpenCV下载

OpenCV官网下载链接,这里需要下载的是opencv-3.4.5-vc14_vc15.exe。
在这里插入图片描述之后进行双击exe进行解压,记住文件解压位置。
然后编辑系统环境变量,在系统变量Path中添加F:\OpenCV\opencv\build\x64\vc14\bin在这里插入图片描述
至此OpenCV的环境已经配好。

3.VS配置OpenCV环境

首先在VS中新建空项目:
在这里插入图片描述
进入项目之后,点击视图->其他窗口->属性管理器。
在这里插入图片描述
可以发现项目栏下面多了属性管理器,点击可以得到:
在这里插入图片描述
对Debug | x64右键点击属性,选择VC++目录
在这里插入图片描述
在VC++目录->包含目录,选择编辑,新建下面三个目录包含进去:
F:\OpenCV\opencv\build\include
F:\OpenCV\opencv\build\include\opencv
F:\OpenCV\opencv\build\include\opencv2
在这里插入图片描述
同样的步骤进行添加库目录(位置在VC++目录->库目录->编辑):
这里添加的目录是:F:\OpenCV\opencv\build\x64\vc14\lib
在这里插入图片描述

这里我们找到的地方是通用属性->链接器->输入->附加依赖项->编辑然后新建。
添加的项为:opencv_world345d.lib
在这里插入图片描述
之后就可以对现有环境进行测试了:

#include <opencv2/opencv.hpp>int main() {// 命名一个窗口cv::namedWindow("Image", cv::WINDOW_AUTOSIZE);// 读取图片cv::Mat img = cv::imread("F://imgs//CSDN_Credic1017.jpg");// 检查图片是否成功读取if (img.empty()) {std::cout << "图片读取失败" << std::endl;return -1;}// 在窗口中显示图片cv::imshow("Image", img);// 等待按键事件,如果不加这行代码,窗口会立即关闭cv::waitKey(0);return 0;
}

最终效果图如下:
在这里插入图片描述

4.VS搭建QT环境

首先在VS中安装VS拓展,在联机栏搜索QT,安装拓展Qt VIsual Studio Tools,安装拓展成功后需要把VS关闭后才会生效:
在这里插入图片描述
重新打开VS后,在拓展栏QT VS tools里面设置安装QT时qmake存在的位置,例如我的位置为:F:\QT\6.2.4\msvc2019_64\bin。之后新建QT项目的时候才会存在编译器选项。
在这里插入图片描述
新建好QT项目之后,按照前面的步骤同样将OpenCV环境设置好。
在QT初始化UI函数当中加入OpenCV测试代码,最终效果如图:
在这里插入图片描述
在这里插入图片描述

5.总结

目前只是在VS中集成了QT以及OpenCV,下一步分享的是QT与OpenCV的联动,在OpenCV中进行图像处理,在QT中进行相关过程及结果展示。
我是乐于分享C++、QT、图像处理深度学习的Credic,是一个在职的C++图像处理软件工程师。如果文章对你有帮助麻烦点个点赞关注收藏哦,你的点赞关注是我最大的动力,持续分享干货中···


http://www.ppmy.cn/server/107128.html

相关文章

Spring Web MVC入门

目录 一、建立连接&#xff08;ResquestMapping- 实现URL路由映射&#xff09; 二、发送请求 1、传递单个参数 2、传递多个参数 3、传递对象 4、后端参数重命名&#xff08;后端参数映射&#xff09;&#xff08;RequestParam&#xff09; 5、非必传参数的设置&#xff0…

前端Html5/Css3—div盒子模型

文章目录 第六章 盒子模型6.1 border边框6.2 border-width粗细6.3 border-style边框样式6.4 border简写6.5 margin外边距6.6 padding内边距6.7 盒子模型尺寸6.8 box-sizing6.9 border-radius圆角边框6.9.1 制作圆形6.9.2 半圆6.9.3 四分之一圆 6.10 box-shadow盒子阴影 第六章 …

掀起社交娱乐新浪潮!AI如何应用到短视频APP?

随着人工智能技术的迅速发展和全球社交媒体用户的增长&#xff0c;AI视频生成应用正逐渐成为短视频社交媒体中的关键工具。AI工具不仅可以提高内容的创造效率&#xff0c;还能为用户带来全新的互动体验。 人工智能&#xff08;AI&#xff09;已经成为我们日常生活和工作中不可或…

K8S持久化存储数据volumeMountsvolumes

环境&#xff1a; Ubuntu-1:192.168.114.110作为主 Ubuntu-2:192.168.114.120作为从1&#xff0c;node节点1 Ubuntu-3:192.168.114.130作为从2&#xff0c;node节点2 持久化volumeMounts pod里面&#xff1a;emptyDir和hostPath。存储在node&#xff0c;NFS...&#xff0c;Clo…

力扣经典题目之->相同的树(递归判断两颗二叉树是否相同)

一&#xff1a;题目 二&#xff1a;代码 三&#xff1a;递归展开 第一种模型&#xff1a; 递归展开图&#xff1a; 左&#xff1a; 右&#xff1a; 第二种模型及其递归展开图&#xff1a; 解释&#xff1a; 递归思路即&#xff1a;根相同&#xff0c;左子树相同&#xff0c;…

以太网PHY驱动调试笔记(KSZ8081)

PHY驱动调试笔记 准备知识MAC、RMII、PHY以太网类型100BASE-TX10BASE-5 准备知识 MAC、RMII、PHY 此基本概念可参考一下两篇优秀博文&#xff1a; Ethernet&#xff08;以太网&#xff09;之一 详解 MAC、MII、PHY以太网详解&#xff08;一&#xff09;-MAC/PHY/MII/RMII/GMI…

面向对象编程:深入PHP的封装、继承和多态性!

文章目录 面向对象OOP的核心概念定义类、创建对象构造函数和析构函数访问修饰符继承方法重写接口和抽象类静态方法和属性魔术方法 错误处理错误处理概述错误级别异常处理自定义异常设置错误处理忽略错误错误日志断言 总结 面向对象编程&#xff08;OOP&#xff09;是一种编程范…

k8s POD控制器

POD控制器 Pod控制器&#xff0c;又称为工作负载&#xff08;workload&#xff09;&#xff0c;是Kubernetes中用于实现管理Pod的中间层&#xff0c;它确保Pod资源符合预期的状态。当Pod资源出现故障时&#xff0c;Pod控制器会尝试进行重启&#xff0c;若根据重启策略无效&…