Visual Studio + Opencv配置
目录
- Opencv安装、环境变量配置
- Visual Studio 库的两种配置
本文使用操作系统为Windows10,仅适用于windows环境Visual Studio编译器上的 Opencv开发配置。Opencv所有平台通用的配置方式是从官网下载源码,然后使用CMake编译成对应平台的库,比如Windows平台,使用CLion IDE + gcc配置Opencv,就需要用CMake + gcc将源码编译成库文件,然后然后CLion才可以配置并使用这些库(主要保持编译器版本匹配)。看起来很麻烦对吧,但有一个例外,那就是Visual Studio编译器,Opencv官方提供了该编译器的Opencv预编译库,不需要自己编译。所以在windows上可以使用VS的小伙伴不要自己编译库了,麻烦又容易出错。
Opencv安装、环境变量配置
请在官网下载符合你要求的版本,Releases - OpenCV,下载的是压缩包,双击解压即可,无需像类似应用程序安装一样的步骤,解压目录既是库的保存目录。
接下来需要配置动态库的环境变量,在刚才的解压目录中找到“opencv\build\x64\vc15\bin”,这是Opencv动态库的位置,因为我下载的是64位Opencv,所以去x64。在目前最新的4.6版本中,提供了vc14和vc15两个版本,这表示编译库使用的msvc(VS编译器)版本,vc15对应msvc2017。自己使用VS版本应当大于vc版本,我使用的是VS2019,所以配置vc15的库。
现在需要配置系统环境变量了,将刚才bin目录“E:\Opencv_4.6.0\opencv\build\x64\vc15\bin”(本文是这个目录)添加到Path中,很多人都是这样配的,但我推荐另一种。请在系统变量中增加“OPENCV_DIR”,它的目录是“E:\Opencv_4.6.0\opencv\build\x64\vc15“,然后将“%OPENCV_DIR%\bin”加入Path,为什么要多这一步呢?在VS中配置Opencv库时,我们将使用“OPENCV_DIR”代替“E:\Opencv_4.6.0\opencv\build\x64\vc15”,不仅VS中可以这样代替,整个系统中都是可以的,一旦库的位置发生变动或者更改库,只需要修改“OPENCV_DIR”即可。
Visual Studio 库配置
不仅适用VS Opencv配置,其他库的配置过程也是如此。这里很多博客做了误导,或者有一些不必要步骤,其实只需要三步:包含目录、库目录、附加依赖项。但也有两种配置方式,同学们任选一种即可。
配置方式一
创建一个VS项目,点击”项目“——>”属性“,打开项目配置属性页,”VC++目录“——>”包含目录“,将头文件目录”E:\Opencv_4.6.0\opencv\build\include“写入。前文说过这里的写法是”$(OPENCV_DIR)\..\..\include“,”..\“表示上一级目录。然后配置”VC++目录“——>”库目录“,这里写入静态库和动态库的目录“$(OPENCV_DIR)\lib”。最后,“链接器”——>“输入”——>“附加依赖项”,这里写入项目将调用的具体库名称,Opencv已经将整合为一个静态库文件“opencv_world460.lib”,可以在“opencv\build\\x64\vc15\lib”看到,相信大家也看到了“opencv_world460.lib”命名规律。现在配置好了吗?
哦,对了,属性页最上面的配置管理器,我在这里Release/x64,那么换成Debug/x64呢,刚才的配置就没了,因为开发程序Debug和Release都要,所以还得配置DeBug。步骤和要填的目录都一样,但有一个细微的不同之处,“附加依赖项”填入“opencv_world460d.lib”,带d.lib在Debug模式使用,不带d.lib在Release模型使用。由于库是64位的版本,所以只在x64运行。
配置方式二
配置的第一个属性换成“C/C++”——>“常规”——>“附加包含目录”,与方法一中“包含目录”含义和目录一样;第二个属性换成“链接器”——>“常规”——>“附加库目录”,第三个属性同上。
好了,配置完成了,找个代码测试一下吧。
#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;int main()
{
Mat image;
image = imread("D:/VScode/luna.jpg", IMREAD_COLOR); // Read the file
if (image.empty()) // Check for invalid input
{
cout << "Could not open or find the image" << std::endl;
return -1;
}
namedWindow("Display window", WINDOW_AUTOSIZE); // Create a window for display.
imshow("Display window", image); // Show our image inside it.
waitKey(0); // Wait for a keystroke in the window
return 0;
}
参考博文:Visual Studio 下配置属性页的一些说明_晚安丶的博客-CSDN博客
如有帮助,欢迎点赞
Visual Studio + Opencv配置相关推荐
- Win7系统Visual Studio 2013配置OpenCV3.1图文详解
Win7系统Visual Studio 2013配置OpenCV3.1图文详解 OpenCV3.1对硬件加速和移动开发的支持相对于老版本都有了较大改进,支持新的开发工具,更易于扩展,配置方式也比以前简 ...
- 使用Visual Studio+OpenCV进行的Susan算子边缘检测及数米粒图像处理实验
一.实验内容 用计算机视觉的方法数米粒. 二.实验目的及意义 计算机视觉的应用非常广泛,本实验就是让同学们对计算机视觉技术的应用有一个简单的了解. 1.了解计算机视觉的实验环境.本实验选用的是 VS+ ...
- OpenCV安装教程:Windows 安装 Visual Studio + OpenCV + OpenCV contrib
目录 0.写作背景 1.安装visual studio 2.下载OpenCV相关的源码 下载OpenCV原始的源码 下载OpenCV contrib的源码 下载安装cmake 3.cmake编译Ope ...
- 【错误记录】Visual Studio 中配置 NDK 头文件路径 ( NDK 的三个头文件路径 | 与 CPU 架构相关 asm 头文件路径选择 )
文章目录 一.报错信息 二.解决方案 1.NDK 的三个头文件路径 2.与 CPU 架构相关 asm 头文件路径选择 一.报错信息 参考 [Android 逆向]Android 进程注入工具开发 ( ...
- 在Visual Studio Code配置GoLang开发环境
在Visual Studio Code配置GoLang开发环境 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs Visu ...
- visual studio编译linux,在 Visual Studio 中配置 Linux MSBuild C++ 项目
在 Visual Studio 中配置 Linux MSBuild C++ 项目Configure a Linux MSBuild C++ project in Visual Studio 10/16 ...
- 小白Mac C/C++ for Visual Studio Code配置
小白Mac C/C++ for Visual Studio Code配置 一. VS Code安装 VS Code官网下载地址 (下载完成后是英文的,自己在插件管理里面下载个语言包) C/C++ fo ...
- visual studio 2022配置GAMP出现realloc不能开辟空间问题和不能够创建文件夹问题及其解决方法
visual studio 2022配置GAMP出现realloc不能开辟空间问题和不能够创建文件夹问题及其解决方法 因在处理相关数据时,需要动态给指针开辟内存,使用了realloc进行开辟内存空间, ...
- Visual Studio Code 配置 Java开发环境
第一步:下载vscode 官网:Visual Studio Code - Code Editing. Redefined 第二步:下载Java 官网:Java Downloads | Orac ...
最新文章
- bert推理速度太慢如何解决
- CSS2.0中文手册(CHM版)
- 在局域网访问_管理Windows访问凭证,快速访问局域网上的共享资源
- 从顶会论文看多模态预训练研究进展
- codeblocks、wxWidgets环境配置
- 关于微信小程序的的总结
- android ble 助手源码_[源码和文档分享]基于Android的生活助手APP的设计与实现
- update empty content to text instance - where is B mode changed to D by frame
- [转载] 如何用一个Python示例入门TensorFlow?
- Netty in action—第一个Netty应用
- pytorch查看模型weight与grad
- 基于android的电影售票APP,基于Android的在线电影售票系统.doc
- solidworks做动态静力学分析Motion(牛头刨床为例)机械原理课设(停止中断)
- c语言jt808协议库,部标JTT808协议快速开发包
- python最近广告_腾讯2018广告算法大赛思路解析(python)
- CVPR'22 最新132篇论文分方向整理|包含目标检测、图像处理、医学影像等28个方向...
- Bootstrap 3 学习
- 震惊了!鸿蒙又多了一种开发方式Ets,让更多的人赶上红利!
- 计算机及相关经典书籍收集
- 鸿蒙OS内核分析|解读鸿蒙源码