Traitement d’images : concepts fondamentaux

Slides:



Advertisements
Présentations similaires
Traitement d’images : concepts fondamentaux
Advertisements

Traitement d’images : concepts fondamentaux
Traitement d’images : concepts fondamentaux
Traitement d’images : concepts fondamentaux
Traitement d’images : concepts avancés
Traitement d’images : concepts fondamentaux
Traitement d’images : concepts avancés
Calcul géométrique avec des données incertaines
Champs de Markov en Vision par Ordinateur
PRINCIPE SIMPLIFIE DE LA COMPRESSION MP3
Du signal continu au numérique
Cours 4 : Restauration et filtrage d’image
INTRODUCTION 1. Une représentation du signal où le bruit est isolé
2. Echantillonnage et interpolation des signaux vidéo
6. Quantification des signaux visuels. Codage prédictif (MICD)
3. Analyse et estimation du mouvement dans la vidéo

Traitement d'images Hugues BENOIT-CATTIN.
Traitement d’images : briques de base S. Le Hégarat
Introduction à limagerie numérique Acquisition, Caractéristiques, Espaces couleurs, Résolution.
Filtrage d’image Cours 7
Maillage et création de surface sous Geomagic
Les système linéaires Stéphane Paris.
Détection de « tâches dobjets artificialisés » D.Réchal IRD, ESPACE Dev 18/02/2011 – Montpellier (France)
Prétraitement de l’image
Réalisateur : PHAM TRONG TÔN Tuteur : Dr. NGUYEN DINH THUC
Concepts avancés en mathématiques et informatique appliquées
Le filtrage d’images.
Chapitre 2 : Filtrage Professeur. Mohammed Talibi Alaoui
Opérateurs morphologiques
La segmentation
Une visite guidée dans le monde des ondelettes
Traitements à base d’histogrammes Cours 6
Traitement d’images : concepts avancés
Méthode des Ensembles de Niveaux par Eléments Finis P1
Traitement d’images : concepts fondamentaux
PIF-6003 Sujets spéciaux en informatique I
TRAITEMENT D’IMAGE SIF-1033.
Chapitre 4 : Morphologie Mathématique
Distance de BORGEFORS Et Applications
LES REHAUSSEMENTS D'IMAGES
Le filtrage d’images.
Interprétation automatique
TRAITEMENT D’IMAGE SIF-1033.
Modélisation géométrique de base
AGIR : Défis du XXIème Siècle.
Segmentation par analyse d’une image de gradient (ligne de partage des eaux) par fusion de régions dans un graphe par méthode variationnelle (Mumford.
Morphologie mathématique ensembliste
Module 4: Le filtrage d’images. Objectifs du filtrage.
DU TRAITEMENT DU SIGNAL
Notions préliminaires de géométrie discrète
Calcul parallèle => partitionner les données en sous-groupes associés aux processeurs. P0 P2 P1.
Classification : objectifs
Traitement d’images Prétraitements.
Modèles Mathématiques et représentation discrètes pour la description des images couleur Luc Brun.
Les réseaux de neurones à réservoir en traitement d’images
Institut de sciences et technologies Département d’informatique
Traitement de base d'une image (partie 1)
Morphologie mathématique (cas fonctionnel)
Introduction au Traitement d’image
Les réseaux de neurones à réservoir en traitement d’images
SUJETS SPÉCIAUX EN INFORMATIQUE 1
MAP-6014 Concepts avancés en mathématiques et informatique appliquées
INF-1019 Programmation en temps réel
SIF1033 TRAITEMENT D’IMAGE
Mathématiques pour Informaticien I
Traitement d’images 420-D78-SW A15 Semaine 02.
SSII, séance n°13, bilan du cours 15 décembre 2015 Dernière séance 2015 Résumé des chapitres et notions abordées en 2015.
Filtrage des images.
Transcription de la présentation:

Traitement d’images : concepts fondamentaux Définitions fondamentales et prétraitements :  Information représentée par un pixel, Manipulation d’histogrammes : égalisation, Filtrage passe-bas. Introduction à la morphologie mathématique (cas binaire) :  Erosion, dilatation, ouverture et fermeture binaires, Reconstruction géodésique, étiquetage en composantes connexes, Squelette. Détection de contours : filtrage passe-haut, filtrage optimal, traitement des contours : fermeture, transformée de Hough. Introduction à la classification (cas pixelique) : algorithme des k-ppv, des c-moyennes critères bayésiens : MV, MAP.

Information représentée par 1 pixel Selon longueur d’onde Selon longueur d’onde, les propriétés de réflexion et d’absorption diffèrent  distinction de différents objets (e.g. télédétection) Géométrie d’acquisition  échantillonnage résolution spatiale Discrétisation de l’espace : pavage Capacité à discerner 2 objets proches spatialt Liée à la taille du pixel : Haute résolution  pixels ‘petits’ Basse résolution  pixels ‘grands’ Quantification des niveaux de gris provient de la discrétisation des niveaux de gris

Exemples ‘d’école’

Exemples en télédétection ERS/SAR (bande C, pix. 3030m) Tunisie, désert Delta du Rhône SPOT/HRV (Visible/IR, pix. 2020m) SPOT/VGT (Visible/IR, pix. 1km2) Val de Saône

Pavage et maillage Pavage = partition de l’espace continu en cellules élémentaires Cas de pavages plan réguliers : cellules identiques et régulières Maillage = ensemble des segments reliant les ‘centroïdes’ des cellules ayant une arête commune Dualité pavage et maillage

Pavage de Voronoï Ensemble de germes {P1, P2, …, Pn} V(Pi)={PR2 / j[1,n], d(P,Pi)d(P,Pj)} Propriétés : tout sommet de Voronoï est le centre d’un cercle (de Delaunay) passant par 3 germes et ne contenant aucun autre germe ; V(Pi) non borné ssi Pi  la frontière de l’enveloppe convexe des Pj Triangulation de Delaunay Algorithmes sous optimaux : insérer les points un par un Applications, e.g. : enveloppe convexe de points, distance de 2 ensembles de points Cas discret : distance discrète

Images niveaux de gris vs binaire Image niveaux de gris idéale Image niveaux de gris réelle # colonnes # lignes pixel (i,j) Amélioration d’image / Filtrage Classification / binarisation Image binaire idéale Image binaire bruitée Taille = #lignes  #colonnes  #bits/pixels

Images couleur vs binaire / niveaux de gris Images binaires idéales (3 canaux) Canal Rouge Vert Bleu Image couleur idéale Image couleur réelle

Représentations Images peuvent être binaires  x{0,1} à niveaux de gris  x[xmin, xmax] (généralement [0,255]) RVB  x = (xrouge, xvert, xbleu) avec xrouge [xmin, xmax] etc. multispectrales x = (xl1, xl2, …, xln) avec xli [xmin, xmax] etc. multitemporelles x = (xt1, xt2, …, xtn) avec xti [xmin, xmax] etc. Image = Signal bidimentionnel à support et à valeurs bornées {x(i,j), i[1,N], j[1,M]} Processus stochastique {x(s), s[1,NM]} Vecteur aléatoire (x(1), … x(NM)) Surface (i,j,x(i,j))

Amélioration d’images Problème : Comment rehausser le contraste d’une image de façon à faire apparaître les objets ? Comment s’affranchir des paramètres de luminosité lors de l’acquisition ? ‘Étalonnage’ des valeurs des pixels en vue de leur comparaison Applications : mise en correspondance, détection de changement, classification, etc. Principalement le cas des images à niveaux de gris (décomposition des images multiXXX en N images à niveaux de gris)

1ères méthodes : modifications de l’histogramme Transformation qui n’altère pas la relation d’ordre Translation d’histogramme Etalement de la dynamique Seuillage Transformation linéaire : x’(s) = a.x(s)+b x’(s)[0,256]  a.xmin+b=0 et a.xmax+b=255  a=(255-0)/(xmax-xmin) et b=0-(255-0)xmin/(xmax-xmin) Niveau de gris # pixels Niveau de gris # pixels Perte d’information irréversible Niveau de gris # pixels

Egalisation d’histogrammes Principe : Maximiser l’entropie Niveau de gris # pixels Algorithme Calcul de l’histogramme initial H (attention : bins suffisamment fins)  Pour chaque bin, on stocke sa borne sup. et le # de pixels Calcul de l’histogramme égalisé H’ (nbp pixels/bin, nbpcst) n=0; k=0; Pour chaque bin j de H { n+=#pixels de H[j]; si nnbp, alors { borne sup de H’[k] = borne sup de H[j]; #pixels de H’[k++] = #pixels de H[j]; n=0; } } Création de la table de correspondance entre les niveaux de gris de l’image initiale et de l’image égalisée Création de l’image égalisée si n>0 { borne sup de H’[k] = xmax ; #pixels de H’[k++] = n; } Soit j / x[borne sup H’[j] ; borne sup H’[j+1] ] T[x]=j 255/k s  domaine image, x’s=T[xs]

Egalisation des cas ‘d’école’ Avant égalisation Après égalisation Avant égalisation Après égalisation Après étirement

Egalisation : autre exemple Avant égalisation   Après égalisation  Pas de réelle sensibilité visuelle à l’histogramme

Spécification d’histogrammes Principe Objectif : à partir de l’image X et HX, son histogramme, on calcule Y=g(X) ayant HY donné Soit FX la fct d’égalisation de X, et FY celle de Y. Les deux égalisations doivent conduire au même histogramme (uniforme)  Y= Fy-1(FX(X)) Y n’est pas connue mais HY si ce qui suffit à spécifier FY et FY-1 Niveau de gris # pixels Niveau de gris # pixels FX Niveau de gris # pixels Niveau de gris # pixels Niveau de gris # pixels FY FY-1 Application : inter-étalonnage d’images Attention : perte de dynamique

Egalisation : exercices Soit une image ayant pour histogramme Calculer sa fonction d’égalisation -A +A +B +2B -A +A +B

Filtrage passe-bas d’images Problème : Comment réduire le bruit d’une image de façon à améliorer la ‘netteté’ des objets ? Comment réduire la variabilité intrinsèque des objets de façon à les simplifier ? Hyp. fondamentale : le bruit est 1 signal haute fréquence et l’information ‘utile’ est 1 signal basse fréquence. Applications : analyse statistique, classification, etc. Principalement le cas des images à niveaux de gris (décomp. des im. multiXXX en N im. à niv. de gris)

Modèles de bruits Valeurs ‘aberrantes’ en p% pixels de l’image, ex : - Bruit ‘poivre et sel’ Valeurs ‘altérées’ en tout pixel de l’image, ex : - Bruit ‘gaussien’ - Bruit à distribution uniforme - Bruit à distribution de Rayleigh Bruit indépendant en chaque pixel  hautes fréquences sur l’image xs valeur non bruitée en s, ys valeur bruitée en s  f(ys=0)=f(ys=255)=p/2, f(ys=xs)=1-p Bruit généralement additif : zs=ys-xs Ex. de ddp bruit : f(zs)=C.exp{-K|zs|n} n = 0  bruit uniforme n = 1  bruit exponentiel C= K/2 n = 2  bruit gaussien K=1/[2s2 ], C=1/[sqrt(2p)s] bruit Rayleigh f(zs)=zs/s2.exp{-zs2/[2s2 ]}

Exemples de bruits Poivre et sel 10% Gaussien s=20 Gaus. s=10, poivre&sel 10%

Modèle Gauss-Markov Histogramme à saut  gaussienne centrée : Fct d’autocorrélation  exponentielle : Modèle Gauss-Markov : processus stationnaire à accroissement gaussien : p(xi /xi-1)= p(xi -xi-1) Modèle mosaïque : image stat. ‘par morceaux’  modèle de Markov-Gauss spécifique à chaque ‘morceau’ de l’image Exemple : morceau

Quelques filtres lisseurs de base (I) Cas d’images bruitées (e.g. gaussien, impulsionnel)  prétraitement : ‘lissage’ Filtrage linéaire Moyennage Rq : Somme des coefficients = 1 Exemple avec filtre ‘triangle’ Linéaire gaussien, paramètre s e.g. s=1.0, s=1.6 filtrage seuillage

Quelques filtres lisseurs de base (II) Filtres à coefficients séparables Réponse impulsionnelle : h(i,j) = hl(i).hc(j) filtrage linéaire selon les colonnes par hc, puis filtrage linéaire selon les lignes par hl Exemples Bruit gaussien s=30 Filtre moyenne 33 Filtre Gaussien s=1.0

Quelques filtres lisseurs de base (III) Propriétés du filtre médian : Pas de nouvelles valeurs  s’applique aux images binaires, préserve les contours rectilignes (mais érode les convexités et coins) Invariance par étirement de contraste  commute avec toute transformation croissante des niv. de gris ( du filtrage linéaire qui ne commute qu’avec les transf. linéaires) Elimination du bruit poivre et sel  np pixels poivre, ns pixels sel, la médiane est dans les n-np-ns pixels restants corrects sauf si np ou ns>n/2 Autres filtres de rang : érosion fonctionnelle (k=1), dilatation fonctionnelle (k=p) Quelques filtres lisseurs de base (III) Hyp: voisinage Vs traversé par 1 contour au + Vs décomposé en paires (Pi,Qi)  pour chaque paire ne considérer que le pixel le + proche en caractéristique(s) de P0 Ex. P1 P2 P3 P4 P0 Q4 Q3 Q2 Q1 Filtrage non linéaire De Nagao SNN (Symetric Nearest Neighbor) Filtrage d’ordre k Médian (p pixels, p≤|Vs|, k=p/2) Prise en compte de processus bord Algorithme : 1) Calcul de l’histogramme sur le voisinage Vs 2) Tri des valeurs du voisinage 3) Sélection E le plus compact |E|=p 4) Sélection de la valeur de E à l’ordre considéré Bruit gaussien s=30 Filtre de Nagao Filtre médian 33

