opencv 查找轮廓 扩大
时间: 2023-07-07 18:39:18 浏览: 231
opencv寻找轮廓
3星 · 编辑精心推荐
如果你想在OpenCV中查找轮廓并扩大它们,可以按照以下步骤进行:
1. 读取图像并将其转换为灰度图像。
```
img = cv2.imread('image.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
```
2. 对图像进行二值化处理。
```
ret,thresh = cv2.threshold(gray,127,255,cv2.THRESH_BINARY)
```
3. 查找轮廓。
```
contours, hierarchy = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
```
4. 扩大轮廓。
```
for cnt in contours:
# 扩大轮廓,这里以 10 为例
cnt += 10
```
5. 在图像上绘制扩大后的轮廓。
```
cv2.drawContours(img, contours, -1, (0, 255, 0), 2)
cv2.imshow('Contours', img)
cv2.waitKey(0)
```
注意:这里使用的是RETR_EXTERNAL模式,只检测最外层轮廓。如果想检测所有的轮廓,可以使用RETR_TREE模式。另外,如果想更精细地扩大轮廓,可以使用cv2.approxPolyDP()函数进行多边形逼近。
阅读全文