《一》、vs2015+opencv2.4安装;
OpenCV开发环境配置
1 安装环境描述
操作系统:Windows10
IDE工具:Visual Studio 2015
OpenCV: v2.4.12
下载地址:http://opencv.org/downloads.html
2 配置开发环境
OpenCV的开发环境配置分为5个步骤。步骤1是解压文件,步骤2是配置系统环境变量,步骤3到步骤5是配置Visual Studio;
步骤1:解压OpenCV软件包
步骤2:配置环境变量
步骤3:配置include
步骤4:配置lib
步骤5:配置链接库
步骤1:解压OpenCV软件包
双击opencv-2.4.12.exe,出现一个对话框,提示需要将OpenCV的开发包解压到指定位置。在指定解压目录下,自动生成opencv目录。解压成功后,可以看到opencv目录下包括两个文件夹,分别是build和sources。
图1 解压Open软件包
![](http://img-my.csdn.net/uploads/201604/13/1460520190_3991.png)
图2 解压成功后的opencv目录
注意点:windows 8 /10 对C:下的目录是有保护的,没有权限是不能解压到C盘中,会出现如下图所示错误:
图3 在C盘解压可能出现的错误
步骤2:配置环境变量
配置环境变量是将bin目录地址添加到PATH变量中,需要注意的是,build目录下提供了X86和X64两个目录分别对应32位和64位系统。在使用64位机器开发的时候,最好将两个都添加上。
添加bin路径示例:
D:WorkSpaceopencvuildx64vc12in
D:WorkSpaceopencvuildx86vc12in
图4 添加bin路径到PATH系统变量
如果bin配置不成功或者有误,会出现丢失dll的错误提示,我们可以将dll都复制到操作系统相关目录下。
32位系统:C:WindowsSystem32
64位系统:C:WindowsSysWOW64
示例地址: D:WorkSpaceopencvuildx86vc12in
图5 bin目录下的dll
步骤3:配置include
步骤3到步骤5是配置Visual Studio环境,在开始布置前,首先要建立一个C++的空项目,打开”属性管理器”。
打开步骤:视图 ->属性管理器 -> Debug | Win32 -> Microsoft.Cpp.Win32.user->属性
图6 打开属性管理器
备注:在Microsoft.Cpp.Win32.user属性页的VC++目录选项中,包括了:包含目录(includ)、库目录(lib)。链接器选项中,可以配置链接库。
打开步骤:Microsoft.Cpp.Win32.user –> 通用属性–> VC++目录 –> 包含目录
![](http://img-my.csdn.net/uploads/201604/13/1460520231_5899.png)
图7 Microsoft.Cpp.Win32.user 属性页(VC++目录)
Include(包含目录)主要配置opencvuild下的几个include主目录。示例路径如下:
D:WorkSpaceopencvuildinclude
D:WorkSpaceopencvuildincludeopencv
D:WorkSpaceopencvuildincludeopencv2
图8 Include目录配置
步骤4:配置lib
lib配置同样在VC++目录下的库目录,示例目录路径如下
D:WorkSpaceopencvuildx86vc12lib
图9 配置lib目录
注意:需要说明的是,这里只配置了x86的lib目录地址,其原因我引用了《OpenCV3编程入门》中的讨论可以参考:不管是32位还是64位操作系统,只需要考虑用Win32编译器还是x64编译器……一般情况下,都是用Win32的x86编译器。所以无论32位或者64位操作系统,配置文件最好都选择x86版的。
步骤5配置链接库
链接器的配置是在: 链接器 -> 输入 –> 附加依赖项
图10 添加链接库
lib的顺序是19个带d的debug版本lib , 19个不带d的release版本lib在后。如果下所示为OpenCV2.4.12版本的链接库。
opencv_calib3d2412d.lib
opencv_contrib2412d.lib
opencv_core2412d.lib
opencv_features2d2412d.lib
opencv_flann2412d.lib
opencv_gpu2412d.lib
opencv_highgui2412d.lib
opencv_imgproc2412d.lib
opencv_legacy2412d.lib
opencv_ml2412d.lib
opencv_nonfree2412d.lib
opencv_objdetect2412d.lib
opencv_ocl2412d.lib
opencv_photo2412d.lib
opencv_stitching2412d.lib
opencv_superres2412d.lib
opencv_ts2412d.lib
opencv_video2412d.lib
opencv_videostab2412d.lib
opencv_calib3d2412.lib
opencv_contrib2412.lib
opencv_core2412.lib
opencv_features2d2412.lib
opencv_flann2412.lib
opencv_gpu2412.lib
opencv_highgui2412.lib
opencv_imgproc2412.lib
opencv_legacy2412.lib
opencv_ml2412.lib
opencv_nonfree2412.lib
opencv_objdetect2412.lib
opencv_ocl2412.lib
opencv_photo2412.lib
opencv_stitching2412.lib
opencv_superres2412.lib
opencv_ts2412.lib
opencv_video2412.lib
opencv_videostab2412.lib
kernel32.lib
user32.lib
gdi32.lib
winspool.lib
comdlg32.lib
advapi32.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib
odbc32.lib
odbccp32.lib
3测试示例程序
新建一个cpp文件,输入如下代码,程序的功能为读取一个jpg文件,并显示;
View Code1 #include <opencv2/opencv.hpp> 2 using namespace cv; 3 int main() 4 { 5 Mat img = imread("p_large_4IoP_797a0001ce6f2d0b.jpg"); 6 imshow("【原图】妹子",img); 7 waitKey(0); 8 }
2、