#include <opencv2\opencv.hpp>
#include <stdio.h>
int main( int argc, int argv[])
{
//读图
IplImage* src = cvLoadImage("1.jpg",1);
//构造腐蚀模板的数据结构
IplConvKernel* element =0;
int cols=4,rows=4,anchor_x=2,anchor_y=2;
int values[16]={0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0};
//创建腐蚀模板
element = cvCreateStructuringElementEx(cols,rows,anchor_x,anchor_y,CV_SHAPE_CUSTOM,values);
//对局部区域腐蚀
CvRect rect;
rect.x = 100;
rect.y = 80;
rect.height=300;
rect.width=200;
cvSetImageROI(src,rect);
//腐蚀6次
cvErode(src,src,element,10);
cvResetImageROI(src);
//创建窗口并显示图像
cvNamedWindow("src",1);
cvShowImage("src",src);
//等待
cvWaitKey(0);
//释放图像内存,消除窗口
cvReleaseImage(&src);
cvDestroyWindow("src");
return 0;
}
显示结果:对狗狗的脸进行了腐蚀(PS:像不像油画嘞~)