操作环境
- windows 10 64位 教育版
- opencv 3.4.0:下载地址
- visual studio 2015
本开发环境配置的一些说明:
- 不需要编译opencv
- 在visual studio 2015上只需在首次建立opencv项目时进行配置,之后导入之前保存的项目属性表即可。
- 鉴于网上对于opencv环境配置的教程水平参差不齐,特详细记录本次安装流程,以令后续同学少走弯路,本文完全原创,发表时间为2018年3月5日,若有失误或不足欢迎留言指正。
解压OpenCV并配置环境变量
打开自解压程序,设置解压路径为C盘根目录。
解压得到的文件夹结构如下图所示。
需要添加到Path环境变量的路径:
对于vs2015:(适用于本次开发环境的配置)
C:\opencv\build\x64\vc14\bin
对于vs2017:
C:\opencv\build\x64\vc15\bin
- 1
- 2
- 3
- 4
安装visual studio 2015
一路默认安装即可。
注意要选择windows下c++开发的相关支持选项,否则在新建项目的时候可能找不到“win32控制台应用程序”的选项。
项目配置与测试
0.准备工作:一些重要路径。
opencv的解压路径:(后续路径以此为基准)
C:\opencv
需要添加到Path环境变量中的路径:
对于vs2015:(适用于本次开发环境的配置)
C:\opencv\build\x64\vc14\bin
对于vs2017:
C:\opencv\build\x64\vc15\bin
需要包含的文件所在的路径:
C:\opencv\build\include
库文件所在的路径:
对于vs2015:(适用于本次开发环境的配置)
C:\opencv\build\x64\vc14\lib
对于vs2017:
C:\opencv\build\x64\vc15\lib
附加依赖项名称(所在的路径为库文件所在路径):
对于debug模式:(适用于本次开发环境的配置)
opencv_world340d.lib
对于release模式:
opencv_world340.lib
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
1.新建项目。
2.选择win32控制台应用程序,设置项目名称和项目路径。
3.点击下一步。
4.勾选空项目,点击下一步。
5.依次点击视图>其他窗口>属性管理器。
6.在Debug | 64上右键单击,选择添加新项目属性表。
7.设置项目属性表的名称为opencvEnvPropertySheet,点击添加。(此处新建的项目属性表请另外单独保存下来,以后再在vs下建立opencv项目时直接添加该表即可,不需重复配置)
8.双击新建立的opencvEnvPropertySheet项目属性表进行编辑。
9.依次点击VC++目录>包含目录,进行编辑。
10.将解压得到的opencv的build/include目录(C:\opencv\build\include),C:\opencv\build\include C:\opencv\build\include\opencv C:\opencv\build\include\opencv2添加进去。
11.依次点击VC++目录>库目录,进行编辑。
12.将解压得到的opencv的build\x64\vc14\lib目录(C:\opencv\build\x64\vc14\lib)添加进去。
13.依次点击链接器>输入>附加依赖项,进行编辑。
14.将opencv_world340d.lib添加进去。
对于不同版本的opencv,该文件名的数字编号有可能不同。
该文件位于opencv的build\x64\vc14\lib
目录(C:\opencv\build\x64\vc14\lib
)下,该目录下存在一个opencv_world340.lib
文件和一个opencv_world340d.lib
文件,其中带d的为debug版本。
对于debug模式:(适用于本次开发环境的配置)
opencv_world340d.lib
对于release模式:
opencv_world340.lib
- 1
- 2
- 3
- 4
15.依次点击视图>解决方案资源管理器。
16.右键单击源文件,再依次点击添加>新建项。
17.选择C++文件,设置文件名为main.cpp,点击添加。
18.粘贴测试代码,并设置解决方案配置为debug模式,解决方案平台为x64平台。
测试代码如下:(注意修改代码中测试图像的路径)
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
int main(void)
{
Mat originalImage = imread("C:\\code\\c_plus_plus\\opencv\\test_image\\lena.jpg");
if (originalImage.empty())
{
cout << "fail to load image !" << endl;
return -1;
}
namedWindow("opencv test", CV_WINDOW_AUTOSIZE);
imshow("opencv test", originalImage);
waitKey(0);
return 0;
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
19.点击本地windows调试器。
20.程序输出结果如图所示。
21.对于今后建立的项目,直接导入之前保存的项目属性表即可,不需要每次建项目以后再配置一次。(即以上第5~14步只需要配置一次)
调试错误的话,把vc14/bin目录下的dll复制到window/system32 和 systemWOW64目录下,重启电脑