Segmentation (2 ième partie) Références: Sonka et al: sections 6.2.6, 10.2 (10.6) Autres: chap. 15-16 Forsyth chap. 4 Ballard & Brown (pour GHT) Dernière.

Slides:



Advertisements
Présentations similaires
de l’algorithme de Viterbi
Advertisements

Corrélation Position du problème Définition covariance (X,Y) r =
Traitement d’images : concepts fondamentaux
Traitement d’images : concepts fondamentaux
Traitement d’images : concepts avancés
Application au suivi des paramètres de problèmes de vision
III. IDENTIFICATION PARAMETRIQUE DES SYSTEMES LINEAIRES
Gestion de portefeuille
DECONVOLUTION ET AUTRES
Efficient Simplification of Point-Sampled Surfaces
Cours 8 Problèmes de dynamiques : techniques de résolution pas-à-pas
Cours 5-b Problèmes spatio-temporels d’ordre 1 en temps
Cours 3-a Méthode des éléments finis 1D
Apprentissage supervisé à partir de séquences
RECONNAISSANCE DE FORMES
Soizic Geslin Samy Fouilleux Minh Le Hoai Maxime Chambreuil
Les K plus proches voisins
Xavier Décoret* Frédo Durand° François Sillion*
1. Représentation du mouvement dans le plan - image
3. Analyse et estimation du mouvement dans la vidéo
Xialong Dai, Siamak Khorram
Maria-João Rendas CNRS – I3S Novembre 2006
Modélisation des systèmes non linéaires par des SIFs
Programmes du cycle terminal
La vision stéréo Sonka et al: sections , , , , Suppl: 11.4 au complet
Concepts avancés en mathématiques et informatique appliquées
Géométrie vectorielle
RECONNAISSANCE DE FORMES
Résolution des Équations Différentielles
Concepts avancés en mathématiques et informatique appliquées
Construction de modèles visuels
La segmentation
Rappel... Solution itérative de systèmes linéaires (suite et fin).
DEA Perception et Traitement de l’Information
Méthodes de prévision (STT-3220)
OBJETS ÉLÉMENTAIRES DANS L’ESPACE À TROIS DIMENSIONS
Génération d’un segment de droite
PIF-6003 Sujets spéciaux en informatique I
SIF-1033 Traitement d’image
Mise en oeuvre des MMCs L'utilisation des MMCs en reconnaissance des formes s'effectue en trois étapes : définition de la topologie de la chaîne de Markov,
Interprétation automatique
TRAITEMENT D’IMAGE SIF-1033.
Modélisation géométrique de base
Cours du 25 octobre Mardi le 24 octobre
La décomposition en valeurs singulières: un outil fort utile
Géométrie épipolaire (deux vues)
Segmentation (1ère partie)
Introduction à la reconnaissance:
Etude et test des algorithmes d'estimation de mouvement en MPEG
Programmation linéaire en nombres entiers
Classification : objectifs
Extraction de segments pour la reconnaissance de symboles : Une approche robuste par Transformée de Hough Présenté par : Simon BERNARD Encadré par : Jean-Marc.
STATISTIQUES – PROBABILITÉS
Sujets spéciaux en informatique I PIF Approches non-paramétriques u Technique de classification NN u Technique de classification k-NN u Erreurs.
Probabilités et Statistiques Année 2010/2011
Apparence globale 1 image = 1 vecteur Base apprentissage Rotation –capture les variabilités Troncature –Quelques coefficients Représentation linéaire Espace.
Rappels Variables nominales :
STATISTIQUE INFERENTIELLE LES TESTS STATISTIQUES
Romain Dupont encadré par J.Aubourg et P. Fuchs
Méthode des moindres carrés (1)
Concepts avancés en mathématiques et informatique appliquées MAP-6014.
Résolution des équations différentielles
Régression linéaire (STT-2400)
Le modèle de régression linéaire Claude Marois © 2010.
Analyse des données. Plan Lien entre les statistiques et l’analyse des données Propagation des erreurs Ajustement de fonctions.
Méthodes de prévision (STT-3220)
Partie II : Segmentation
Traitement du signal (images) u Sujets –Détection des droites –Transformée de Hough (espace paramétré) *avec la pente et l’ordonnée à l’origine *avec.
Exemple et critique d’un système de vision simple Patrick Hébert (dernière révision septembre 2008) Référence complémentaire: Shapiro et Stockman: chap.
Transcription de la présentation:

