对OPENCV应用不多,偶尔拿来读取图片,或者做些简单处理。在此记下这些基本的东西,以便常时间不用忘记。
首先配置如下使用如下:
1.在VS下配置包含文件 目录(.h)及库文件目录(.lib)
2.在输入附加依赖项中输入 要链接的LIB库一般 为cv.lib cvaux.lib cxcore.lib highgui.lib。或者通过:#pragma comment(lib,"highgui.lib")直接在程序 中设置。
在程序中使用的时候,一般常用的库文件为#include <cv.h>#include <cvaux.h>#include <highgui.h>。常用基本方法如下:
cvSize 代表图像大小
IplImage *pOriImg;//基本变量
pOriImg=cvLoadImage("right.jpg",-1);//加载图片
pOriImg=cvCreateImage(cvGetSize(pOriImg),IPL_DEPTH_8U,1);//创建空图像,1代表单位通道
cvSplit(pOriImg,pBlueChannel,pGreenChannel,pRedChannel,NULL); //把3通道 图像分为三个单通道图像
cvThreshold(pDepthMap,pDepthMap,50,255,CV_THRESH_BINARY) 对单通道数组应用固定阈值操作
cvSmooth(pLeftMap,pDepthMap,CV_GAUSSIAN,0,3,2,0); //对图像进行平滑处理,CV_GAUSSIAN代表高斯滤波
cvNamedWindow("LeftView);//创建新视图
cvShowImage("LeftView",pLeftMap);//在新视图下显示图像
cvMerge(pLeftMap,pLeftMap,pRightMap, 0,pMergImg);//将三个单通道图像融合为一个三通道图像
cvSaveImage("Righ.jpg",pRightMap);//将图像保存为指定文件
cvWaitKey();//不断刷新图像类似,OPENGL中GLFUSH
获得图像的宽高:
int h = pDepthMap->widthStep
获得图像数据:
uchar* datadepthmap=(uchar*)pDepthMap->imageData;
CvRect()矩形区域