Traitement d’images : concepts fondamentaux

Slides:



Advertisements
Présentations similaires
Manipulation d’un objet virtuel à l’aide d’une cible et d’une caméra
Advertisements

DEA Réalité Virtuelle et Maîtrise des Systèmes Complexes
Traitement d’images : concepts fondamentaux
Traitement d’images : concepts fondamentaux
Traitement d’images : concepts avancés
Traitement d’images : concepts fondamentaux
MODULE - METHODES POTENTIELLES Contenu du cours (par J.B. Edel & P. Sailhac) : I. Propriétés physiques des roches : densités, aimantations induites et.
3. Analyse et estimation du mouvement dans la vidéo
Quelques filtres lisseurs de base (I)
Traitement d’images : briques de base S. Le Hégarat
Introduction à limagerie numérique Acquisition, Caractéristiques, Espaces couleurs, Résolution.
Synthèse de filtres numériques
Chapitre 6 : Restauration d’images
Analyse d’images Détection de contour Cours 8
Réalisateur : PHAM TRONG TÔN Tuteur : Dr. NGUYEN DINH THUC
ASI 3 Méthodes numériques pour l’ingénieur
Concepts avancés en mathématiques et informatique appliquées
Le filtrage d’images.
Chapitre 2 : Filtrage Professeur. Mohammed Talibi Alaoui
Chapitre 3 : Détection des contours
Opérateurs morphologiques
Traitements d'images et Vision par ordinateur
La segmentation
Traitement d’images : concepts avancés
Traitement d’images : concepts fondamentaux
N Découverte n Présentation des équipes et des projets n 3- Extraction des caractéristiques u 3.1 Caractéristiques 3D et 2D u 3.2 Arêtes u 3.3 Gradient.
OBJETS ÉLÉMENTAIRES DANS L’ESPACE À TROIS DIMENSIONS
Génération d’un segment de droite
Projet Traitement d'images en C
I. Définitions & classification II. Approche fonctionnelle
PIF-6003 Sujets spéciaux en informatique I
SIF-1033 Traitement d’image
Chapitre 4 : Morphologie Mathématique
Pr. M. Talibi Alaoui Département Mathématique et Informatique
Distance de BORGEFORS Et Applications
Appariement de deux images
Le filtrage d’images.
TRAITEMENT D’IMAGE SIF-1033.
TRAITEMENT D’IMAGE SIF-1033.
Système de coordonnées
MAP-6014 Concepts avancés en mathématiques et informatique appliquées
Projet de session – SCG-67210
Détection de contours automatique et application aux images réelles
Projet Télédétection Vidéo Surveillance Deovan Thipphavanh – Mokrani Abdeslam – Naoui Saïd Master 2 Pro SIS / 2006.
Deux sujets traités La segmentation d’images
Morphologie mathématique ensembliste
Segmentation.
Module 4: Le filtrage d’images. Objectifs du filtrage.
Notions préliminaires de géométrie discrète
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.
SEGMENTATION EN REGIONS
Modèles Mathématiques et représentation discrètes pour la description des images couleur Luc Brun.
Morphologie mathématique (cas fonctionnel)
CHAPITRE III Calcul vectoriel
TNS et Analyse Spectrale
MAP-6014 Concepts avancés en mathématiques et informatique appliquées
INF-1019 Programmation en temps réel
SIF1033 TRAITEMENT D’IMAGE
PROGRAMMATION SCIENTIFIQUE EN C PRO Résolution de système d’équations non- linéaires (racines d’équations) u Méthode de la bissection u Analyse.
Méthode des moindres carrés (1)
Mathématiques pour Informaticien I
Suivi d’Horizons Sismiques
Partie II : Segmentation
PIF-6003 Sujets spéciaux en informatique I
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.
PROGRAMMATION SCIENTIFIQUE EN C
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.
Filtrage des images.
Transcription de la présentation:

Traitement d’images : concepts fondamentaux Amélioration d’images Amélioration du contraste Filtrage passe-bas du bruit Morphologie mathématique cas d’images binaires : Erosion, dilatation, ouverture et fermeture binaires, reconstruction géodésique, étiquetage en composantes connexes, squelette Classification Cas pixelique, décision bayésienne, algorithme des k-moyennes Détection de contours Filtrage passe-haut, filtrage optimal, transformée de Hough

Détection de contours : approche générale Contour = là où réside l’information au sens entropique Objectif Délimitation des objets Détection de points d’intérêt Méthodes dérivatives À partir du gradient ( vecteur 2D), calcul de sa norme et de sa direction Approximation de la dérivée 2nde par le Laplacien f(x) f’(x) f’’(x)

Principe des méthodes dérivatives Utilisation du gradient Calcul de l’image du gradient Calcul de l’image de la norme du gradient Calcul de l’image de la direction du gradient Seuillage (avec hystérésis) de l’image de la norme du gradient Elimination des non maxima locaux dans la direction du gradient Fermeture des contours Utilisation du laplacien Calcul de l’image du laplacien Calcul de l’image de la norme du gradient Calcul de l’image binaire Iz des passages par zéro du laplacien Application du masque binaire Iz à l’image de la norme du gradient Seuillage (avec hystérésis) de l’image de la norme du gradient |Iz Elimination des non maxima locaux dans la direction du gradient Fermeture des contours Laplacien trop bruité pour être utilisé seul

