我正在寻找轮廓的图像,我成功地能够识别下面图像中几乎所有的轮廓。但是我无法找到像左侧两个灰色框那样的特定轮廓。我已经尝试了所有轮廓方法,如树,列表,外部,并尝试与阈值。无法找到所有轮廓 - Opencv,python
请建议如果我失去了一些东西,也可以做些什么来改善它
img = cv2.imread(input_image, 0)
kernel = np.ones((5, 5),np.uint8)
morphological_img = cv2.morphologyEx(img, cv2.MORPH_GRADIENT, kernel)
canny_img = cv2.Canny(morphological_img, 200, 300)
input_imag, contours, hierarchy =
cv2.findContours(canny_img,cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE) # get contours
https://i.stack.imgur.com/WomfA.png
处理图像的关键部分是处理,在你的情况下,你正在做的阈值,但如果阈值不足,你将永远无法找到解决方案,我建议显示图像阈值。 – eyllanesc
更好的方法是将图像分割成几部分。在检测轮廓之前,图像的左侧部分可能需要不同类型的预处理。 – zindarod
@eyllanesc我编辑了我的问题,请检查。我正在使用内核和Morph渐变和canny而不是阈值来达到此目的 –