Segmentation (2 ième partie) Références: Sonka et al: sections 6.2.6, 10.2 (10.6) Autres: chap Forsyth chap. 4 Ballard & Brown (pour GHT) Dernière révision: Patrick Hébert 2008

Identification de structures *tirée de Forsyth On ne cherche pas simplement à regrouper des éléments semblables mais plutôt des éléments qui forment un tout ayant des propriétés intéressantes.

Régression et segmentation Problème: regrouper des edgels (ou encore simplement des points d'arêtes) en des structures géométriques (segments de droite, cercles, formes quelconque, etc …) puis estimer les paramètres de ces structures

Trois classes de problèmes: 1. Déterminer les paramètres de la structure sachant que tous les points appartiennent à la même structure (régression) 2. Diviser un ensemble de points en K structures, K connu. Estimer les paramètres de chacune des structures. 3. Idem 2 mais K inconnu (problème général)

Première classe de problèmes: Estimation des paramètres *voir Rappel mathématique p.36 Exemple de la droite

Cas général (total least squares ou erreur dans les variables) On suppose une erreur sur x et sur y. La distance d'un point (x i,y i ) à une droite dans les conditions ci-haut: d = ax i + by i + c Les équations normales: voir p du Rappel mathématique

Robustesse Effet des points erratiques Solution: minimiser l'erreur médiane hypothèse: 50% de bons points

M-estimateurs *tirée de Forsyth Un choix possible

Algorithme M-Estimateur (minimisation non-linéaire) résiduel

Alternative: RANSAC- RANdom SAmple Consensus

Ajuster d'autres primitives

Seconde classe de problèmes Diviser un ensemble de points en K structures, K connu. Estimer les paramètres de chacune des structures. Solution basée sur K-means ou l’algorithme EM

Application de l’algorithme K-means On fixe le nombre de droites On choisit des solutions de départ  i = (a i,b i,c i ) On minimise donc on associe chaque point à la droite la plus proche On réaffecte les points s’il y a lieu

Une approche probabiliste en segmentation et en régression: Introduction à l’algorithme EM Illustration avec une droite ajustée à partir d’un ensemble de points Si on connaît une droite de paramètres  et que le modèle d’erreur est par exemple, gaussien (d’écart-type ), alors on peut générer un ensemble de points {x}

Suite … Pour deux droites Probabilité associée à un point Probabilité associée à un ensemble de points Probabilité associée à la droite l

Décision d’appartenance AB  A =  B AB  A <  B On minimise la probabilité d’une erreur de classification (aire en bleu pondérée par les probabilités associées à A et à B).

Suite … On cherche Si on connaissait la droite d’appartenance de chaque point, on pourrait calculer les  l et on obtiendrait les  l en comptant le nombre de points associés à chacune des droites De même, si on connaissait , on pourrait déterminer, pour chaque point, la droite d’appartenance la plus vraisemblable (et donc la segmentation) Problème: on ne connaît ni l’appartenance, ni 

Suite … Principe de l’algorithme EM (Expectation- Maximization) On choisit/fixe  l pour chaque classe d’appartenance. Pour chacun des points, on estime sa probabilité d’appartenance à chacune des classes (support map I) (étape Expectation). On réévalue la probabilité associée à chacune des classes ainsi que les paramètres de chacune des classes, , sur la base du maximum de vraisemblance. On itère sur les deux étapes précédentes tant qu’une solution stable n’est pas atteinte.

Suite …illustration r points K classes

Suite … étape E Pour des droites ou des segments, il suffit d’estimer les valeurs I jl au moyen de l'expresion de la page précédente Note: Pour le cas d’une droite l (où d’une structure géométrique), la probabilité d’appartenance est proportionnelle (modèle gaussien) à l’expression:

Suite … étape M Pour des droites, on procède donc à l’ajustement d’une droite pour chaque colonne en pondérant la contribution d’un point par I jl. Pour des segments dans une image, on calculera une moyenne pondérée des vecteurs descriptifs associés à chaque pixel ainsi que la covariance (moyenne pondérée des écarts à la moyenne!). Dans les deux cas, les valeurs  l sont remises à jour.

Exemples d’applications de l’algorithme EM Segmentation basée sur la texture Segmentation basée sur le mouvement Extraction de droites Soustraction de fond Calcul automatique de la matrice fondamentale … Note: il faut une solution de départ!

Troisième classe de problèmes Diviser un ensemble de points en K structures, K inconnu. Estimer les paramètres de chacune des structures.

Quel point appartient à quel droite? exploiter la connectivité (suivi de contour) et l'orientation des edgels algorithme naif incrémental: Et la connectivité entre les segments? *de Forsyth

Division récursive d'une courbe en segments de droite on fixe un seuil E point le plus loin (Hypo: on connaît l'ordre des points) *pas d’estimation!

