Минимизация ложноположительных результатов при некоторой обработке изображений в модели обнаружения объектов

#opencv #image-processing #computer-vision #object-detection #false-positive

#opencv #обработка изображений #компьютерное зрение #обнаружение объектов #ложноположительный результат

Вопрос:

Я использую Mask-RCNN для решения проблемы обнаружения объектов. Это реализация Mask R-CNN на Python 3, cv2, Keras и TensorFlow. Я пытаюсь определить поврежденную область грузовика. Результаты, которые я получил, хороши, когда я запускаю модель на тех изображениях, которые не имеют тени или отражения от окружения. Но модель терпит неудачу на изображениях того типа, которые имеют тень или какое-либо другое отражение. Я использовал некоторые методы обработки изображений, которые включают 1. Преобразование изображений в оттенки серого и 2. Цветовую обработку. Но оба они не дали никаких хороших результатов.

Входное изображение -

Вывод изображения -

Пожалуйста, предложите, что я могу сделать, чтобы минимизировать ложноположительные результаты.

Ответ №1:

Проблема с обучением пользовательских классификаторов заключается в том, что даже если у вас достаточно изображений самого объекта, недостаточно данных об одном и том же объекте в разных контекстах и на разных фонах.

Я бы посоветовал вам дополнить данные, применив некоторые виды искажений, включая искусственные тени и отражения. Делая это, вы получите больше данных с различными контекстами и сведете к минимуму ложноположительные результаты.

Для этого есть несколько инструментов. Один из них albumentations : https://github.com/albumentations-team/albumentations . Это позволяет создавать множество дополнений к изображению, включая случайные тени.