函数思想:
思路比较简单 首先找出二值图像中所有的连通域 然后计算所有连通域的面积 设定一个阈值 将面积大于该阈值的轮廓绘制出来
void deleteArea(IplImage *src){
double temparea;
CvMemStorage *pmemstorage=cvCreateMemStorage();
CvSeq *pcontourseq = cvCreateSeq(CV_SEQ_ELTYPE_POINT,sizeof(CvSeq),sizeof(CvPoint),pmemstorage);
double clearblock;
clearblock = 300000;
IplImage *g_pdeletesmallareamask=NULL;
g_pdeletesmallareamask = cvCreateImage(cvGetSize(src),IPL_DEPTH_8U,1);
cvCopy(src,g_pdeletesmallareamask);
cout<<"beforecvfindcontour"<<endl;
cvNamedWindow("pmask",1);
cvShowImage("pmask",g_pdeletesmallareamask);
cvFindContours(g_pdeletesmallareamask,pmemstorage,&pcontourseq,sizeof(CvContour),CV_RETR_EXTERNAL);
IplImage *g_pdeletesmallareacontour = NULL;