traitement des images click to edit master title style · • en général: la plupart des pixels...
TRANSCRIPT
Click to edit Master title style
MasterPro IICI - Option GTI - 2014/2015
Traitement des Images
Jean-Marc Vezien
Jean-Marc Vezien
2
MasterPro IICI - Option GTI - 2014/2015
Plan du cours
1. Introduction et notions fondamentales
2. Filtrage
3. Morphologie mathématique
4. Le système visuel
3
MasterPro IICI - Option GTI - 2014/2015
Traitement des Images
2- Filtrage
Jean-Marc Vezien
4
MasterPro IICI - Option GTI - 2014/2015
Filtrer les images
Mauvais contrastes: faible ou excessif
Présence de bruit (perturbe l'image )
Détails intéressants difficilement visibles
Pourquoi ?
Procédé rapide
Techniques ad hoc
Pas forcément de modélisation du problème
Amélioration visuelle ou numérique (post-traitement)
Comment ?
5
MasterPro IICI - Option GTI - 2014/2015
Deux types de filtrage
Traitement global généralement trop coûteux rare
1. Techniques point à point
2. Traitement local par voisinage
6
MasterPro IICI - Option GTI - 2014/2015
Deux types de filtrage
1. Filtrage point à point
7
MasterPro IICI - Option GTI - 2014/2015
Modification de l’échelle des niveaux: s = T(r)
But: courbe monotone sur toute la plage de dynamique
de l'image
Si la plage d'entrée est < [0,1] on augmente le contraste
Si la plage de sortie est < [0,1] on diminue le contraste
Amélioration point à point
1
sortie
entrée
plage d'entrée
plage de sortie
0
Look-up table = LUT
8
MasterPro IICI - Option GTI - 2014/2015
Ex: Etalement d’histogramme
Imagerie solaire
9
MasterPro IICI - Option GTI - 2014/2015
Inversion d’échelle 1
sortie
entrée
plage
de
sortie
0
1
1
sortie
entrée
0
1
plage d'entrée
invariance des niveaux non intéressants
suppression des niveaux non intéressants
Mise en évidence de
niveaux
Utile quand on connaît par avance les
niveaux d'intérêt
1
sortie
0
1
plage d'entrée
Dents de scie: utilisation
de la dynamique
LUTS classiques
10
MasterPro IICI - Option GTI - 2014/2015
Exemple
Galerie de mine
11
MasterPro IICI - Option GTI - 2014/2015
noir blanc
histogramme
à renforcer
à comprimer
Image sombre
faiblement contrastée
• En général: la plupart des pixels occupent une plage faible de l'histogramme.
• En revanche, les deux queues correspondent à des pixels peu nombreux.
But: étaler la “bosse” principale de l'histogramme en largeur
→ histogramme plat → justifie l’égalisation
Egalisation d’histogramme
12
MasterPro IICI - Option GTI - 2014/2015
: T
s=T(r) Q(s) = la fonction de répartition de T(r)
Q(s) = Probabilité { T(X) ≤ s }
= Probabilité [X ≤ T -1(s)]
Q(s) = P [T -1 (s)] par définition
Egalisation : q(s) = 1
q(s)
dQ(s)
ds
q(s) =
d P(T -1(s)) ds
p T1
(s) .d T1(s)
ds
q(s) p(r).
dr
ds
s T(r) p(w )dw
0
r
Fonction d’égalisation
13
MasterPro IICI - Option GTI - 2014/2015
Si dans un intervalle A, l'histogramme de l'image originale est grand, la
fonction de répartition évolue rapidement ce qui donne T(A) large.
Inversement, si A occupe peu de pixels, la fonction de répartition évolue
peu, ce qui donne T(A) petit.
Ce sont bien les effets désirés.
histogramme fonction de répartition histogramme transformé
Continu
histogramme fonction de répartition histogramme transformé
Discret
Egalisation: interprétation
14
MasterPro IICI - Option GTI - 2014/2015
Exemple
15
MasterPro IICI - Option GTI - 2014/2015
But: transformer une image → l'histogramme de sortie ait
une forme prédéfinie.
p(r) la densité de probabilité originale
q(z) la densité de probabilité désirée.
z = T(r )
r s v z ≈ égalisation égalisation
s U(r) p(w)dw
0
r
v G ( z ) q ( z ) dz
0
z
G(r)
r0
r
U(r)
1z0
z 1
G(z)
z = G -1
.U(r)
Modification d’histogramme
16
MasterPro IICI - Option GTI - 2014/2015
Pg(f)
g zhyperbolisation
d'histogramme
modèle
visuel
min maxg
min maxg
min maxg
zmax
zmin
Hyperbolisation Transformation
visuelle
Egalisation
Histogramme final uniforme → g =
dérivée du logarithme. C'est donc la fonction hyperbolique = 1/g
p(g)1
(g c)log(11
c)
g =T( f ) , g c. exp(log(11
c) pf (w)dw0
f
)1
Application: hyperbolisation
17
MasterPro IICI - Option GTI - 2014/2015
Hyperbolisation : exemple
18
MasterPro IICI - Option GTI - 2014/2015
Niveaux
d’entrée
Niveaux de
sortie
Amplitudes
Egalisation: défauts (1)
L’égalisation d’histogramme est une
intégrale : passe-bas , qui réduit le nombre
de niveaux occupés: certains niveaux seront
à 0 en sortie.
19
MasterPro IICI - Option GTI - 2014/2015
• L'histogramme caractérise toute l'image
• Des niveaux de gris inintéressants peuvent être largement
représentés
→ égalisation / hyperbolisation renforcent les domaines inintéressants:
Histogramme à 3 pics → égalisation désastreuse
Remède: isoler la zone centrale de l’histogramme
Egalisation: défauts (2)
20
MasterPro IICI - Option GTI - 2014/2015
• On ne considère qu’un voisinage local pour l’égalisation.
• Bien adapté pour supprimer une variation lente de
luminance sur une image
Ici, voisinage 40 x 40:
Egalisation glissante
21
MasterPro IICI - Option GTI - 2014/2015
Deux types de filtrage
2. Filtrage par voisinage
22
MasterPro IICI - Option GTI - 2014/2015
On fait intervenir un voisinage de chaque pixel:
• Mise en évidence de détails peu visibles, généralement
de haute fréquence (contours)
• Elimination de bruits haute-fréquence : limite de
résolution, bruits de transmission, de données, etc.
• Deux catégories :
• Linéaire
• Non-linéaire
Amélioration par filtrage local
23
MasterPro IICI - Option GTI - 2014/2015
Wmn
mnfM
yxg),(
),(1),(
voisinage W Voisinage de
rayon r = 2 x
Moyennage = un produit de convolution:
nm
nmhnymxfyxhyxfyxg,
),(),(),(),(),(
Pseudo-convolution (filtre symétrique):
nm
nmhnymxfyxg,
),(),(),(
Ex: Filtre moyenneur
24
MasterPro IICI - Option GTI - 2014/2015
masque
multiplication
termes à termes
image
Ex:
h(x,y) (cas où r = 2 x)
05/10
5/15/15/1
05/10
9/19/19/1
9/19/19/1
9/19/19/1
h(x,y) (cas où r = x)
Ici, masques 3x3. Masques plus grands (5x5, 7x7,...)
pour des réponses impulsionnelles plus étendues.
Filtrage passe-bas par masque
25
MasterPro IICI - Option GTI - 2014/2015
1
9
1 1 1
1 1 1
1 1 1
1
10
1 1 1
1 2 1
1 1 1
1
16
1 2 1
2 4 2
1 2 1
∑ ai = 1→ préservation de l’énergie, donc du fond
Importance du pixel central
26
MasterPro IICI - Option GTI - 2014/2015
Filtre passe-bas
+
-
g(x,y) f(x,y)
0 0 0
0 1 0
0 0 0
1
9
1 1 1
1 1 1
1 1 1
Identité: h2 =
h1
-1/ 9 -1 / 9 -1 / 9
-1/ 9 8 / 9 -1 / 9
-1/ 9 -1 / 9 -1 / 9
g = f h2 – f h3 = f (h2 - h3 ) → h1 = h2 – h3
Passe-bas: h3 =
Filtre passe-haut
27
MasterPro IICI - Option GTI - 2014/2015
Sans le fond, ∑ai = 0
0 -1 / 5 0
-1 / 5 4 / 5 -1/ 5
0 -1 / 5 0
-1/ 9 -1/ 9 -1 / 9
-1/ 9 8 / 9 -1 / 9
-1/ 9 -1/ 9 -1 / 9
0 -1 / 5 0
-1 / 5 9 / 5 -1/ 5
0 -1 / 5 0
-1/ 9 -1 / 9 -1 / 9
-1/ 9 17/ 9 -1 / 9
-1/ 9 -1 / 9 -1 / 9
0 -1 0
-1 5 -1
0 -1 0
-1 -1 -1
-1 9 -1
-1 -1 -1
Avec le fond, ∑ai = 1
Changement des poids respectifs:
0 -1 0
-1 4 -1
0 -1 0
-1 -1 -1
-1 8 -1
-1 -1 -1
Filtre passe-haut
28
MasterPro IICI - Option GTI - 2014/2015
Sans le fond Avec le fond
Filtre passe-haut: exemple
29
MasterPro IICI - Option GTI - 2014/2015
• Opposé à un moyennage (intégration)
• Dérivation: mise en évidence des contours
• Opérateur le plus commun = gradient
2
122
)(
yxmagf
yx
fff
fff
Filtre de différentiation (1)
30
MasterPro IICI - Option GTI - 2014/2015
z1 z2 z3
z4 z5 z6
z7 z8 z9
Approximation de cet opérateur sur une grille
discrète:
2
12
652
85 zzzzf
Plus efficace:
6585 zzzzf
Filtre de différentiation (2)
31
MasterPro IICI - Option GTI - 2014/2015
• Autre solution (équivalente):
z1 z2 z3
z4 z5 z6
z7 z8 z9
8695 zzzzf
Masque 2 x 2 suffisant !
1 0
0 -1
0 1
-1 0 +
Opérateur de Roberts
Filtre de différentiation (3)
32
MasterPro IICI - Option GTI - 2014/2015
• Meilleure solution: augmenter le voisinage
-1 -1 -1
0 0 0
1 1 1
-1 0 1
-1 0 1
-1 0 1
+ Prewitt
-1 -2 -1
0 0 0
1 2 1
-1 0 1
-2 0 2
-1 0 1
+ Sobel
Filtre de différentiation (4)
33
MasterPro IICI - Option GTI - 2014/2015
Originale
Sobel Prewitt
Roberts
Exemple
34
MasterPro IICI - Option GTI - 2014/2015
• Possibilité de combiner le détecteur avec un
autre filtre pour mettre en valeur la détection.
Ex: rehausser les contours dans l’image:
Combinaison de filtres
Passe haut + contours Originale
35
MasterPro IICI - Option GTI - 2014/2015
Beaucoup d’autres détecteurs
possibles: Frei-Shen, Laplacien, Canny
Voir par exemple:
http://docs.opencv.org/doc/tutorials/imgproc/imgtrans/
canny_detector/canny_detector.html
Detecteurs de contours
36
MasterPro IICI - Option GTI - 2014/2015
.
H(u,v)
Filtre d'amélioration
f(x,y) g(x,y)F F-1F(u,v) G(u,v)
image
améliorée
• Principe:
Influence de la phase primordiale dans une image !
H(u,v) 0 et Im(H(u,v)) = 0
→ limitation des perturbations.
Filtrage linéaire par Fourier
F(u) = F(u)ei (u )
)()()( uieuHuH
37
MasterPro IICI - Option GTI - 2014/2015
Filtrage passe-bas
38
MasterPro IICI - Option GTI - 2014/2015
1
2
4 3 5
Pertinence du filtrage
39
MasterPro IICI - Option GTI - 2014/2015
• Butterworth:
H(u, v) =1
1+u
2 v
2
D
2N
D : fréquence de coupure,
N : ordre du filtre.
• Exponentiel:
N
D
vuvuH
22
exp),(
Autres filtres passe-bas
40
MasterPro IICI - Option GTI - 2014/2015
• Renforcer les détails
Idéal:
N
vu
DvuH
2
22
01
1),(
Filtrage passe-haut
Butterworth:
41
MasterPro IICI - Option GTI - 2014/2015
• Alternative: filtre exponentiel
A
D C
B
N
vu
DvuH
22
0exp),(
Filtrage passe-haut
Ex: filtrage d’une radio
42
MasterPro IICI - Option GTI - 2014/2015
H(u,v) = 2.6 [0.0152 + 9.114D] exp (-[0,114D]1.1)
22),( vuvuD (u,v): fréquence angulaire,
en cycles / degré
metrovision.fr
Filtre passe-bande visuel
Filtre radial:
43
MasterPro IICI - Option GTI - 2014/2015
Filtre passe-bas
+
-
g(x,y) f(x,y)
g(x,y) = (1+β) f(x,y) – β fl(x,y)
Masquage du flou:unsharp
• Rehausser visuellement les hautes fréquences en
masquant les basses:
44
MasterPro IICI - Option GTI - 2014/2015
g(u,v) = |f(u,v)|s exp(i Ф (u,v)) (0 S 1)
S = 0 → information de phase de l'image
Ф = 0
Élévation à la puissance S
phase = information
primordiale de
l'image !
S = 0
45
MasterPro IICI - Option GTI - 2014/2015
Traitements (x,y) et (u,v) équivalents en théorie
+ Op. non-linéaires possibles
+ Op. non-stationnaires possibles
+ si petite réponse impulsionnelle
- Contrôle de la réponse fréquentielle
Spatial Fréquentiel
+ implémentation facile (si linéaire)
+ réponse fréquentielle facile à contrôler
+ si réponse impulsionnelle étendue
- Op. non-linéaires ou non-stationnaires
impossibles
- lenteur
Fréquentiel vs. spatial
46
MasterPro IICI - Option GTI - 2014/2015
• Pb du filtrage linéaire = on élimine le bruit, mais aussi les
contours (fréquences utiles)
→ non-linéarité (seuil)
Ex: bruit binaire de type « poivre et sel »
Pb: choix de T !
Filtrage non-linéaire
sinon),(
T csi),(M
1
),(),(
yxf
nmfyxg
Wnm
Ex. de voisinage W
Wnm
nmfyxfc),(
),(),(
47
MasterPro IICI - Option GTI - 2014/2015
1. Choisir un voisinage avec un nombre impair de points,
2. Ranger les valeurs par ordre croissant
3. Remplacer M par la luminance du point milieu de la suite ordonnée.
Pour chaque point M de l’image :
Si le filtre médian est de taille 2n+1:
• On peut éliminer le bruit de taille n au plus,
• Tout signal d’épaisseur > n est préservé.
Filtre médian (Tuckey)
1 2 3 5 6 7 8 10 12
12 8 5
6 10 2
1 7 3
48
MasterPro IICI - Option GTI - 2014/2015
Original Moyenne Median
Marche
Rampe
Impulsion simple
Impulsion
double
Impulsion
triple
Triangle
Exemples de filtrage (N=5)
49
MasterPro IICI - Option GTI - 2014/2015
Ex: Filtrage médian bidimensionnel
Original : carré noir sur fond blanc
Si on utilise un filtre médian de
masque : ● ● ●
● ● ● ● ● ●
on obtient l'image à gauche ; le filtre écorne les coins.
En revanche, si on filtre l'image original avec :
● ●
● ● ● ● ● ● ●
alors le carré est préservé.
Original: carré noir sur fond blanc
Si on utilise un filtre médian de masque:
On obtient ceci, le filtre élimine les coins.
En revanche avec le voisinage :
le carré est préservé.
50
MasterPro IICI - Option GTI - 2014/2015
Filtre:
Ne fonctionne pas avec les bruits
statistiques !
Ex: bruit
gaussien
Ex: défaut de transmission par ligne
51
MasterPro IICI - Option GTI - 2014/2015
Constat: l'information d'une image =
f(x,y) = r(x,y) • i(x,y)
Transf. log : log(f) = log(r) + log(i)
i(x,y) = grande échelle dynamique, varie lentement par rapport à
x et y. Indépendante des objets.
r(x,y) = faible échelle dynamique, varie très rapidement par
rapport à x et y. Information intéressante de l'image.
Filtrage homomorphique
Réflectance des surfaces
Intensité des sources de lumière
52
MasterPro IICI - Option GTI - 2014/2015
But: séparer log(r) et log(i) par filtrage linéaire
T T-1
filtrage linéairef(x,y) g(x,y)
Remarque: fréquent en visualisation, donc implicite.
Filtrage homomorphique (2)
53
MasterPro IICI - Option GTI - 2014/2015
Justification physiologique:
f(x,y) Log filtre
passe-bande
domaine perceptuel
Image d 'entrée
Loi d’absorption
des cônes de la
rétine
interaction entre
les cônes
f(x,y) Log filtre linéaire exp
Image transformée
f(x,y) Logfiltre
linéaireexp log
filtre
passe-bande
domaine
perceptuel
+
Transformation directement dans le cortex !
= Id
Filtrage homomorphique (3)
Filtre:
Système
visuel:
54
MasterPro IICI - Option GTI - 2014/2015
Accentuer les couleurs
Mettre en évidence les détails importants
On peut par exemple:
• égaliser les histogrammes des 3 composantes R.V.B.
• égaliser l'histogramme de la luminance + filtre passe-haut →
amélioration contrastes + contours
atténuation du « brouillard »
Traitement des images couleur
55
MasterPro IICI - Option GTI - 2014/2015
transformation
rougeR(x,y)
transformation
verteV(x,y)
transformation
bleueB(x,y)
f(x,y)
monochrome
R
0
255
x
V
0 x
B
0 x
violet bleu cyan vert jaune rouge Résultante :
Ex:
Pseudo-couleur
56
MasterPro IICI - Option GTI - 2014/2015
Bleu
Cyan
Magenta
Noir
Blanc
Jaune
Rouge
Vert
première diagonale
du cube :
ligne de gris
Pseudo-couleur = bijection entre la première diagonale et une courbe
(dite de Maxwell) du cube partant de l'origine, finissant à l'extrémité
blanche, et située n'importe où dans le cube construction d’une LUT.
Contrainte : monotone, croissante dans la direction de la première
diagonale.
Cube de Maxwell:
Pseudo-couleur
57
MasterPro IICI - Option GTI - 2014/2015
Bleu ou vert pour des zones "froides",
Orange ou rouge pour des zones "chaudes".
Précaution 1 : ne pas attribuer la même couleur à deux niveaux de gris
disjoints → ne pas créer de zones homogènes qui ne le sont pas.
Précaution 2 : garder une homogénéité dans les variations de la table de
couleur afin de ne pas créer de faux contours.
Exemple
58
MasterPro IICI - Option GTI - 2014/2015
Contre-exemple
59
MasterPro IICI - Option GTI - 2014/2015
THE END !