Проблемы с обнаружением/удалением двух водяных знаков, расположение которых различается в наборе данных изображения.Python

Программы на Python
Anonymous
Проблемы с обнаружением/удалением двух водяных знаков, расположение которых различается в наборе данных изображения.

Сообщение Anonymous »

У меня возникла проблема с удалением водяных знаков из коллекции изображений. Водяные знаки появляются рядом друг с другом, но различаются (см. ниже). Один водяной знак представляет собой красный квадрат с белым текстом внутри. Другой — полупрозрачное серое предложение. Целью является обработка изображений в целях машинного обучения.
Изображение
Попытки решения проблем:
Поскольку расположение водяных знаков в наборе данных изображения различается, я попытался сделать следующее:
  • Сделал копию изображения и преобразовал ее в цветовое пространство HSV
    Выбран диапазон нижних и верхних значений для интересующей области (значения выбраны после сегментации изображения и построения гистограммы для каждого канала)
  • Создал маску с помощью функции cv2.inRange().
  • Использовал маску для вставки водяного знака в исходное изображение.
Для Красной площади первые три шага сработали идеально. Но третий шаг лишь отчасти сработал. Водяной знак стал значительно менее заметен, чем раньше, но все равно очень заметен. Для текста мне не удалось получить достаточно хорошую маску на шаге 3 — она просто слишком близка по цвету/интенсивности пикселей к окружающей области и самому тексту.
Это выглядит больше похоже на проблему машинного обучения, и это нормально, но я хотел заранее исчерпать другие варианты. Есть мысли о том, как решить эту проблему с помощью машинного обучения или алгоритмических методов?

Подробнее здесь: https://stackoverflow.com/questions/787 ... age-datase

Вернуться в «Python»