Bruit gaussien s=20 + bruit impuls 10% Filtrage moyenne Filtrage gaussien Filtrage de Nagao Filtrage médian Bruit gaussien s=20 33 s=1.0 33 Bruit gaussien s=60 77 s=2.5 77 Bruit impulsion 15% 77 s=2.5 77 33 s=1.0 33 Bruit gaussien s=20 + bruit impuls 10% 77 s=2.5 77

‘S&P’ 10%  filtre médian 7x7 Bruit ‘P&S’ 10% Image non bruitée Gaus. s=20  filtre gaus. s=2.5 Bruit gaussien s=20 ‘S&P’ 10%  filtre médian 7x7 Bruit ‘P&S’ 10% s=20 + ‘S&P’ 10%  filtre Nagao Bruit gaussien s=20, ‘P&S’ 10%

Filtrage : exercices Que font les filtres à noyau de convolution suivants ? (prenez un exemple numérique si nécessaire) Quelle est la condition sur les coefficients pour que le filtrage soit passe-bas ? Décomposer le filtre 2D de noyau sous forme du produit de convolution de 2 filtres 1D. En déduire un moyen efficace, en nombre d’opérations par pixel, d’implémenter les filtres précédents.

Des pixels à l’image § ‘Amélioration d’images’ : image vue comme 1 collection de pixels (val. scalaires, vectorielles…) vus comme des échantillons indépendants d’1 même distribution. § ‘Filtrage PB d’images’ : im. vue comme la superposit° d’1 signal 2D constant par morceaux (sur le support 2D) et d’1 collect° de d’échantillons de bruit indépendants. Ce qu’on recherche : pas des pixels, mais des objets  comment passer d’1 vision myope (pixel, voisinage pixel) à 1 caractérisation niveau objet ? On laisse de coté (temp.) l’aspect radiométrique pour se concentrer sur les aspects géom. et topolog.  cas d’images binaires Caractérisation géométrique et topologique (et non seulement radiométrique)

