我平常的工作要经常使用OpenCV, 就写了一个使用这个库的通用代码。
这个通用代码是common_opencv.h  当使用更新版的OpenCV库时,只需要更改 include 的路径和 CV_LIB_PATH 这个宏。

对于include的路径,需要把opencv2/这个文件夹里opencv.hpp复制到它的上一级目录include/ 下面。
我在后面的博文里面会讲解这个代码里的各个宏。

#ifndef COMMON_OPENCV_H
#define COMMON_OPENCV_H
#include "d:/opencv/build/include/opencv.hpp"

#define CV_LIB_PATH "D:\\opencv\\build\\x86\\vc10\\lib\\"
#define CV_VERSION_SHORT          CVAUX_STR(CV_MAJOR_VERSION)  CVAUX_STR(CV_MINOR_VERSION)  CVAUX_STR(CV_SUBMINOR_VERSION)
#define CV_MAKE_LIB_NAME(PATH, PREFIX, VERSION, SUFFIX) PATH ## PREFIX ## VERSION ## SUFFIX

#ifdef _DEBUG
#pragma comment(lib, CV_MAKE_LIB_NAME(CV_LIB_PATH, "opencv_core", CV_VERSION_SHORT, "d.lib"))
#pragma comment(lib, CV_MAKE_LIB_NAME(CV_LIB_PATH, "opencv_imgproc", CV_VERSION_SHORT, "d.lib"))
#pragma comment(lib, CV_MAKE_LIB_NAME(CV_LIB_PATH, "opencv_highgui", CV_VERSION_SHORT, "d.lib"))
#else
#pragma comment(lib, CV_MAKE_LIB_NAME(CV_LIB_PATH, "opencv_core", CV_VERSION_SHORT, ".lib"))
#pragma comment(lib, CV_MAKE_LIB_NAME(CV_LIB_PATH, "opencv_imgproc", CV_VERSION_SHORT, ".lib"))
#pragma comment(lib, CV_MAKE_LIB_NAME(CV_LIB_PATH, "opencv_highgui", CV_VERSION_SHORT, ".lib"))
#endif

using namespace cv;

#endif

posted on 2013-01-10 22:48  sing_for_love  阅读(207)  评论(1编辑  收藏  举报