Study/OpenCV

[OpenCV] 2D sequence 만들기

훈스~☆ 2011. 6. 30. 23:31
방법을 간단했다. sequence의 element를 sequence로 하면 된다. 

CvMemStorage* storage = cvCreateMemStorage(0);
CvSeq* contours = cvCreateSeq(0, sizeof(CvSeq), sizeof(CvSeq), storage);

CvMemStorage* storage = cvCreateMemStorage(0);
CvSeq* contours = cvCreateSeq(0, sizeof(CvSeq), sizeof(CvSeq), storage);

for(int i=0; i<5; i++)
{
	CvPoint pt = cvPoint(0, 0);
	CvSeq* contour = cvCreateSeq(CV_SEQ_ELTYPE_POINT, sizeof(CvSeq), sizeof(CvPoint), storage);
	for(int j=0; j<10; j++)
	{
		pt.x = i;
		pt.y = j;
		cvSeqPush(contour, &pt);
	}
	cvSeqPush(contours, contour);
}

for(int i=0; itotal; i++)
{
	CvSeq* r = CV_GET_SEQ_ELEM(CvSeq, contours, i);
	for(int j=0; jtotal; j++)
	{
		CvPoint* pt = CV_GET_SEQ_ELEM(CvPoint, r, j);
		printf("(%d, %d)\n", pt->x, pt->y);
	}
}
cvReleaseMemStorage(&storage);