Notions préliminaires de géométrie discrète Topologie 2D discrète :  nombre de composantes connexes, de trous,  représentation hiérarchique des objets. Distances discrètes :  dimension (e.g. rayon) des composantes connexes,  distance entre les objets. Relations ensemblistes entre les parties d’un objet

Notion de voisinage élémentaire Image discrète = graphe Connexité trame carrée trame hexagonale  chemin sur le graphe = succession de nœuds du graphe joints par des arcs chemin 4-connexe : chemin 8-connexe :

Notion d’ « entourage » Théorème de Jordan : toute courbe simple fermée sépare l’espace en 2 composantes : l’intérieur et l’extérieur de la courbe. Cas de la trame carrée : tout chemin 4-connexe (resp. 8-connexe) simple fermé (Ai=Aj  i=j et Ai voisin de Aj  |i-j|=1[n]) sépare l’espace en 2 composantes 8-connexes (resp. 4-connexes) Nombre d’Euler = différence entre le # composantes connexes et le # de trous ( dualité des connexités). Soit : s=#singletons, a=#couples ligne ou colonne, d=#couples diagonaux, t=#trinômes, q=#quadrinômes, alors en 4-connexité E=s-a+q en 8-connexité E=s-a-d+t-q

Exemple : nombre d’Euler Cas 4-connexe : # composantes 4-connexes = 3 # de trous (8-connexes) = 1  E4=2 Cas 8-connexe : # composantes 8-connexes = 1 # de trous (4-connexes) = 2  E8=-1 s=16, a=14, d=13, t=10, q=0  En 4-connexité E4=s-a+q=2 En 8-connexité E8=s-a-d+t-q=-1

