http://segmentfault.com/a/1190000000420154
关于OpenCV+Windows+VS配置的文章网上有很多,多是类似OpenCV中文网上的安装方法。
不管什么方法,配置的步骤毫无疑问是:
1. 配置环境变量,
2. 配置VS。
在这个过程中,令人烦的是不停地打开一个个窗口设置来设置去。如何减少这些繁琐的操作呢?
一. 批处理方法配置环境变量。
这里主要用到’setx‘命令,相关详见微软帮助文档。下面给出代码,
@echo off
echo 设置OpenCV路径为系统环境变量
setx /m OPENCV_DIR "D:\Program Files (x86)\OpenCV-2.4.8\build"
setx /m OPENCV_INCLUDE "%OPENCV_DIR%\include"
setx /m OPENCV_LIB "%OPENCV_DIR%\x86\vc11\lib"
setx /m OPENCV_DLL "%OPENCV_DIR%\x86\vc11\bin"
echo 将OpenCV动态链接库目录添加到系统路径
echo %PATH% | find "%OPENCV_DLL%"
if %ERRORLEVEL% == 1 setx /m PATH "%PATH%";"%OPENCV_DLL%"
pause
将代码保存到文件setEnvironmentVariable.bat,双击运行该文件就可以完成环境变量的设置,必要的时候需要管理员权限。
注1:代码中环境变量的地址,根据程序安装目录不同、需求不同进行调整。
设置后要检查下环境变量的设置是否正确
有时在opencv_lib中 %%的内容没有
path中也没能成功 添加bin dll目录
二. 局部方法+属性表,配置VS2012。
该步骤的一般性实施方法可参考OpenCV官网中的Local Method。VS的配置参数,是保存在*.props中的,所以对VS的配置我们只需生成相关的props文件即可。按上述环境变量配置,该文件内容为:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<PropertyGroup>
<IncludePath>$(OPENCV_INCLUDE);$(IncludePath)</IncludePath>
<LibraryPath>$(OPENCV_DLL);$(LibraryPath)</LibraryPath>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(OPENCV_INCLUDE)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>$(OPENCV_LIB)</AdditionalLibraryDirectories>
<AdditionalDependencies>opencv_calib3d2411d.lib;opencv_contrib2411d.lib;opencv_core2411d.lib;opencv_features2d2411d.lib;opencv_flann2411d.lib;opencv_gpu2411d.lib;opencv_highgui2411d.lib;opencv_imgproc2411d.lib;opencv_legacy2411d.lib;opencv_ml2411d.lib;opencv_nonfree2411d.lib;opencv_objdetect2411d.lib;opencv_ocl2411d.lib;opencv_photo2411d.lib;opencv_stitching2411d.lib;opencv_superres2411d.lib;opencv_ts2411d.lib;opencv_video2411d.lib;opencv_videostab2411d.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup />
</Project>
将以上内容保存到OpenCV_Debug.props。在我们今后用到OpenCV的项目工程中,选择属性管理器,点击对应工程名下的Debug标签,右键,选择添加现有属性表,添加刚刚保存好的OpenCV_Debug.props即可。
注1:所需的静态库名称,根据需求进行调整。
获取所有静态链接库文件名的一个快捷方法是,在文件所在目录,打开命令窗口,运行
dir /b *d.lib | clip
可以把目录下符合*d.lib格式的文件名copy到剪切板。
注2:Release版本属性表同样设置,注意静态库的名字要修改为Release版本。
至此,大功告成。赶快运行程序测试一下。