用python画圆角矩形_如何用OpenCV绘制圆角矩形(带圆角的矩形)?
时间: 2024-01-22 19:20:38 浏览: 240
python进行OpenCV实战之画图(直线、矩形、圆形)
使用OpenCV可以通过以下步骤绘制圆角矩形:
1. 导入OpenCV库:`import cv2`
2. 创建一个空白图像:`img = np.zeros((height, width, 3), np.uint8)`
3. 定义矩形的四个角的坐标:`(x, y)`,`(x+width, y)`,`(x+width, y+height)`,`(x, y+height)`
4. 定义圆角的半径:`radius`
5. 使用`cv2.line()`函数绘制矩形的四条线段,使用`cv2.circle()`函数绘制四个圆弧
6. 返回绘制好的图像
下面是一个绘制圆角矩形的示例代码:
``` python
import cv2
import numpy as np
def rounded_rectangle(img, pt1, pt2, radius, color, thickness):
x1, y1 = pt1
x2, y2 = pt2
cv2.rectangle(img, (x1 + radius, y1), (x2 - radius, y2), color, thickness)
cv2.rectangle(img, (x1, y1 + radius), (x2, y2 - radius), color, thickness)
cv2.circle(img, (x1+radius, y1+radius), radius, color, thickness)
cv2.circle(img, (x2-radius, y1+radius), radius, color, thickness)
cv2.circle(img, (x1+radius, y2-radius), radius, color, thickness)
cv2.circle(img, (x2-radius, y2-radius), radius, color, thickness)
# 创建一个空白图像
img = np.zeros((400, 400, 3), np.uint8)
# 绘制圆角矩形
pt1 = (50, 50)
pt2 = (350, 350)
radius = 30
color = (255, 0, 0)
thickness = 5
rounded_rectangle(img, pt1, pt2, radius, color, thickness)
# 显示图像
cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个示例中,我们使用`rounded_rectangle()`函数绘制了一个圆角矩形。函数的参数包括图像、矩形的两个对角点、圆角半径、颜色和线条粗细。最终的结果将在窗口中显示。
阅读全文