C++实战Opencv第一天——win11下配置vs,opencv环境和运行第一个c++代码(从零开始,保姆教学)

本文介绍了OpenCV,一个强大的开源计算机视觉库,及其在C++中的应用,包括图像处理、面部识别、对象检测等。详细说明了如何在VisualStudio环境下配置OpenCV,以便于C++项目开发和性能优化。
摘要由CSDN通过智能技术生成

OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库,它提供了大量的通用算法和功能,用于处理图像和视频数据。C++ 通常提供比 Python 更高的执行速度,对于需要高性能处理的任务(如实时视频处理或大规模图像分析) 。C++ 提供更细致的内存管理控制跨平台性。这对于优化大型应用或在内存限制较大的环境(如嵌入式系统)中运行非常重要。

OpenCV 可以实现的应用:

  1. 图像处理:包括滤波、色彩空间转换、图像阈值设定、边缘检测、几何变换(如旋转、缩放)等。

  2. 面部识别与追踪:使用特定算法(如哈尔特征级联分类器)来识别和追踪视频中的人脸。

  3. 物体检测和识别:可以检测图像中的特定物体(如车辆、行人、标志)并对其进行分类。

  4. 运动分析和对象追踪:分析视频中的运动模式,追踪移动对象。

  5. 3D重建:从多个视角的图像中重建物体或场景的三维模型。

  6. 增强现实:结合现实世界的图像和计算机生成的数据,创建增强现实应用。

  7. 机器人视觉:使机器人能够通过摄像头感知周围环境并作出决策。

  8. 自动驾驶汽车视觉系统:用于车辆检测、车道检测、交通标志识别等。

  9. 医学图像处理:分析医学图像,如X射线、MRI 或 CT扫描。

  10. 视频分析:视频监控、事件检测、视频内容理解。

  11. 计算摄影学:高动态范围成像、全景图像拼接等。

  12. 实时滤镜和效果:图像和视频的实时美化和效果处理。

目录

一、Visual Studio的安装 

二、opencv下载 

三、vs环境配置 

1、配置包含目录

2、配置库目录

​编辑3、配置链接器

4、配置环境变量并重启

四、c++代码测试


一、Visual Studio的安装 

Visual Studio 2022 IDE - 适用于软件开发人员的编程工具

二、opencv下载 

Releases - OpenCV

下载windows版本即可,解压后:

三、vs环境配置 

创建新项目:

 

选择空项目 

项目名称随便,位置自己记住。 

进入后,改成这样

1、配置包含目录

打开视图->其他窗口->属性管理器->如图属性->VC++目录->包含目录

添加:请根据自己解压的openv4.8目录进行相应修改(下同)

E:\opencv\opencv\build\include
E:\opencv\opencv\build\include\opencv2

 


2、配置库目录

E:\opencv\opencv\build\x64\vc16\lib


3、配置链接器

opencv_world480.lib

 

4、配置环境变量并重启

在环境变量下添加: 

E:\opencv\opencv\build\x64\vc16\bin

重启vs。

至此,w11 下vs,opencv配置完成。

四、c++代码测试

//OpenCV 库的主要头文件。它允许程序使用 OpenCV 提供的各种功能和类。
// 在 C++ 中,#include 指令用于引入库或其他源文件。
//类比python中的import cv2
#include<opencv2/opencv.hpp>

//int main(int argc, char** argv) 是 C++ 程序的入口点。
//当程序运行时,这个函数被自动调用。argc 表示传递给程序的参数数量,
//argv 是一个字符串数组,包含这些参数。在这个程序中,这两个参数没有被使用。
int main(int argc, char** argv) {

    //这一行创建了一个 cv::Mat 类型的变量 src。
    //cv::Mat 是 OpenCV 中用于存储图像的类。
    //cv::imread 函数用于读取指定路径的图像文件。在这个例子中,
    //它试图从 "E:/yolov8/bus.jpg" 路径加载图像。
    //加载的图像被存储在 src 变量中。
    cv::Mat src = cv::imread("E:/yolov8/bus.jpg");

    //条件语句检查 src 图像是否为空(即图像是否未成功加载)
    if (src.empty()) { 
        printf("could not load image ...");
        return -1;
    }

    //cv::imshow 函数用于在窗口中显示图像。
    //这里创建了一个窗口,标题为 "输入图像",并显示 src 图像。
    cv::imshow("输入图像",src);
    //让窗口保持打开状态,直到有键盘输入。
    cv::waitKey(0);
    //在 C++ 中,主函数的返回值通常用来指示程序的退出状态。
    //返回值 0 通常表示程序成功执行。
    return 0;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学术菜鸟小晨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值