rect = cv2.minAreaRect(outer_contours[max_index]) # 快速把rect转化为轮廓数据 box = cv2.boxPoints(rect) 如何求出外接矩形的长和宽
时间: 2024-03-12 15:43:42 浏览: 21
在 OpenCV 中,可以使用 `cv2.minAreaRect()` 函数获得包围轮廓的最小矩形,然后使用 `cv2.boxPoints()` 函数将矩形转换为其顶点坐标。对于一个旋转矩形,其长和宽可以通过其宽度和高度来确定,可以使用以下代码计算:
```
rect = cv2.minAreaRect(outer_contours[max_index])
box = cv2.boxPoints(rect)
width = np.linalg.norm(box[0] - box[1]) # 计算宽度
height = np.linalg.norm(box[1] - box[2]) # 计算高度
```
其中,`np.linalg.norm()` 函数用于计算两个点之间的距离。`box[0]`、`box[1]` 和 `box[2]` 是矩形的三个顶点,由于矩形的长和宽不依赖于顶点的顺序,因此选择任意两个顶点计算距离即可。