如何从轮廓向量转换为 MAT?
How can I convert from contour vector to MAT?
这是我必须找到图像轮廓的代码:
contour, heir= cv2.findContours(hmg,cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
我想用
求等高线的面积
cv2.contourArea(contour)
但这需要 MAT 数据类型,而不是等高线向量类型
如何转换轮廓才能做到这一点?
contour
对象实际上是在图像中找到的所有轮廓的列表,每个轮廓都采用正确的格式。像 contours
这样的名字可能更合适,但那是 non-essential.
你的post呈现出单一的轮廓;由于过滤噪音,这种情况很少见,但您可以通过按降序区域排序来挑选出轮廓:
contours, heir= cv2.findContours(hmg,cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
contours = sorted(contours, key=cv2.contourArea, reverse=True)
print(cv2.contourArea(contours[0]))
这是我必须找到图像轮廓的代码:
contour, heir= cv2.findContours(hmg,cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
我想用
求等高线的面积cv2.contourArea(contour)
但这需要 MAT 数据类型,而不是等高线向量类型
如何转换轮廓才能做到这一点?
contour
对象实际上是在图像中找到的所有轮廓的列表,每个轮廓都采用正确的格式。像 contours
这样的名字可能更合适,但那是 non-essential.
你的post呈现出单一的轮廓;由于过滤噪音,这种情况很少见,但您可以通过按降序区域排序来挑选出轮廓:
contours, heir= cv2.findContours(hmg,cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
contours = sorted(contours, key=cv2.contourArea, reverse=True)
print(cv2.contourArea(contours[0]))