par filtrage linéaire passe-haut Gradient Sobel c=2 Prewitt c=1 Opérateur MDIF Filtres de Kirsch : 8 masques Rq : les filtres sont donnés pour des directions lignes – colonnes  cas de directions diagonales : La direction du gradient est l’argument du masque qui maximise la norme du gradient  à p/8 près Masque MDIF plus grand  moins sensible au bruit mais localisation des contours moins bonne Il existe aussi des généralisations de Sobel à des tailles (2d+1)(2d+1) : MX(i,j)=d/(|i|+|j|)(-i)/|i|, (i,j)[-d,d]2

par filtrage linéaire passe-haut Laplacien 4-connexité 8-connexité 1 filtre passe haut extrait l’information ‘complémentaire’ d’un filtre passe-bas : Id = MPB+MPH Ex : Coef. généralemt omis pour amplifier le résultat

et morphologiques Dilatation / érosion de fonctions Cas particulier : élément structurant g(x)=0 xRnD Propriétés Croissance par rapport à f, Extensivité / anti-extensivité (si origine incluse dans support de g), Croissance / décroissance par rapport à g, Commutations. Max – min sur le support de l’élément structurant appliqué au point considéré Opérateurs ‘différence d’opérateurs’ Gradient intérieur, grad. extérieur Gradient morphologique Laplacien morphologique Convergence vers gradient et laplacien euclidiens si élément structurant = boule eucl. centrée et rayon  0 Max + min - 2Id sur le support de l’élément structurant appliqué au point considéré Approximation boule 4-connexité 8-connexité

par filtrage optimal (I) Critères de Canny (i) Bonne détection, (ii) bonne localisation, (iii) faible multiplicité des maxima dus au bruit  Filtre impulsionnel à réponse finie (RIF) Filtre de Deriche : RII  Dérivée directionnelle en x = Image*h(x)*f(y) Dérivée directionnelle en y = Image*h(y)*f(x) Filtre de Shen - Castan Maximiser le rapport signal à bruit Minimiser la variance de l’erreur en distance Solution de Canny : RIF y(x) = a1eaxcoswx + a2eaxsinwx + a3e-axcoswx +a4e-axsinwx Filtre de lissage puis application d’un opérateur différentiel Solution de Deriche : RII y(x) = Cst/w.ea|x|.sinwx Soit m / m.w=a, alors m>>1  y(x)  h(x) = -a2.x.e-a|x| Lissage dans la direction perpendiculaire à celle de h par le filtre intégrateur de h : f(y) = b.(a.|y|+1).e-a|y| (f’(y) = b.a.signe(y).e-a|y|+b.(a.|y|+1).(-a.signe(y)).e-a|y| = b.h(y)) Solution de Shen et Castan : RII f(x) = be-b|x|, f1(x) = b.e-bx.u(x), f2(x) = b.e-b(-x).u(-x)

par filtrage optimal (II) Implantation du filtre de dérivation de Deriche Décomposition entre 1 partie causale et 1 anti-causale R1[i]=c.e-a.I[i-1]+2.e-a.R[i-1]-e-2a.R[i-2] R2[i]=-c.e-a.I[i+1]+2.e-a.R[i+1]-e-2a.R[i+2] R[i]=R1[i]+ R2[i] Implantation du filtre de lissage de Deriche R1[i]= b.I[i]+ b.e-a.(a-1).I[i-1]+2.e-a.R[i-1]-e-2a.R[i-2] R2[i]= b.e-a.(a+1).I[i+1]-b.e-2a.I[i+2]+2.e-a.R[i+1]-e-2a.R[i+2] Partie causale : f-(i)=b.(a.i+1).e-ia.u(i) TZ[f-(i)] = b.a.e-az-1/(1-e-az-1)2+ b/(1-e-az-1) Partie anti-causale : f+(i)=[ba.(-i).e(-i)(-a)+ b.e(-i)(-a)-bd(-i)].u(-i) TZ[f-(i)] = b.a.e-az/(1-e-az)2+ b/(1-e-az)-b Partie causale : h-(i)=c.i.e-ia.u(i) TZ[u(i)] = 1/(1-z-1) |z|>1 TZ[ai.x(i)] = X(z/a)  TZ[e-iau(i)] = 1/(1-e-az-1) TZ[ik.x(i)] = (z.d/dz)X(z)  TZ[ie-iau(i)] = e-az-1/(1-e-az-1)2 Partie anti-causale : h+(i)=(-c).(-i).e(-i)(-a).u(-i)

Exemples de et . B1 B2 || MM (B1) || MM (B2) || Prewitt || Sobel || MDIF D masque D MM (B1) D MM (B2) Deriche a=1 Deriche a=2 Deriche a=3 Shen b=0.5 Shen b=1

