3 votes

Détection d'objet où l'objet occupe une petite partie de l'image

J'ai formé un réseau de détection de panneaux routiers. Dans les données d'entraînement, le panneau occupe tout le cadre, comme ceci :

Exemple d'image d'entraînement

Cependant, dans les images que je veux utiliser pour les prédictions, les panneaux routiers occupent un espace beaucoup plus petit, par exemple :

Exemple de données réelles

Les prédictions pour de telles images ne sont pas très bonnes, cependant si je recadre uniquement sur le panneau, les prédictions sont bonnes.

Comment puis-je générer des prédictions pour des images plus grandes ?

Malheureusement, je n'ai pas trouvé de réponse dans des questions similaires.

2voto

dfcastap Points 36

Il semble que vous essayez de résoudre un type de problème différent lorsque vous voulez étendre votre classification des signes individuels à leur "détection" et classification à l'intérieur d'une image plus grande.

Vous avez (au moins) quelques options :

  • Créez une fenêtre glissante qui balaye l'image et effectue une classification à chaque pas. De cette façon, lorsque vous atteignez le signe, il renverra une bonne classification. Mais vous réaliserez rapidement que ce n'est pas très pratique ou efficace. La taille de la fenêtre et le pas deviennent des paramètres supplémentaires à optimiser et comme vous le verrez dans l'option suivante, il existe des méthodes spécifiques à la détection d'objets qui tentent déjà de résoudre ce problème spécifique.
  • Vous pouvez essayer une architecture de détection d'objets. Cela nécessitera de créer un ensemble de données d'entraînement différent de celui que vous avez utilisé dans votre classification d'images. Vous aurez besoin de nombreuses (centaines ou milliers) versions "grandes" de votre image contenant (et parfois ne contenant pas) les signes que vous souhaitez identifier. Vous aurez besoin d'un outil d'annotation pour localiser et étiqueter ces signes, puis vous pourrez entraîner un réseau à les localiser et les étiqueter.

Certaines des architectures à rechercher pour cette deuxième option incluent : YOLO, Single Shot Detection (SSD), Faster RCNN, pour n'en citer que quelques-unes.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X