Opencv findContours () dr aws контурные линии, где нет контура - PullRequest
0 голосов
/ 29 мая 2020

Я новичок в компьютерном зрении. По какой-то причине функция findContours dr aws все эти волнистые линии, где нет контуров.

Вот мой код и его результаты:

gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
blurred = cv2.GaussianBlur(gray, (9, 9), 0)
retval, thresh = cv2.threshold(blurred, thresh_val, 255, cv2.THRESH_BINARY)

contours, hierarchy = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)
cv2.drawContours(crop, contours, -1, (0, 255, 0), 2)

Итак, я ввожу это обрезанное изображение: введенное изображение

Затем добавьте пороговое значение: пороговое значение

Когда я пытаюсь нарисовать контуры, он выводит этот беспорядок: контуры

Я пробовал использовать cv2.morphologyEx(thresh, cv2.MORPH_OPEN, kernel), и он выводит: countours с морфингом

Кто-нибудь знает, как это исправить и избавиться от этих случайных контуров? Мне кажется, что пороговое значение совершенно очевидно. Спасибо!

...