SlideShare une entreprise Scribd logo
1  sur  41
Télécharger pour lire hors ligne
Vision par ordinateur
Mouvement (deuxième partie)
Alain Boucher - IFI
2
Suivi de mouvement
(filtre de Kalman)
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
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
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
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).
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Exemple :
Vitesse constante, mesuares bruitées
* : prédiction
x : mesure
o : correction
position
temps
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
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
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
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
Exemples de suivi (tracking)
Human activity recognition (Ben-Arie 2002) Visual surveillance (Thonnat 2002)
Tracking of a mobile arm (Rasmussen et al. 2001)
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
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
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
Reconnaissance de scénarios
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
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
Exemple de scénario de vandalisme
Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France).
►Voir vidéos…
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
“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
“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
“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
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
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

Contenu connexe

Tendances

Sutherland hodgman polygon clipping algorithm
Sutherland hodgman polygon clipping algorithmSutherland hodgman polygon clipping algorithm
Sutherland hodgman polygon clipping algorithmTawfiq Ahmed
 
Cours-optimisation.pdf
Cours-optimisation.pdfCours-optimisation.pdf
Cours-optimisation.pdfMouloudi1
 
Kalman filter for object tracking
Kalman filter for object trackingKalman filter for object tracking
Kalman filter for object trackingMohit Yadav
 
Algorithme de chauve souris
Algorithme de chauve sourisAlgorithme de chauve souris
Algorithme de chauve sourisZouhair Boufakri
 
A Unified Framework for Computer Vision Tasks: (Conditional) Generative Model...
A Unified Framework for Computer Vision Tasks: (Conditional) Generative Model...A Unified Framework for Computer Vision Tasks: (Conditional) Generative Model...
A Unified Framework for Computer Vision Tasks: (Conditional) Generative Model...Sangwoo Mo
 
Les réseaux de neurones convolutifs CNN
Les réseaux de neurones convolutifs CNNLes réseaux de neurones convolutifs CNN
Les réseaux de neurones convolutifs CNNSALMARACHIDI1
 
L'algorithme FAST de détection de coins | FAST Algorithm for Corner Detection
L'algorithme FAST de détection de coins | FAST Algorithm for Corner DetectionL'algorithme FAST de détection de coins | FAST Algorithm for Corner Detection
L'algorithme FAST de détection de coins | FAST Algorithm for Corner DetectionNawfel Mestoui
 
Image sampling and quantization
Image sampling and quantizationImage sampling and quantization
Image sampling and quantizationBCET, Balasore
 
Scale Invariant Feature Transform
Scale Invariant Feature TransformScale Invariant Feature Transform
Scale Invariant Feature Transformkislayabhi
 
Line drawing algorithm and antialiasing techniques
Line drawing algorithm and antialiasing techniquesLine drawing algorithm and antialiasing techniques
Line drawing algorithm and antialiasing techniquesAnkit Garg
 
Digital Image Processing: Digital Image Fundamentals
Digital Image Processing: Digital Image FundamentalsDigital Image Processing: Digital Image Fundamentals
Digital Image Processing: Digital Image FundamentalsMostafa G. M. Mostafa
 
DISTINGUISH BETWEEN WALSH TRANSFORM AND HAAR TRANSFORMDip transforms
DISTINGUISH BETWEEN WALSH TRANSFORM AND HAAR TRANSFORMDip transformsDISTINGUISH BETWEEN WALSH TRANSFORM AND HAAR TRANSFORMDip transforms
DISTINGUISH BETWEEN WALSH TRANSFORM AND HAAR TRANSFORMDip transformsNITHIN KALLE PALLY
 

Tendances (20)

Unit 3
Unit 3Unit 3
Unit 3
 
Sutherland hodgman polygon clipping algorithm
Sutherland hodgman polygon clipping algorithmSutherland hodgman polygon clipping algorithm
Sutherland hodgman polygon clipping algorithm
 
Cours-optimisation.pdf
Cours-optimisation.pdfCours-optimisation.pdf
Cours-optimisation.pdf
 
Ray tracing
Ray tracingRay tracing
Ray tracing
 
Kalman filter for object tracking
Kalman filter for object trackingKalman filter for object tracking
Kalman filter for object tracking
 
Algorithme de chauve souris
Algorithme de chauve sourisAlgorithme de chauve souris
Algorithme de chauve souris
 
