惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
大猫的无限游戏
大猫的无限游戏
Jina AI
Jina AI
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 司徒正美
美团技术团队
雷峰网
雷峰网
阮一峰的网络日志
阮一峰的网络日志
WordPress大学
WordPress大学
T
Tailwind CSS Blog
U
Unit 42
C
Check Point Blog
S
SegmentFault 最新的问题
Martin Fowler
Martin Fowler
Stack Overflow Blog
Stack Overflow Blog
云风的 BLOG
云风的 BLOG
L
LangChain Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
腾讯CDC
罗磊的独立博客
小众软件
小众软件
Recent Announcements
Recent Announcements
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
D
DataBreaches.Net

又见苍岚

COLMAP PatchMatch Stereo 算法详解 事件驱动的状态机框架:从理论到工程实践 Git 在国内网络环境下无法 Push 的排查与修复 —— 配置 Clash 代理 分段五次多项式插值原理详解 路径插值方法深度对比研究 Claude Code 使用指南 OpenClaw 记忆管理与技能创建指南 CBS(Conflict-Based Search)算法详解 A* 算法及其变种详解 OpenClaw 配置多 Agents Windows Powershell 无法加载文件,因为在此系统上禁止运行脚本问题的解决方案 MaxClaw 安装流程 大模型 AI 名词介绍 AList 网盘聚合工具简介 Protobuf 简介与测试 Claude Code 简介以及 GLM 4.7 模型接入 Github 歌词下载工具 163MusicLyrics Python __getattr__ 懒加载 Python TypedDict 机器人仿真平台 Gazebo 安装记录 机器人仿真平台 Gazebo 简介 多机器人路径规划问题(Multi-Agent Path Finding, MAPF)简介 Python exifread 读取修改过的 jpeg 信息错误问题修复 3D 坐标系变换的理解 3D 旋转矩阵基本概念 MongoDB Compass 介绍 Python 环境管理工具 uv Flutter 开发指南 Snipaste 安装下载与黑屏问题解决方案 全局路径规划算法记录
Win11 - Visual Studio 2017 - C++ OpenCV 4.4.0 环境配置
Yiwei Zhang · 2022-10-13 · via 又见苍岚

本文记录 Win 11 下 在 Visual Studio 2017 中配置 C++ OpenCV 环境的过程。

IDE 安装

OpenCV 下载安装

  • 解压到合适的位置(会自动创建 opencv 文件夹)

配置路径

创建系统变量

创建系统变量可以帮助团队共享库配置,结构系统路径和库路径

但不设置系统变量直接向 VS 填入绝对路径也是可以运行的

  • 创建环境变量 OPENCV_PATH,指向$Opencv安装目录$/opencv/build

  • 之后 Visual Studio 需要知道 OpenCV 库的 includ 和 lib,以及外部依赖的 dll

将 DLL 添加到系统目录

  • 此步骤的目的是将 OpenCV 的 dll 放到系统 的 PATH 下,有两个思路可以实现:
将 OpenCV DLL 复制到系统已有 PATH 下
  • 复制 opencv/build/x64/vc15/bin 目录下所有 dll 文件到系统路径 C:\Windows\System32 文件夹内。

将 OpenCV bin 文件夹加入到系统 PATH
  • 例如将 E:\ProgramData\opencv\build\x64\vc15\bin 加入到系统路径 Path 中

包含目录

  • 编辑附加包含目录

  • 填入OpenCV Path include 项,事实上指向的就是 E:\ProgramData\opencv\build\include,里面放的是 OpenCV 的头文件

库目录

  • 编辑附加库目录

  • 添加 OpenCV 库地址,指向 E:\ProgramData\opencv\build\x64\vc15\lib

附加依赖项

  • 编辑附加依赖项

  • 添加 opencv_world440.lib (release) 或 opencv_world440d.lib (debug)

包含目录

可选

  • 完成上述配置已经可以运行代码了,但是我在配置项目时遇到了完成配置后 #include <opencv2/opencv.hpp> 无法找到源文件的情况,虽然不影响运行但是很不舒服
  • 这种情况下添加包含目录可以解决问题

示例工程

创建空工程

添加新的源文件

  • 源文件添加文件

  • 起名字 main.cpp

选择平台

  • 由于我添加的是 opencv_world440.dll (没有 d 就是release版),因此我设置成 Release
  • 选择 X64 平台

配置环境变量

  • 按照上文路径配置部分配置环境

示例代码

  • 在 main.cpp 相同目录下放一张测试图片 test.jpg
  • main.cpp 中加入如下代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<stdio.h>
#include<opencv2/opencv.hpp>
using namespace std;
using namespace cv;

int main()
{
printf("Hello Open CV!");
Mat srcImage = imread("test.jpg");
Mat temImage, dstImage1;
temImage = srcImage;

//尺寸调整
resize(temImage, dstImage1, Size(0, 0), 0.25, 0.25, INTER_LINEAR); //长宽缩小1/4

imshow("缩小", dstImage1);

waitKey();

return 0;
}

  • 之后就可以生成、运行了

参考资料

文章链接:
https://www.zywvvd.com/notes/coding/cpp/environment/opencv-cpp-setup/opencv-cpp-setup/