pythoncv2.polylines
时间: 2023-10-19 21:14:55 浏览: 49
cv2.polylines() 是 OpenCV 中用于绘制多边形线条的函数。它可以绘制任意形状的线条,例如矩形、三角形、正方形等等。
函数的参数包括:
- img:要绘制线条的图片
- pts:多边形的顶点坐标
- isClosed:一个布尔值,表示多边形是否闭合
- color:线条的颜色
- thickness:线条的粗细
- lineType:线条的类型,可以是 8 连通或 4 连通,默认是 8 连通
以下是一个示例代码:
```python
import cv2
import numpy as np
# 创建一张黑色的图片
img = np.zeros((512, 512, 3), np.uint8)
# 定义多边形的顶点坐标
pts = np.array([[10, 50], [400, 50], [90, 200], [50, 500]], np.int32)
# 绘制多边形线条
cv2.polylines(img, [pts], True, (0, 255, 255), 3)
# 显示图片
cv2.imshow("Image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
该代码创建了一张 512x512 的黑色图片,并在其中绘制了一个多边形。运行代码后,你可以看到绘制好的多边形线条。
相关问题
python中cv2.polylines
cv2.polylines函数是OpenCV中用于绘制多边形的函数。它可以绘制一个或多个线条,通过连接给定的点集来构成多边形。这个函数的语法如下:
```python
cv2.polylines(img, pts, isClosed, color[, thickness[, lineType[, shift]]])
```
参数说明:
- img:需要绘制多边形的图像。
- pts:多边形的顶点集合,可以是一个NumPy数组或者一个Python列表。
- isClosed:一个布尔值,用于指定是否需要封闭多边形。如果为True,表示需要封闭多边形;如果为False,表示不需要封闭多边形。
- color:绘制多边形的颜色。
- thickness:线条的粗细,默认值为1。
- lineType:线条的类型,默认值为cv2.LINE_8,表示8邻域连接线。
- shift:坐标点小数点位数,通常为0。
示例代码:
```python
import cv2
import numpy as np
# 创建一个黑色的图像
img = np.zeros((512, 512, 3), np.uint8)
# 定义多边形的顶点
pts = np.array([[10, 50], [400, 50], [90, 200], [50, 500]], np.int32)
# 绘制多边形
cv2.polylines(img, [pts], True, (0, 255, 255), 2)
# 显示图像
cv2.imshow("image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这段代码会在一个黑色的图像上绘制一个黄色的多边形。
cv2.polylines画平行四边形
cv2.polylines函数是OpenCV库中用于绘制多边形的函数之一。它可以用来画平行四边形,具体的使用方法如下:
```python
import cv2
import numpy as np
# 创建一个空白图像
image = np.zeros((500, 500, 3), dtype=np.uint8)
# 定义四个顶点坐标
pts = np.array([[100, 100], [200, 150], [300, 150], [400, 100]], np.int32)
# 将顶点坐标转换为维度为 (1, 4, 2) 的数组
pts = pts.reshape((-1, 1, 2))
# 绘制平行四边形
cv2.polylines(image, [pts], isClosed=True, color=(0, 255, 0), thickness=2)
# 显示图像
cv2.imshow("Parallel Quadrilateral", image)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上述代码中,我们首先创建了一个空白图像,然后定义了四个顶点的坐标。接下来,我们将顶点坐标转换为维度为 (1, 4, 2) 的数组,并使用cv2.polylines函数绘制平行四边形。最后,通过cv2.imshow函数显示图像。