A Unified Framework for Computer Vision Tasks: (Conditional) Generative Model...
A Unified Framework for Computer Vision Tasks: (Conditional) Generative Model...A Unified Framework for Computer Vision Tasks: (Conditional) Generative Model...
A Unified Framework for Computer Vision Tasks: (Conditional) Generative Model...
 
Les réseaux de neurones convolutifs CNN
Les réseaux de neurones convolutifs CNNLes réseaux de neurones convolutifs CNN
Les réseaux de neurones convolutifs CNN
 
Digital Image Fundamentals - II
Digital Image Fundamentals - IIDigital Image Fundamentals - II
Digital Image Fundamentals - II
 
L'algorithme FAST de détection de coins | FAST Algorithm for Corner Detection
L'algorithme FAST de détection de coins | FAST Algorithm for Corner DetectionL'algorithme FAST de détection de coins | FAST Algorithm for Corner Detection
L'algorithme FAST de détection de coins | FAST Algorithm for Corner Detection
 
Histogram processing
Histogram processingHistogram processing
Histogram processing
 
Image sampling and quantization
Image sampling and quantizationImage sampling and quantization
Image sampling and quantization
 
Scale Invariant Feature Transform
Scale Invariant Feature TransformScale Invariant Feature Transform
Scale Invariant Feature Transform
 
Line drawing algorithm and antialiasing techniques
Line drawing algorithm and antialiasing techniquesLine drawing algorithm and antialiasing techniques
Line drawing algorithm and antialiasing techniques
 
La Modulation psk
La Modulation pskLa Modulation psk
La Modulation psk
 
Digital Image Processing: Digital Image Fundamentals
Digital Image Processing: Digital Image FundamentalsDigital Image Processing: Digital Image Fundamentals
Digital Image Processing: Digital Image Fundamentals
 
Filtrage image
Filtrage imageFiltrage image
Filtrage image
 
DISTINGUISH BETWEEN WALSH TRANSFORM AND HAAR TRANSFORMDip transforms
DISTINGUISH BETWEEN WALSH TRANSFORM AND HAAR TRANSFORMDip transformsDISTINGUISH BETWEEN WALSH TRANSFORM AND HAAR TRANSFORMDip transforms
DISTINGUISH BETWEEN WALSH TRANSFORM AND HAAR TRANSFORMDip transforms
 
Unit ii
Unit iiUnit ii
Unit ii
 
Vision par ordinateur
Vision par ordinateurVision par ordinateur
Vision par ordinateur
 

En vedette

TIZEN ile Mobil Yaşam Sunumu (Özgür Yazılım ve Linux Günleri 2013)
TIZEN ile Mobil Yaşam Sunumu (Özgür Yazılım ve Linux Günleri 2013)TIZEN ile Mobil Yaşam Sunumu (Özgür Yazılım ve Linux Günleri 2013)
TIZEN ile Mobil Yaşam Sunumu (Özgür Yazılım ve Linux Günleri 2013)Oytun Eren Sengul
 
Reconnaissance faciale
Reconnaissance facialeReconnaissance faciale
Reconnaissance facialeAymen Fodda
 
Processus de développement
Processus de développementProcessus de développement
Processus de développementJohan Moreau
 
Multisensor data fusion in object tracking applications
Multisensor data fusion in object tracking applicationsMultisensor data fusion in object tracking applications
Multisensor data fusion in object tracking applicationsSayed Abulhasan Quadri
 
Identification des empreintes digitales
Identification des empreintes digitalesIdentification des empreintes digitales
Identification des empreintes digitalesSarah
 
Présentation PFE Computer Vision
Présentation PFE Computer VisionPrésentation PFE Computer Vision
Présentation PFE Computer VisionRihab Ben Rhouma
 
La vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieuxLa vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieuxVisionGEOMATIQUE2014
 
1ère Présentation Atelier Vision par ordinateur
1ère Présentation Atelier Vision par ordinateur1ère Présentation Atelier Vision par ordinateur
1ère Présentation Atelier Vision par ordinateurSamir TABIB
 
Stereovision note de cours
Stereovision note de coursStereovision note de cours
Stereovision note de coursarmada472
 

En vedette (13)

