Устранение ложных срабатываний, обнаруженных OpenCV EM - PullRequest
0 голосов
/ 04 июня 2018

Я разрабатываю алгоритм на Python, который должен идентифицировать область на листе, содержащую пятна, чтобы сообщить о серьезности заболевания.Во время моего исследования я узнал о LeafSnap и был вдохновлен этим.Итак, я попытался проследить за бумагой, чтобы сегментировать лист на изображении, используя максимизацию ожиданий OpenCV, которая обучается с использованием цветового пространства HSV форм S и V;однако он по-прежнему возвращает некоторые ложные срабатывания из-за отражения или тени.

First Sample

Second Sample

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


1 Ответ

0 голосов
/ 04 июня 2018

Я не думаю, Leafsnap предназначен для использования под прямыми солнечными лучами.Это создает очень сильные тени, которые полностью портят их метод S + V.

В статье авторы объясняют, что они отбрасывают оттенок, потому что он «разбавляет» объект, когда лист белой бумаги отражает немного зеленого цвета.Однако, в вашем случае, поскольку фотографии, кажется, сделаны под ясным небом, бумага имеет либо желтоватый (под прямыми солнечными лучами), либо голубоватый (в тени) оттенок, который четко отличается от зеленого оттенка листьев.Фактически, слой оттенка - тот, который отражает форму листьев лучше всего в этих двух случаях.Поэтому вам не следует игнорировать оттенок для нахождения формы листьев.

В качестве идеи вы можете использовать отдельно Saturation + Value, а также Hue для определения формы.После этого выберите меньшую форму из этих двух.

...