注:此文转至http://blog.csdn.net/tmxyz1950/article/details/19031893
转载只为个人学习之用,版权归作者所有。
一,搭建平台
先说明下我搭建的编译平台:Windows 8.1(64Bit) + VisualStdio 2013 + OpenCV 2.4.8 ,这是目前为止最新的搭建平台
二.搭建步骤
在此先说明下,我的OpenCV解压在D盘根目录下
1.系统环境变量的添加:
需要说明的是X86对应的是WIN32的编译,也就是说编译出32位操作系统下使用的应用程序,如果是想用在WIN64上,把X86改为X64即可
保存修改后需要重启计算机方可使用。
2.在VS2013上新建项目,然后设置依赖库和文件
首先建立一个常用的“Win32控制台应用程序”
项目名为“Test”》完成》下一步:
选择“空项目”》完成,接着找到“属性管理器”,如果没有的话就在“视图”》属性管理器
之后便是双击“Debug | Win32”打开“Debug属性页”,选择“VC++目录”
在“包含目录”中添加如图所示:
即添加你的OpenCV里面的buildinclude目录,可以根据自己的实际安装情况修改下,然后确定保存。
接着修改“库目录”
这里值得注意的是要对应之前修改的系统环境变量的配置,统一X86或X64的库,对应编译出32位和64位程序
完成后再打开VC++下面的“链接器”的“输入”选项,填写你需要的“附加依赖项”库文件
这里我只填写三项(详细的项目说明见下面的列表)
opencv_core248d.lib
opencv_highgui248d.lib
opencv_imgproc248d.lib
确定保存即可,Debug配置完成。
注意,接下来得配置Debug项下面的Release项,步骤同Debug,只是在最后一步填写附加依赖项的时候应该对应填写
opencv_core248.lib
opencv_highgui248.lib
opencv_imgproc248.lib
区别是版本号后面没有“d”,这样就完成了所有配置。
三.程序测试
#include <opencv2/opencv.hpp> using namespace std; #pragma comment(linker, "/subsystem:"windows" /entry:"mainCRTStartup"")//运行时不显示DOS框 int main() { const char *pstrImageName = "mei.jpg"; const char *pstrWindowsTitle = "Demo"; IplImage *pImage = cvLoadImage(pstrImageName, CV_LOAD_IMAGE_UNCHANGED);//从文件中读取图像 cvNamedWindow(pstrWindowsTitle, 0); //创建窗口 cvShowImage(pstrWindowsTitle, pImage); //在指定窗口中显示图像 cvWaitKey();//等待按键事件 cvDestroyWindow(pstrWindowsTitle);//销毁对话框,释放空间 cvReleaseImage(&pImage); return 0; }
在2.X.X版本中附加依赖项函数大致为以下几类:
opencv_core:包含库的核心功能,特别是基本数据结构和算法逻辑函数。
opencv_highgui:包含图像,视频的读写功能函数和其他的用户接口函数。
opencv_imgproc:包含图像处理函数。
opencv_features2d:表明检测器,描述器和匹配的框架等特征。
opencv_calib3d:包含摄像校对,二维几何估值,三维立体处理函数等。
opencv_vidio:包含了动态预测,特征跟踪以及前景提取的函数和类。
opecv_objdetect:包含对象检测函数,例如人脸识别等。
opencv_ml:包含机器学习函数
opencv_flann:包含一些关于特征点检测的函数
opencv_contrib:包含一些最近新加不太稳定的函数,我在2.4.8中添加此项就不能编译通过
opencv_legacy:包含一些比较老的函数,以保障向下兼容性
opencv_gpu:包含关于GPU加速运算的一些函数