利用cv2.boundingrect函数获取图像中的轮廓矩形,并输出矩形的四点坐标
时间: 2023-05-26 14:04:07 浏览: 100
以下是示例代码:
```python
import cv2
# 读取图像
img = cv2.imread('image.jpg')
# 转为灰度图像
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 二值化处理
ret, thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
# 查找轮廓
contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
# 遍历轮廓
for contour in contours:
# 获取轮廓的矩形坐标
x,y,w,h = cv2.boundingRect(contour)
# 绘制矩形
cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),2)
# 输出矩形的四点坐标
print("({},{}) ({},{}) ({},{}) ({},{})".format(x,y,x,y+h,x+w,y+h,x+w,y))
# 显示图像
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
其中,cv2.boundingRect函数用于获取轮廓矩形的坐标,返回的四个参数分别表示矩形的左上角坐标和宽度、高度。绘制矩形使用cv2.rectangle函数,前两个参数为左上角坐标,后两个参数为右下角坐标。输出矩形的四点坐标,即左上、左下、右下、右上四个点的坐标,可以使用字符串格式化输出。
阅读全文