Segmentation et suivi des véhicules

9

Je travaille sur un projet depuis un certain temps, pour détecter et suivre des véhicules dans des vidéos capturées à partir d'UAV, actuellement j'utilise un SVM formé sur des représentations de caractéristiques de fonctionnalités locales extraites de véhicules et d'images d'arrière-plan. J'utilise ensuite une approche de détection de fenêtre coulissante pour essayer de localiser les véhicules dans les images, que je voudrais ensuite suivre. Le problème est que cette approche est loin d'être lente et que mon détecteur n'est pas aussi fiable que je le souhaiterais, donc j'obtiens pas mal de faux positifs.

J'ai donc envisagé de segmenter les voitures de l'arrière-plan pour trouver la position approximative afin de réduire l'espace de recherche avant d'appliquer mon classificateur, mais je ne sais pas comment procéder, et j'espérais que quelqu'un pourrait aider?

De plus, j'ai lu sur la segmentation de mouvement avec des couches, en utilisant le flux optique pour segmenter le modèle image par flux, est-ce que quelqu'un a une expérience avec cette méthode, si oui, pourriez-vous nous dire si vous pensez que cette méthode serait applicable pour mon problème.

MISE À JOUR : J'ai également posté cette question sur le débordement de pile, et j'ai eu une excellente réponse , j'ai déjà mis en œuvre cette idée et cela fonctionne bien et je cherche maintenant à utiliser le flux optique en plus de cette technique.

Voici deux images d'un exemple de vidéo

cadre 0: entrez la description de l'image ici

cadre 5: entrez la description de l'image ici

Jono Brogan
la source

Réponses:

6

Hélas, le flux optique est également un problème difficile ;-)

Eh bien, pour être plus constructif, voici quelques algorithmes qui méritent d'être essayés (ou ont été essayés sur cette séquence particulière):

  • ré-entraîner vos sacs de fonctionnalités sur une base de données de véhicules plus représentatifs (en taille et en orientation) à votre problème réel afin d'obtenir de meilleurs résultats
  • utiliser le fait que le sol est un plan plat pour effectuer un flux optique paramétrique (rechercher un flux affine) ou pour calculer un enregistrement affine entre les trames de la séquence. Les véhicules en mouvement seront alors éloignés de ce mouvement dominant
  • utilisez un algorithme de flux optique pour calculer le flux, puis essayez de classifier / regrouper les vecteurs de flux optique (c'est toujours un problème largement ouvert!). Selon la langue que vous utilisez, vous pouvez utiliser le flux optique d'OpenCV, celui de TU Graz , le flux optique de D. Sun ou même le mien ;-). Notez cependant que la segmentation du flux sera une tâche non triviale que vous devriez probablement faire en deux étapes: une estimation de mouvement globale (dominante), puis une détection de petit mouvement.
sansuiso
la source