opencv之图像腐蚀

最近准备好好学习opencv 这博客就是我的学习笔记。

#include <cv.h>
#include <highgui.h>

using namespace std;

void main()
{
IplImage *src=cvCreateImage(cvSize(11,10),8,1);
IplImage *dst=cvCreateImage(cvGetSize(src),8,1);

cvZero(src);
cvZero(dst);

int x,y;
for (y=1;y<4;y++)
{
for (x=6;x<10;x++)
{
cvSetReal2D(src,y,x,255);
}
}

for (y=4;y<6;y++)
{
for (x=4;x<8;x++)
{
cvSetReal2D(src,y,x,255);
}
}
for (y=7;y<9;y++)
{
for (x=1;x<5;x++)
{
cvSetReal2D(src,y,x,255);
}
}
printf("SRC:");

for (y=0;y<src->height;y++)
{
for (x=0;x<src->width;x++)
{
float value=cvGetReal2D(src,y,x);
printf("%3d ",(int)value);
}
printf("
");
}
IplConvKernel*element=0;
int values[16]={0,0,0,0,
0,0,1,0,
0,1,1,0,
0,0,0,0
} ; 
int cols=4,rows=4,ancher_x=2,ancher_y=2;
element=cvCreateStructuringElementEx(cols,rows,ancher_x,ancher_y,CV_SHAPE_CUSTOM,values);
cvErode(src,dst,element,1);
printf("DST:");

for (y=0;y<src->height;y++)
{
for (x=0;x<src->width;x++)
{
float value=cvGetReal2D(dst,y,x);
printf("%3d ",(int)value);
}
printf("
");
}
}

  

原文地址:https://www.cnblogs.com/wuyuankun/p/3455102.html