给图像画上各种线条可以帮助使用者更快的理解我们的程序,前面说了使用opencv函数画直线与矩形,今天说说OpenCV绘制圆形函数Circle与绘制椭圆函数Ellipse的构成和用法,函数中有部分参数在前面有解释,不懂的可以看看前面画直线和矩形的文章:OpenCV函数Line、Rectangle绘制直线与矩形详解
Circle
绘制圆形。
void cvCircle( CvArr* img, CvPoint center, int radius, CvScalar color, int thickness=1, int line_type=8, int shift=0 );
- img
- 图像。
- center
- 圆心坐标。
- radius
- 圆形的半径。
- color
- 线条的颜色。
- thickness
- 如果是正数,表示组成圆的线条的粗细程度。否则,表示圆是否被填充。
- line_type
- 线条的类型。见 cvLine 的描述
- shift
- 圆心坐标点和半径值的小数点位数。
函数cvCircle绘制或填充一个给定圆心和半径的圆。圆被感兴趣矩形所裁剪。 若指定圆的颜色,可以使用宏 CV_RGB ( r, g, b )。
Ellipse
绘制椭圆圆弧和椭圆扇形。
void cvEllipse( CvArr* img, CvPoint center, CvSize axes, double angle, double start_angle, double end_angle, CvScalar color, int thickness=1, int line_type=8, int shift=0 );
- img
- 图像。
- center
- 椭圆圆心坐标。
- axes
- 轴的长度。
- angle
- 偏转的角度。
- start_angle
- 圆弧起始角的角度。.
- end_angle
- 圆弧终结角的角度。
- color
- 线条的颜色。
- thickness
- 线条的粗细程度。
- line_type
- 线条的类型,见CVLINE的描述。
- shift
- 圆心坐标点和数轴的精度。
函数cvEllipse用来绘制或者填充一个简单的椭圆弧或椭圆扇形。圆弧被ROI矩形所忽略。反走样弧线和粗弧线使用线性分段近似值。所有的角都是以角度的形式给定的。图片下面要解释参数的含义。
EllipseBox
绘制简单或粗椭圆弧或填充椭圆扇区
void cvEllipseBox( CvArr* img, CvBox2D box, CvScalar color, int thickness=1, int line_type=8, int shift=0 );
- img
- 图像。
- box
- The enclosing box of the ellipse drawn.
- thickness
- 分界线线条的粗细程度。
- line_type
- 分界线线条的类型,见CVLINE的描述。
- shift
- 椭圆框顶点坐标的精度。
函数cVellipseBox绘制简单或粗椭圆轮廓,或填充椭圆。函数提供了一种方便的方法来绘制一个近似于某个形状的椭圆,这就是CVCAMSHIFT和CVFITELLISK所做的。绘制的椭圆被ROI矩形裁剪。反锯齿弧和粗弧采用分段线性近似法。
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/241764.html