opencv convexHull
时间: 2024-06-09 09:07:09 浏览: 178
convexHull
OpenCV中的convexHull函数可以用于计算凸包。凸包是将点集包围在最小凸多边形中的多边形。函数的语法如下:
```
hull = cv2.convexHull(points[, hull[, clockwise[, returnPoints]]
```
其中,参数points是输入的点集,hull是可选的输出凸包的点集,clockwise表示是否按顺时针方向输出凸包的点集,returnPoints表示是否输出凸包的点集(如果为False,则输出凸包的索引)。
下面是一个示例代码:
```python
import cv2
import numpy as np
# 生成随机点集
points = np.random.randint(0, 100, (10, 2))
# 计算凸包
hull = cv2.convexHull(points)
# 显示结果
img = np.zeros((100, 100), dtype=np.uint8)
cv2.drawContours(img, [points], 0, 255, 1)
cv2.drawContours(img, [hull], 0, 255, 1)
cv2.imshow('Convex Hull', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
运行结果如下图所示:
![convex_hull](https://img-blog.csdn.net/20180502150345515?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3N0YW5kYXJk/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/80)
阅读全文