Обнаружение объектов CNN и обучение с изображениями с водяными знаками, будет ли это работать?

Мне было интересно, тренировать ли CNN, например YOLO, для задач обнаружения объектов панд с использованием изображений с водяными знаками (с водяным знаком 1. под изображением или 2. поверх него или 3. diffused) существенно повлияет на точность модели при тестировании с изображениями без водяных знаков.

Кроме того, более конкретно, если водяной знак находится на изображении, но за пределами области объекта, который я хочу обнаружить (например, пример 1. или, в конечном итоге, 3.), как это повлияет на конечный результат?

Спасибо


person crash    schedule 18.04.2019    source источник


Ответы (2)


YOLO, вероятно, сможет решить проблему шума, но все же это не лучший набор данных, который вы можете создать. Для большей точности я предлагаю вам использовать модель YoloV3-SPP (Spatial Pyramid Pooling). Вы можете использовать модель SPP из этого популярного репозитория https://github.com/AlexeyAB/darknet.

В darknet/cfg/yolov3-spp.cfg вы можете увидеть добавление блока SPP:

### SPP ### 
 [maxpool] 
 stride=1 
 size=5 

 [route] 
 layers=-2 

 [maxpool] 
 stride=1 
 size=9 

 [route] 
 layers=-4 

 [maxpool] 
 stride=1 
 size=13 

 [route] 
 layers=-1,-3,-5,-6 

 ### End SPP ### 

SPP использует понижающую дискретизацию (шаг = 2) в сверточных слоях + используйте 3 разных пула максимального размера для одного и того же изображения и получите лучшие функции в слоях Max-Pooling. Я думаю, что добавление слоя Max pooling уменьшит некоторые шумы от изображения, выбрав только максимальные значения и важные функции изображения.

person gameon67    schedule 19.04.2019
comment
Спасибо за ваш отзыв. Является ли ваше предложение использовать версию YoloV3 SPP общим предложением по сравнению с простым YoloV3 или это связано с конкретной задачей по улучшению обработки водяных знаков из-за максимального количества уровней объединения? - person crash; 19.04.2019
comment
Не конкретно, но в целом SPP даст вам более высокую MAP (точность) по сравнению с другими моделями, но у него более медленное время вывода (компромисс между точностью и скоростью). Поэтому я предлагаю вам попробовать обе модели, какая из них больше подходит для вашей задачи. - person gameon67; 19.04.2019

По опыту могу сказать, что YOLO должна справляться с таким уровнем шума. Рассмотрение ваших дел:

  1. Это не должно быть проблемой. Некоторые программы обучения фактически включают в себя черно-белые границы изображения для достижения правильного разрешения без растягивания изображений.

  2. и 3. Это может быть проблемой, если водяной знак маскирует важные особенности, или, что еще хуже, если часть водяного знака связана с классом во время обучения.

Если водяной знак находится за пределами области объекта: YOLO может изучать контекст на изображении, но пока вы придерживаетесь предварительно обученных моделей, все будет в порядке.

person Malte    schedule 18.04.2019