0% found this document useful (0 votes)
123 views120 pages

Image Qualite Debruitage

The document discusses medical image formats such as DICOM and NIFTI, image resolution, orientation and axes of medical image slices, and 3D medical image acquisition. DICOM is the most common format in hospitals but has issues. Image resolution, orientation, and anisotropic 3D acquisition are also covered.

Uploaded by

Fathi Kallel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
123 views120 pages

Image Qualite Debruitage

The document discusses medical image formats such as DICOM and NIFTI, image resolution, orientation and axes of medical image slices, and 3D medical image acquisition. DICOM is the most common format in hospitals but has issues. Image resolution, orientation, and anisotropic 3D acquisition are also covered.

Uploaded by

Fathi Kallel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 120

IMN-530

Reconstruction et analyses d’images médicales

Image, qualité, bruit et débruitage


Image médicale

• DICOM -
Digital Image Communication in Medecine

• PACS -
Picture Archiving and communication system

• RAS -
Radiologist Aid System
3.6 Displays and Workstations

87

Fig. 3.15 A reading room as part of a PACS displays images on monitors ins
Active and passive components of the depicted system control the lighting
l
ospita permission of Planilux, Warstein, Germany)
H
ms in a
n Syste
Fig. 3.2 The departmental Radiology Information System o(RIS)
r
io
mat and the Picture Archiving Anotherand
problem is the limited spatial and contrast resolution o
I nf
Communication System (PACS) are responsible for organizing,
3.1 transferring and archiving image
contrast range of today’s TFT monitors is quite satisfactory, but m
and the influence from external lighting can reduce perceived image
data and image meta data fessional reading system will allow to control such influence (see
example).
The spatial resolution of a conventional monitor is about 2 meg
a digital radiograph may contain up to 4096 × 4096 pixels (=16 me
Hospital information systems evolved from the need to create a paperless admin- are few monitors that are able to display such a resolution. Henc
istration of inpatients and outpatients in a hospital. Development was initiated from reading station is much more expensive than a conventional TFT m
Furthermore, a reading room usually contains several light bo
the hospital administration and in many cases evolved from data base systems for to display several images at the same time. Using several monitor
a partial replacement since there will never be enough monitor sp
patient data administration. In early times, these systems were in-house adaptations many images as can be displayed on a big light box (see Fig. 3.15
of data base systems or completely locally developed solutions. With information and compare it to Fig. 3.14). A suitable user interface for switchin
has to make up for this deficiency.
stored in such a system being increasingly used for administrating and scheduling There are no legal standards for the display of digital radiograph o rksta
s, w t
ican College of Radiology (ACR) has developed some m
recommend
, me
services performed in patient stay, they have evolved into fully grown hospital in- 3 n s y s t e
g e s
distinguishes between the images used for sdiagnosis
q u i ima rmiss
itio er (interpretation
formation systems accessible by all departments of a hospital. for other purposes (clinical review, ac
teaching, d
en According
retc.). d pe to
f r o m t o k i n
agetos satisfy
quality should be sufficient ionneeds
ratthe iththe clinical circ
(wof
DICOM

• Format le plus répandu dans les hôpitaux


(tous les nouveaux appareils cliniques supportent le
format DICOM)
• Problème... plus qu’un format bien défini
• Boîte à fourre-tout
– Les constructeurs définissent leur ‘‘tag’’ ou
étiquettes maisons
• Cauchemar pour les traiteurs d’images
– Pour être éthique -> dénomalisation nécessaire!
DICOM et autres formats

• Entête (header) et fichiers de données


– Série de fichiers 2D dans un répertoire
– Série de fichiers 3D
– Un fichier 4D

• Des milliers de convertisseurs et lecteurs de dicom et autres


formats de fichiers…
– Le meilleur (2019): dcm2niix (github)

( Matlab: dicominfo, dicomread, dicomwrite. Python:


pydicom. Support dans ImageJ et SimpleITK)
Autres formats / extensions

• DICOM (.dcm)
• NIFTI (.nii)
• Analyze (.hdr .img)
• Gis (.ima .dim) -> France
• Minc (.mnc) -> Montreal Neurological Institute (MNI)
• Nrrd (.nrrd) -> USA
Repères de l’image

• Qu’est-ce qui est à gauche?


• Qu’est-ce qui est à droite?
• Standard
– Radiologique (vue des pieds)

– Neurologique
(vue de haut - comme un chirurgien)
z (b - blue)
Repères

x (r - red)

y (g - green)
• Neurologique
– Droite à droite
(vue chirurgien)

• Radiologique
– Droite est à gauche
(vue du radiologue qui regarde une pellicule)
Plus de détails:
http://www.grahamwideman.com/gw/brain/orientation/orientterms.htm
Imagerie et axe des coupes

• Axial, coronal, sagittal

Coronal
Sagittal
Axial
Résolution

Pixel Voxel
“picture element” ‘’Volume element’’

93 Δy mm 93 Δy mm

Δx mm Δz mm
Δx mm
Exemple imagerie 3D

0.43mm

FLAIR 0.43mm
FLAIR

12
93
6 mm
0.43 mm
0.43 mm
Imagerie numérique 3D

• Acquisition anisotrope
• Souvent, Δx = Δy != Δz
(Δz >> résolution dans le plan)
• E.g. FLAIR, agent de contraste,
imagerie animale,
imagerie clinique

93
6 mm
0.43 mm
0.43 mm
Imagerie numérique 3D

• Acquisition isotrope

• Souvent, Δx = Δy = Δz
• E.g. T1 isotrope, IRM de diffusion, IRM
fonctionnelle

Δy mm

Δz mm
Δx mm
Volume partiel

• Les structures sont souvent plus petites que la résolution


de l’image. Cela créé ce qu’on appelle du volume partiel
Volume partiel - 1 voxel mélange de
plusieurs tissus 100% matière blanche

100% matière grise


cortex
Formats

• Grrrr....

• Pas de standard et normalement, on insulte tous les dieux


quand on s’y met

• Effort de la communauté
mrtrix, nibabel (python package)
Information importante dans l’entête

************************************************
• Taille du voxel Image: "Rat Sprague-Dawley (LDS97-j18) [PT]"
************************************************
Format: DICOM
• Taille de l’image Dimensions:
Voxel size:
240 x 240 x 1
0.25 x 0.25 x 1.175
Dimension labels: 0. left->right (mm)
1. posterior->anterior (mm)
• Matrice de Data type:
2. inferior->superior (mm)
unsigned 16 bit integer (little endian)
transformation Data layout: [ -0 -1 +2 ]
Data scaling: offset = 0, multiplier = 2.06052e-06
Comments: Rat Sprague-Dawley (LDS97-j18) [PT]
DOS: 23/02/2010 12:20:00
• Type des données Transform: 1
0
0
1
0
0
-59.75
-59.75
0 0 1 0
0 0 0 1
Qualité de l’image
Améliorer la qualité d’image: comment?

• Améliorer les séquences et acquisitions


– Réduire les distorsions
– Augmenter le rapport signal à bruit

• Algorithme de correction et débruitage

• Les traiteurs d’image ont leur mot à dire!


(surtout pour le débruitage, pour les artéfacts, surtout les
physiciens de l’IRM)
Rehaussement d’images

• Améliorer la perception visuelle des objets pour un


observateur humain

• Souvent, petit pré-traitement pour que les analyses


suivantes, plus complexes (segmentation-recalage), se
passent mieux

• Égalisation d’histogramme
• Rehaussement de contours
• Débruitage
Contraste et résolution

• La résolution perçue dépend du contraste dans l’image


• Pas de bonne mesure perceptuelle de la résolution dans
une image
Résolution spatiale & contraste

• L’effet du contraste sur la perception: les trous du


fantôme se dégrade en réduisant le contraste de 5.1%,
3.7%, 2.2%, 1%

Vous pouvez jouer avec le simulateur BrainWeb:


http://brainweb.bic.mni.mcgill.ca/cgi/brainweb1
ating image contrast exist that makes implicit assumptions about image conte
Examples
Fig. 4.2 The two for object-independent
images have the same global contrastcontrast measures
CMichelson , while arecontrast
their local rms global contrast, global va
Crms differs by a factor of three (Crms = 0.006 for (a) and Crms = 0.018 for (b))
Quelques
ance, entropy, and contrast définitions
from the co-occurrence
Fig. 4.2 The two images
de contrastes matrix.
Global contrast CMichelson according to thehave the same global
Michelson contrast (Peli
equations , whilesim
1990)
CMichelson th
It is a useful measure to quantify the differs byusage
Crmsinefficient a factor of three
of the = 0.006 for (a) and Crms = 0.018 for
(Crmsintensity
available
ply compares the ratio of difference between the highest and the lowest intens
range. However, it does not account for the distribution of intensities in the image
values max and
(see Fig. l4.2a). of an
lmincould
An image imageunderexposed
be highly to the average with mostintensity
of the pixelslevel given by the sum
havingand
max intensities
lmin • :below
Contraste de Michelson
some low threshold but having just : one pixel with value
It is a useful measure to quantify the inefficient usage of the
Imax , possibly caused by an artefact. The image would be perfect according to global
contrast. range. However, it ldoes − notl account for the distribution of inten
max min
A somewhat better approach for(see CFig. global =
4.2a).
Michelson
measuring An image
contrast could
is the . be highly underexposed with
root-mean- (4
square (rms) contrast (see Fig. 4.2b). having
Givenintensities
an image (x, lmax
below
+
y) with lmin
some
M low
·N threshold but having just on
pixels
and intensities l(x, y), the expected value
I ,ofpossibly
l is
The measure assumes a max simple image in which the number of foreground pix
caused by an artefact. The image would be perfect a
approximately equals that1 contrast.
ofM−1
! the
!background pixels. Michelson contrast ranges fro
N−1
¯=
rangeA of
0 to 1. It is 1.0 if the full MN
l somewhat
l(i, j ), better
intensity approach
values is usedfor measuring
(4.2)
and less thanglobal contrast
1.0 otherwi
i=0 j =0(rms) contrast (see Fig. 4.2b). Given an image (x, y)
square
• Contraste Root-Mean-Square (RMS) :
and the rms contrast is and intensities l(x, y), the expected value of l is
"
# M−1
# 1
M−1
! N−1
! % &2 1 ! N−1
!
#
Crms (f ) = $ ¯
l(i, j ) − l . l¯ = (4.3) l(i, j ),
MN − 1
i=0 j =0
MN
i=0 j =0
Licensed to Maxime Descoteaux<[email protected]>
The measure takes all pixels into account
and theinstead of just the is
rms contrast pixels with maximum
and minimum intensity values.
"Assum-
Crms does not differentiate well between different intensity distributions.
#
Contraste

CMichelson égaux

Crms = 0.006 Crms = 0.018


Histogramme

Hnorm(100) = 0.05. 5% des voxels


dans l’image sont d’intensité 100

Occurrence
(# de pixels)
H(I)

asures of Image Quality


Intensité (I)

normalized
• H(l)histogram Hpixels
représente le # de (l) is computed
normd’intensité l from H (l) by
H (l)
Hnorm (l) = !I .
max
k=Imin H (k)

es the probability of l to appear in an image. If H norm (20) =


Sera utile pour le recalage plus tard
0.05, t
s 0.05 that the gray value of a randomly picked pixel is 20.
Histogramme

Première étape pour connaître le


contenu d’une image.
Minimum et Maximum Intensity
Projections (mIP et MIP)
• On choisit d’abord un axe (‘axial’ := z, ‘coronal’ := y, ‘sagittal’ := x)
et on calcule le min ou le max le long de cet axe pour tous les
voxels
• Donc, partant d’une image 3D, la mIP ou MIP est une image 2D

mIP sur 13 mm en coupe axial.

Les veines noires ressortent par


rapport aux tissus en blanc car
elles sont minimales (en
intensité) à travers les
coupes
Autres exemples de mIP/MIP

angiographie densité de proton


cause some signal loss in the vessels in such vessel detectability. In principle the angiographic volumes
the data presented here, vessel/non-vessel con- should be able to show smaller vessels, since they have a
M. Descoteaux et al. / Medical Image Analysis 12 (2008
eatest for the PC data (white on black tissue), higher resolution.

Autres exemples de mIP/MIP

MIP

MIP
M. Descoteaux et al. / Medical Image Analysis 12 (2008) 497–513

ration of the multi-scale geometric flow on a 256 ! 256 ! 68 MRA image. An MIP of the data is shown at the top left and t
fferent stages of the evolution from three seeds. The bottom right figure depicts an MIP of the input MRA data masked by th

MIP MIP mIP


nd artefacts in the image.
and artefacts in the image.
Démo MI-Brain, anatomist, ImageJ

Rehaussement de contraste
4.2.1 Contrast Enhancement
4.2.1 Contrast Enhancement
Some of the contrast enhancement techniques can be directly related to contrast
•measures
Linéaire (Demo)
described in the previous section. The simplest method increases global
Some of the contrast
contrast. enhancement
If the range techniques
of possible intensity can
values Imin to Ibe
max
directly
exceeds the related
range of to con
measures described
intensities fminintothe
fmaxprevious section.
, linear contrast The simplest
enhancement method
is carried out creatingincreases
new gl
ontrast. If•values
À l’aide
the grange d’une
from intensities fonction
of possiblef for every de transfert,
pixel
intensity byvalues I g(f)
min to Imax exceeds the rang
ntensities• fOnmin se to concentre
fmax , linear sur les intensités
!contrast Imax dans laisplage
" enhancement carried50 à
out creating
g(f ) = f − fmin + Imin . (4.12)
values g from 120intensities f for every pixel fmaxby− fmin
The function to map f on g is called the transfer function. Contrast enhancement
! wmin to w
in an arbitrary intensity window " max with
Imax Imin < wmin < wmax < Imax can
be achieved withg(f ) = transfer
a similar f − ffunction.
min As there may +pixels
be Imin .with values f (4
fmax − fmin
outside the window, (4.12) is changed to (see Fig. 4.6)

The function to map  f on g is called the transfer
Imin ,
function.
if f < wmin , Contrast enhancem
n an arbitrary intensity
g(f ) = window
(f − wminw Imaxto w
) wmin −w Imin ,with
+max Imin
if wmin ≤ f<≤w max , < wmax < Imax
wmin

 max min
be achieved with a similar Imaxtransfer
, function. As ifthere f > wmay
max . be pixels with valu

outside the window, (4.12) is changed to (see Fig. 4.6) (4.13)


 intensity of structures with input intensities outside of [wmin , wmax ]
The output

Iormin
is either Imin if f Contrast
, so that they are no longer recognizable.
Imax < wminis,improved
Démo fibernavigator
Rehaussement

• Directement fait dans les viewers

• Égalisation d’histogramme (crée une nouvelle image avec un histogramme


constant, ce qui maximise l’entropie)
Rehaussement avancé
Signaux discrèts
175 175 176 175 175 171 166 164 163 161 158 157 155 154 150 147 143 141 139 136 134 131 128 125 122 120 118

178 178 178 178 177 174 173 168 167 164 162 160 157 156 153 151 147 145 143 140 138 135 131 127 125 125 122

180 180 180 180 180 178 176 173 171 167 167 164 162 160 156 155 151 149 146 143 140 139 136 132 130 128 127

185 184 184 184 182 180 179 177 175 171 170 167 165 163 160 160 155 153 151 148 145 142 139 137 136 133 129

194 194 191 187 185 185 183 182 180 176 175 174 170 170 153 163 161 158 155 152 150 147 144 141 139 136 136

199 199 197 194 192 188 185 184 183 180 178 176 173 171 145 165 163 160 157 155 152 149 147 144 141 139 137

202 201 203 199 199 195 192 188 187 184 183 180 177 176 116 171 167 166 161 159 158 155 153 149 146 143 141

206 205 205 204 201 200 198 197 183 144 169 184 177 178 81 174 172 168 160 164 162 159 156 153 151 149 145

209 210 211 209 207 205 204 205 151 72 97 123 89 156 72 173 169 157 140 172 169 167 163 160 157 154 151

215 215 213 213 213 209 209 208 147 65 86 98 66 76 79 169 165 122 85 154 174 172 169 166 163 160 158

225 225 223 220 219 217 215 214 127 50 60 88 50 27 27 85 108 83 57 127 178 178 175 171 168 165 163

230 230 229 227 226 225 224 223 141 62 73 63 28 13 7 38 33 41 52 119 123 150 174 172 166 170 168

233 232 166 107 200 231 187 182 115 91 65 47 17 5 5 37 13 7 52 89 63 56 87 52 49 63 167

231 224 73 21 39 124 42 38 77 35 17 20 12 28 28 30 6 10 27 66 43 33 41 34 36 42 56

85 92 51 36 47 60 42 39 36 12 5 13 20 20 19 14 7 32 43 43 50 53 52 51 39 46 40

74 83 92 67 38 48 51 81 47 38 44 50 27 29 35 28 35 29 34 44 40 38 44 33 36 29 24

124 123 110 114 61 66 56 113 70 18 102 113 25 60 74 14 63 107 130 118 64 141 137 143 136 127 133

137 138 105 107 84 96 100 127 107 42 125 124 112 75 80 21 55 79 122 124 65 116 120 136 133 113 114

134 135 112 112 98 89 85 93 79 57 105 113 114 94 100 64 90 98 118 133 125 121 116 136 122 113 114

126 128 114 112 110 102 98 99 79 66 92 87 80 78 85 84 100 103 116 129 122 118 115 130 119 111 112
Rehaussement avancé
4.2 Image Enhancement Techniques 123

Fig. 4.10 The gradient is a


vector that is always Gradient toujours
orthogonal to an edge. The orthogonal au contour
length of the gradient depends
on the strength of the edge

• Petit rappel
– Opérateurs: gradient, Laplacien
– Convolution

where uavg () and vavg () are the average values in some neighborhood around (i, j ).

• Tous ces filtres et opérateurs sont dans scikit-image,


The solution can be found using optical flow techniques. Interpolation is then carried
out along displacement vectors. Using the quadratic (4.17) for enforcing smoothness
of the displacement field will create a smooth interpolation. This behavior is desired
ou pour éviter les dépendances
if slices are not too thick and a smooth variation of displacement within a slice is
the norm. For thick slices, two neighboring pixels in one slice may be displaced
– scipy.ndimage.filters et np.gradient
to different sites in the next slice (e.g., if a new structure appears in the next slice
between them). In such a case, discontinuity-preserving constraints such as the one
presented in Sect. 4.3.4 may be more appropriate for achieving the desired results.

4.2.3 Edge Enhancement

Enhancing the edges improves recognizing structures in images. Since automatic or


interactive object delineation is a frequent task in image analysis, edge enhancement
RAPPELS IMN259/IMN359

http://www.dmi.usherb.ca/~jodoin/cours/imn259/index.html

http://scil.dinf.usherbrooke.ca/imn359
Opérateur: gradient d’une image
Gradient:

Approximation numérique du gradient en X

Puisque le plus petit élément dans une image


est le pixel de taille 1x1, le gradient se calcul
avec

Approximation numérique du gradient en Y


Signaux discrèts
175 175 176 175 175 171 166 164 163 161 158 157 155 154 150 147 143 141 139 136 134 131 128 125 122 120 118

178 178 178 178 177 174 173 168 167 164 162 160 157 156 153 151 147 145 143 140 138 135 131 127 125 125 122

180 180 180 180 180 178 176 173 171 167 167 164 162 160 156 155 151 149 146 143 140 139 136 132 130 128 127

185 184 184 184 182 180 179 177 175 171 170 167 165 163 160 160 155 153 151 148 145 142 139 137 136 133 129

194 194 191 187 185 185 183 182 180 176 175 174 170 170 153 163 161 158 155 152 150 147 144 141 139 136 136

199 199 197 194 192 188 185 184 183 180 178 176 173 171 145 165 163 160 157 155 152 149 147 144 141 139 137

202 201 203 199 199 195 192 188 187 184 183 180 177 176 116 171 167 166 161 159 158 155 153 149 146 143 141

206 205 205 204 201 200 198 197 183 144 169 184 177 178 81 174 172 168 160 164 162 159 156 153 151 149 145

209 210 211 209 207 205 204 205 151 72 97 123 89 156 72 173 169 157 140 172 169 167 163 160 157 154 151

215 215 213 213 213 209 209 208 147 65 86 98 66 76 79 169 165 122 85 154 174 172 169 166 163 160 158

225 225 223 220 219 217 215 214 127 50 60 88 50 27 27 85 108 83 57 127 178 178 175 171 168 165 163

230 230 229 227 226 225 224 223 141 62 73 63 28 13 7 38 33 41 52 119 123 150 174 172 166 170 168

233 232 166 107 200 231 187 182 115 91 65 47 17 5 5 37 13 7 52 89 63 56 87 52 49 63 167

231 224 73 21 39 124 42 38 77 35 17 20 12 28 28 30 6 10 27 66 43 33 41 34 36 42 56

85 92 51 36 47 60 42 39 36 12 5 13 20 20 19 14 7 32 43 43 50 53 52 51 39 46 40

74 83 92 67 38 48 51 81 47 38 44 50 27 29 35 28 35 29 34 44 40 38 44 33 36 29 24

124 123 110 114 61 66 56 113 70 18 102 113 25 60 74 14 63 107 130 118 64 141 137 143 136 127 133

137 138 105 107 84 96 100 127 107 42 125 124 112 75 80 21 55 79 122 124 65 116 120 136 133 113 114

134 135 112 112 98 89 85 93 79 57 105 113 114 94 100 64 90 98 118 133 125 121 116 136 122 113 114

126 128 114 112 110 102 98 99 79 66 92 87 80 78 85 84 100 103 116 129 122 118 115 130 119 111 112
Gradient d’une image et convolution

Forme spatiale du filtre

Démo - magnitude du gradient


Opérateur: Laplacien
Dérivée seconde et Laplacien

Masque du filtre

Le laplacien
Fig. 4.10 The gradient is a
vector that is always Gradient toujours
orthogonal to an edge. The

Laplacien length of the gradient depends orthogonal au contour


on the strength of the edge

• Liens entre le gradient, la divergence et le laplacien

L’opérateur gradient (nabla) est un vecteur de La divergence est le produit scalaire entre nabla
where uavg () and vavg () are the average values in some neighborhood around (i, j ).
deux dérivées partielles: et uncan
The solution vecteur
be found2D using optical flow techniques. Interpolation is then carried
out along displacement vectors. Using the quadratic (4.17) for enforcing smoothness
of the displacement field will create a smooth interpolation. This behavior is desired
if slices are not too thick and a smooth variation of displacement within a slice is
the norm. For thick slices, two neighboring pixels in one slice may be displaced
Souvent on traite comme un simple vecteur. to different sites in the next slice (e.g., if a new structure appears in the next slice
Pour une fonction f(x,y), on obtient que: between Lethem). In suchscalaire
produit a case, discontinuity-preserving
entre nabla et leconstraints
gradientsuchestas the one
presented in Sect. 4.3.4 may be more appropriate for achieving the desired results.
ce qu’on appelle le laplacien:

4.2.3 Edge Enhancement

Enhancing the edges improves recognizing structures in images. Since automatic or


Note: pointe en direction de la pente interactive object delineation is a frequent task in image analysis, edge enhancement
maximale. is often a prerequisite for tracking object boundaries.
Edges are closely associated with the intensity gradient because the existence of
an edge implies a local change of intensity. For a 2D image with continuous domain
(x, y), the gradient is a vector (see Fig. 4.10)
! "T
∂f ∂f
∇f (x, y) = (x, y) (x, y) . (4.18)
∂x ∂y
Filtres passe-haut
Rehaussement de contours

Soit f(x,y) une image d’entrée. L’objectif est de calculer une image dont les
contours ont été rehaussés. Pour ce faire, on utilise fréquemment le filtre laplacien:
Filtres passe-haut
Dérivée seconde et Laplacien

Image originale

Rehaussement de contours
I(x,y) G*I(x,y)

oduce approximations of the partial derivatives in x- and y-direction


nd row show the result from applying the Sobel operator). The length
can be used for computing edge features

t is approximated by differences, leading to a convolution


g two kernels
  
−1 0 −1 −1 −1
4 −1 or DLaplace8 = −1 8 −1 . (4.25)
−1 0 −1 −1 −1
LoG(I(x,y))
mates (4.24) and the latter adds the two mixed derivatives Gaussian-
Laplacian of Gaussian smoothed f
n used in conjunction with a smoothing kernel because it
. A well-known kernel is the Laplacian of Gaussian (LoG)
LoG(I(x,y)) =
he Laplacian of a Gaussian function
% & % 2 &
1 x2 + y2 x + y2
=− 4 1− exp − , (4.26)
πσ 2σ 2 2σ 2

et passage par zéro


ime Descoteaux<[email protected]>

(droite)
Filtres passe-haut
Rehaussement de contours
Filtres passe-haut
Rehaussement de contours laplacien

Démo Matlab (operators.m)


Note: matrice Hessienne
• Encode l’information de forme (on va revoir plus tard)
• Pourquoi? Regarde les modes de variations du gradient
VASCULATURE USING THE H ESSIAN 13

maximum
curvature minimum
curvature
e1
p e2

ration of the direction of the gradient or normal N , the direction of the


ximum curvatures of a surface S at a point p.
Matrice Hessienne décomposée
(analyse de forme locale dans l’image)

(a) Branch structure (b) Helix (c

49
Bruit et débruitage

Remerciements et inspirations:
- Pierre-Marc Jodoin - IMN259
http://www.dmi.usherb.ca/~jodoin/cours/imn259/index.html

- Pierrick Coupé - Marseille, France


http://www.labri.fr/index.php?n=Annuaires.Profile&id=Coupe_ID1317371796
Bruit

Bruit additif non corrélé

En général, le bruit est blanc, c-à-d que sa distribution fréquentielle est globalement uniforme

Bruit blanc (η)


Bruit
Une variable de bruit « z » est considérée comme étant une variable aléatoire suivant une densité de probabilité

Bruit gaussien

Bruit de Rayleigh
ou appelé bruit
Ricien
Bruit
Bruit poivre et sel

Exemple de bruit sur une image composée de 3 régions uniformes

Image d’origine non bruitée


Métriques de qualité

Une métrique de qualité est une fonction qui mesure la qualité visuelle d’une image. Ainsi
plus une image est dégradée par du flou, du bruit ou des artéfacts de compression (e.g. JPEG)
plus la qualité sera faible.

Qualité faible Qualité bonne Qualité excellente


Métriques de qualité les plus fréquentes
en imagerie médicale

Erreur quadratique moyenne (mean square error)

Ratio signal sur bruit (signal to noise ratio) en DB


Métriques de qualité

Une métrique beaucoup plus souvent utilisée est le PSNR en traitement d’image

Ratio signal sur bruit impulsionnel (Peak signal to noise ratio)

où d est la valeur maximale dans l’image

Le problème avec MSE, SNR et PSNR est qu’une légère modification d’une image, parfois
même imperceptible par l’œil humain, peut avoir un effet majeur sur ces métriques. Par consé-
quent, d’autres métriques ont été proposés. Une des plus utilisée est MSSIM
Z Wang, A Bovik, H. Sheikh, E. Simoncelli Image Quality Assessment: From Error
Visibility to Structural Similarity, IEEE TIP, 13(4), 2004
Problème avec ces métriques
‘‘d’analyse d’image classique’’

• Besoin d’une vérité sans bruit!!!


(impossible pour nous)
Rapport signal à bruit (SNR)

Quelle image préférez-vous?


Exemple de SNR en T2

• Si B0 augmente, SNR augmente


• Si TE diminue, SNR augmente
• Si on moyenne plus (NEX), SNR augmente
• Si plus petit voxel, SNR diminue
• Si imagerie parallèle, SNR augmente
Course au B0 et au TE

Neurospin
CEA Saclay
France

Whole-body 11.74T/500MHz magnet:


- cryostat: 4.6x4.7x4.7m3, 900mm internal diameter
- working temperature: 1.8K (liquid He)
- superconducting wire: 64t NbTi (182 km), > 1400 amp
- stored energy: 300 MJ
- overall weight: 153 tons
En pratique,
on estime le SNR à partir de l’image

• Estimation de la moyenne du signal d’intérêt

• Estimation de l’écart type du bruit

• SNR = mean( S ) / std( fond )


– Si le bruit est supposé Gaussien
– Recherche active pour les autres types de bruit
(Ricien, Chi-carré)
Estimation du SNR
Potentiellement plusieurs
S intéressants
dans lequel il faut
rapporter le SNR

mean( S )

SNR = mean(S)/std( fond)

std( fond )
Débruitage

Gaussien?
Stationnaire?
Indépendent?

= +

Problème: On ne connaît pas l’image sans bruit ni la nature du bruit exacte...


Débruitage: hypothèse classique

• Les images sont constantes par morceaux

• Les voisinages de pixels/voxels sont largement corrélés

• Débruitage: ‘‘moyennage local de voxels’’

• ‘‘moyennage’’ intelligent
Débruitage

• Filtrage linéaire
– Filtrage passe-bas
– Convolution avec une Gaussienne
– Diffusion linéaire
– Problème:
• Lissage isotrope. Lisse les contours en enlevant du bruit.
– Besoin d’un modèle de contour

• Filtrage non-linéaire
– Filtrage le long des contours, pas à travers.
– Préserve les contours

• Méthodes avancées
– NL means
– Block matching
http://scikit-image.org/docs/dev/api/skimage.restoration.html
Filtrage Gaussien (isotrope)
Comme nous l’avons vu, le filtre gaussien est excellent pour réduire le bruit dans
une image. Toutefois, il a pour inconvénient de dénaturer les contours.

Animation cool de la convolution avec une Gaussienne


https://twitter.com/3blue1brown/status/1303489896519139328
Filtrage isotrope

Étant un filtre linéaire, le filtre gaussien est partout le même. Équivalent à une
équation de diffusion isotrope. Aussi, avec le thm de convolution, équivalence
dans Fourier.
Filtrage linéaire / isotrope
http://scil.dinf.usherbrooke.ca/imn359

• Coupe les hautes fréquences de Fourier

• On peut faire mieux avec les ondelettes et la Fast Wavelet Transform (FWT)
(voir les Démo de mon cours IMN359)

Gaussian
Smoothing

Hard WT Soft WT
Diffusion isotrope / linéaire

Image originale 4mm 8mm 12mm

Démo Python
Diffusion linéaire
L’équation est souvent appelée l’équation de la diffusion de la chaleur

En 2D, cette équation prend la forme

où g est un terme de « diffusivité », généralement positif.

En traitement d’images, la fonction u(x,y,t) peut se comprendre comme une image


qui évolue dans le temps. C’est-à-dire une fonction dont les niveaux de gris
représentent des concentrations locales qui se « diffusent » dans le temps et à travers
l’image. En posant comme condition initiale:

on peut voir u(x,y,t) comme une version filtrée de f(x,y). Le filtrage s’opère en
vertu des propriétés de la diffusion.
Diffusion linéaire

Plusieurs méthodes numériques pour l’implémentation.


Dérivées finies ou convolution avec un filtre Gaussien.
On en reparlera dans un contexte de segmentation.
Diffusion linéaire

La convolution Gaussienne est équivalente à faire évoluer l’équation


de la chaleur pour t = 2 itérations
Diffusion : linéaire et non-linéaire
Avec la diffusion, il est possible de filtrer l’image tout en préservant les
discontinuités (contours). Pour y arriver, il nous faut réduire la diffusion
près des contours, c-à-d là où le gradient est élevé

Il faut donc une « diffusivité » g qui diminue aux endroits où le gradient


est élevé. Plusieurs fonctions ont été proposées, mentionnons-en trois

(Charbonnier)

(Perona-Malik)
Diffusion : linéaire et non-linéaire

Il est possible de résoudre l’équation de la diffusion (c-à-d trouver le contenu


de l’image u au temps t) de façon numérique.

Étant donnée la formule de la dérivée partielle introduite précédemment, on


peut dire que

... Plus de détails (voir notes IMN259)


Diffusion : linéaire et non-linéaire
Résultats avec la diffusivité de Perona-Malik

Diffusion linéaire
Diffusion non-linéaire -
filtrage anisotrope
Résultats avec la diffusivité de Perona-Malik
Fig. 4.19 Diffusion filtering in a CT body image. While noise is reduced and contrast is enhanced,
small structures start to disappear and at some locations (indicated by arrows), the course of the
boundary starts to change

Fig. 4.19 Diffusion filtering in a CT body image. While noise is reduced and contrast is enhanced,
small structures start to disappear and at some locations (indicated by arrows), the course of the
boundary starts to change

Fig. 4.20 Diffusion filtering in an MR brain image. Since structures are much smaller than in the
Diffusion : linéaire et non-linéaire
L’inconvénient avec les approches basées sur la diffusion est leur
lenteur. Il existe toutefois des moyens pour accélérer les calculs:

(1) Implémentation sur architecture parallèle (comme les GPUs par exemple)
(2) Utiliser un optimiseur implicite (Jacobi, Gauss-Seidel, SOR)
(3) Approche multirésolution
Quelques autres filtres
Filtre non-linéaire : filtre médian
Utile pour contrer le bruit poivre et sel (aussi appelé bruit impulsionnel - speckle noise en anglais)

Exemples:

bruit Image bruitée Gauss,

médiane

Gauss, Médiane (3x3)


Filtre médian

• Marche bien avec des contours droits


• Marche bien lorsque que sauts/discontinuités forts

• Limitations:
– Pour les images constantes par morceau
– Choix du voisinage
Filtrage bilatéral

Avec l’approche bilatérale, la forme du filtre dépend du contenu de l’image


Filtrage bilatéral

• Lissage non-uniforme

• S’adapte en fonction de l’information


locale de l’image
– Lisse où c’est possible *h3
– Préserve détails fins quand il le faut

2
*h *h1
Filtrage bilatéral
Filtrage gaussien classique :

Convolution Niveau de gris Niveau de gris


Somme sur Filtre
résultant du pixel (x,y)
les voisins
du pixel (x,y)

Filtrage bilatéral :

Terme de Filtre spatial Filtre range


normalisation Taille du voisinage I

On ne crée pas d’information

Taille du noyau
Gaussien
Filtrage bilatéral
Filtrage bilatéral

(s,t)

output input

Crédit, Frédo Durand


65
σr = ∞ 

σr = 0.1 σr = 0.25 (Gaussian blur)

input
σs = 2

σs = 6

σs = 18
Filtrage bilatéral
Note 1 : le filtrage bilatéral fonctionne mal en présence d’images
fortement bruitées.
Filtrage bilatéral
Note 2 : en présence d’images fortement bruitées, on peut rendre
ce filtre itératif.
Itération 0 Itération 1

POUR iter = 1 jusqu’à N FAIRE

Itération 2 Itération 3
Filtrage bilatéral

• Mieux que le Gaussien mais lisse quand même trop les contours

Gaussian Smoothing Bilateral Filtering


Filtrage bilatéral
Note 3 : une implémentation directe du filtrage bilatéral est très coûteuse
en temps de calcul. Pour en réduire les délais, il faut approximer les calculs.
De plus, un filtre bilatéral n’étant PAS linéaire, il ne peut pas s’effectuer via
une transformée de Fourier.
Comparaison des débruitages
‘‘classiques’’ par filtrage
Gaussian Anisotropic Bilateral Filtering
Smoothing Filtering

Hard WT Soft WT

Buades et al. (2005)


Comparaison des débruitages
‘‘classiques’’ par filtrage
Gaussian Anisotropic Bilateral Filtering
Smoothing Filtering

Hard WT Soft WT

Buades et al. (2005)


Non-local means

Buades, B. Coll, J.M. Morel "A non local algorithm for image denoising“
IEEE Computer Vision and Pattern Recognition 2005, Vol 2, pp: 60-65, 2005

Pour une démo: http://demo.ipol.im/demo/bcm_non_local_means_denoising/


Non-Local Means (filtre non-local moyen)
On se souvient qu’on peut augmenter le ratio signal sur bruit d’une image en
moyennant plusieurs images gi(x,y) dont le contenu est toujours le même (f(x,y))
plus ou moins du bruit blanc additif.

N moyennes augmente le SNR


gi(x,y) = f(x,y) + η(x,y)
d’un facteur?
p
N
Bruit blanc additif
Démontrez-le...
Non-Local Means
L’idée derrière le non-local means est la même, mais avec une seule image.
Cette méthode est basée sur le fait que les images naturelles sont fortement
structurées et redondantes et constituées de sections très répétitives.

g(x,y)

Le pixel p et son voisinage est très similaires aux pixels à et à leur


voisinage à
On cherche les fenêtres qui se ressemblent

Glasner et al. (2009)


Opérateur par ‘‘patch’’

Dabov et al. (2007)


Non-Local Means
Le but est donc de faire la moyenne de tous les pixels dont le même contenu
est très similaire plus ou moins du bruit.

détermine dans quelle mesure les pixels p et q sont similaires


Non-Local Means

Z est une constante de normalisation

et

75
Redondance dans les images et opérateur
‘‘patch-based’’

• Redondance: augmentation du nombre d’échantillon pendant l’estimation

• Opérateur par patch: détection robuste de voxels semblables même en présence de


bruit
Bilatéral versus NL means

intensity spatial weight


weight

Patch similarity
Pourquoi est-ce que le filtre NLmeans est
meilleur que le bilatéral?

Bilateral Non Local


Filtering Means

Buades et al. (2005)


Non-Local Means (filtre non-local moyen)
On se souvient qu’on peut augmenter le ratio signal sur bruit d’une image en
moyennant plusieurs images gi(x,y) dont le contenu est toujours le même (f(x,y))
plus ou moins du bruit blanc additif.

N moyennes augmente le SNR


gi(x,y) = f(x,y) + η(x,y)
d’un facteur?
p
N
Bruit blanc additif
Démontrez-le...
Comparaison et différence
Gaussian Anisotropic Bilateral Filtering
Smoothing Filtering

NLM

Hard WT Soft WT

Buades et al. (2005)


Débruitage NLmeans pour l’IRM

Moyennage pondéré sur un grand


ensemble de voxels

Poids: similitudes entre les “patchs’’

Petites patchs et petit volume V → 6 heures de calculs


Débruitage NLmeans pour l’IRM en
optimisant la position des blocs a priori
! Temps de calcul (6 heures) → pré-sélection des patchs et blocs (3 minutes)

Image sub-sampling

Block averaging

Estimator aggregation
Débruitage NLmeans pour l’IRM en
optimisant la position des blocs a priori
! 6 heures de calculs

Before After

https://sites.google.com/site/pierrickcoupe/softwares/denoising-for-
medical-imaging/mri-denoising
Extension pour le bruit Ricien

Rician distribution:

Second Moment

Rician NLM
Extension pour le bruit Ricien

[Coupé et al 2008, 2009, 2010]


NLmeans Ricien
(extrêmement utile en imagerie de diffusion)

Avant Après
Filtrage NLmeans
Une implémentation directe du NLmeans est très coûteuse
en temps de calcul. Il existe toutefois des moyens pour accélérer les calculs:

(1) Implémentation sur architecture parallèle


(multi-core, Mammouth ou GPUs par exemple)

(2) Approche multirésolution

L’idée de grouper les patchs qui se ressemblent a du sens. On


réduit les mélanges non-cohérents.

On peut faire mieux ou pas?


Méthode par bloc

Block Matching 3D collaborative filtering (Dabov et al. 2007)

• On regroupe les patchs avec une structure locale semblable (BM)


• On débruite co-jointement le groupe (3D)
• On fusionne de façon astucieuse
• Champ de recherche actif
Block matching 3D (BM3D)

• Ondelettes et seuillage utilisés (voir IMN359...)


• Chaque patch dans le groupe se fait débruiter indépendament

Filter /
threshold

Noisy Denoised
patches Patches

• Contrairement au NLmeans où seulement le voxel central de référence se


fait débruiter, dans le BM3D, toute la patch se fait débruiter
filtrage

R
thr

R R

filtrage

R
thr
R
t

R R
?
Fusion

R
t
Block matching versus NL means

3D Non-Local Means BM4D


Encore beaucoup de questions ouvertes
• Extension du NLmeans et du bloc matching en ND
• Apprentissage machine
• Autre nature de bruits que Gaussien et Ricien
(chi-Carré, chi, Poisson)
• Bruit corrélé ==> besoin de NL means qui s’adapte localement
(imagerie parallèle //)
• Voir: St-Jean, S., P. Coupé, and M. Descoteaux. "Non Local Spatial and Angular Matching :
Enabling higher spatial resolution diffusion MRI datasets through adaptive denoising."
Medical Image Analysis, 2016. DOI URL

Acquisition // Débruitée Bruit enlevé


Non-local means

• Version ricienne disponible dans Dipy (diffusion in python, www.dipy.org)


• pip install dipy
• dipy.denoise.nlmeans
• Disponible dans scikit-image (que la version Gaussienne)
• Disponible sur la page Pierrick Coupé en Matlab

120

You might also like