Transformée de Hough Une solution au problème général (3) Soit un ensemble de points d'arêtes, la stratégie est d'identifier les droites (ou autres structures) en déterminant toutes les droites qui peuvent passer par chacun des points. Une procédure de vote permet d’identifier les droites présentes.

Illustration Cette droite recevrait 3 votes

Mise en application La forme y = mx + b n’est pas intéressante car on ne peut traiter les droites verticales équivalent à  x y

Mise en application (suite) On représente un espace discret (r,). On connaît r max. Pour un point x i,y i, on applique l’équation de la droite en variant et pour chaque valeur deon calcule r.

Mise en application (suite) r 0  Exemple d’accumulateur (1 point) 0 

*tirée de Forsyth

Problèmes pratiques quantification de l'espace de Hough trop grossière -> fausses alarmes car fusion de droites de paramètres semblables trop fine -> manques en présence de bruit ne tient pas compte de la proximité des points

Améliorations on vote aussi pour les cases voisines avec un poids moindre ou bien à la fin, on intègre le vote des cases voisines avec un poids moindre selon la distance. Au lieu des points d’arêtes, on considère les edgels et leur orientation. On évite alors d’incrémenter plusieurs cases dans la table.

Autres structures Pourriez-vous exploiter la même idée pour extraire des cercles de rayon connu?

Transformée de Hough généralisée (GHT) Au lieu d'une droite, on cherche une forme quelconque Pour chaque edgel de l'image, on vote pour une position de la forme étant donné un edgel du modèle (s'il y a beaucoup de edgels dans l'image, on fera plutôt du template matching, i.e. glisser le patrons de edgels) très robuste aux occultations Implantation efficace (Ballard 1981!) Un patron de edgels! (template matching)

Illustration modèle Pour un edgel (rouge), on identifie toutes les possibilités de poses. Quelques-unes sont représentées ici.

GHT efficace *tirée de Ballard et Brown

Algorithme GHT Précalculer la R-table Initialiser l’accumulateur (quantifier) A(x min :x max,y min :y max, min : max,s min :s max ) Pour chaque edgel (en x,y) Calculer  Calculer les centres possibles, i.e. Pour chaque valeur associée à  dans la R-table Pour chaque angle  Pour chaque échelle s xc=x+r(  )Scos[  (  )+  ] yc=y+r(  )Ssin[  (  )+  ] Incrémenter A(xc,yc,S,  ) Identifier les maximums dans l’accumulateur A *voir aussi document generalizedhough.pdf dans la section références

Complément Courbes paramétriques Bases du maximum de vraisemblance (maximum likelihood) Diverses applications de RANSAC (ex: estimer une matrice fondamentale) Choix automatique d’un modèle