Transcript x - Free

Imagerie Médicale
Cours 4 : Restauration et filtrage
d’image
Formation ISIS
UJFC Castres
Clovis Tauber
[email protected]
Plan du cours
1.
2.
3.
4.
5.
6.
Introduction
Types de bruits
Filtrage dans le domaine de Fourier
Filtrage linéaire, convolution
Filtrage non linéaire
Exercices applicatifs
Introduction
• Ce cours s'intéresse aux techniques d'amélioration des images
numériques, pour
– augmenter la qualité de leur rendu visuel
– faciliter leur analyse.
• On cherche donc à atténuer, sinon supprimer une certaine
dégradation. Celle-ci n'est pas forcément connue a priori,
mais elle peut parfois être estimée a posteriori.
Une grande partie de l’art de
l’amélioration d’images est de savoir où
s’arrêter [Hall 79]
Introduction :
Restauration, filtrage d’image ?
On distinguera ici :
• les dégradations liées au bruit : g(x) = f(x)+b(x) ou g(x) = f(x)b(x) liées au
capteur, à la quantification, à la transmission... On les traite en tirant parti
des informations locales par le filtrage. Les techniques de filtrage
permettent aussi de calculer ou amplifier les contrastes locaux.
• les dégradations convolutives : g(x) = f(x)∗b(x) liées à un mouvement du
capteur ou un défaut de mise au point. On les traite en inversant un
opérateur linéaire, donc supposé connu : ce sont les techniques dites de
restauration.
Le bruit
• Bruit : Phénomène parasite aléatoire (suivant une distribution
de probabilité connue ou non) dont les origines sont diverses
(capteur, acquisition, lumière, ...)
• Un exemple : les perturbations magnétiques pendant une
acquisition IRM
Types de bruits : additif
• Le bruit est dit additif si étant données une image non bruitée f
et g la même image avec un bruit additif b, alors chaque pixel
est caractérisé par la relation:
g(x, y) = f (x, y) + b(x, y)
où b est une variable aléatoire de moyenne égale à 0
• Les bruits additifs se retrouvent notamment dans les images
optiques
Types de bruits : additif
gaussien
rayleigh
uniforme
Caractérisation
de la fdp du bruit
Poivre sel
exponentiel
erlang
Types de bruits : multiplicatif
• Le bruit est dit multiplicatif si étant données une image non
bruitée f et g la même image avec un bruit additif b, alors
chaque pixel est caractérisé par la relation:
g(x, y) = f (x, y) × b(x, y)
où b est une variable aléatoire de moyenne égale à 1
• Pour un bruit multiplicatif, les pixels d'une zone homogène
seront d'autant plus bruités que leur niveau de gris est élevé.
• Les échographies contiennent un bruit multiplicatif appelé
Speckle
• Les bruits multiplicatifs sont plus difficiles à filtrer que les
bruits additifs
Types de bruits : convolutif
• Le bruit est dit convolutif si étant données une image non
bruitée f et g la même image avec un bruit additif b, alors
chaque pixel est caractérisé par la relation:
g(x, y) = f (x, y) * b(x, y)
où b est une variable aléatoire de moyenne égale à 1
• Parmi les bruits convolutifs, on trouve le flou
Bruit et perception
Quantification
Sur 3 bits
Introduction d’un
bruit gaussien
Quantification
Sur 3 bits
Filtrage dans le domaine de Fourier
• Le bruit se traduit généralement par des termes de hautes
fréquences dans le spectre de Fourier
• Filtre passe-bas : multiplication dans le domaine fréquentiel
par une fonction porte (fonction indicatrice d'un intervalle [u,u]x[-v,v])
Filtrage dans le domaine de Fourier
• Filtre coupe-bande : multiplication dans le domaine
fréquentiel par une fonction bande complémentaire
• La valeur de la fréquence origine F[0,0] est inchangée, il y a
donc conservation globale de l’intensité dans l’image
Filtrage dans le domaine de Fourier
• Faites un filtrage passe haut sur l’image suivante :
• Que constatez vous ? Faites de même pour un filtre passe bas
et un filtre passe bande. Comparez.
Filtrage dans le domaine de Fourier
• À quels types de fréquences correspondent chaque zones du
spectre représentées par la figure ci-dessous ? Expliquez à quoi
cela correspond sur une image.
Filtrage dans le domaine de Fourier
• A l’aide d’ImageJ, créez une image semblable à celle-ci :
–
–
–
–
Appliquez la transformée de fourier
Introduisez du bruit dans l’image initiale, calculez la DFT et comparez
Choisissez une méthode de filtrage dans le domaine fréquentiel
Appliquez la et inversez la DFT pour vérifier le résultat
Filtrage linéaire : convolution
• La multiplication dans le domaine fréquentiel correspond à la
convolution dans le domaine spatial. Un grand nombre de
filtres de lissage peut être obtenu à partir de noyaux de
convolution symétriques et normalisés (de somme égale à 1)
• Dans le cas du filtrage linéaire, on considère que le bruit est
additif
• L’élément structurant défini la réponse impulsionnelle du filtre
Filtrage linéaire : convolution
• Filtrage par la moyenne : il s’appuie sur la propriété que la
valeur d’un pixel est relativement similaire à celle de ses
voisins. Si l’image contient un bruit, un moyennage local peut
atténuer ce bruit
• Le principe est simple : un pixel est remplacé par la moyenne
de lui-même et de ses voisins. C’est dans la définition du
voisinage que les filtres vont différer.
1

1 1

K 2  ...
1

1
1
...
1
...
...
...
...
1

1
...

1 
Filtrage linéaire : convolution
• Filtrage Gaussien : similaire au filtrage par la moyenne, mais
avec une pondération spécifique lors du calcul de la valeur du
pixel central : plus un pixel est éloigné du centre de l’élement
structurant, moins son intensité a d’influence sur le
comportement du filtre
• Réponse impulsionnelle :
Linéaire gaussien, paramètre s
e.g. s=1.0, s=1.6
 4 18 29 18 4 


18 80 132 80 18 

1
 29 132 218 132 29 
1344  18 80 132 80 18 
 4 18 29 18 4 


2

7
12
1 
14
1279 12

7
2

7
18
32
38
32
18
7
12
32
57
69
57
32
12
14
38
69
84
69
38
14
12
32
57
69
57
32
12
7 2

18 7 
32 12 
38 14 
32 12 

18 7 
7 2 
Filtrage linéaire : convolution
• Il ne faut pas « couper » trop brusquement les hautes
fréquences : la transformée de Fourier inverse d’un
« rectangle » est un « sinus cardinal » ==> apparition d’un
halo autour des objets
• le filtre Gaussien constitue une bonne solution à ce problème
• Alternative plus précise que le filtre moyenne :
1 2 1
1
16
2
4
2
1
2
1
• Intègre plus de 80% des approximations discrètes d’une
gaussienne
• Défaut des filtres linéaires : génère du « flou » ==> diminue le

contraste
Filtrage non linéaire
Deux aspects du lissage sont concernés par le filtrage non
linéaire :
– Le bruit impulsionnel : les filtres linéaires éliminent mal les valeurs
aberrantes.
– L'intégrité des frontières : on souhaiterait éliminer le bruit sans rendre
flous les frontières des objets.
Filtrage non linéaire : filtres de rang
Filtrage médian : l’idée est de remplacer chaque pixel par la valeur d’une
fonction calculée sur le voisinage.
• Permet Ne pas « inventer» de valeurs qui n’étaient pas présentes dans
l’image
• Remplacer le point central par l’un des points du voisinage : le point
médian (les extrêmes, s’ils sont isolés, ont des chances d’être des bruits).
• Avantages : insensible à la présence de valeurs aberrantes si leur nombre
est inférieur à la moitié, ne rend pas les frontières floues
Remarque : Le filtre médian
est théoriquement proche des
opérateurs d’érosion et de
dilatation en niveaux de gris
Filtrage non linéaire : filtres de rang
• Exemple d’un filtre médian dans un voisinage 3x3 :
– Trier les 9 valeurs : 5 < 22 < 47 < 72 < 99 < 125 < 186 < 210 < 243
– Sélectionner la 5ème : 99
125
99
210
47
5
22
243
72
99
186
• Le filtre médian a tendance à rétrécir les convexités, pourquoi?
Filtrage non linéaire : filtres de rang
• Propriétés du filtre médian (en comparaison avec le lissage
linéaire)
–
–
–
–
–
–
–
–
–
Non création de niveaux de gris
Invariance par étirement de contraste
Auto-dualité par inversion
Préservation des marches et rampes rectilignes
Érosion des connexités (notamment des disques)
Élimination du bruit impulsif
Le filtre médian n’est pas idempotent
Non convergence de la répétition (possibilité de limite alternée)
Opérateur morphologique plat
Filtrage non linéaire : filtres de rang
• A vous de jouer : ajoutez un bruit sel et poivre à l’image
« Rose.tif »
• Appliquez un filtre médian à l’image
– avec un masque de taille 3x3
– avec un masque de taille 7x7
• Appliquez d’autres filtres à l’image
initiale, comparez les résultats
Filtrage non linéaire : filtres de rang
• Filtrage des détériorations : cas d’une image « griffée »
• Appliquez un filtre médian de taille 5x5
• Appliquez deux fois un filtre médian de taille 3x3
• Comparez les deux résultats
Filtrage non linéaire : filtre de Nagao
• Filtre de Nagao: l’idée est de remplacer chaque pixel par
la moyenne d’un voisinage directionnel à la plus petite
variance.
Image initiale
filtre gaussien
filtre Nagao
Filtrage non linéaire : filtre de Nagao
Image originale
filtre Nagao
filtre gaussien
gaussien + nagao
Filtrage non linéaire : diffusion
• Principe de la diffusion :
• Diffusion de la chaleur : isotrope
• Lien entre diffusion isotrope, filtrage gaussien et
espaces multi-échelles
Filtrage non linéaire : diffusion
• Principe de la diffusion anisotrope [Perona90]:
• Coefficient de diffusion adaptatif
Filtrage non linéaire : diffusion
• La diffusion anisotrope est souvent utilisée pour filtrer les
images tout en préservant les contours
• Favorise le lissage intra-région plutot qu’inter-région
• La qualité du filtrage par diffusion anisotrope repose sur la
détection des contours de l’image
• Objectif : trouver pour une modalité donnée le meilleur
détecteur de contour
Exercice 1
Dans ImageJ, créez des éléments structurants pour les convolutions vues en cours
(moyenne, gaussien, …) : process -> filters -> convolve, puis Save as.
1.
Comparez les effets des différents filtres et de la taille des filtres
2.
But : restaurer l’image saturnnoise.tif et l’image saturpoivre.tif, pour se
rapprocher le plus possible de l’image intacte saturn.tif. Essayez de les restaurer à
l’aide :
–
d’un filtre moyenneur de taille 3 ;
–
d’un filtre moyenneur de taille 7 ;
–
d’un filtre médian.
Que constatez-vous ? Parmi ces trois filtres, quel est le filtre le plus adapté à la correction de
bruits
ponctuels ? Pourquoi ?
3.
Choisissez le filtre à appliquer aux images LenaNoise.jpg et Lenaunderres.jpg
pour les restaurer et se rapprocher le plus possible de l’image Lena.jpg. Avant
d’essayer tous les filtres, essayez de reconnaître le type de bruit, et utilisez alors
les filtres les plus adaptés pour ce genre de bruit.
Exercice 2
Dans ImageJ, copier le fichier Anisotropic diffusion 2D dans le répertoire plugins.
Les images im_speckle1, im_speckle2, im_speckle3 contiennent toutes un bruit de type
speckle.
•
•
•
•
Testez les filtres fréquentiels, linéaire, de rang et la diffusion anisotrope
Faites varier les paramètres pour obtenir les meilleurs résultats dans chaque cas
Enregistrez les résultats de chaque test
Comparez la qualité des résultats