环境:
操作系统:win7旗舰版(64bit) + Visual Studio Community 2017 + Opencv3.4.1
配置步骤:
1、安装vs2017(百度安装教程)
2、下载opencv(选择编译好的二进制文件),下载地址
3、配置opencv
3.1、安装opencv
双击打开下载好的opencv-3.4.1 exe文件,进行安装(其实是解压),选择安装目录。因为OpenCV项目文件打包的时候,根目录就是opencv,所以不需要额外新建一个opencv目录存放,直接选中你想放的某个路径,然后点击Extract
提取之后opencv的目录中的内容如下:
3.2、配置环境变量
“计算机” 》 “属性” 》 “高级系统设置” 》 “高级” 》 “环境变量” 》 “Path”,选中Path并编辑:64位系统的需要在path添加“;opencv安装路径\build\x64\vc15\bin”(注:英文输入法中的“;”是分割符,用于与前面其他软件的配置参数分开),例如我的配置参数为:;F:\opencv\build\x64\vc15\bin (x64文件夹下有vc14和vc15两个文件夹,它们对应于VS的不同版本,vc14对应VS2015,vc15对应VS2017,你用的是哪个版本就将哪个添加到环境变量中,我用的是VS2017,所以我在环境变量中添加的是vc15)
环境变量配置好后,重启电脑,使其生效
4、配置vs2017:
要在VS中使用外部的类库的话,需要进行引入的配置,这个配置就包括:外部库目录指定和外部包含文件指定
4.1、新建一个项目
打开vs2017 》 “文件” 》 “新建” 》 “项目” 》 选中“空项目” 》 名称、位置(随便填,也可不填直接用系统自动生成的) 》 “确定” 》 在刚建好的项目中右键选中“源文件” 》 “添加” 》 “新建项” 》 “C++文件(.cpp)” 》 名称(可以更改) 》 “添加”
4.2、在VS中有个叫做“属性管理器”的工具,用于进行VS整体参数的配置,配置一次之后,以后所有新建项目都能应用该配置,不用再进行重新配置操作
在出现的属性管理器栏中,展开目录,选中“Debug|Win64” 》 “Microsoft.Cpp.x64.user” 》 右键选中“属性(Properties)”进入属性配置界面:
4.3、配置包含目录
“通用属性” 》 “VC ++目录” 》 “包含目录”》 选中右侧倒三角标志 》 “编辑”:
在编辑页面填入三个路径:
F:\opencv\build\include
F:\opencv\build\include\opencv
F:\opencv\build\include\opencv2
这三个路径是根据你自己的安装位置来填的("opencv安装路径"\build\include ,"opencv安装路径"\build\include\opencv,"opencv安装路径"\build\include\opencv2),比如说我的opencv解压在F盘根目录下,所以我的“opencv安装路径”是F:\opencv
4.4、配置库目录
完成上面的包含目录配置之后,还需进行库文件的配置:回到属性界面,选择库目录进行编辑
在库目录的编辑页面添加一条路径:
F:\opencv\build\x64\vc15\lib
和包含目录中的路径一样,这个路径也需要结合你选择的opencv安装位置来填(形如“opencv安装路径”\build\x64\vc15\lib),其中vc15是对应于VS2017版本,此处需要根据你实际使用的VS版本
4.5、配置动态链接库
进入库文件目录下面的.lib文件列表(路径为F:\opencv\build\x64\vc15\lib),可以看到在3.4.1版本的OpenCV中,有两个库文件:opencv_world341.lib和opencv_world341d.lib,其中opencv_world341.lib是Release模式需要用到的库文件,而opencv_world341d.lib是Debug模式需要用到的库文件
配置Debug模式的动态链接库:
在编辑页面添加Debug模式需要用到的库文件:opencv_world341d.lib
至此配置就已经全部完成
5、测试
注:如果需要切换到Release模式,则需要配置Release模式的动态链接库:
返回属性管理器,展开目录,选中“Release|Win64” 》 “Microsoft.Cpp.x64.user” 》 右键选中“属性(Properties)”进入Release模式属性界面:
步骤和Debug模式配置时大致一样,只是库文件不同
使用哪种模式,就需要使用哪种模式对应的库文件,所以当从Debug模式切换到Release模式时,动态链接库也需要配置为Release模式,从Release模式切换到Debug模式时,亦然。
感谢:https://www.cnblogs.com/linshuhe/p/5764394.html
https://blog.csdn.net/poem_qianmo/article/details/19809337