Détection de contours (I) Seuillage avec hystérésis Détection des pixels de valeur ≥ sh Ajout des pixels de valeur ≥ sb et qui  1 composante connexe ayant au moins 1 pixel de valeur ≥ sh Programmation avec 1 pile gérant la composante connexe : initialisation de l’image des contours ImaCont à 0 Initialisation de la pile P avec les pixels / ≥ sh Tant que |P|>0 Extraire M(xM,yM) de la pile ImaCont(xM,yM)  1 Pour chaque k-connex (k=4 ou 8) voisin de M, noté VM : Si VM P et si ImaCont(xVM,yVM)  1 et si ≥ sb, alors ajouter VM à P

Détection de contours (II) Détection des maxima locaux de la norme du gradient dans la direction du gradient q Cas soit A0=(i,j), A1=(i,j+1), A2(i-1,j+1) on cherche zM = a1A1+a2A2 avec a1+a2=1, (a1,a2)[0,1]2 alors a2=tanq et a1=1-tanq donc Autres cas : (i,j-1) (i,j) (i,j+1) (i+1,j-1) (i-1,j+1)

Fermeture de contours Construction d’1 « look-up table » permettant d’indexer les pixels candidats à la fermeture pour chaque configuration. Codage configuration : où xi=1 si contour, 0 sinon Ex. T[16][0]=1 ; T[136 ][0]=0 ; T[8][0]=1 T[16][j]={1,0,7} ; T[8][j]={0,7,6} Algorithme de fermeture : Pour chaque extrémité trouvée lors du balayage de l’image : Construction du sous-arbre de tous les chemins possibles de longueur p et du coût associé à chaque nœud : somme des normes des gradients en chaque point du chemin Sélection du nœud de coût maximum Prolongation du contour T[i][0] =1 si contour à prolonger (i[0,255]) T[i][j] avec j[1,3] donne les coordonnées relatives des 3 pixels candidats à la fermeture 1 2 3 4 7 6 5 1 2 3 4 7 6 5 1 2 3 4 7 6 5 i.e. pixel / T[i][0] =1 3p chemins

Après fermeture de contours Exemple D masque Prewitt Sobel MDIF Après fermeture de contours Deriche a=1 Deriche a=2 Deriche a=3 Shen b=0.5 Shen b=1

Transformée de Hough Utilisation d’information a priori pour reconnaître  le type d’objets recherchés et leur représentation Principe : Les objets recherchés sont décrits à l’aide de fonctions simples modélisées par leurs paramètres Ex.: segments de droites, arcs de cercles La transformée de Hough permet de passer de l’espace image à l’espace des paramètres pour rechercher dans cet espace les objets d’intérêt

Transformée de Hough : cas de la recherche de droites (I) Hors cas x = Cst Représentation d’une droite : y = ax + b Dans l’espace image I, x et y sont les variables (colonne et ligne) et (a,b) est un couple de paramètres fixes pour une droite donnée Dans l’espace des paramètres P, a et b sont les variables et (x,y) est un couple de paramètres fixes pour un pixel donné Par un point de I passe une infinité de droites, représentées par une droite dans P (b=ax–y), et A chaque point de P correspond une droite de I Algo : calculer, pour chaque point du contour dans I, la droite lui correspondant dans P ; Incrémenter les valeurs le long de cette droite ; déterminer le ‘point d’accumulation’ dans P P Q x y I DP DQ a b P

Transformée de Hough : cas de la recherche de droites (II) Représentation d’une droite : x.cosq + y.sinq = r avec 0 < r < diagonale de l’image, et 0 < q < 2p Espace des paramètres (r,q) A chaque point de I correspond une courbe dans P, et une intersection de courbes dans P correspond à une droite dans I

Transformée de Hough : cas de la recherche de cercles Représentation d’un cercle : (x–a)2 + (y-b)2 = r A un point de I correspond une surface dans P , et P représenté sous forme d’un tableau 3D (a,b,r) Si on se donne un rayon (en pixels) et un % de pixels devant appartenir à la circonférence du cercle, on peut en déduire le seuil dans P (en nombre de pixels ayant voté pour un cercle (a,b,r) ) a b r = r2 r3 r2 r1 Intensité fct du % d’intersection de l’ellipse et du cercle de rayon r

Contours : exercices (I) Pour la norme du gradient, on utilise l’une des trois normes suivantes : Comparer les valeurs obtenues par N1, N2 et N3 si l’on calcule le gradient discret avec D2x=[-1 0 1] et D2y=t[-1 0 1] Même question si le gradient discret est obtenu l’application du filtre de Sobel En déduire que N3 est la norme la mieux adaptée dans le premier cas, et N1 ou N2 dans le deuxième cas. Ecrire les équations aux différences pour les 3 masques utilisés pour estimer le laplacien discret :

Contours : exercices (II) Calculer le gradient et le laplacien morphologique dans les cas d’images suivants : Interpréter et commenter Effectuer un seuillage avec hystérésis sur : Donner les formules d’interpolation des gradients en M1 et M2 pour la détection des maxima locaux de la norme du gradient dans la direction du gradient q, pour les différents cas de q