Ensembles de niveaux Relation d’ordre des régions ()  relation d’ordre des niveaux de gris ( ou ) Indépendance vis-à-vis des valeurs ‘absolues’ des niv. de gris, i.e. des conditions de luminosité etc.  Invariance par changement de contraste Upper Level Set Ux et Lower Level Set Lx Relation d’inclusion des ensembles de niveaux : Famille des Ux (ou celle des Lx) est suffisante pour reconstruire l’image y  ‘relatives’

Exemple simplissime minTree maxTree 255 0 127 127 255 0 255

Distances discrètes (I) Distance à 1 objet  minimum des distances euclidiennes (approximées) aux points de l’objet Propagation de distances locales Distances définies à partir d’un ensemble de vecteurs de déplacement Utilisation de masques Exemple : 1 1 1 0 1 1 1 1 4 3 4 3 0 3 11 11 11 7 5 7 11 5 0 5 7 5 7 11 1

Distances discrètes (II) Partition du masque en 2 sous-masques g1 et g2 causaux ULLR et LRUL Algorithme de calcul séquentiel 1) Poser 2) f0  image / points de l’objet  0 et les autres  + 3) pour k=1,2 si k=1, balayer l’image dans le sens UL  LR si k=2, balayer l’image dans le sens LR  UL 4) image des distances  f2 4 3 4 3 0 3

Distances discrètes : exemple ∞ ∞ 1 2 3 4 5 4 3 2 1 5

Distances géodésiques Intérêt des métriques géodésiques : tient compte des obstacles ( dist. euclidienne ou versions digitales).  distance géodésique : étant donnés 2 points a et b d’un compact X,  toujours un plus court chemin de a à b qui soit  X; la longueur de ce chemin est dX(a,b). Propriétés : dX est une distance généralisée, i.e. a b d c Séparation Sous-additivité

Bibliographie H. Maître, Le traitement des images, Hermès éditions. J.-P. Cocquerez & S. Philipp, Analyse d’images : filtrage et segmentation, Masson éditions. S. Bres, J.-M. Jolion & F. Lebourgeois, Traitement et analyse des images numériques, Hermès éditions.