我曾尝试使用KNearestNeighbors
作为插值方法在python中创建一个带有断层的等高线图。但是,该图显示了多个小轮廓区域,我想消除这些区域:
我尝试使用OpenCV查找所有封闭的轮廓线,并将边界值设置为最大面积,然后消除所有小于边界值的面积
然而,我似乎无法使用findContours
方法,因为它只找到断层周围的轮廓。所有其他轮廓都没有出现。结果图和我的代码如下所示:
img = cv2.imread('contor_line.jpg')
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
ret, binary = cv2.threshold(gray,127,255,cv2.THRESH_BINARY)
contours, hierarchy = cv2.findContours(binary,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
cv2.drawContours(gray,contours,-1,(0,0,255),1)
cv2.imshow("gray", gray)
cv2.waitKey(0)
这是我第一次使用OpenCV,谢谢你的帮助
在找到轮廓之前尝试使用canny,或者对图像设置阈值,这将使查找轮廓更容易、更好
相关问题 更多 >
编程相关推荐