vs2017+OpenCV3.4.1配置

配置OpenCV系统环境变量

配置环境变量就是把

1
D:\opencv\build\x86\vc15\bin //根据自己的目录填写

目录添加到系统的path里面,这样程序运行的时候系统就可以根据path设置找到里面的dll。

以win10,为例。直接在搜索框搜索编辑系统环境变量 ->点击进去->环境变量->系统变量-找到path->编辑->把上面目录添加进去。其他进去的方法可以从控制面板进去。

bin目录的解释:

  • x86 可以理解是32位的,代表工程调试的时候也只能使用x86。如果想使用64位调试,那么就把x64的bin也添加上。两个系统变量之间用分号隔开。注意这里不是指系统是多少位的选择。
  • vc15 表示vs2017。 vs2008=vc9,vs2010=vc10,vs2012=vc11,vs2013=vc12。vs2015也暂时用vc12,似乎在opencv3里面有了vc14

属性配置

一次性配置永久使用

网上关于opencv的工程属性配置教程很多,道理都是一样的。不过有些只是说了配置的方法,这导致每次新建一个项目就要重新配一次,比较麻烦。一次配置的办法很简单,原理就是第一次配置的时候不是直接配置项目的默认属性页,而是新建一个属性页,配置完成后可以保存下来,下次新建项目直接导入就行了。

步骤:

  • 新建一个项目,可以选择控制台或者空项目就好。找到属性管理器(各个版本的属性管理器位置不一样,一般在侧边栏可见,或者在视图->其他窗口可以找到)。

  • 然后,找到对应工程当前的编译调试平台,选择属性管理器对应的文件夹,右键添加新有的属性页。
    比如我的编译调试平台是Debug-x86。那么属性管理器就选择Debug|win32的文件夹添加属性页。

    编译平台

    属性页

    属性页起一个有意义的名字,比如可以看出属性页所属平台的信息等。

  • 然后双击新建的属性页进行编辑.

  • 1.包含目录配置

“平台”框内显示Win32还是x64表示要配置的是32位编译还是64位编译,需要更改平台可点“配置管理器”。选择“配置属性”>“VC++目录”,在右边的“包含目录”里新增以下3条:

1
2
3
D:\opencv\build\include
D:\opencv\build\include\opencv
D:\opencv\build\include\opencv2

  • 2.库目录配置

​ 在“库目录”里新增1条:
D:\opencv\build\x86\vc15\lib
这里x86还是x64,以及vc版本的选择,都同环境变量配置中说的。

  • 3.链接库配置

右键项目->“属性”->“配置属性”->“链接器”->“输入”,在“配置”下拉框中选“Debug”。在“附加依赖项”栏点右边“编辑”,复制下列文件名到空白处:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
opencv_calib3d341d.lib
opencv_core341d.lib
opencv_dnn341d.lib
opencv_features2d341d.lib
opencv_flann341d.lib
opencv_highgui341d.lib
opencv_imgcodecs341d.lib
opencv_imgproc341d.lib
opencv_ml341d.lib
opencv_objdetect341d.lib
opencv_photo341d.lib
opencv_shape341d.lib
opencv_stitching341d.lib
opencv_superres341d.lib
opencv_video341d.lib
opencv_videoio341d.lib
opencv_videostab341d.lib

​ 注意这里所有文件名是d结尾的,对应Debug,不以d结尾的对应Release。所以,接下来在配置下拉框中选“Release”,附加依赖项添加下列文件名:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
opencv_calib3d341.lib
opencv_core341.lib
opencv_dnn341.lib
opencv_features2d341.lib
opencv_flann341.lib
opencv_highgui341.lib
opencv_imgcodecs341.lib
opencv_imgproc341.lib
opencv_ml341.lib
opencv_objdetect341.lib
opencv_photo341.lib
opencv_shape341.lib
opencv_stitching341.lib
opencv_superres341.lib
opencv_video341.lib
opencv_videoio341.lib
opencv_videostab341.lib
  • 说明,这里配置的是自己编译的opencv3.4.1版本,不同版本的链接库配置的文件名可能不一样,但是原理是一样的,即把D:\opencv\build\x86\vc15\lib目录下的文件名复制过来粘贴就行,不过要区分好debug版本(带d)和release版本(不带d)。至于批量复制文件名,详情参考这里

这次配置已经完成,最后一步就是保存好配置的属性页,到工程目录找到刚刚新建的属性页,复制粘贴到opencv的目录下(建议)。

-------------本文结束感谢您的阅读-------------