轮廓相关函数笔记
明显:CvSeq* contours2也属于CvArr*
CvRect rect = cvBoundingRect( contours2, 0 );//返回一个2d矩形的点集合,这个方框必须是正的。
CvBox2D box = cvMinAreaRect2( contours2, minStorage );//包围所有点的轮廓的最小矩形。这个矩形可以是倾斜的
int checkcxt = cvCheckContourConvexity( contours2 );//检测输入的轮廓是否是凸的
CvSeq* hull = cvConvexHull2( contours2, 0, CV_CLOCKWISE, 0 );//二维凸包
CvSeq* defect = cvConvexityDefects( contours2, hull, dftStorage );//凸包中的缺陷
通过检查二维凸包缺陷的数量,和程度,可以判断轮廓的外形。
PointPolygonTest 测试点是否在多边形中
double cvPointPolygonTest( const CvArr* contour,CvPoint2D32f pt, int measure_dist );
-
contour
- 输入轮廓. pt
- 针对轮廓需要测试的点。 measure_dist
- 如果非0,函数将估算点到轮廓最近边的距离。