TIZEN ile Mobil Yaşam Sunumu (Özgür Yazılım ve Linux Günleri 2013)
TIZEN ile Mobil Yaşam Sunumu (Özgür Yazılım ve Linux Günleri 2013)TIZEN ile Mobil Yaşam Sunumu (Özgür Yazılım ve Linux Günleri 2013)
TIZEN ile Mobil Yaşam Sunumu (Özgür Yazılım ve Linux Günleri 2013)
 
Reconnaissance faciale
Reconnaissance facialeReconnaissance faciale
Reconnaissance faciale
 
Processus de développement
Processus de développementProcessus de développement
Processus de développement
 
Lecture 09: SLAM
Lecture 09: SLAMLecture 09: SLAM
Lecture 09: SLAM
 
Multisensor data fusion in object tracking applications
Multisensor data fusion in object tracking applicationsMultisensor data fusion in object tracking applications
Multisensor data fusion in object tracking applications
 
Lecture 03 - Kinematics and Control
Lecture 03 - Kinematics and ControlLecture 03 - Kinematics and Control
Lecture 03 - Kinematics and Control
 
Identification des empreintes digitales
Identification des empreintes digitalesIdentification des empreintes digitales
Identification des empreintes digitales
 
Présentation PFE Computer Vision
Présentation PFE Computer VisionPrésentation PFE Computer Vision
Présentation PFE Computer Vision
 
Data fusion with kalman filtering
Data fusion with kalman filteringData fusion with kalman filtering
Data fusion with kalman filtering
 
La vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieuxLa vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieux
 
1ère Présentation Atelier Vision par ordinateur
1ère Présentation Atelier Vision par ordinateur1ère Présentation Atelier Vision par ordinateur
1ère Présentation Atelier Vision par ordinateur
 
Stereovision note de cours
Stereovision note de coursStereovision note de cours
Stereovision note de cours
 
Presentation,PFE
Presentation,PFEPresentation,PFE
Presentation,PFE
 

Similaire à 09 mouvement-2

Meqanique du point materiel
Meqanique du point materielMeqanique du point materiel
Meqanique du point materielsarah Benmerzouk
 
M2 An 1986 20 3 371 0
M2 An 1986  20 3 371 0M2 An 1986  20 3 371 0
M2 An 1986 20 3 371 0guest8b8369
 
Etude de la convergence du modèle binomial vers le modèle de Black Scholes
Etude de la convergence du modèle  binomial vers le modèle de Black ScholesEtude de la convergence du modèle  binomial vers le modèle de Black Scholes
Etude de la convergence du modèle binomial vers le modèle de Black ScholesAli SIDIBE
 
Localisation d’une source émettrice par un réseau d’antennes
Localisation d’une source émettrice par un réseau d’antennesLocalisation d’une source émettrice par un réseau d’antennes
Localisation d’une source émettrice par un réseau d’antennesAhmed Ammar Rebai PhD
 

Similaire à 09 mouvement-2 (6)

Meqanique du point materiel
Meqanique du point materielMeqanique du point materiel
Meqanique du point materiel
 
Anuel physique chimie
Anuel physique chimieAnuel physique chimie
Anuel physique chimie
 
M2 An 1986 20 3 371 0
M2 An 1986  20 3 371 0M2 An 1986  20 3 371 0
M2 An 1986 20 3 371 0
 
Object in motion Detector
Object in motion DetectorObject in motion Detector
Object in motion Detector
 
Etude de la convergence du modèle binomial vers le modèle de Black Scholes
Etude de la convergence du modèle  binomial vers le modèle de Black ScholesEtude de la convergence du modèle  binomial vers le modèle de Black Scholes
Etude de la convergence du modèle binomial vers le modèle de Black Scholes
 
Localisation d’une source émettrice par un réseau d’antennes
Localisation d’une source émettrice par un réseau d’antennesLocalisation d’une source émettrice par un réseau d’antennes
Localisation d’une source émettrice par un réseau d’antennes
 

09 mouvement-2

  • 1. Vision par ordinateur Mouvement (deuxième partie) Alain Boucher - IFI
  • 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 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 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 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. 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 Exemple : Vitesse constante, mesuares bruitées * : prédiction x : mesure o : correction position temps
  • 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 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 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 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 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 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 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 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)
  • 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 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 Exemple de scénario de vandalisme Source : François Brémond, équipe-projet PULSAR, INRIA Sophia-Antipolis (France). ►Voir vidéos…
  • 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 “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 “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 “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 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 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