OpenCv4.2.0+VS2017配置

前言:为了完成《数字图像处理》这门课的作业,看了很多文章,终于将OpenCv4.2.0+VS2017配置好。

1.下载并安装Opencv4.2.0

官网http://www.opencv.org.cn/
下载https://opencv.org/releases/#

2.配置环境变量Path

D:\Program Files\OpenCv\opencv\build\x64\vc15加入环境变量Path
环境变量配置完后最好重启⼀下
在这里插入图片描述
在这里插入图片描述

3.相关文件的配置

注意:32位系统用户的DLL文件放在C:\Windows\SysWOW64,64位系统用户的DLL文件放在C:\Windows\System32
在这里插入图片描述

如果是opencv其他的版本,把对应的dll文件移动到上述两个C盘文件夹即可!

4.VS2017属性管理器配置

1.新建项目,进入属性管理器,菜单栏->视图->其他窗口->属性管理器

在这里插入图片描述
2. 对Debug|X64进行配置,右键Microsoft.Cpp.x64.user,点击属性
在这里插入图片描述

3.对属性中的 VC++目录->包含目录和VC++目录->库目录进行添加相关路径,对 链接器->输入->附加依赖项进行添加相关路径

包含目录中加入
D:\Program Files\OpenCv\opencv\build\include
D:\Program Files\OpenCv\opencv\build\include\opencv2

在这里插入图片描述

库目录中加入
D:\Program Files\OpenCv\opencv\build\x64\vc15\lib
在这里插入图片描述

链接器->输入->附加依赖项中加入
opencv_world420d.lib
在这里插入图片描述

如果是opencv其他版本,请更换dll版本,如opencv_world340d.lib

5.测试

测试代码1:

#include<iostream>
#include<opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char** argv) {
//路径⾃⼰决定
//Mat image = imread("E:/demo.jpg");//格式正确
//Mat image = imread("E:\demo.jpg");//输入格式错误
Mat image = imread("E:\\demo.jpg");//格式正确,两个斜杠,第一个是转义字符
 
if (image.empty()) {
printf("could not load image...\n");
return -1;
}
namedWindow("test_opencv_setup", 0);
imshow("test_opencv_srtup", image);
waitKey(0);
return 0;
}

测试结果1:注意是Debug,X64
在这里插入图片描述

测试代码2:

/************************************************************
  Copyright (C), 2008-2014, 西安电子科技大学出版社版权所有.
  文件名: code02-01-readAndWriteImage.cpp
  作  者: 耿楠
  版  本: 1.0
  日  期: 2014年3月1日
  描  述: 利用OpenCV读写和显示图像。
  其  它:
  函数列表:
  修改记录:
  <作者>  <修改时间>   <版本>   <描述>
  耿楠    2014/03/01     1.0     创建文件
***********************************************************/
 
#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
 
using namespace std;
using namespace cv;
 
int main(int argc, char ** argv)
{
Mat image, result;
 
string srcFileName;
cout << "Enter the source image file name: ";
cin >> srcFileName;
 
/// 读入原始图像
image = imread(srcFileName);
if (image.empty())
{
cerr << "Failed to load image file: " << srcFileName << endl;
return -1;
}
 
cout << "size: " << image.size().height << " , " << image.size().width << endl;
 
namedWindow("Original Image");
imshow("Original Image", image);
 
flip(image, result, 1);
 
namedWindow("Output Image");
imshow("Output Image", result);
 
imwrite("output.bmp", result);
 
waitKey(0);
 
return 0;
}

测试结果2:注意输入的是路径
E:/demo.jpg
E:\demo.jpg
两种输入格式皆可
在这里插入图片描述
在这里插入图片描述

6.错误集合

错误1
在这里插入图片描述

解决方案:
链接器->输入->附加依赖项中加入
opencv_world420d.lib
不是opencv_world420d.dll
在这里插入图片描述

错误2
“Opencv.exe”(Win32): 已加载“F:\Code\Opencv\x64\Debug\Opencv.exe”。已加载符号。
“Opencv.exe”(Win32): 已加载“C:\Windows\System32\ntdll.dll”。无法查找或打开 PDB 文件。
“Opencv.exe”(Win32): 已加载“C:\Windows\System32\kernel32.dll”。无法查找或打开 PDB 文件。
在这里插入图片描述

解决方案:
【调试】–>【选项和设置】
在这里插入图片描述

【常规】标签–>勾选“启用资源服务器支持”,确定
在这里插入图片描述

切换到【符号】标签,勾选“Microsoft 符号服务器
在这里插入图片描述

运行时加载符号可能需要等待一段时间

错误3
输入图片路径,不是给取名字
在这里插入图片描述

7.配置教训

1.检查步骤,不要出现低级错误
2.不小心修改不是自己写的代码(如库文件),很可能翻车
3.32位和64位系统的操作可能不一样,不同版本的操作也可能不一样,进而产生错误,搜索教程是可以添加关键字,如64位,版本信息。
4.出现bug,然后网上查询到修改配置信息,记住修改了什么条件,如果依然不正确,就把配置再改回来。
5.遇到多个教程,且有歧义,不妨多次尝试,成功了也要做笔记,挑出合适有用的教程。
6.有的时候按照教程,可以一步正确,很幸运,但是下次操作可以出现bug,请做笔记;不能一步成功的教程更应该做笔记。

8.学习链接

VS2017配置opencv教程(超详细!!!)
(项目名).exe”。已加载符号。 无法查找或打开 PDB 文件。
OpenCV:Visual Studio "无法查找或打开PDB文件"解决方法
无法加载 DLL 找不到指定的模块 的解决方案
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值