windows+visual studio2015+opencv 3.4.0+c++
批量修改图片
配置opencv
- 下载opencv。build:已经编译好的库文件和可执行文件,source: 未编译的源文件
添加环境变量。在build目录下,x64目录下面包含了64位程序所需dll文件。在这个两个目录下,有vc14,vc15两个文件夹,分别是针对vs2015,vs2017。将目录下的和VS版本对应的文件夹下的bin目录都加入PATH变量中。所以在PATH环境变量中增加如下内容,其中build前面的位置是安装opencv的目录:
1
;D:\program_file\opencv\build\x64\vc14\bin
生成独立的opencv配置属性表
通过操作生成一个单独的OpenCV配置属性表,然后将其导出保存起来,将来在需要用到OpenCV的程序中,直接导入这个保存的属性表即可
下面都是在vs开发环境中:- 创建一个空项目,文件->新建->项目->vc++->常规->空项目。通过视图->其他窗口->属性管理器找到属性管理器页面。每个项目都可以有四个编译情况,分别是:Debug|win32、Release|win32、Debug|x64、Release|x64,基本步骤都类似,下面针对Debug|win32来说。
- 在Debug|x64文件夹上右击,选择添加新项目属性表,在弹出的对话框里,给这个表取名为OpenCV_Debug_32.props,然后点击添加。
- 双击新建的属性表,弹出属性页
在属性页上,点击C/C++->常规->附加库包含目录,在这里添加OpenCV安装路径下的include目录,具体如下:
1
D:\program_file\opencv\build\include
在属性页上,点击链接器->常规->附加库目录,在这里添加OpenCV安装路径下的lib目录。注意:对不同编译情况和不同版本的VS,lib文件夹目录不同。对于VS2012下面的Debug|win32模式,lib文件夹目录为,其中x64目录表示是针对win64的,vc14表示是适用于VS2015的:
1
D:\program_file\opencv\build\x86\vc11\lib
在属性页上,点击链接器->输入->附加依赖项,在里面添加附加依赖的lib文件:
这是2.4版本的:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19opencv_imgproc340d.lib
opencv_calib3d340d.lib
opencv_contrib340d.lib
opencv_core340d.lib
opencv_features2d340d.lib
opencv_flann340d.lib
opencv_gpu340d.lib
opencv_highgui340d.lib
opencv_legacy340d.lib
opencv_ml340d.lib
opencv_nonfree340d.lib
opencv_objdetect340d.lib
opencv_ocl340d.lib
opencv_photo340d.lib
opencv_stitching340d.lib
opencv_superres340d.lib
opencv_ts340d.lib
opencv_video340d.lib
opencv_videostab340d.lib注意:1、340对应OpenCV3.4.0,其他版本做对应修改。
2、后缀d代表Debug模式,如果是Release模式去掉d。
我下载3.4.0版本,lib只有opencv_world340d.lib
,所以只添加此库就好了。1
opencv_world340d.lib
添加好之后,点击属性页面板右下角的应用,确定。
- 在Debug|x64文件夹上右击,选择保存,该属性表就保存好了。
- 在该项目目录下面找到这个属性表,保存到一个安全的地方,下次在要用OpenCV的工程里,找出属性管理器,右键,选择添加现有属性表即可。
参考:在Visual Studio中使用OpenCV
How to build applications with OpenCV inside the Microsoft Visual Studio
VS配置OpenCV开发环境(c++):How & Why
openvc一次配置永久使用
Working with Project Properties
VS项目属性页 Property page 与属性管理器 Property manager 中配置关系
编码
1 | #include <io.h> |
问题
vs属性窗口不显示内容
原因:位置找错了,属性管理器在view->otherwindow->property manage
属性窗口不显示内容,尝试重启vs.无法打开文件“LNK 1104;opencv_imgproc340d.lib”
错误原因:lib库文件里面没有上面的lib,打开一看只有opencv_world340d.lib
解决办法:在属性页链接器->输入->附加依赖项,将依赖项改为opencv_world340d.lib
参考:配置OpenCV无法打开文件opencv_calib3d300d.lib