cv2.rectangle绘制圆角矩形
时间: 2024-10-08 18:08:47 浏览: 3
`cv2.rectangle()`函数是OpenCV库中的一个用于绘制矩形的基本功能,它并不直接支持绘制圆角矩形。如果你想在图像上画出带圆角的矩形,你需要通过计算并绘制四个独立的边来模拟圆角效果。一种常见的方式是使用`cv2.ellipse()`函数的一部分来进行定制。
首先,你需要确定矩形的顶点坐标以及宽度、高度和圆角半径。然后,在每个角落附近画一个小的椭圆,椭圆的中心位置就是角落,长度和宽度取决于矩形尺寸,而圆角半径则由你设定。
这是一个简单的示例:
```python
import cv2
import numpy as np
# 输入图像
img = ... # 你的图片实例
# 定义矩形参数
x, y, w, h = ... # 矩形左上角坐标和大小
radius = ... # 圆角半径
# 计算椭圆的中心点和尺寸
top_left = (x, y)
top_right = (x + w, y)
bottom_left = (x, y + h)
bottom_right = (x + w, y + h)
# 绘制四边椭圆
corners = [(top_left, (radius, radius)), (top_right, (radius, radius)),
(bottom_left, (radius, radius)), (bottom_right, (radius, radius))]
for corner, size in corners:
cv2.ellipse(img, corner, size, angle=0, startAngle=0, endAngle=360,
color=(0, 255, 0), thickness=-1) # 使用绿色填充
# 显示结果
cv2.imshow("Image with Rounded Corners", img)
```