OpenCV绘图函数17 Mar 2025 | 4 分钟阅读 我们可以在图像上绘制各种形状,例如圆,矩形,椭圆,折线,凸多边形等。当我们想要突出显示输入图像中的任何对象时,可以使用它。 OpenCV 为每个形状提供了函数。 在这里我们将学习绘图函数。 绘制圆我们可以使用 cv2.circle() 函数在图像上绘制圆。 语法如下 参数- img- 它代表给定的图像。
- center- 圆的中心
- radius- 圆的半径
- color- 圆的颜色
- thickness- 它表示圆轮廓的粗细,如果为正数。 负粗细表示要绘制一个填充圆。
- lineType- 定义圆边界的类型。
- shift- 它表示中心坐标和半径值中的小数位数。
请看以下示例 输出  绘制矩形OpenCV 提供了一个函数来绘制简单,粗或填充的直立矩形。 语法如下 参数- img- 它表示图像。
- pt1- 它表示矩形的顶点。
- pt2- 它表示与 pt1 相对的矩形的顶点。
- color- 它表示矩形的亮度颜色(灰度图像)。
- thickness- 它表示组成矩形的线条的粗细。 负值(CV_FILLED)表示该函数必须绘制一个填充矩形。
- linetype- 它表示线条的类型。
- shift- 它表示点坐标中的小数位数。
请看以下示例 输出  绘制椭圆我们可以使用 cv2.ellipse() 函数在图像上绘制椭圆。 它可以绘制简单或粗的椭圆弧,也可以填充椭圆扇形。 参数- img - 它表示图像。
- box - 它表示通过 RotatedRect 或 CvBox2D 的备用椭圆表示形式。 这意味着该函数用于在弯曲的矩形中绘制椭圆。
- color - 它表示椭圆的颜色。
- angle- 它表示旋转角度。
- startAngle - 它表示椭圆弧的起始角度(以度为单位)。
- endAngle - 它表示椭圆弧的结束角度(以度为单位)。
- thickness - 如果值为正,则用于绘制椭圆弧轮廓的粗细。 否则,这指定要绘制填充的椭圆。
- lineType - 它表示椭圆边界的类型。
- shift - 它表示中心坐标和轴值中的小数位数。
请看以下示例 输出  有两个函数可以绘制椭圆。 第一个函数用于绘制整个椭圆,而不是绕过 startAngle=0 和 endAngle = 360 的弧。 椭圆的第二个函数用于绘制椭圆轮廓,填充椭圆,椭圆弧或填充椭圆扇形。 绘制线条OpenCV 提供了 line() 函数以在图像上绘制线条。 它在图像中的 ptr1 和 ptr2 点之间绘制一条线段。 图像边界会裁剪该线。 参数- img- 它表示图像。
- pt1- 它表示线段的第一个点。
- pt2- 它表示线段的第二个点。
- color - 代表线条颜色
- thickness- 代表线条粗细
- lineType- 线条有多种类型
- 8(或省略)- 8 条连接线。
- 4 - 4 条连接线。
- CV__AA- 抗锯齿线
- shift- 它表示点坐标中的小数位数。
请看以下示例 输出  在图像上书写文字我们可以使用 putText() 函数在图像上书写文字。 语法如下所示。 参数- img: 它表示图像
- text: 它表示我们要写在图像上的文字。
- org: 它表示图像中文本字符串的左下角。
- font: CvFont 结构使用 InitFont() 进行初始化。
- color: 代表文字颜色。
请看以下示例。 输出  绘制折线我们可以在图像上绘制折线。 OpenCV 提供了 polylines() 函数,该函数用于在图像上绘制多边形曲线。 语法如下所示 参数- img - 它表示图像。
- pts - 它表示多边形曲线的数组。
- npts - 它表示多边形顶点计数器的数组。
- ncounters - 它表示曲线的数量。
- is_Closed - 它是一个标志,指示绘制的折线是否闭合。
- color - 折线的颜色。
- thickness - 它表示折线边缘的粗细。
- lineType - 线段的类型。
- shift- 它表示点坐标中的小数位数。
考虑以下程序以在图像中绘制折线 输出 
|