Автоматически создавать составное изображение для обучения cnn - PullRequest
0 голосов
/ 07 ноября 2018

Я хотел бы обучить CNN для обнаружения и классификации любых знаков (в основном лабораторных и маркеров безопасности) с использованием тензорного потока. В то время как я могу собрать достаточно данных для тренировочного набора классификации, используя, например, API Bing, я изо всех сил пытаюсь найти решение, чтобы получить достаточно изображений для учебного набора по обнаружению объектов. Поскольку эти маркеры в основном не доступны для общественности, я подумал, что смогу создать композицию из натурного изображения сцены с изображением самого маркера, чтобы получить тренировочный набор. Есть ли способ сделать это автоматически? Я посмотрел на класс дополнения данных тензорного потока, но, похоже, он предоставляет функциональность только для более простых задач дополнения данных.

1 Ответ

0 голосов
/ 07 ноября 2018

Вы можете сделать это с помощью OpenCV в качестве предварительной обработки.

Алгоритм следующий:

  1. Выбор комбинации естественного изображения сцены и изображения знака случайным образом.
  2. Образец случайной позиции в естественном изображении сцены, куда вставляется изображение знака.
  3. Вставка изображения знака в позицию.
  4. Получите вставленное изображение и позицию как часть обучающих данных.

Шаг 1 и 2 выполняется с помощью стандартного модуля Python random или numpy.

Шаг 3 выполняется с помощью opencv-python.См. наложение меньшего изображения на увеличенное изображение Python OpenCv .

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