web-dev-qa-db-fra.com

Taille d'image Darknet YOLO

J'essaie de former un classificateur d'objets personnalisé dans Darknet YOLO v2 https://pjreddie.com/darknet/yolo/

J'ai rassemblé un ensemble de données pour des images dont la plupart sont 6000 x 4000 px et certaines résolutions inférieures également.

Dois-je redimensionner les images avant de m'entraîner au carré?

J'ai trouvé que la config utilise:

[net]
batch=64
subdivisions=8
height=416
width=416
channels=3
momentum=0.9
decay=0.0005
angle=0
saturation = 1.5
exposure = 1.5
hue=.1

c'est pourquoi je me demandais comment l'utiliser pour différentes tailles d'ensembles de données.

7
Farahats9

Vous n'avez pas besoin de le redimensionner, car Darknet le fera à votre place!

Cela signifie que vous n'avez vraiment pas besoin de le faire et que vous pouvez utiliser différentes tailles d'image pendant votre formation. Ce que vous avez publié ci-dessus n'est que la configuration du réseau. Il devrait également y avoir une définition complète du réseau. Et la hauteur et la largeur vous indiquent quelle est la résolution du réseau. Et il conserve également les proportions, vérifiez par exemple this .

12
Nerxis

Il est très courant de redimensionner les images avant l'entraînement. 416x416 est légèrement plus grand que commun. La plupart des modèles imagenet redimensionnent et cadrent les images à 256x256 par exemple. Je m'attendrais donc à la même chose ici. Essayer de s'entraîner sur 6000x4000 va nécessiter une batterie de GPU. Le processus standard consiste à ajuster l'image à la plus grande dimension (hauteur ou largeur), à remplir avec des 0 sur le côté le plus court, puis à redimensionner à l'aide d'outils de redimensionnement d'image standard comme PIL.

3
David Parks

Vous n'avez pas besoin de redimensionner les images, vous pouvez directement modifier les valeurs dans darknet.cfg fichier.

  1. Lorsque vous ouvrez darknet.cfg (yolo-darknet.cfg), vous pouvez tous
    hyper-paramètres et leurs valeurs.
  2. Comme le montre votre fichier d'images cfg, les dimensions des images sont (416 416) -> (poids, taille), vous pouvez modifier les valeurs, afin que darknet redimensionne automatiquement les images avant l'entraînement.
  3. Étant donné que les images ont des dimensions élevées, vous pouvez ajuster les valeurs de lot et de sous-division (abaisser les valeurs 32, 16, 8, il doit être multiple de 2), afin que darknet ne se bloque pas (erreur d'allocation de mémoire)
1
Trinath Reddy

Vous n'avez pas besoin de redimensionner vos images de base de données. L'architecture YOLO le fait par elle-même en gardant le rapport d'aspect sûr (aucune information ne manquera) en fonction de la résolution dans le fichier .cfg. Par exemple, si vous avez une taille d'image 1248 x 936, YOLO la redimensionnera à 416 x 312, puis remplira l'espace supplémentaire avec des barres noires pour s'adapter au réseau 416 x 416.

1
user9649020