上一篇博客已经讲到如何在Visual Studio 2017上实现OpenCV3.4 的永久配置,但是有时我们又同时需要用到opencv2库,比如当使用特征检测算子时,opencv2版本较opencv3版本稳定。所以这篇博客将讲解如何在已经配置了OpenCV3.4的Visual Studio 2017同时配置OpenCV2.4.9。
配置之后可实现切换编译器从而切换opencv2和opencv3库,使Debug x86实现opencv2的编译,Debug x64实现opencv3的编译。接下来开始配置。
1.首先在OpenCV官网下载OpenCV2.4.9版本
下载链接为:https://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.9/opencv-2.4.9.exe/download
然后将opencv安装路径放在自己喜欢的地方,注意区分opencv3.4的文件夹,可以自己新建一个文件夹,我这里是解压放在了E:\Program Files\opencv2目录下,区分之前opencv3.4的目录:E:\Program Files\,如下图
2.向OpenCV2.4.9库路径(E:\Program Files\opencv2\opencv\build\x86\vc12\bin)添加两个文件,分别为msvcr120d.dll(32位)以及msvcp120d.dll(32位)。这两个文件需要从网上下载。下载链接分别为:
msvcr120d.dll下载链接:https://download.pchome.net/dll/m/download-200456.html
msvcp120d.dll下载链接:https://download.pchome.net/dll/m/detail-132830.html
下载后,解压,将两个dll文件复制到上述目录中,如下图:
3.然后将OpenCV2.4.9库路径(E:\Program Files\opencv2\opencv\build\x86\vc12\bin)增加的系统环境变量Path中。如下图:
4.打开Visual Studio 2017,新建一个空项目,然后新建一个空的C++文件。
4.1首先新建一个空项目。文件->新建->项目->空项目或者使用快捷键crtl+shift+N,选择名称和路径后,点击确定。出现如下界面
该视图是在解决方案资源管理器下才能看到的,如果没打开,可在最上面工具栏中选择视图->解决方案资源管理器打开
4.2 在源文件中添加C++文件,右键源文件->添加->新建项->C++文件->添加或者直接快捷键crtl+shift+A,如下图:
5.然后打开属性管理器。视图->其他窗口->属性管理器,如下图:
6.打开属性窗口。右键Debug|Win32->属性。如下图:
7.为工程配置包含目录,把OpenCV2.4.9的如下三个目录增加到VC++的包含目录属性列表中。
(1)E:\Program Files\opencv2\opencv\build\include
(2)E:\Program Files\opencv2\opencv\build\include\opencv
(3)E:\Program Files\opencv2\opencv\build\include\opencv2
8.然后按照同样的添加方式将OpenCV2.4.9库目录添加到VC++目录的“库目录”中。
E:\Program Files\opencv2\opencv\build\x86\vc12\lib
9.添加OpenCV2.4.9的附加依赖库到链接器->输入->附加依赖项.添加界面如图。
添加内容如下:
Debug可添加:
opencv_ml249d.lib
opencv_calib3d249d.lib
opencv_contrib249d.lib
opencv_core249d.lib
opencv_features2d249d.lib
opencv_flann249d.lib
opencv_gpu249d.lib
opencv_highgui249d.lib
opencv_imgproc249d.lib
opencv_legacy249d.lib
opencv_objdetect249d.lib
opencv_ts249d.lib
opencv_video249d.lib
opencv_nonfree249d.lib
opencv_ocl249d.lib
opencv_photo249d.lib
opencv_stitching249d.lib
opencv_superres249d.lib
opencv_videostab249d.lib
10.接下来很重要的一步,打开Debug|Win32,右键其下面的Microsoft.Cpp.Win32.user,然后点击保存Microsoft.Cpp.Win32.user。这样下次新建工程项目时便自动调用了该设置,不需要再次配置。如图。
11..到此,我们就完成了已经配置了OpenCV3.4的Visual Studio 2017配置下同时配置了OpenCV2.4.9,实现永久有效。
然后重启电脑(使环境变量奏效),重启VS 2017,配置成功。
接下来为了检查是否配置成功,打开刚刚新建的项目。添加如下代码到C++文件。
#include
using namespace cv;
int main()
{
Mat img = imread("E:\\imagelib\\1.jpg");
imshow("春分",img);
waitKey(0);
return 0;
}
注意:Mat img = imread("E:\\imagelib\\1.jpg");//该处为所读取图像的路径,即上述所说要记住的目录,这里注意要使用双斜杠 \\ 才有效。
然后运行界面如下:注意选择刚刚配置好的Debug x86(代表用opencv2编译),然后点击右侧三角号或者按F5运行。
12.运行结果如下,则说明配置成功。下次再新建工程项目,不需要重新配置,直接可用。
13.接下来我们切换编译器为Debug x64(代表用opencv2编译),结果如下:
14.到这里我们就实现了通过切换编译器,从而切换opencv2和opencv3库,使Debug x86实现opencv2的编译,Debug x64实现opencv3的编译。完成了在Visual Studio 2017同时配置OpenCV3.4 以及OpenCV2.4.9。