得到輪廓中面積最大的的輪廓
阿新 • • 發佈:2019-02-17
CvSeq *GetAreaMaxContour(CvSeq *contour) {//在給定的contour中找到面積最大的一個輪廓,並返回指向該輪廓的指標 double contour_area_temp=0,contour_area_max=0; CvSeq * area_max_contour = 0 ;//指向面積最大的輪廓 CvSeq* c=0; //printf( "Total Contours Detected: %d/n", Nc ); for(c=contour; c!=NULL; c=c->h_next ) {//尋找面積最大的輪廓,即迴圈結束時的area_max_contour contour_area_temp = fabs(cvContourArea( c, CV_WHOLE_SEQ )); //獲取當前輪廓面積 if( contour_area_temp > contour_area_max ) { contour_area_max = contour_area_temp; //找到面積最大的輪廓 area_max_contour = c;//記錄面積最大的輪廓 } } return area_max_contour; }