Visual Studio下OpenCV环境配置及错误分析

总结下我的配置方法,算是做个备忘录。该方法同时兼容win10和win11。

1、下载opencv:官网下载地址OpenCV - Open Computer Vision Library

首先到opencv官网下载win平台的opencv,解压后你可以看到下面两个文件夹——build和sources,build是官方已经为我们编译好的可以直接使用的,而sources中是opencv的源码,仅供高级玩家尝试。

2、计算机环境变量配置

 【此电脑】->右键->【属性】

见右边,选择【高级系统设置】

在刚刚下载的opencv的文件夹中,从build进入,找到x64的bin,复制路径

【注意是bin不是lib】

 添加bin文件夹的路径到环境变量

 点击确定,即完成环境变量的配置。

3、在VS中进行配置

单个项目的配置方式:

创建一个空的c++项目:

 首先检查是否是x64

 如果这里是x86记得先换成x64。

项目右键选择属性

 

属性中,首先设置【VC++目录】的【包含目录】,点击编辑

在build下找到这两个目录分别添加,确定

 添加库目录:

【VC++目录】配置完成,下面在【链接器】->【输入】中添加【附加依赖项】

 在刚刚的库目录下找到这两个文件

将名称复制到【附加依赖项】中  

 这里带d的是用于Debug的,不带d的用于Release,如果只需要Debug,那添加一个带d的即可。

 【应用】->【确定】

至此环境配置就完成了。

来个简单的显示图片例程试试,如果能正常显示图片,说明配置成功。

#include <opencv2/core/core.hpp> 
#include <opencv2/highgui/highgui.hpp> 
using namespace cv;
int main()
{
    Mat img = imread("C:\\Users\\Administrator\\Pictures\\1.jpg");
    imshow("测试opencv", img);
    waitKey(0);
}

 显示成功。

但是这样配置的环境仅针对一个项目,如果有多个项目需要为每个项目重复上述操作。因此考虑将这些路径配置储存到项目属性表,只要opencv文件夹不更改,之后的项目直接加载属性表文件即可。

创建属性表的方式如下:

首先打开属性管理器,在x64的Debug处添加新的属性表

 

 创建一个【OpenCV.props】

 

 双击新建的属性表,按照上述方式进行配置、储存。就可以在创建的目录下看到属性表文件了。

之后再使用时只需【添加现有属性表】,并选择【OpenCV.props】即可,无需重复配置。

 

4、常见错误分析

(1)无法解析的外部符号。。。

 错误原因:平台选错了,刚刚配置的是x64环境下的opencv,出现这些报错说明运行在x86环境下。

解决方案:将这里的x86改成x64。

 (2)由于找不到opencv_world430d.lib。。。

 错误原因:首先明确【opencv_world430d.dll】文件的位置,是在【.\build\x64\vc15\bin】中,

涉及到这个文件夹的操作只有【计算机环境变量配置】步骤,说明环境变量配置失败。

解决方案:

首先看自己是否正确添加了【...\build\x64\vc15\bin】文件夹到环境变量,注意时bin不是lib;

如果不行,考虑把opencv_world300.dll文件直接放到C盘中,注意:64位系统用户需要注意,32位的DLL文件放在【C:\Windows\System32】,64位的DLL文件放在【C:\Windows\SysWOW64】。

如果还不行,把opencv_world300.dll文件直接放到项目的Debug文件夹肯定没问题了(不过是个笨方法)。


 

猜你喜欢

转载自blog.csdn.net/Eason_Y/article/details/131479562