EmguCV 轮廓分析函数汇总

时间:2022-12-07 23:20:52

一、cvApproxPoly

  使用多边形逼近一个轮廓,使得顶点数目变少。算法先从轮廓选择2个最远的点,然后将2个连成一个线段,然后再查找轮廓上到线段距离最远的点,添加到逼近后的新轮廓。算法反复迭代,不断将最远的点添加到结果中。直到所有的点到多边形的最短距离小于parameter参数指定的精度。

二、cvArcLength、cvContourPerimeter

  作用于一个轮廓并返回其长度。

三、cvContourArea

  计算轮廓的面积。

四、cvBoundingRect

  描述矩形边界框,返回一个包围轮廓的CvRect,CvRect只能表示一个方正的长方形。

五、cvMinAreaRect2

  可以返回一个包围轮廓最小的长方形,这个长方形很可能是倾斜的,返回CvBox2D。

六、cvMinEnclosingCircle

  简单计算完全包围已有轮廓的最小圆。

  eg:System.Drawing.PointF pf;

    float radius;

    bool b = CvInvoke.cvMinEnclosingCircle(handContour, out pf, out radius);

七、cvFitEllipse2

  使用拟合函数返回一个与轮廓最相近似的椭圆。

八、cvMaxRect

  根据输入的2个矩形计算,它们的最小外包矩形。

九、cvBoxPoints

  用于计算CvBox2D结构表示矩形的4个顶点。

十、cvPointPolygonTest

  用于测试一个点是否在多边形的内部。