一. 下载OpenCv
1.0.0 首先第一步到官方网站下载OpenCv,这里我使用的版本为2.4.9
附下载链接:点我下载
二. 安装OpenCv
1.0.0 启动OpenCv
下载完成之后以管理员模式运行(以免在写入C盘时出现权限问题,C盘为系统盘如果开启了保护模式的情况下在向该盘读写操作时需要管理员权限),如果你的安装目录不在C盘且或没有开启系统保护的情况下可以不开启管理员模式运行!
1.0.1 设置OpenCv安装路径
运行后会出现如下界面
这里我的安装目录为C:\Opencv2.4.9
1当你打开这个软件时默认路径为下载路径,建议新建一个文件夹并将安装目录更改为该路径!
如果想要更改可以直接在路径编辑框中输入你的完整绝对路径
如果安装文件夹不存在,在安装过程中会自动创建!
也可以直接点击路径框右侧的“...”按钮来调用出文件对话框来获取文件夹路径
点击“...”按钮之后会弹出文件对话框,选择你要安装的路径即可
1.0.2 安装OpenCv
设置完成路径之后点击“Extract”按钮进行下一步安装
点击“Extract”按钮之后Opencv安装程序会自动帮我们解压Opencv文件到安装目录下
安装状态信息:
Elapsed time(已用时间)
Remaining time( 剩余时间)
Files(文件)
Compression ratio(压缩比)
Total size(总大小)
Speed(压缩速度)
Processed(已压缩字节/MB单位) 压缩后大小
按钮栏对应信息:
Pause(暂停)
Cancel(返回)
三. 配置OpenCv
1.0.0 设置系统环境变量
安装完成之后找到桌面上我的电脑图标
右键
选择属性
点击之后会弹出如下系统属性窗口
如果你的电脑上没有计算机图标的可以直接使用快捷键Windows键+E键打开文件资源管理器
选择此电脑(其他电脑名称可能不一样,但是图标都是电脑样式的)
右键
选择属性
就会弹出系统系统属性窗口
如果想将计算机图标在桌面显示出来,右键-个性化-主题-桌面图标设置-选中计算机图标点击确定即可!
在弹出的系统属性窗口中找到高级系统设置
会弹出系统属性窗口
选择环境变量
会弹出环境变量窗口
在系统变量分组这一栏中找到Path变量并选中
双击或者点击变量列表下方的编辑按钮
会弹出编辑环境变量窗口
在变量值处增加我们的环境变量
增加方法:
在变量值编辑框中的光标挪移到最后一行并加上一个“;”
注意事项:
如果不加的话会修改原有的环境变量值,会造成其他软件或库无法正常运行!
然后在后面输入我们的OpenCv动态库路径。
在输入之前需要确定你的Visual Studio版本以及编译器版本
1.0.1 查看Visual Studio版本和编译器位数
Visual Studio版本查看方法:
在打开Visual Studio时的“启动窗口”或在“起始页”的第一行就可以看到版本号!
Visual Studio编辑器位数查看方法
选择左上角菜单栏-文件-新建-项目
新建一个空的c++程序
创建完成之后会出现如下界面
选择左侧的解决方案资源管理器中你项目的父节点
如果你的Visual Studio界面没有该视图窗口可以通过菜单栏调出来
方法:
选择菜单栏-视图-解决方案资源管理器即可调出该视图窗口,或者也可以使用过Ctrl+Atl+L快捷键调用出该窗口
使用上面方法之后就就会调出解决方案资源管理器视图窗口
选中左侧的解决方案资源管理器中你项目的父节点之后右键
选择属性
会弹出项目属性页窗口
可以在客户区最上面有个平台标签描述的组合框列表中查看你的编译器位数
活动(Win32)= 32位编译器
Win32 = 32位编译器
活动(x32) = 32位编译器
x32 = 32位编译器
活动(WIn64)= 64位编译器
Win64 = 64位编译器
活动(x64) = 64位编译器
x64 = 64位编译器
活动Win32和Win32没有区别!只是描述该项目为活动项目!
小知识
活动工程:
在一个解决方案中有多个项目文件,Visual Studio怎么知道编译那个项目文件?
答:就是将该项目文件设置为活动项目
Visual Studio不可以一次编译多个项目,所以需要通过设置活动项目的方法来制定编译哪个项目文件
设置方法:选中你的项目头节点-右键-设为启动项目即可
有了这些信息我们就可以根据这些信息继续配置OpenCv了
1.0.2 根据Visual Studio版本号与编译器位数配置环境变量
如上个图所示,我的Visual Studio版本为2013,编译器位数为32位
所以OpenCv的动态链接库目录为:Opencv2.4.9\opencv\build\x86\vc12\bin
对应规则:
32bit编译器(VS debug or realease)= build\x86\vc12\bin
64bit编译器(VS debug or realease)= build\x64\vc12\bin
如果你想在32bit和64bit都运行,则两个都添加。
这里需要特别注意的是(对于选择vcXX这个和我们使用的IDE有关系)
vc8 = Visual Studio 2005
vc9 = Visual Studio 2008
vc10 = Visual Studio 2010
vc11 = Visual Studio 2012
vc12 = Visual Studio 2013
vc13 = Visual Studio 2015
...
可以参考以上对应规则进行配置
输入完你的OpenCv动态链接库路径之后点击确定!
然后在环境变量窗口点击确定!
系统属性窗口点击确定
然后我们的系统环境变量就保存了,就可以继续下一步配置了。
四. 配置项目工程的属性管理器
1.0.0 创建属性管理器
首先第一步打开Visual Studio,选择新建-项目
在新建窗口中选择vc++-win32-控制台程序
名字随便起一个,这里我起名叫做OpenCv2.4.9
设置好之后点击确定按钮继续下一步
下一步
注意在创建时选择空项目
创建完成之后可以看到右侧的项目工程目录里没有任何源文件,因我们不需要这些,只需要项目属性配置表
选择菜单栏-视图-其他窗口-属性管理器
在弹出的属性管理器中根据你编译模式选择对应的资源目录
这里我的是Debug(调试模式)
所以选中Debug资源目录
右键-添加新项目属性表
1.0.1 配置属性表
添加完成之后选中我们刚刚创建的属性表
右键-属性
在弹出的属性页窗口中-选择-通用属性-VC++目录-包含目录-单击右侧的下滑按钮-选择编辑
单击文件夹按钮
新增一行包含目录
单击"..."按钮
第一个包含-include目录
点击确定
配置lib目录
选择库目录-编辑
添加一行-并点击省略号按钮
根据你的Visual Studio版本和编译器位数选择对应的lib路径
然后点击确定
配置链接器
选择-链接器-输入-附加依赖项-编辑
在编辑框中输入:
如果你是debug模式下输入以下动态库:
opencv_ml249d.lib
opencv_calib3d249d.lib
opencv_contrib249d.lib
opencv_core249d.lib
opencv_features2d249d.lib
opencv_flann249d.lib
opencv_gpu249d.lib
opencv_highgui249d.lib
opencv_imgproc249d.lib
opencv_legacy249d.lib
opencv_objdetect249d.lib
opencv_ts249d.lib
opencv_video249d.lib
opencv_nonfree249d.lib
opencv_ocl249d.lib
opencv_photo249d.lib
opencv_stitching249d.lib
opencv_superres249d.lib
opencv_videostab249d.lib
opencv_videostab249d.lib
relese模式下就不需要加上d了
opencv_objdetect249.lib如果你的版本不是249只需要将后面的249改成你的版本号即可
输入完成之后点击确定
点击确定即可完成配置
之后我们选择解决方案资源管理器-选择项目父节点-右键-生成 看下有没有错误
看下有没有错误
没有任何错误,且配置文件也已经生成了!
注意属性表目录一定要记好,因为下次当我们创建新的项目文件时不需要重新配置,我们只需要将属性表添加到该项目工程中就可以了,免去重复配置的繁琐过程!
添加方法:
右键-视图-其他窗口-属性管理器
选择对应的资源管理文件-右键-添加现有属性表
将已经配置好的属性表添加进来即可
每次添加完别忘记手动生成一次,检查一下有没有错误!
如果你在安装过程中遇到了任何问题,可以在下方评论区里留言,我会一一解答!
配置完成,写一个test试试吧!
我这里就不创建新的工程项目了,直接在该项目下新建一个cpp源文件!
代码如下
#include
#include
int main(){
IplImage *image = cvLoadImage("C:\\Users\\ZZH\\Pictures\\Saved Pictures\\test.jpg");
cvShowImage("TEST-IMAGE", image);
cvWaitKey(0);
}
运行结果:
注意:
如果你的程序在运行时出现“无法启动此程序,因为计算机中丢失opencv_core249.dll”之类的的问题
解决方法:
根据你的编译器位数和Visual Studio版本到OpenCv目录下的bin目录下的dll库copy到你的系统文件夹中
比如我的配置是:
win10-64位
Visual Studio2013
编译器位数为32
根据以上信息-配置方法:
Opencv2.4.9\opencv\build\x86\vc12\bin目录下的所有dll文件copy到C:\Windows\SysWOW64目录下即可!
32位操作系统对应的是:C:\Windows\System32
如果不知道如何通过配置信息得到对应的bin目录请参考本篇博客目录“三. 配置OpenCv-1.0.1 查看Visual Studio版本和编译器位数”