如何使用Python在OpenCV中绘制填充椭圆?

如何使用Python在OpenCV中绘制填充椭圆?

要在图像上绘制填充椭圆,我们使用 cv2.ellipse() 方法。该方法接受不同的参数以绘制不同类型的椭圆。

语法

cv2.ellipse(img,center,axes,angle,start_angle,end_angle,color,thickness)

参数

  • img − 要在其上绘制椭圆的输入图像。

  • center − 椭圆的中心坐标。

  • axes − 格式为(主轴长度、次轴长度)的元组。

  • angle − 椭圆的旋转角度(以度为单位)。

  • start_angle − 椭圆弧的起始角度(以度为单位)。

  • end_angle − 椭圆弧的终止角度(以度为单位)。

  • color − 要绘制的椭圆的颜色。

  • thickness − 在像素中表示椭圆边界线的粗细。要绘制填充椭圆,设置“thickness = -1”。

输出 − 它返回具有绘制的椭圆的输入图像/ s。

步骤

您可以使用以下步骤在输入图像上绘制填充椭圆 –

导入所需的库。在以下所有Python示例中,所需的Python库是 OpenCV 确保您已经安装它。

import cv2

使用 cv2.imread() 读取输入图像并将其转换为灰度。

img = cv2.imread('window1.jpg')

定义要传递给 cv2.ellipse() 方法的参数。这些参数是 img,center,axes,angle,start_angle,end_angle,color和thickness 。要绘制填充椭圆,设置“thickness = -1”。

cv2.ellipse(img,center,axes,angle,start_angle,end_angle,color,thickness)

显示带有绘制椭圆的图像。

cv2.imshow("Ellipse", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

让我们看一些例子以便清楚理解。

我们使用以下图像作为 输入文件 以下是其中的示例。

如何使用Python在OpenCV中绘制填充椭圆?

示例1

在以下Python程序中,我们在输入图像上绘制填充椭圆。

# import required libraries
import cv2

# read the input image
img = cv2.imread('window1.jpg')

# define the arguments
center = (368,250)
axes = (150,70) # major, minor axes
angle = 20
start_angle = 0
end_angle = 360
color = (0,255,255)
thickness = -1

# Draw a filled ellipse on the input image
cv2.ellipse(img,center,axes,angle,start_angle,end_angle,color,thickness)

# display the image with drawn filled ellipse
cv2.imshow("Ellipse", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

输出

执行以上代码后,会产生以下输出窗口。

如何使用Python在OpenCV中绘制填充椭圆?

输出窗口显示在输入图像上绘制了一个填充的椭圆。

示例2

在下面的Python 3程序中,我们在输入图像上绘制了三个不同的填充椭圆。

import cv2
img = cv2.imread('window1.jpg')
img1 =cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
ret,thresh = cv2.threshold(img1,170,255,0)

# 绘制不同形状的椭圆
img = cv2.ellipse(img,(368,250),(100,40),30,0,180,(0,255,255),-1)
img = cv2.ellipse(img,(150,170),(86,45),-30,0,360,(0,255,0),-1)
img = cv2.ellipse(img,(578,250),(60,130),0,0,340,(0,0,255),-1)

# 显示带绘制椭圆的图像
cv2.imshow("Ellipses", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

输出

执行以上代码后,会产生以下输出窗口。

如何使用Python在OpenCV中绘制填充椭圆?

输出窗口显示在输入图像上绘制了不同类型的填充椭圆。绿色的椭圆被旋转了“-30°”。黄色的椭圆被画了一半并旋转了30°。红色的椭圆的短轴大于长轴,结束时角度为340°。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Python OpenCV