Visual Studio 2022 cmake配置opencv开发环境

1. 环境与说明

这里我用的是 widnows 10 64位Visual Studio 用的 Visual Studio Community 2022 (社区版)

对于Android开发工程师来说,为什么要使用Visual Studio 呢 ?

因为在Visual Studio中开发调试OpenCV方便,可以开发调试好后,再移植到Android中。

2. 下载OpenCV版本

官方地址在这里 : 官方下载地址

不过官方下载地址可能会比较慢,可以下载我上传的资源 : OpenCV-4.8.0打包下载

这里我们下载widnows版本,对应着就是opencv-4.8.0-windows.exe

2.1 安装OpenCV

双击opencv-4.8.0-windows.exe ,将其安装到指定目录下,比如D:\Developer\opencv4.8.0

安装 opencv-4.8.0-windows.exe 其实本质上就是将其解压到一个目录下

3. 下载Visual Studio

这里下载 Visual Studio Community 2022 社区版就好了,免费的,下载地址 : Visual Studio下载

3.1 配置所需的环境

Visual Studio 需要安装配置所需的环境 ,具体在 工具 > 获取工具和功能 中可以看到

我们需要勾选使用 C++的桌面开发使用C++的Linux开发


单个组件中 SDK 、库和框架 下勾选 Windows 10 SDKWindows 通用 C 运行时

编译器、生成工具和运行时 下勾选 用于 Windows 的 C++ CMake 工具

4 新建CMake项目

配置好环境后,我们打开Visual Studio,新建CMake项目

这里我们把项目名命名为OpenCVTest

点击创建,在选择启动项这里,选择OpenCVTest.exe,然后点击运行

可以看到这样一个命令行窗口,就表示运行成功了

5. 验证OpenCV配置

5.1 复制 opencv_world480d.dll

D:\Developer\opencv4.8.0\opencv\build\x64\vc16\bin\opencv_world480d.dll复制到E:\WorkSpace\Demo\OpenCV\OpenCVTest\out\build\x64-debug\OpenCVTest目录下,即和OpenCVTest.exe同一目录下

opencv_world480d.dll : Debug版本

opencv_world480.dll : Release版本

5.2 配置CMakeList.txt

在项目内(和cpp同级)的CMakeLists.txt中,添加OpenCV头文件的目录,替换\/,具体代码如下

c 复制代码
# CMakeList.txt: OpenCVTest 的 CMake 项目,在此处包括源代码并定义项目特定的逻辑。

# 指定要引用的dll的头文件所在路径
include_directories("D:/Developer/opencv4.8.0/opencv/build/include")
# 指定该dll的lib所在路径
link_directories("D:/Developer/opencv4.8.0/opencv/build/x64/vc16/lib")

# 将源代码添加到此项目的可执行文件。
add_executable (OpenCVTest "OpenCVTest.cpp" "OpenCVTest.h")

# 指定链接库的名字,即dll
# 需要将opencv_world480d.dll复制到out\build\x64-Debug\OpenCVTest目录下,即和OpenCVTest.exe同一目录下
target_link_libraries(OpenCVTest opencv_world480d.lib)

if (CMAKE_VERSION VERSION_GREATER 3.12)
  set_property(TARGET OpenCVTest PROPERTY CXX_STANDARD 20)
endif()

5.3 编写cpp代码

将一张图片复制到D盘根目录,命名为ImageTest.jpg

然后在OpenCVTest.cpp中编写如下代码,将这张图片分别以原图和灰白图片的形式展示出来。

cpp 复制代码
#include "OpenCVTest.h"
#include "opencv2/opencv.hpp"

using namespace std;
using namespace cv;

int main()
{
	cout << "Hello CMake." << endl;
	Mat img = imread("D:/ImageTest.jpg");
	imshow("img", img); //显示原图
	cvtColor(img, img, COLOR_BGR2GRAY);
	imshow("img2", img); //显示灰色图片
	waitKey();
	return 0;
}

5.4 运行效果

点击运行,显示效果如下,两个弹框分别显示出了原图和灰白图片。

到此,Visual Studio的项目中的OpenCV就配置成功了。

相关推荐
AI technophile7 小时前
OpenCV计算机视觉实战(11)——边缘检测详解
人工智能·opencv·计算机视觉
SuperW7 小时前
RV1126+OPENCV在视频中添加时间戳
人工智能·opencv·音视频
猫头虎-人工智能11 小时前
数学基础(线性代数、概率统计、微积分)缺乏导致概念难以理解问题大全
人工智能·opencv·线性代数·机器学习·计算机视觉·数据挖掘·语音识别
jndingxin12 小时前
OpenCV CUDA模块设备层-----用于CUDA 纹理内存(Texture Memory)的封装类cv::cudev::Texture
人工智能·opencv·webpack
achene_ql12 小时前
OpenCV C++ 图像处理教程:灰度变换与直方图分析
c++·图像处理·人工智能·opencv·计算机视觉
二闹16 小时前
机器眼中的“连连看🎭️”CV算法入门指北
人工智能·opencv·算法
清醒的兰17 小时前
OpenCV 视频处理与保存
图像处理·人工智能·opencv·计算机视觉
不学习怎么给老板打工?17 小时前
VisionMaster标定板像素标定,测量尺寸以及opencv/C++实现
人工智能·opencv·计算机视觉
jndingxin1 天前
OpenCV CUDA模块设备层---- 绝对值函数abs()
人工智能·opencv·计算机视觉
prinTao2 天前
【配置教程】新版OpenCV+Android Studio环境配置(4.11测试通过)
人工智能·opencv·android studio