Mise en correspondance d’images pour l’analyse du mouvement et la stéréovision Nikom SUVONVORN Institut d’Électronique Fondamentale Université de Paris-Sud
๐ Plan d’exposé Problématique Abstraction d’image/Modèle EFLAM Algorithmes d’appariement d’images Les mariages stables Système de mise en correspondance Application pour : Stéréovision Mouvement
Problématique / Objectif ๐ Problématique / Objectif Méthode de mise en correspondance d’images L’analyse du mouvement La stéréovision Développer une méthode générale Ensembles de niveaux comme caractéristique d’image Méthode de décision Une étape décisive pour la vision par l’ordinateur
๑ Abstraction d’images
๑ Abstraction d’images Décomposition d’image en « Ensemble de niveaux » 4 3 2 1 ≥3 ≥4 ≥1 ≥2
L’endroit où au moins deux flots se séparent ou se joignent ๑ Abstraction d’images Ensemble de niveaux Lignes de niveaux Flots de lignes de niveaux Jonctions L’endroit où au moins deux flots se séparent ou se joignent
๑ Abstraction d’images Les jonctions de flots l’appariement d’images Très sensibles au bruit Seuil (de détection) difficile à déterminer Détection de la variation d’intensité autours des jonctions Résister aux perturbations
Variation des jonctions ๑ Variation des jonctions Modèle EFLAM : Extended Flow Laminating Average Milieu Basé sur Girard/Bonnin SUSAN de Brady (Smallest Univalue Segment Assimilating Nucleus) pour « les jonctions des flots »
Variation des jonctions ๑ Variation des jonctions Mesure la variation d’intensité au point p par la similarité des intensités sur des voisinages + I(p) + I(pi) + + + objet
๑ Modèle EFLAM s I + + x y
๑ Modèle EFLAM I x y
Extraction des jonctions ๑ Extraction des jonctions Coder la jonction en primitive Fb Fa S* Sl Sr θl θr
Extraction des jonctions ๑ Extraction des jonctions Coder le flot en segment M++ M M-- Fiabilité
Extraction des jonctions ๑ Extraction des jonctions Méthode de Harris = 10 Donovan Hugh Parks Center for Intelligent Machines McGill University, Canada http://www.cim.mcgill.ca/~dparks/CornerDetector/index.htm = 15 Avant/après le filtrage
Extraction des jonctions ๑ Extraction des jonctions Méthode de Harris = 20 Avant/après le filtrage
Extraction des jonctions ๑ Extraction des jonctions Avant/après le filtrage, = 20 Avant/après le filtrage, = 15
๒ Appariement d’images
? ๒ Appariement d’images Mise en correspondance par mariages stables N man m1 m2 mN w1 w2 wN N woman w1 wN w8 w5 w2 w3 w4 w6 w2 m1 m3 m9 m4 m6 m5 m7 m8 mN m m1 w
Contraintes du problème ๒ Contraintes du problème Stabilité Satisfaction Égalité de sexe Complexité Un appariement M est stable s’il ne contient aucun « couple de blocage » INSUFFISANT (m,w) est un « couple de blocage » : si m préfère w à son associé, et w préfère m à son associée, mais (m,w) n’est pas marié dans M Dan Gusfield et Robert W. Irving MIT Press (1989) Cambridge, Massachusetts
Algorithme de Gale et Shapley ๒ Algorithme de Gale et Shapley Deux solutions: homme/femme optimal 3 2 1 1 2 3 w2 w1 w3 m1 w1 m1 m2 m3 w2 w3 w1 m2 w2 m2 m3 m1 m3 w3 m1 m2 m3 w1 w2 w3 ? Stabilité : OUI, toujours stable Complexité : OUI, O(n2) Satisfaction globale : NON Égalité de sexe : NON
Nouvelle représentation du problème La « table des mariages » ๒ Nouvelle représentation du problème La « table des mariages » Définition Taille (N+1) x (N+1), 0,1,…p,…N, ∞ Cellule (p, q) contient les couples (m, w) dont w est le pème choix de m m est le qème choix de w Cellule (p,∞) contient les couples (m, w) dont m n’est pas dans la liste de w (∞, q) symétrique de (p,∞) 1 N ∞ q p (m,w) (m,w) Le couple (m,w) : m est le 2ème choix de w et w est le N+1ème choix de m Le couple (m,w) : m n’est dans la liste de w et w est le N+1ème choix de m
๒ « Instabilité » « Satisfaction » et « Égalité de sexe » dans la table des mariages p q (x, w) (m, y) (x, y) (m, w) mariés dans M Non mariés dans M
Satisfaction constante en anti-diagonales ๒ « Instabilité » « Satisfaction » et « Égalité de sexe » dans la table des mariages Satisfaction constante en anti-diagonales Maximum à l’origine p 1 3 q 2 2 3 4 6 5 7 Satisfaction = p + q
๒ « Instabilité » « Satisfaction » et « Égalité de sexe » dans la table des mariages Équité constante en diagonales Maximum sur la 1ère bissectrice p 1 3 q 2 1 2 3 Équité = |p – q|
Nouveaux algorithmes : Zigzag (ZZm,w), Zigzag Optimal (OZ) ๒ Nouveaux algorithmes : Zigzag (ZZm,w), Zigzag Optimal (OZ) p 1 3 q 2 Algorithmes : balayages de la « table des mariages » pour satisfaire au mieux l’ensemble des contraintes la satisfaction globale l’égalité de sexe la stabilité ZZm si w et m sont libres, alors (m,w) est marié
Nouveaux algorithmes : Zigzag (ZZm,w), Zigzag Optimal (OZ) ๒ Nouveaux algorithmes : Zigzag (ZZm,w), Zigzag Optimal (OZ) p 1 3 q 2 ZZw
Nouveaux algorithmes : Zigzag (ZZm,w), Zigzag Optimal (OZ) ๒ Nouveaux algorithmes : Zigzag (ZZm,w), Zigzag Optimal (OZ) p 1 3 q 2 OZm
๒ Nouveaux algorithmes : performances satisfaction, égalité de sexe et stabilité Satisfaction, et égalité de sexe Mesure le pourcentage du nombre d’instances où x est meilleur que y Exécuter les algorithmes sur 30 000-40 000 instances, tirées au hasard Taille de population : 5, 10, 50, 100, 150, 200 Mesure l’amplitude en moyenne Mesure la distance en moyenne Stabilité Mesure le nombre des couples de blocages
Nouveaux algorithmes : performances Résultats ๒ Nouveaux algorithmes : performances Résultats Satisfaction, et égalité de sexe Stabilité Totalement Instable
Nouvel algorithme : Un résultat de bornitude ๒ Nouvel algorithme : Un résultat de bornitude (m,w) (m,w*) (m*,w) p 1 3 q 2 non marié dans M marié dans M Instable marié dans M
Nouvel algorithme : Améliorer la stabilité Zigzag Bloqué (BZ) ๒ Nouvel algorithme : Améliorer la stabilité Zigzag Bloqué (BZ) (m, w) est marié si (w , m) sont libres (m, w) est marié (x, y) est marié À marier À stabiliser 1 2 N ∞ q p 1 2 N ∞ q p Cycle? Oui (5%) Non (m, y) n’est pas marié m préfère y à w et y préfère m à x !!! Stable? Boucle limité Oui (95%) Stop Divorcer (m, w) et (x, y) , et marier (m, y)
Nouvel algorithme : Zigzag Bloqué (BZ) ๒ Nouvel algorithme : Zigzag Bloqué (BZ) Satisfaction, et égalité de sexe Stabilité
๒ Instabilité dans la table de mariages (5%) des « Oscillations » et des « Cycles » p 1 3 q 2 (m,w?) (m?,w) (m,w) (m,w?) (m?,w) (m,w) Cycles (m,w?) (m?,w) (m,w) Oscillations (m,w?) (m?,w) (m,w)
Suppression des « Oscillations » ๒ Suppression des « Oscillations » Femme d’abord Homme d’abord p 1 3 q 2 Cycles Oscillations
Suppression des « cycles » ๒ Suppression des « cycles » 1 2 3 4 (m,w?) (m?,w) (m,w) p 1 3 q 2 (m?,w2) (m,w2) (m?,w3) (m,w3) (m,w?) (m?,w1) (m,w1) (m?,wi) (m,wi) Cycles (m,w?) (m?,w) (m,w) (m2,w?) (m2,w) (m3,w?) (m3,w) (m?,w) (m1,w?) (m1,w) (mi,w?) (mi,w) Oscillations (m3,w?) (mi,w?) (m2,w?) (m2,w) (m3,w) (m,wi) (m?,w3) (m?,wi) (m?,w2) (m,w2) (m,w3) (mi,w) (m,w) (m1,w?) (m1,w) (m?,w1) (m,w1)
Suppression des « cycles » ๒ Suppression des « cycles » 1 2 3 4 (m,w?) (m?,w) (m,w) p 1 3 q 2 (m?,w2) (m,w2) (m?,w3) (m,w3) (m,w?) (m?,w1) (m,w1) (m?,wi) (m,wi) (m,w?) (m?,w) (m,w) (m2,w?) (m2,w) (m3,w?) (m3,w) (m?,w) (m1,w?) (m1,w) (mi,w?) (mi,w) (m3,w?) (mi,w?) (m2,w?) (m2,w) (m3,w) (m,wi) (m?,w3) (m?,wi) (m?,w2) (m,w2) (m,w3) (mi,w) (m,w) (m1,w?) (m1,w) (m?,w1) (m,w1)
Suppression des « cycles » ๒ Suppression des « cycles » 1 2 3 4 (m,w?) (m?,w) (m,w) p 1 3 q 2 (m?,w2) (m,w2) (m?,w3) (m,w3) (m,w?) (m?,w1) (m,w1) (m?,wi) (m,wi) (m,w?) (m?,w1) (m,w1) (m?,w2) (m,w2) (m2,w?) (m2,w) (m3,w?) (m3,w) (m?,w) (m1,w?) (m1,w) (mi,w?) (mi,w) (m?,w3) (m,w3) (m?,wi) (m,wi) (m3,w?) (mi,w?) (m2,w?) (m2,w) (m3,w) (m,wi) (m?,w3) (m?,wi) (m?,w2) (m,w2) (m,w3) (mi,w) (m,w) (m1,w?) (m1,w) (m?,w1) (m,w1)
Suppression des « cycles » ๒ Suppression des « cycles » 1 2 3 4 (m,w?) (m?,w) (m,w) p 1 3 q 2 (m?,w2) (m,w2) (m?,w3) (m,w3) (m,w?) (m?,w1) (m,w1) (m?,wi) (m,wi) (m2,w?) (m2,w) (m3,w?) (m3,w) (m?,w) (m1,w?) (m1,w) (mi,w?) (mi,w) (m2,w?) (m2,w) (m3,w?) (m3,w) (m?,w) (m1,w?) (m1,w) (mi,w?) (mi,w) (m3,w?) (mi,w?) (m2,w?) (m2,w) (m3,w) (m,wi) (m?,w3) (m?,wi) (m?,w2) (m,w2) (m,w3) (mi,w) (m,w) (m1,w?) (m1,w) (m?,w1) (m,w1)
Suppression des « cycles » ๒ Suppression des « cycles » 1 2 3 4 (m,w?) (m?,w) (m,w) p 1 3 q 2 (m3,w?) (mi,w?) (m2,w?) (m1,w?) (m?,w2) (m,w2) (m?,w3) (m,w3) (m,w?) (m?,w1) (m,w1) (m?,wi) (m,wi) (m,w) (m?,w3) (m?,wi) (m?,w2) (m?,w1) INSTABLE (m2,w?) (m2,w) (m3,w?) (m3,w) (m?,w) (m1,w?) (m1,w) (mi,w?) (mi,w) (m,wi) (m,w2) (m,w3) (m,w1) (m2,w) (m3,w) (mi,w) (m1,w) (m3,w?) (mi,w?) (m2,w?) (m2,w) (m3,w) (m,wi) (m?,w3) (m?,wi) (m?,w2) (m,w2) (m,w3) (mi,w) (m,w) (m1,w?) (m1,w) (m?,w1) (m,w1)
Nouvel algorithme : S-procédure ๒ Nouvel algorithme : S-procédure La procédure de stabilisation S’applique à tous les algorithmes ZZm S-ZZm ZZw S-ZZw OZ S-OZ BZ S-BZ RZm S-RZ RZw S-RZ RGSm S-RGS RGSw S-RGS O(n2) O(n3) O(n3) COMPLEXITE O(n3) O(n4)
Comparaison des résultats ๒ Comparaison des résultats SBZ Totalement stable 99,70% 99,80% 26,45% 48,27% Satisfaction Égalité de sexe α β Complexité O(n3)
๓ Système de mise en correspondance
Système de mise en correspondance des jonctions en multi échelle ๓ x y Système de mise en correspondance des jonctions en multi échelle Ik-1 D Ik i E Idiff E P Ji,k-1 Ji,k M R R Ci Ci,i F Ci,s
Système de mise en correspondance des jonctions en multi échelle ๓ Système de mise en correspondance des jonctions en multi échelle Ik-1 D Ik i E Idiff E P Ji,k-1 Ji,k M R R Ci Ci,i F Ci,s
Système de mise en correspondance des jonctions en multi échelle ๓ Système de mise en correspondance des jonctions en multi échelle Ik-1 D Ik i E Idiff E p 1 3 q 2 (m,w) (m3,w?) (mi,w?) (m2,w?) (m1,w?) (m2,w) (m3,w) (mi,w) (m1,w) (m?,w3) (m?,wi) (m?,w2) (m?,w1) (m,wi) (m,w2) (m,w3) (m,w1) P Ji,k-1 Ji,k M R R Ci Ci,i F Ci,s
Système de mise en correspondance des jonctions en multi échelle ๓ Système de mise en correspondance des jonctions en multi échelle Ik-1 D Ik i E Idiff E P Ji,k-1 Ji,k M R R Ci Ci,i F Ci,s
Système de mise en correspondance des jonctions en multi échelle ๓ Système de mise en correspondance des jonctions en multi échelle Ik-1 D Ik i E Idiff E P Ji,k-1 Ji,k M R R Ci Ci,i F Ci,s
Mise en correspondance Exemples ๓ Mise en correspondance Exemples
Mise en correspondance Exemples ๓ Mise en correspondance Exemples
Mise en correspondance Exemples ๓ Mise en correspondance Exemples
Mise en correspondance Exemples ๓ Mise en correspondance Exemples
Mise en correspondance Exemples ๓ Mise en correspondance Exemples
Mise en correspondance Exemples ๓ Mise en correspondance Exemples
๔ Application à la stéréovision
Application à la stéréovision Détection d’obstacle ๔ Application à la stéréovision Détection d’obstacle IEF / AXIS / SACOL Méthode de Le Coat (programmation dynamique) Notre méthode Méthode de Birchield Mise en correspondance Acquisition d’images Calibration de caméra V-Disparités Disparités Détection d’obstacles Implémenté sur RT-maps
Application à la stéréovision Détection d’obstacle ๔ Application à la stéréovision Détection d’obstacle
๕ Application à l’analyse de mouvement
Application à l’analyse de mouvement ๕ Application à l’analyse de mouvement Contraintes sur l’ensemble de niveaux 1 2 3 Ensemble de niveau Lignes de niveau K-moyennes Segmentation d’objets homogènes images Jonctions flots objets C-moyennes floues avec contrainte spatiale Segmentation d’objets non homogènes Mise en correspondance Détermination du fond et suivi des objets
Application à l’analyse de mouvement ๕ Application à l’analyse de mouvement Contraintes sur l’ensemble de niveaux 1 2 3 Ensemble de niveau Lignes de niveau K-moyennes Segmentation d’objets homogènes images Jonctions flots objets C-moyenne floue avec contrainte spatiale Segmentation d’objets non homogènes Mise en correspondance Détermination du fond et suivi des objets
Application à l’analyse de mouvement ๕ Application à l’analyse de mouvement Contraintes sur l’ensemble de niveaux 1 2 3 Ensemble de niveau Lignes de niveau K-moyennes Segmentation d’objets homogènes images Jonctions flots objets C-moyenne floue avec contrainte spatiale Segmentation d’objets non homogènes Mise en correspondance Détermination du fond et suivi des objets
Identification du mouvement C-moyennes floues avec contrainte spatiale ๕ Identification du mouvement C-moyennes floues avec contrainte spatiale Paramètres de déplacement des flots F4 F2 F3 F1
Identification du mouvement C-moyennes floues avec contrainte spatiale ๕ Identification du mouvement C-moyennes floues avec contrainte spatiale
Segmentation d’objets ๕ Segmentation d’objets Objet homogène Objet non homogène
Segmentation d’objets homogènes ๕ Segmentation d’objets homogènes x y EFLAM λx F * λu λd * λx
Segmentation d’objets homogènes ๕ Segmentation d’objets homogènes x y EFLAM F * λd λu *
Segmentation d’objets homogènes ๕ Segmentation d’objets homogènes x y EFLAM F * λu λd * λx
Resultat Segmentation d’objets homogènes ๕ Resultat Segmentation d’objets homogènes
Segmentation d’objets non-homogènes ๕ Segmentation d’objets non-homogènes λ2 λ3 λx λ1 λ1 λ3 λ1 λ3
Segmentation d’objets non-homogènes JF-Snake ๕ Segmentation d’objets non-homogènes JF-Snake λ1 λ2 λ3 Donna J. Williams et Mubarak Shah (1992 )
Segmentation d’objets non-homogènes JF-Snake ๕ Segmentation d’objets non-homogènes JF-Snake λ1 λ2 λ3 x y EFLAM pj vi Énergie Lmax Fj
Segmentation d’objets non-homogènes JF-Snake ๕ Segmentation d’objets non-homogènes JF-Snake
Conclusion / Perspective ๖ Conclusion / Perspective Algorithmes de décision pour la mise en correspondance : mariages stables Application pour la détection d’obstacle et l’analyse du mouvement Technique vs. ensemble de niveaux Mariages stables à « N-Dimensions » Optimiser l’exécution
Merci Pour Votre Attention