【OpenCV】在VS2017中配置OpenCV开发环境
开发环境:OpenCV4.5.4、VS2017、x64
打开属性管理器:视图-->其他窗口-->属性管理器
找到 Release|x64,配置OpenCV环境主要操作的对象就是Micorosoft.Cpp.x64.user
需要注意的是Micorosoft.Cpp.x64.user 在VS2019里没有了,只能手动创建,手动创建方式:右击Release|x64,选择“添加新项目属性表”
在VS2017和VS2015中都是自带的
右击Micorosoft.Cpp.x64.user,选择属性,界面如下图所示:
找到VC++目录:
找到包含目录,并选择编辑:
包含目录的界面:
点击下图中的图标,该图标名为“新增一行”:
在新增的一行里需要输入配置OpenCV的所需要的文件路径
在配置路径前,需要安装OpenCV,方法如下:
下载后的安装包,虽然看着是exe,但本质是zip。可以将其改为zip文件,并解压
解压后,在里面可以看见两个目录:
- build
- sources
解压后,还需要将目录名修改为 opencv-4.5.4
在进行开发配置时,sources表示源码,build是cmake的产物,我们需要的就是这些产物
进入build目录:
include目录的路径是我们需要的,需要将其添加到项目的包含目录中
添加后,还需要添加一个包含目录,需要将include下的opencv2目录也添加进去:
也将其添加到项目的包含目录中:
此时项目的包含目录中的openCV的路径就配置好了
VC++目录中还有一个路径需要配置:库目录
点击库目录的编辑:
以同样的方式添加路径
在build目录下,打开x64目录,里面有两个目录:
- vc14
- vc15
vc15是给VS2017、2019配置时使用的
我们打开vc15目录,里面有一个目录名为lib
需要将lib目录的路径配置到项目的库目录中
配置好VC++目录的包含目录和库目录后,点击应用
接下来需要配置项目的链接器
在链接器中找到输入:
打开对附加依赖项的编辑:
打开后的界面如下图:
在刚刚配置的库目录路径(D:\Environment\opencv-4.5.4\opencv\build\x64\vc15\lib)里面有两个文件:
- opencv_world454.lib
- opencv_world454d.lib
文件中的后缀d
表示使用x86的Debug版本时才需要使用结尾是d的文件来进行配置
若配置的是Release版本,则只需要使用不带d结尾的lib文件来进行配置
此处,由于配置的Release版本,所以将opencv_world454.lib添加到附加依赖项中
需要将全名,带后缀
若把带d的文件也放入,在使用Release版本的编译器进行编译时可能会编译异常,会出现错误的链接
配置好以后选择确定,并应用
综上,配置了三个内容:
- VC++目录中的包含目录
- VC++目录中的库目录
- 链接器菜单中输入的附加依赖项
在IDE里面的配置就结束了
写一个测试文件,检查是否可以正确找到openCV的头文件
#include <opencv2/opencv.hpp>
#include <iostream>
// 引用openCV命名空间
using namespace cv;
using namespace std;
int main(int argc, char** argv) {
Mat src = imread("D:/20210111162448_20017.jpeg");
imshow("input", src); // 第一个参数是窗口的名称,第二个参数是要显示的图像
waitKey(0); // 一直阻塞,等待用户的指令
destroyAllWindows(); // 消失并销毁所有窗口
return 0;
}
写好程序以后,选择 生成 --> 重新生成解决方案
输出如下:
运行程序:
运行程序时,会遇到报错:找不到opencv_world454.dll
解决方法:
在D:\Environment\opencv-4.5.4\opencv\build\x64\vc15\bin
目录下有两个文件:
- opencv_videoio_ffmpeg454_64.dll
- opencv_world454.dll
opencv_world454.dll是我们运行时所依赖的dll
opencv_videoio_ffmpeg454_64.dll是视频读写时用于进行编解码的dll
需要将这两个文件所在的目录路径,放到环境变量中
在环境变量中,找到系统变量中的Path
对Path进行编辑,将D:\Environment\opencv-4.5.4\opencv\build\x64\vc15\bin
这个路径添加到Path中
此时执行还是找不到,需要将重启IDE
重启IDE后可以发现,可以正常运行程序,输出图片
自此,在VS2017中的OpenCV环境就配置完毕