最近准备好好学习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(" "); } }