要用VC++做图像处理那么首先就要安装相应的开发环境
首先是VS2010,
其次是Opencv2.3.1
还有是CMake2.8.8
准备下载开发软件
首先下载
到网上搜索下载破解版VS2010 旗舰版,然后安装,我的安装目录是默认路径;
然后网上搜索Opencv2.3.1,最好到英文官网下载最新版本(官网上有好多平台的版本,我这里下载的是for windows
这个OPENCV包只是一些源文件和一些库文件和一些动态库DLL,之类的。需要我们用CMake编译之后才能用。
然后网上到CMake官网下载最新版本的CMake,我的是这个版本cmake-2.8.8-win32-x86.exe
这个需要安装,默认路径即可。创建桌面快捷方式。
一切准备就绪。
用CMake导出VC++项目文件
步骤1:在CMAKE的界面中输入源码路径(Where is the source code)和目标路径(where to build the binaries)。
源码路径就是opencv安装的路径,我的是C:\Program Files\opencv
目标路径就是要编译之后我们要用到的源码库之类的路径,我的是C:\Program Files\opencv\binary
步骤2:点击【Configure】按钮,在弹出对话框中选择编译软件,如Visual sudio 10。
步骤3:点击下图中的【Generate】,开始编译
步骤4:Cmake编译结束界面,(再次点击【Configure】,红色消失)
编译 OpenCV Debug和Release版本库
Debug和Release区别
一、Debug 和 Release 的区别
Debug 版本
参数
/MDd /MLd 或 /MTd 使用 Debug runtime library(调试版本的运行时刻函数库)
/Od 关闭优化开关
/D "_DEBUG" 相当于 #define _DEBUG,打开编译调试代码开关(主要针对assert函数)
/ZI
创建 Edit and continue(编辑继续)数据库,这样在调试过程中如果修改了源代码不需重新编译
GZ 可以帮助捕获内存错误
Release 版本 参数含义
/MD /ML 或 /MT 使用发布版本的运行时刻函数库
/O1 或 /O2 优化开关,使程序最小或最快
/D "NDEBUG" 关闭条件编译调试代码开关(即不编译assert函数)
/GF 合并重复的字符串,并将字符串常量放到只读内存,防止被修改
Debug 和 Release 并没有本质的界限,他们只是一组编译选项的集合,编译器只是按照预定的选项行动。
完成上一步骤后,将在C:\Program Files\opencv\binary目录下生成OpenCV.sln的VC Solution File,用VC++ 2010打开OpenCV.sln,然后执行如下操作:
步骤1:在Debug下,选择Solution Explorer里的 Solution OpenCV,点右键,运行"调试--》开始调试";
几分钟后,调试完成,调试速度依据个人电脑
步骤2:在Release下,选择Solution Explorer里的 Solution OpenCV,点击三角号,运行"启动调试";
同样几分钟后调试完成
此时,OpenCV的opencv_*d.dll文件(for debug)和opencv_*.dll文件(for release)将出现在C:\Program Files\opencv\binary
到此,可以被VC++ 2010调用的OpenCV动态库生成完毕。
步骤3:复制 C:\Program Files\opencv\binary中的bin和lib目录到 C:\Program Files\opencv\目录下;复制C:\Program Files\opencv\build\include下的两个文件夹到C:\Program Files\opencv\include文件夹下,复制和替换。
设置Windows环境变量
用户工程运行时,需要调用OpenCV动态链接库,因而需要添加Windos动态链接库路径。
步骤1:进入“我的电脑--属性”,高级,环境变量,用户变量,如图所示
步骤2:
OpenCV的vs2010环境配置
步骤1 :打开 vs2010,文件--新建--项目
输入项目名称,下一步,完成。切换到VS2010左下角的标签,选择属性管理器(从菜单【视图】->属性管理器);
步骤2 在弹出的属性页中设置VC++目录。该设置方法对所有VC++项目都有效。
需要修改包含目录 include本例子:
包含目录下添加后为:
在Debug下:库目录添加:C:\Program Files\opencv\lib\Debug
步骤3 添加lib库文件
在Debug下:
添加:opencv_calib3d231d.lib
opencv_contrib231d.lib
opencv_core231d.lib
opencv_features2d231d.lib
opencv_flann231d.lib
opencv_gpu231d.lib
opencv_haartraining_engined.lib
opencv_highgui231d.lib
opencv_imgproc231d.lib
opencv_legacy231d.lib
opencv_ml231d.lib
opencv_objdetect231d.lib
opencv_ts231d.lib
opencv_video231d.lib
在Relase 下,添加:
opencv_calib3d231.lib
opencv_contrib231.lib
opencv_core231.lib
opencv_features2d231.lib
opencv_flann231.lib
opencv_gpu231.lib
opencv_haartraining_engine.lib
opencv_highgui231.lib
opencv_imgproc231.lib
opencv_legacy231.lib
opencv_ml231.lib
opencv_objdetect231.lib
opencv_ts231.lib
opencv_video231.lib
配置完成
OpenCV例程
#include "stdafx.h"
#include "highgui.h"
//using namespace cv;
{
}
调试---启动调试
如果成功的话就会打开本地D盘的一张名为Demo的图片
出处:http://blog.sina.com.cn/s/blog_68ed8b21010163uc.html