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();
}

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

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

相关推荐
CoderYanger1 分钟前
Java EE 进阶:5. Spring IoC&DI(第二弹):Spring IoC
java·开发语言·spring boot·spring·面试·职场和发展·java-ee
青峰讲运维39 分钟前
OpenStack Heat 编排:用模板一键交付云业务,告别手动点页面
开发语言·php·openstack
MyFreeIT1 小时前
Python Windows Manual
开发语言·python
kiracrimson1 小时前
STL:List的使用和模拟实现
开发语言·c++·list
二十七日秋1 小时前
算法刷题笔记「Day 1|四道 OJ 入门题里的深坑」
c语言·汇编·数据结构·c++·笔记·python·算法
流年如夢2 小时前
继承与多态_继承篇
c++·继承·面向对象·c++进阶
陕西亿鑫鸿物联技术有限公司2 小时前
传统安防利旧升级实战:如何基于边缘计算接入海康大华IPC构建AI分析系统?
深度学习·计算机视觉·边缘计算·物联网架构·流媒体技术
北冥you鱼2 小时前
Go 语言 GORM 使用 Preload:从关联查询到嵌套预加载的完整实践
开发语言·jvm·golang
拜小白2 小时前
【论文解读】Ray-casting MLC:用几何感知光线投射做自训练房间布局估计
深度学习·计算机视觉·全景图
沫璃染墨2 小时前
从零入门计算机网络系列(十):HTTP协议进阶——从资源路径解析到状态码与请求头详解
linux·运维·服务器·网络·c++·http