09 mouvement-2

567 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
567
Sur SlideShare
0
Issues des intégrations
0
Intégrations
4
Actions
Partages
0
Téléchargements
31
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

09 mouvement-2

  1. 1. Vision par ordinateur Mouvement (deuxième partie) Alain Boucher - IFI
  2. 2. 2 Suivi de mouvement (filtre de Kalman)
  3. 3. 3 Suivi de mouvement (tracking)  Plusieurs étapes dans le mouvement  Identifier le mouvement dans les images  différence d’images  Estimer le mouvement dans les images  flot optique  Suivre le mouvement dans les images (tracking)
  4. 4. 4 Suivi de mouvement (tracking)  But : suivre un objet sur plusieurs images  en temps réel (une image après l’autre)  Problèmes :  Suivre le même objet sans le perdre  Trouver sa position dans chaque nouvelle image  Séparer les différents mouvements de l’image  On étudiera ici le Filtre de Kalman  Estimateur récursif optimal  Modèle de prédiction linéaire
  5. 5. 5 Suivre un objet dans l’image  On veut suivre un même objet sur plusieurs images  A partir des positions de l’objet dans les images passées, on veut trouver la position dans l’image courante Positions d’un objet sur plusieurs images position dans l’image 1 position dans l’image 2 position dans l’image 3 position dans l’image 4 position dans l’image 5 position dans l’image 6?
  6. 6. 6 Prédiction, mesure et correction Position initiale Prédiction Correction Mesure Source : RC Johnson, A Brief Summarization of the Kalman Filter, V.A.S.T lab (USA).
  7. 7. Erreurs de mesure et mise à jour mise à jourposition initiale x y x y prédiction x y mesure x y Il faut calculer une erreur pour chaque prédiction. Les mesures aussi comporte des erreurs (différentes des erreurs de prédiction) Source : Temporal Filtering and Tracking, Introduction to Computer Vision, Stanford University (USA).
  8. 8. 8 Erreur de mesure (segmentation)  Lorsqu’on segmente un objet dans l’image, ou lorsqu’on mesure la position d’un objet dans l’image, on a toujours des erreurs  On veut calculer la trajectoire de l’objet en diminuant les erreurs Positions d’un objet sur plusieurs images Position mesurée Position réelle
  9. 9. 9 Plusieurs mouvements dans l’image  Si plusieurs objets se déplacent en même temps, on veut suivre chaque objet séparément et sans les confondre  Exemple : match de football Positions des objets sur plusieurs images ?
  10. 10. 10 Représenter un objet dans l’image  On représente un objet à suivre par un point  Ce point est en fait un vecteur de caractéristiques  Position x et y du point dans l’image  Vitesse vx et vy du point dans l’image  exemple : vitesse vx de 2 pixels/image ± 0.3 pixel  Accélération ax et ay du point dans l’image  Taille (en pixels) de l’objet dans l’image Exemple de vecteur avec position + vitesse : X = [ x y vx vy ]
  11. 11. 11 Détection et suivi de personnes  Exemple de classification des objets détectés (mouvement)  personne, groupe, train, bruit, …  Pour chaque objet  boîte englobante minimale  caratéristiques : position, ratio 3D, hauteur/largeur, … Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France).
  12. 12. 12 Plusieurs vecteurs de paramètres  On utilise plusieurs vecteurs différents :  Une prédiction sur le point dans l’image (x, y, vx, vy)  Estimation de la nouvelle position du point dans l’image  Une mesure dans l’image (position x et y seulement)  Après segmentation (ou autre), on mesure le point  Une correction sur le point (x, y, vx, vy)  Estimation corrigée avec la mesure qui a été faite
  13. 13. 13 Erreur sur les variables  On a deux types d’erreurs :  Erreur sur la prédiction du point  Puisqu’il s’agit d’une estimation seulement  Parce qu’un point peut changer de direction ou de vitesse  Erreur sur la mesure  Venant surtout des algorithmes de traitement d’images  Hypothèse : chaque variable suit une loi normale x ~ N(µ,σ2 ) : loi normale de moyenne µ et d’écart-type σ (ou de variance σ2 )
  14. 14. 14 Erreur sur les variables dépendantes  Les variables ne sont pas indépendantes  Exemple : vitesse globale constante, mais vx et vy changent  On utilisera donc les covariances au lieu des variances : x ~ N(µ,Σ) : loi normale de moyenne µ et de covariance Σ Σ = Var x Cov x , y  Cov x , y  Var y  = σ x 2 σx , y 2 σx, y 2 σ y 2 Exemple de matrice de covariance : x y vx vy
  15. 15. 15 Filtre de Kalman  Estimateur récursif optimal et modèle de prédiction linéaire  On se base plutôt sur les mesures récentes que sur le passé lointain  On utilisera :  X : un état calculé (prédiction ou correction)  Y : une observation (ou mesure) dans l’image  But : calculer xt en connaissant xt-∆t et yt  xt-∆t : prédiction de la position/vitesse du point dans l’image  yt : mesure de la position du point dans l’image  xt : correction de la position/vitesse du point dans l’image
  16. 16. 16 Bruit gaussien (loi normale) Hypothèse d’un bruit gaussien et d’une loi normale  Etat courant (prédiction) : xt ~ P(Xt | Xt-∆t) ~ N(Dt xt-∆t ; Σd,t) avec D comme modèle dynamique d’évolution de l’état (fiabilité du calcul versus la mesure dans l’image)  Observation courante (mesures) : yt ~ P(Yt | Xt) ~ N(Mt xt ; Σm,t) avec M comme modèle de précision des mesures (précision des algorithmes de traitement d’images)  Hypothèses initiales : x0 - et Σ0 - sont connus  vecteur d’état initial x0 et covariances initiales Σ0  Le signe - signifie la prédiction
  17. 17. 17 vitesse position position temps temps temps Exemple avec vitesse constante Modèle avec faible perturbation aléatoire. La vitesse est (presque) constante. * : état calculé o : observation dans l’image
  18. 18. 18 Exemple avec accélération constante vitesse temps temps position Source : Forsyth and Ponce, Computer Vision: A Modern Approach, chap. 17, Prentice Hall, 2003.
  19. 19. 19 Equations du filtre de Kalman  Prédiction : xt - = Dt xt-∆t + Σt - = Σd,t + Dt Σt-∆t + Dt T  Correction (en utilisant l’observation yt): Kt = Σt - Mt T (Mt Σt - Mt T + Σm,t) -1 xt + = xt - + Kt (yt - Mt xt - ) Σt + = (I - Kt Mt) Σt - Le signe - signifie une prédiction de la valeur Le signe + signifie une correction de la valeur Nous prédisons (et corrigeons) le vecteur d’état et les covariances entre variables (qui peuvent changer au cours du temps) Source : Justus Piater, Computer vision, Université de Liège (Belgique)
  20. 20. 20 Filtre de Kalman (remarques)  Typiquement Dt = Dt(∆t) = D (∆t) Mt = M (modèle constant pour les mesures)  En prédiction, l’incertitude Σ augmente avec le temps  Ces modèles d’erreur permettent de dire si on se fie plus aux mesures dans l’image ou au calcul qu’on fait  Le gain de Kalman K spécifie la force avec laquelle  L’état courant va tendre vers les mesures avec le temps  La précision de l’estimation de l’état va être réduite avec le temps
  21. 21. 21 Exemple : modèle d’ordre 0  Vecteur d’état : x = [x,y]T  Vecteur d’observation : y = [x,y]T  Modèle d’évolution des mesures : M = I  Modèle d’évolution des états : D = I Source : Justus Piater, Computer vision, Université de Liège (Belgique)
  22. 22. 22 Exemple : modèle d’ordre 1  Vecteur d’état : x = [x,y,vx,vy]T  Vecteur d’observation : y = [x,y]T  Modèle d’évolution des mesures :  Modèle d’évolution des états : M = [1 0 0 0 0 1 0 0 ] D= [ 1 0 Δt 0 0 1 0 Δt 0 0 1 0 0 0 0 1 ] Source : Justus Piater, Computer vision, Université de Liège (Belgique)
  23. 23. 23 Exemple : Vitesse constante, mesuares bruitées * : prédiction x : mesure o : correction position temps
  24. 24. 24 Exemple : Accélération constante, moins de bruit position temps * : prédiction x : mesure o : correction Source : Forsyth and Ponce, Computer Vision: A Modern Approach, chap. 17, Prentice Hall, 2003.
  25. 25. 25 Que cherche-t-on dans l’image ?  Un objet peut être caractérisé de plusieurs façons :  Contour  Région  Histogramme des couleurs  Blobs et/ou crêtes  Modèle (géométrique, apparence ou autre)  Autre…  Plusieurs méthodes, avec ou sans segmentation  But : trouver l’objet dans l’image, estimer sa position (x,y) et donner cette position au filtre de Kalman
  26. 26. 26 Détection et suivi de personnes  Exemple de classification des objets détectés (mouvement)  personne, groupe, train, bruit, …  Pour chaque objet  boîte englobante minimale  caratéristiques : position, ratio 3D, hauteur/largeur, … Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France).
  27. 27. 27 Exemple de suivi basé sur des points  On veut :  Trouver des points de référence  Prédire où ils se trouveront dans l’image suivante à l’aide d’un modèle du mouvement  Rechercher et mesurer ceux-ci dans la zone de recherche prédite  Corriger l’estimation qu’on a faite  Répéter Source : Analyse Numérique Matricielle (IFT2450 – automne 2004), Université de Montréal (Canada).
  28. 28. 28 Exemples de suivi (tracking) Human activity recognition (Ben-Arie 2002) Visual surveillance (Thonnat 2002) Tracking of a mobile arm (Rasmussen et al. 2001)
  29. 29. 29 Exemple de suivi de régions Position objet ancienne / prédite Régions d’intérêt Modèle trouvé de pixels Décision nouvelle position de l’objet Modèle prédictif Modèle courant (en pixels) de l’objet à rechercher Source : Patrick Hébert, Vision numérique, Université Laval (Québec, Canada)
  30. 30. 30 Recherche par appariement v=0 t1 t2 Choisir le bloc le plus représentatif parmi tous les blocs possibles à l’intérieur d’une fenêtre Source : Patrick Hébert, Vision numérique, Université Laval (Québec, Canada)
  31. 31. 31 Recherche par appariement  Somme de différences absolues (SAD)  Alternative à la somme des carrés des différences (SSD) SADdx , dy= ∑ m=x xN −1 ∑ n=y yN−1 ∣It m ,n−It−1mdx , ndy ∣ Source : Patrick Hébert, Vision numérique, Université Laval (Québec, Canada)
  32. 32. 32 Reconnaissance de scénarios
  33. 33. 33 Reconnaissance de scénarios  Plusieurs étapes dans la reconnaissance  Identifier le mouvement dans les images  différence d’images,  Estimer le mouvement dans les images  flot optique  Suivre le mouvement dans les images (tracking)  Reconnaître des scénarios dans les images
  34. 34. 34 Plate-forme d’interprétation vidéo Alarms access to forbidden area 3D scene model Scenario models A priori Knowledge SegmentationSegmentation ClassificationClassification TrackingTracking Scenario RecognitionScenario Recognition Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France).
  35. 35. 35 Exemple de scénario de vandalisme Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France). ►Voir vidéos…
  36. 36. 36 A) Scenario: “Contact1” B) Scenario: “Passing_by” Scénario en trois phases : 1) Approcher un objet mobile 2) Rester proche de l’objet mobile 3) Faire demi-tour et quitter Scénario en trois phases : 1) Approcher un objet mobile 2) Rester proche de l’objet mobile 3) Quitter sans faire demi-tour Scénarios par classification Bayésienne Exemples de scénarios ►Voir vidéos… Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France).
  37. 37. 37 “approaching” “turning_around _leaving”“being_close”  Exemple : scénario « contact 1 »  Les données d’apprentissage sont constituées de 600 images contenant un nombre égal d’exemples positifs et négatifs Scénarios par classification Bayésienne ►Voir vidéos… Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France).
  38. 38. 38 “approaching” “leaving”“being_close” Exemple de scénario « passer le long » (passing by) Scénarios par classification Bayésienne ►Voir vidéos… Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France).
  39. 39. 39 “approaching” “leaving” “staying in the zone” Scénarios par classification Bayésienne Les paramètres du scénario « passer le point de contrôle » (scénario rare) peuvent être appris à partir du scénario « passer le long » ►Voir vidéos… Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France).
  40. 40. 40 OmbresPerspective fortePetits objets Vue rapprochée OcclusionsLuminosité Problèmes en reconnaissance vidéo Les conditions de l’environnement affectent beaucoup les performances d’un système d’interprétation vidéo Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France).
  41. 41. 41 Références (voir aussi la page web du cours)  Analyse Numérique Matricielle (IFT2450 – automne 2004), Université de Montréal (Canada).  http://www.iro.umontreal.ca/~dift2450/  François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France).  http://www-sop.inria.fr/pulsar/personnel/Francois.Bremond/  RC Johnson, A Brief Summarization of the Kalman Filter, V.A.S.T (Vision and Security Technology) lab (USA).  http://www.rcjohnson.net/vast/Kalman%20Filter%20Summary.pdf  Introduction to Computer Vision (CS 223-B – Winter Quarter of 2006/2007), Stanford University (USA).  http://robots.stanford.edu/cs223b07/  Temporal Filtering and Tracking (condensation, Kalman) http://robots.stanford.edu/cs223b07/notes/CS223B-L12-Tracking.ppt

×