Следует ли делать аннотации YOLOv3 до изменения размера?

Я собираюсь начать аннотировать свои изображения для обучения модели YOLOv3. Прежде чем начать, я хочу убедиться, что можно создавать аннотации к исходному изображению. Изменятся ли аннотации соответственно после того, как я изменю размер изображений перед тренировкой? Или я должен сначала изменить размер всех моих изображений, а затем начать комментировать?


person sugar.darre    schedule 25.04.2019    source источник


Ответы (1)


Все нормально! Вам не нужно беспокоиться о размере изображения. Вы можете аннотировать свой набор данных с любыми размерами, когда вы начнете тренировку, Yolo изменит размер тренировочного изображения в соответствии с размером сети, например. 416х416, 608х608.

Также обратите внимание, что в исходном репозитории размер сети изменяется каждые 10 итераций, если вы установили random = 1 в файле cfg. random = 1 означает, что Yolo изменяет размер сети каждые 10 итераций, полезно повысить точность, обучая сеть на другом разрешении.

Согласно газете Yolo:

Однако, поскольку наша модель использует только сверточные слои и слои пула, ее размер можно изменять на лету. Мы хотим, чтобы YOLOv2 был устойчив к работе с изображениями разных размеров, поэтому мы обучаем это в модели. Вместо фиксации размера входного изображения мы меняем сеть каждые несколько итераций. Каждые 10 пакетов наша сеть случайным образом выбирает новый размер изображения. Так как наша модель уменьшает выборку в 32 раза, мы используем следующие числа, кратные 32: {320, 352, ..., 608}. Таким образом, наименьший вариант — 320 × 320, а самый большой — 608 × 608. Мы изменяем размер сети до этого размера и продолжаем обучение.

Однако, если вы используете репозиторий AlexeyAB, процесс изменения размера не сохранит соотношение сторон https://github.com/AlexeyAB/darknet/issues/232#issuecomment-336955485

person gameon67    schedule 25.04.2019