Images non carrées pour la classification des images

9

J'ai un ensemble de données d'images larges: 1760x128. J'ai lu des tutoriels et des livres, et la plupart d'entre eux indiquent que les images d'entrée doivent être carrées et sinon, elles sont transformées en carré afin d'être entraînées dans des CNN déjà formés (sur des images carrées). Existe-t-il un moyen de former CNN pour des images non carrées, ou dois-je rechercher une autre option comme rembourrage?

Voila
la source

Réponses:

4

Il existe plusieurs façons de résoudre le problème en fonction du classificateur. Windows coulissant est la méthode que je connais le mieux, elle est utilisée pour les méthodes de réseau neuronal. Cette méthode consiste à prendre une petite sous-image et à la déplacer de haut en bas avec quelques chevauchements. Certains problèmes incluent la recherche des paramètres de décalage optimaux et des problèmes multi-échelles.

La détection finale est généralement déterminée par le degré de confiance du classificateur dans le fait que chacune des sous-images appartient à cette classe: par exemple vote majoritaire, probabilité totale ou distance totale de la frontière de décision. J'ai énuméré quelques éléments ci-dessous, le premier est pour la méthode du classificateur HOG mais les concepts sont les mêmes.

  1. Fenêtres coulissantes de détection d'objets
  2. Détection de catégorie d'objets: fenêtres coulissantes
  3. Reconnaissance, localisation et détection intégrées OverFeat à l'aide de réseaux convolutifs
Joseph Santarcangelo
la source
2

Cela ne devrait pas poser de problème du tout si vous utilisez un CNN. J'ai fait un CNN pour reconnaître les visages, et comme les visages sont généralement environ 70% aussi larges que hauts, j'ai utilisé des images d'entraînement de 80x100 pixels (un peu plus de largeur au cas où la tête serait inclinée). Vos filtres doivent cependant toujours être des carrés.

Tout ce qui changerait, c'est que vous devez maintenant garder une trace de la largeur et de la hauteur de vos cartes d'activation / regroupées au lieu d'une seule valeur qui vous indique la taille. Par exemple -

Image d'entrée de 80 x 100 Appliquer le filtre de convolution 5 x 5 donne une carte des activations à 76 x 96 Appliquer le regroupement 2 x 2 donne une carte des activations regroupées à 38 x 48

Frobot
la source