📅  最后修改于: 2023-12-03 15:18:57.320000             🧑  作者: Mango
在Python的OpenCV库中,cv2.polylines()
方法是用于在图像上绘制多边形的函数。这个函数可以用来绘制不同线宽的多边形,也可以用于绘制带有闭合或开放属性的多边形。
以下是cv2.polylines()
函数的语法:
cv2.polylines(img, pts, isClosed, color, thickness, lineType, shift)
参数说明:
img
:需要在其上绘制多边形的图像。pts
:一个多维数组,其中包含要绘制的多边形的顶点。isClosed
:这是一个布尔值,用于指定绘制的多边形是否闭合。如果isClosed=True
,则绘制的多边形是闭合的,否则是开放的。color
:用于绘制多边形的颜色。可以是元组或标量。thickness
:一个整数,表示绘制多边形的边框宽度。默认值为1。linetype
:表示边框类型。默认值为8。shift
:用于指定顶点坐标中小数位数的位移。默认值为0。以下示例代码演示了如何使用cv2.polylines()
方法绘制一个心形多边形:
import numpy as np
import cv2
# 创建一个空的黑色图像
img = np.zeros((512, 512, 3), np.uint8)
# 定义一个心形多边形
pts = np.array([[190, 200], [210, 170], [290, 170], [310, 200], [290, 230], [210, 230]], np.int32)
# 将pts顶点变成3通道
pts = pts.reshape((-1, 1, 2))
# 绘制心形多边形
cv2.polylines(img, [pts], True, (0, 0, 255), 3)
# 显示图像
cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
运行上面的示例代码会创建以下窗口显示绘制的多边形图像:
cv2.polylines()
方法是一种非常有用的函数,用于在图像上绘制多边形。它可以用于许多不同的应用程序,例如计算机视觉、机器人学和图形学。在处理图像时,可以使用它来创建多边形掩码和轮廓,这些掩码和轮廓可以用于图像分割和目标检测。