import cv2
import numpy as np
image = cv2.imread("C:\\Users\\PC\\Desktop\\22.bmp")
img = image.copy()
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 二值化
ret, thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
# 图片轮廓
contours, hierarchy = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
for cnt in contours:
# 寻找凸包并绘制凸包(轮廓)
hull = cv2.convexHull(cnt)
cv2.drawContours(img, [hull], -1, (0,255,0), -1)
# 显示图片
cv2.imshow('img', img)
cv2.imshow('image', image)
cv2.waitKey()
opencv之求轮廓的凸包
最新推荐文章于 2024-07-25 15:53:44 发布
这段代码展示了如何使用OpenCV库读取图像,将其转换为灰度,进行二值化处理,然后找到图像中的轮廓。通过cv2.findContours函数找到轮廓后,对每个轮廓应用凸包检测,并用绿色绘制。最后,显示原图和带有凸包轮廓的图像。
摘要由CSDN通过智能技术生成