C++视觉开发 一.OpenCV环境配置

一.OpenCV安装环境配置

1.OpenCV安装

(1)下载

官方下载链接:http://opencv.org/releases

这边选择需要的版本,我是在windows下的4.9.0。(科学上网下载很快,否则可能会有点慢)

(2)安装

双击下载好的exe文件,选择安装路径,最好是英文路径。

2.环境变量配置

(1)复制你的安装目录下的该文件的路径:

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

如果又vc15或者vc14就选择更高的版本就行。

右键点击此电脑,依次选择属性->高级系统设置->环境变量->Path

将刚刚复制的目路径添加到环境变量,点击确定保存

到这里系统的环境变量配置完成,接下来配置编译器的环境

二.配置开发环境

我使用的是VS2022,打开创建一个C++工作台

(1)点击右侧解决方案资源管理器

(2)右键点击创建的项目,选择属性。

可以打开如图界面。

1.包含目录

点击VC++ 目录

找到OpenCV安装的include路径,复制添加进包含目录,如图:

2.库目录

继续找到OpenCV安装的lib路径,复制添加进库目录,如图:

3.附加依赖项

继续找到OpenCV安装的lib路径下的.lib文件

注意:这里需要参考你的编译器模式。如果用的Debug就复制第一个,如果用的Release就复制第二个(后缀有d)。

复制添加进库目录,如图:

到此为止所有的环境配置完成,不过只能在该项目下使用。

所以我们需要输出一个模板,以便于创建新项目时可以直接使用该环境,不用重新配置。

三.模板输出

1.模板创建

点击项目->导出模板,然后自己取个名字,后面创建新项目时可以直接选择该模板。

2.测试代码

首先放入一张图片,我这里放入的名字叫lenacolor.png

cpp 复制代码
#include <opencv2/opencv.hpp>
#include <iostream>

int main() {
     //读取图像
    cv::Mat lena = cv::imread("lenacolor.png");

    // 检查图像是否加载成功
    if (lena.empty()) {
        std::cerr << "Error: Could not open or find the image" << std::endl;
        return -1;
    }

     //打印图像矩阵数据
    std::cout << "Lena Image Matrix: " << std::endl;
    std::cout << lena << std::endl;

    //输出图像
    cv::imshow("demo1", lena);
    cv::imshow("demo2", lena);
    cv::waitKey(0);
    cv::destroyAllWindows();
}

如果能正常输出图像和数据,表明配置成功。如报错请检查上述操作是否有路径错误。

后面的动态库未正确安装警告提示可以暂时不用管。

相关推荐
知识分享小能手11 分钟前
概理论与数理统计学习教程,从入门到精通,在数理统计中应用R软件(22)
开发语言·学习·r语言
乐观勇敢坚强的老彭15 分钟前
C++信奥GESP四级的常见题型和解题模板速查表
开发语言·c++
denggun1234521 分钟前
信号量(DispatchSemaphore vs AsyncSemaphore)、swift协作式线程池 and python信号量
开发语言·python·swift
lisw0524 分钟前
计算与科学哲学(Philosophy of Computing and Science)
java·开发语言·人工智能
欧特克_Glodon31 分钟前
OpenCV计算机视觉开发入门与实践<二十二>:图像平滑之线性滤波
c++·人工智能·opencv·计算机视觉
沙盘客1 小时前
AFSIM 示例解读(09)· 传感器全家桶 sensor_demos(下):ESM / SAR / 被动测向
c++·经验分享·后端
陈年老古董1 小时前
OpenCV图像处理笔记:图像拼接、答题卡识别与目标提取
人工智能·笔记·python·opencv·计算机视觉
大鹏的NLP博客1 小时前
WSL2 资源治理:从 ONNX Runtime CUDA 编译 OOM 到 `.wslconfig` 防御配置
c++·深度学习·onnx runtime
深念Y1 小时前
为什么选 Go:直观、可维护、AI 友好
linux·开发语言·人工智能·golang·agent·harness
Billy121381 小时前
Day25-编译期计算与 constexpr if:跨越编译与运行的边界
开发语言·c++进阶学习