Требуется ли изменение размера изображения для обучения новой модели Yolo?
Я хотел бы обучить новую модель, используя мой собственный набор данных.
Я буду использовать Darkflow/Tensorflow для этого.
Что касается моих сомнений:
(1) Должны ли мы изменить размеры наших тренировочных образов для определенного размера?
(2) Я думаю, что меньшие изображения могут сэкономить время, но могут ли меньшие изображения повредить точность?
(3) А как быть с изображениями, которые должны быть предсказаны, должны ли мы изменить их размер или это не нужно?
С уважением. Клейсон Риос.
1 ответ
(1) It already resize it with random=1
in.cfg file.The answer is "yes".The input resolution of images are same.You can resize it by yourself or Yolo can do it.
(2)If your hardware is good enough,I suggest you to use big sized images.Also as a suggest,If you will use webcam,use images as the same resolutions as your webcam uses.
(3)Yes, same as training.
(1) Yes, neural networks have fixed input dimensions. These can be adjusted to fit your purpose, but at last you need to commit to a defined input dimension, and thus you need to input your images fitting these dimensions. For YOLO I found the following:
layer filters size input output
0 conv 32 3 x 3 / 1 416 x 416 x 3 -> 416 x 416 x 32
It could be that the framework you are using already does that step for you. Maybe somebody could comment on that.
(3) The images / samples you feed during inference, for prediction should be as similar to the training images / samples as possible. So whatever preprocessing you re doing with your training data, you should definitely do the same on your inference data.
(2) Smaller images make sense if your hardware is not able to hold larger images in memory, or if you train with large batch sizes so that your hardware needs to hold multiple images in memory at ones. In the end, the computational time is rather proportional to the amount of operations of your architecture, not necessarily to the images size.
(1) Нет, это не обязательно. Но если ваш набор данных содержит случайные разрешения, вы можете поставить
random = 1
в вашем файле.cfg для лучших результатов.
(2) Меньшие изображения не уменьшают время схождения, но если ваш набор данных содержит только небольшие изображения, Yolo, вероятно, не сможет сойтись (Yolov3 не является хорошим детектором для множества крошечных объектов)
(3) это не обязательно