VS2017配置opencv4.5.1
一、获得OpenCV库
1.1 直接下载
- 可以通过下载opencv4.5.1的exe文件,直接提取出来,即可获得最基本功能的opencv库。(如下载速度慢,可使用迅雷下载)
1.2 源码编译安装
- 具体的安装方式可以参考之前的文章。
二、配置OpenCV库
- 关于环境变量,配置环境变量只是为了方便找到dll文件,实际上不用配置,通过路径设置或是直接将dll放在工程目录下也可以找到。
2.1 工程下直接配置
- 以64位的Debug模式为例,首先保证工程运行模式正确:
- 打开工程的属性页,进行如下配置,路径根据自己的路径进行修改,首先是包含目录和库目录:
C:\software\3rd_party\opencv4.5.1\include
C:\software\3rd_party\opencv4.5.1\include\opencv2
C:\software\3rd_party\opencv4.5.1\x64\vc15\lib
- 然后是输入-附加依赖项:
- 添加指定的lib文件
opencv_world451d.lib
- 或者添加所有的lib文件,路径自己设置。
C:\software\3rd_party\opencv4.5.1\x64\vc15\lib*.lib
- 最后,如果不想去配置环境变量,那么可以这样设置,同样可以找到opencv4.5.1的dll文件。
path=C:\software\3rd_party\opencv4.5.1\x64\vc15\bin
- 或者可以将编译好的dll文件放在工程exe所在的目录,如下所示:
2.2 配置属性页
- 上面那种配置方式一般用于临时的快速验证某个库是否编译,安装以及配置正确,复用性比较差。因为如果换一个新的工程,那么就需要在配置以此。如果库比较少,那还可以,库多的话就比较麻烦了。
- 针对于这种情况,可以使用属性页的配置能方式,新建一个属性页,以opencv4.51debug模式为例,如下所示:
- 打开属性页的配置界面,配置方式和前面类似,就不在重复了。属性页配置完成后,需要编译一下工程里面的配置才会保存。用**notepad++**打开可以看到是这样的:
- 以后在新的工程使用debug模式的OpenCV4.5.1,就只需要把这个属性页添加到上图的位置即可。当然,对应的dll文件需要设置查找路径,或是直接放在工程exe所在的目录,亦或是使用环境变量的形式。
- 这种方式的好处在于以后工程的库配置比较方便,直接添加属性页即可。但是缺点在于,如果使用另外的电脑打开你的工程,可能会出现加载失败的情况。即使加载陈功也需要重新配置,这样还是比较麻烦。
2.3 将三方库放在工程下配置
- 可以将需要的三方库放在工程目录下,然后使用相对路径的方式进行相应的配置:
- 里边可以放置编译好的opencv库:
- 然后进行相应的配置,方式和前面一致,只是对路进行修改。
- 包含目录为:
.\3rd_party\opencv4.5.1\include
.\3rd_party\opencv4.5.1\include\opencv2
- 库目录:
.\3rd_party\opencv4.5.1\x64\vc15\lib
- 链接器-输入-附加依赖项:
opencv_world451d.lib
- 这种方式的好处在于,当你的工程换到其他位置或是其他电脑后依然可以直接编译运行,无需其他配置。缺点在于,把所有的库都放在工程下,或导致工程太大,拷贝复制不太方便。
三、测试
- 对上面任意一种配置方式做一个简单的测试:
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
//-- 读取图像
Mat img_1 = imread("1.png");
cv::imshow("show", img_1);
cv::waitKey();
return 0;
}
- 运行成功则配置与库的编译都成功完成。