OpenCV 如何获取一个连通域中的所有坐标点

#include "stdafx.h"
#include "cv.h"
#include "highgui.h"
#include "cxcore.h"


int main(int argc, char* argv[])
{
        IplImage* img;
        img = cvLoadImage("D:\\OOTT\\WEEK5\\2.png");
        IplImage* gray = cvCreateImage(cvGetSize(img),IPL_DEPTH_8U,1);
        cvCvtColor(img,gray,CV_BGR2GRAY);
        cvThreshold(gray,gray,128,255,CV_THRESH_BINARY);
        CvMemStorage* storage = cvCreateMemStorage();
        CvSeq * first_contour = NULL;
        int Ncontour = cvFindContours(gray,storage,&first_contour,sizeof(CvContour),CV_RETR_LIST);  
        //Ncontour为cvFindContours函数返回的轮廓个数
        for(CvSeq* c = first_contour;c!= NULL;c=c->h_next)
        { 
        //        cvDrawContours(img,c,cvScalar(255,255,0),cvScalar(255,0,255),0,2,8);
                cvNamedWindow("contours",CV_WINDOW_AUTOSIZE);
        //        cvShowImage("contours",img);
                for(int k = 0;k <c->total;++k)
                {
                        CvPoint* p = CV_GET_SEQ_ELEM(CvPoint,c,k);
                        printf("(%d,%d)\n",p->x,p->y);

                }        
                CvRect rect;
                rect = cvBoundingRect(c,0);
                cvFloodFill(img,cvPoint(img->width/2,img->height/2),cvScalar(255,255,255),cvScalar(20),cvScalar(20),NULL,4,NULL);
             cvShowImage("contours",img);  
                
                int Num[500][500];
                for (int i=0;i<(img->height-5);i++)
                        for (int j=0;j<(img->width-5);j++)
                        {
                                CvScalar S0;
                                S0=cvGet2D(img,i,j);
                                if(S0.val[0] == 255)
                                        Num[i][j]=1;
                                else
                                        Num[i][j]=0;
                 printf("(%d,%d)\n",i,j);
                        }


        }
        cvWaitKey(0);
        cvReleaseImage(&img);
        cvReleaseImage(&gray);
        cvDestroyWindow("contours");
        return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_30460949/article/details/89538513
今日推荐