351
Mhamed SAYYOURI Abdselam HMIMID Pr: Hassan QJIDAA Cours de Traitement d’Image Laboratoire d’Electronique Signaux Systèmes et D’Informatique (LESSI) Master : 2ME 2013/2014 2ME - 2013/2014

Cours Image Master

Embed Size (px)

DESCRIPTION

cours

Citation preview

  • Mhamed SAYYOURI

    Abdselam HMIMIDPr: Hassan QJIDAA

    Cours de Traitement dImage

    Laboratoire dElectronique Signaux Systmes et DInformatique

    (LESSI)

    Master : 2ME2013/2014

    2ME - 2013/2014

  • Qu'est-ce qu'une image ?

    Qu'est-ce quun traitement dimage ?

    1- Rafael C. Gonzalez, Richard E. Woods Digital Image Processing (2nd Edition) - Addison-Wesley.2- Diane Lingrand, "Introduction au Traitement d'Images" 2nd dition, Vuibert, Paris, France, feb 2008, ISBN : 2-7117-4866-9

    Rfrences

  • 2ME - 2013/2014

    Image = transformation dune scne relle 3D par un capteur.

    Formation des images

  • Images naturelles et a rtificielles

    Image naturelle Plusieurs moyens d'acquisition camra, microscope, tomographie, infra-rouge, satellite,

    Image artificielle Plusieurs outils de reprsentation synthse d'images, ralit virtuelle, visualisation scientifique,

    Image naturelle Image artificielle Image artificielle

    2ME - 2013/2014

  • Formation des images Le capteur est un semi conducteur qui

    convertit la lumire en tension lectrique enfonction du degr de luminosit

    Le capteur constitu de matrice de cellulessensibles appeles photodiodes qui effectuentcette transformation tension-luminosit.

    Pour acqurir des images en couleurs, lesphotodiodes sont associes des filtresrouges, verts et bleus (RVB), chacune de cescouleurs tant chantillonnes sur 256niveaux de luminosit (2563).

    2ME - 2013/2014

  • Formation des images : les capteurs

    On distingue :

    les capteurs chimiques :systmes biologique (il)

    les films photographiques

    les capteurs photolectriques (photo-diodes,CCD,..)

    les appareils numriques

    D'autres capteurs :

    en imagerie mdicale : IRM, tomographie,

    imagerie sismique

    2ME - 2013/2014

  • 2ME - 2013/2014

    amlioration des images pour linterprtation par un observateur humain. traitement de scnes en temps rel pour la perception par des automates.Traitements de bas niveau : donnes de nature numrique.Traitements de haut niveau : entits de nature symbolique associes une reprsentation de la ralit extraite de limage.

    Traitement dimages

  • Traitement dimage

    2ME - 2013/2014

  • TI et les autres disciplines

    Traitementdimages

    Informatique

    OptiqueThorie des

    systmes

    Analyse numrique

    Thorie delinformation

    Statistique

    Neurophysiologiepsychophysique

    Thorie dusignal

    Electronique

    2ME - 2013/2014

  • Position du traitement dimages

    Traitementnumrique des signaux

    Intelligenceartificielle

    Traitementdimages

    Reconnaissancede formes

    Analyse de scnes

    2ME - 2013/2014

  • 2ME - 2013/2014

    Applications TI

  • Systmes base de TI

    2ME - 2013/2014

  • Acquisition

    Numrisation

    Traitement

    VisualisationStockage

    2ME - 2013/2014

    Systmes base de TI

  • Les tapes du traitement numrique dune image

    3 tapes fondamentales :

    Acquisition : scne physique reprsentationnumrique.

    Traitement : Extraction de linformation

    pertinente par segmentation descriptionstructurelle de limage.

    Interprtation : description structurelle description smantique.

    2ME - 2013/2014

  • Difficults

    2ME - 2013/2014

    Variations naturelles dans une mme catgorie dobjet Exemple : maison, chaise

    Grande quantit de donnes traiter Image faible rsolution N/B 128x128 16Ko

    Image haute rsolution couleur 512x512x3 750Ko

    Image camra numrique 2592x1944 pix 15,1Mo

    Mouvement (30 im./s) 22.5 Mo

  • 2ME - 2013/2014

    Variations dans le processus de

    formation de limage

    clairage

    Qualit du capteur

    Qualit du systme

  • Une image est avant tout un signal 2D f(x,y)

    Souvent, cette image reprsente une ralit 3D (x,y,z).

    D'un point de vue mathmatique : Une image est une matrice de nombres reprsentant un signal

    Plusieurs outils permettent de manipuler ce signal.

    D'un point de vue humain : Une image contient plusieurs informations smantiques.

    Il faut interprter le contenu au-del de la valeur des nombres.

    Dfinitions

    2ME - 2013/2014

  • Profil d'intensit d'une image

    Un profil dintensit dune ligne dans une image est reprsent par des signaux 1D.

    2ME - 2013/2014

  • Profil d'intensit d'une image

    2ME - 2013/2014

  • Numrisation

    La numrisation est la conversion du

    signal lectrique continu (dans l espace

    ou temps et en valeur) en un signal

    numrique discret (image numrique).

    2ME - 2013/2014

  • Image numrique

    Les valeurs de f (x,y) sont la rponse du capteur au phnomne observ

    Les valeurs de f (x,y) sont des valeurs de voltage continu

    Les valeurs de f (x,y) doivent tre converties vers le domaine numrique Conversion Analogique/Numrique (A/N)

    Deux procds sont impliqus pour numriser une image :

    Numrisation = chantillonnage + Quantification

    2ME - 2013/2014

  • L'chantillonnage est le procd de discrtisation spatiale d'une image consistant associer chaque zone rectangulaire R(x,y) d'une image continue une unique valeur I(x,y).

    On parle de sous chantillonnage lorsque l'image estdj discrtise et qu'on diminue le nombre d'chantillons.

    La quantification dsigne la limitation du nombre de valeurs diffrentes que peut prendre I(x,y).

    Une image numrique est une image chantillonne et quantifie.

    chantillonnage et quantification

    2ME - 2013/2014

  • Exemple: Chane de numrisation dun signal

    temporel (1-D)

    Signal continu (rfrence)

    tape 1

    Signal chantillonn

    Signal quantifi (4 niveaux)

    tape 3

    tape 2

    Codage (4 niveaux 2bits)

    2ME - 2013/2014

  • Echantillonnage 2D

    2ME - 2013/2014

  • chantillonnage et quantification

    2ME - 2013/2014

  • Echantillonnage et quantification

    Lchantillonnage est limit par la capacit du capteur, donc le nombre de pixels disponible (ou autre limite impose)

    La quantification est limite par la quantit de tons (de gris) dfinie dans lintervalle

    2ME - 2013/2014

  • Echantillonnage et quantification

    Avec un capteur matrice :

    2ME - 2013/2014

  • Numrisation

    2ME - 2013/2014

  • Echantillonnage et quantification

    2ME - 2013/2014

  • Reprsentation des images

    Matrice de dimension M X N

    Chaque lment une valeur entire dans l'intervalle [Lmin , Lmax]

    Le nombre de bits requis pour reprsenter les niveaux de gris dans lintervalle L est K

    La relation entre K et L est : L = 2K

    Le nombre de bit pour entreposer un image est donc :b = M X N X K

    2ME - 2013/2014

  • Reprsentation des images

    2ME - 2013/2014

  • Cest la forme du pixel.

    Le pavage est choisi pour couvrir au

    mieux le plan image.

    Le pavage est donc une partition du plan

    image qui, une fois discrtis, rsulte enun maillage qui reprsente la grilledchantillonnage.

    Tessellation (pavage)

    2ME - 2013/2014

  • 2ME - 2013/2014

  • 0 2 3 4 5 6 71012

    43

    56

    Distance

    Voisinage

    Vk(P) = { Q : 0

  • Rsolutions des images

    Rsolution spatiale

    Le plus petit dtail discernable

    Rsolution de tons de gris

    Le plus petit changement discernable

    Une image a donc une rsolution spatiale de M X N pixel et une rsolution de tons de gris de K bits ou de Lniveaux ou tons.

    2ME - 2013/2014

  • Echantillonnage et rsolution

    2ME - 2013/2014

  • Discrtisation de lamplitude(quantification des niveaux de gris)

    La valeur de f(i,j) est quantifie sur m bits (lments binaires) et peut ainsi prendre valeurs entires

    0 ( , ) 2 5 5 8 b its (im ag es en n iveau x d e g ris )f x y

    0 ( , ) 1 1 b it (im ages b inaires)f x y

    0 ( , ) 6 5 6 3 5 1 6 (rad io g rap h ies)f x y b its

    2m

    2ME - 2013/2014

  • 8 bits (256 niveaux) 6 bits (64 niveaux) 1 bits (2 niveaux)

    Discrtisation de lamplitude(quantification des niveaux de gris)

    2ME - 2013/2014

  • Quantification des niveaux de gris

    2ME - 2013/2014

  • Quantification des niveaux de gris

    2ME - 2013/2014

  • Rsolution spatiale

    2ME - 2013/2014

  • Rsolution de tons de gris

    2ME - 2013/2014

  • Bruit dans une image

    Le bruit est induit par

    le mdium d'acquisition

    les conditions extrieures d'acquisition (luminosit, mouvement, etc.)

    On peut rduire le bruit en chargeant plus longtemps le capteur CCD.

    2ME - 2013/2014

  • Images en niveaux de gris

    I(x,y) [0..255]Images binaires

    I(x,y) {0 , 1}

    Images couleurs

    IR(x,y) IG(x,y) IB(x,y)

    Types d'images

    2ME - 2013/2014

  • image niveaux de gris

    64 60 69 100 149 151 176 182 179

    65 62 68 97 145 148 175 183 181

    65 66 70 95 142 146 176 185 184

    66 66 68 90 135 140 172 184 184

    66 64 64 84 129 134 168 181 182

    59 63 62 88 130 128 166 185 180

    60 62 60 85 127 125 163 183 178

    62 62 58 81 122 120 160 181 176

    63 64 58 78 118 117 159 180 176

    Niveaux de gris - 8 bits:0 - noir255 - blanc

    2ME - 2013/2014

  • 210 209 204 202 197 247 143 71 64 80 84 54 54 57 58

    206 196 203 197 195 210 207 56 63 58 53 53 61 62 51

    201 207 192 201 198 213 156 69 65 57 55 52 53 60 50

    216 206 211 193 202 207 208 57 69 60 55 77 49 62 61

    221 206 211 194 196 197 220 56 63 60 55 46 97 58 106

    209 214 224 199 194 193 204 173 64 60 59 51 62 56 48

    204 212 213 208 191 190 191 214 60 62 66 76 51 49 55

    214 215 215 207 208 180 172 188 69 72 55 49 56 52 56

    209 205 214 205 204 196 187 196 86 62 66 87 57 60 48

    208 209 205 203 202 186 174 185 149 71 63 55 55 45 56

    207 210 211 199 217 194 183 177 209 90 62 64 52 93 52

    208 205 209 209 197 194 183 187 187 239 58 68 61 51 56

    204 206 203 209 195 203 188 185 183 221 75 61 58 60 60

    200 203 199 236 188 197 183 190 183 196 122 63 58 64 66

    205 210 202 203 199 197 196 181 173 186 105 62 57 64 63

    x =

    58 59 60 61 62 63 64 65 66 67 68 69 70 71 72

    41

    42

    43

    44

    45

    46

    47

    48

    49

    50

    51

    52

    53

    54

    55

    y =

    image niveaux de gris

    2ME - 2013/2014

  • Image couleur dans l'espace RVB

    R G B

    R=RedG=GreenB=blue

    2ME - 2013/2014

  • 1 0 1 0 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1

    1 1 1 0 0 0 1 1 1 0 1 1 1 1 0 0 0 0 1

    1 0 1 0 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1

    1 1 1 0 0 0 1 1 1 0 1 1 1 1 0 0 0 0 1

    1 0 1 0 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1

    1 1 1 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1

    Image couleur dans l'espace RVB

    2ME - 2013/2014

  • Image couleur dans l'espace RVB

    2ME - 2013/2014

  • 1- lire les images.

    2- afficher chaque image.

  • 1- la fonction imread permet de lire limage:

    A=imread(image.jpg);

    2- la fonction imshow permet dafficher limage:

    imshow (a(:,:,1)); a(:,:,2); a(:,:,3);

    2ME - 2013/2014

  • Traitements d' image

    2ME - 2013/2014

  • Analyse spatiale

    Le domaine spatial se rfre un ensemble de pixel

    composant une image

    Les mthodes d'analyse spatiale s'effectuent sur les

    pixels de l'image

    g(x,y) = T [ f(x,y) ]

    f(x,y) ---> image d'entre

    g(x,y) ---> image de sortie

    T ---> oprateur sur f ou sur {fi}

    2ME - 2013/2014

  • Traitements de base dune image

    2ME - 2013/2014

  • Oprations ponctuelles

    Dfinitions Moyenne et contraste

    Histogramme

    Oprations ponctuelles linaires Dcalage additif

    Mise lchelle multiplicative

    Inversion

    Amlioration du contraste

    Opration arithmtiques entre les images Oprations de base

    Rduction du bruit par la moyenne

    2ME - 2013/2014

  • Moyenne dune image

    Moyenne

    Image en tons de gris

    Image couleur

    Une moyenne par canal

    R

    G

    B

    2ME - 2013/2014

  • Luminance ou brillance d'une image

    La luminance (ou brillance) est dfinie comme la moyenne de tous les pixels de l'image.

    Dans les deux images suivantes, seule la luminance est diffrente :

    2ME - 2013/2014

  • Contraste

    Peut tre dfini de plusieurs faons

    cart type des variables de niveaux dintensit

    Variation entre valeurs maximale et minimale de niveaux dintensit (moins utile , plus rapide)

    Contraste dune image

    2ME - 2013/2014

  • Contraste d'une image

    Les deux images suivantes possdent un contraste diffrent :

    2ME - 2013/2014

  • %%moyenne

    %%contraste

    2ME - 2013/2014

  • L'histogramme reprsente la distribution des niveaux de gris (ou de couleurs) dans une image

    Le nombre de pixel tombant dans chaque intervalle est ensuite affich en fonction de valeurs de niveaux de gris

    Nombre de pixels

    Niveau de gris

    Histogramme des niveaux de gris

    2ME - 2013/2014

  • Image A en

    niveaux de gris

    Matrice des valeurs de luminance

    des pixels de limage A Histogramme de

    limage A

    2 2 2 2 2 2 2 2

    2 0 0 0 0 0 0 2

    2 0 1 1 1 1 0 2

    2 0 1 0 0 1 0 2

    2 0 1 1 1 1 0 2

    2 0 1 0 0 1 0 2

    2 0 0 0 0 0 0 2

    2 2 2 2 2 2 2 2

    Les niveaux 0, 1 et 2 sont respectivement reprsents par 24, 12 et 28pixels reprsentation de cette population de pixels sur l'histogramme.

    Exemple simple de calcul dhistogramme

    L'image A comporte 3 niveaux de gris diffrents : 0, 1 et 2.

    Compter le nombre de pixels pour chaque niveau de gris, laide de la matrice des valeurs de luminance.

    2ME - 2013/2014

  • Histogramme d'une image

    PI(k)

    k

    PI(k)

    k

    PI(k)

    k

    Dynamique d'une image = [valeur_min,valeur_max]

    2ME - 2013/2014

  • Caractrisation par lhistogramme

    Image sous-expose

    Image sur-expose

    Image mal quantifie2ME - 2013/2014

  • Histogramme des niveaux de gris

    SCNE DE FAIBLE RADIANCE

    niveaux de gris

    % %

    niveaux de gris

    SCNE DE FORTE RADIANCE

    niveaux de gris

    %

    SCNE DE BAS CONTRASTE

    niveaux de gris

    %

    SCNE DE HAUT CONTRASTE

    2ME - 2013/2014

  • Histogramme

    Types d'images et leurs histogrammes

    2ME - 2013/2014

  • 2ME - 2013/2014

    Il sagit dune transformation du type f= t(f) quipermet de modifier la dynamique des niveaux degris dans le but damliorer laspect visuel delimage. un niveau de gris f de limage originale

    correspond le niveau t(f) dans limage transforme.On fait subir chaque pixel un traitement nedpendant que de sa valeur

    Traitement ponctuelle dune image

    Recadrage de dynamique

  • 2ME - 2013/2014

    Transformation de recadrage

    On suppose une image de dpart prsentant unhistogramme concentr dans lintervalle[min, max]. Les valeurs min, max correspondentaux niveaux de gris extrmes prsents dans cetteimage.Le recadrage de dynamique consiste tendre ladynamique de limage transforme ltenduetotale [0, 255]. La transformation de recadrageest donc une application affine dfinie commesuit:

  • Transformation des niveaux de gris

    gl'

    gl

    min max

    255

    0

    '

    max min

    min

    max min

    min'

    max min max min

    ' ( min)max min

    MAX

    MAX

    MAX MAX

    MAX

    gl m gl b

    PIXm

    PIXb

    PIX PIXgl gl

    PIXgl gl

    gl1

    gl1'

    255 255 ' ( min)

    max minMAX

    pour PIX on obtient gl gl

    2ME - 2013/2014

  • Transformation des niveaux de gris Expression de la dynamique (recadrage)

    2ME - 2013/2014

    Recadrage dhistogramme

  • Amlioration du contraste

    Transformation linaire

    Transformation linaire avec saturation

    Transformation linaire par bout avec saturation

    galisation de lhistogramme

    2ME - 2013/2014

  • Amlioration du contraste

    Transformation linaire

    '( , ) ( ( , ) min)max min

    ( ( , ) min)'( , )

    max min

    ( ( , ) min)0,1

    max min

    MAX

    MAX

    PIXf x y f x y

    f x yf x y PIX

    f x y

    2ME - 2013/2014

  • Transformation linaire

    %

    GLGL

    GL

    0 255

    min max

    min max

    2ME - 2013/2014

  • Amlioration du contraste

    Transformation linaire avec saturation

    min

    max min

    min

    max min

    min

    max min

    min max

    min max

    '( , ) ( ( , ) )

    ( ( , ) )'( , )

    ( ( , ) )0,1

    min( ( , ))

    max( ( , ))

    MAX

    MAX

    PIXf x y f x y S

    S S

    f x y Sf x y PIX

    S S

    f x y S

    S S

    f x y S S

    S S f x y

    2ME - 2013/2014

  • Transformation linaire par bout avec saturation

    %

    GLGLmin max

    GL

    0 255min maxSmin1 Smax2

    Smax1/Smin2

    2ME - 2013/2014

  • 2ME - 2013/2014

    Les types de correction donns ci-dessous permettent daccentuer le contraste dans une plage prcise de niveau.

    Dilatation de la dynamique des zones sombres

    Dilatation de la dynamiquedes zones claires

    Fonction de rehaussement de contraste

  • 2ME - 2013/2014

    Fonction de rehaussement de contraste

    La transformation de rehaussement de contrasteest donc une application affine dfinie comme suit:

  • 2ME - 2013/2014

  • Correction de la dynamique de l'image

    Image originale Image restaure

    Source : www.crans.ens-cachan.fr/~genest/histogramme.pdf

    2ME - 2013/2014

  • Correction de la dynamique de l'image

    Dans le cas o l'histogramme initial occupe toute la plage de dynamique, aucun changement n'est visible.

    2ME - 2013/2014

  • Egalisation de l'histogramme

    Pour amliorer le contraste, on cherche aplanir lhistogramme

    Etape 1 : Calcul de l'histogramme

    Etape 2 : Normalisation de l'histogramme(Nbp : nombre de points de l'histogramme)

    Etape 3 : Densit de probabilit normalis

    Etape 4 : Transformation des niveaux de gris de l'image

    k k

    )( khideal)( kh

    2ME - 2013/2014

  • galisation de lhistogramme

    Le but est de rendre lhistogramme le plus plat possible

    Distribution uniforme des niveaux de gris

    Maximisation de lentropie de limage

    Image donnant une information maximale

    2ME - 2013/2014

  • Exemple 1

    0 50 100 150 200 2500

    500

    1000

    1500

    2000

    2500

    3000

    3500

    0 50 100 150 200 2500

    500

    1000

    1500

    2000

    2500

    3000

    3500

    Image originale Image plus contraste

    2ME - 2013/2014

  • Exemple 2

    2ME - 2013/2014

  • Exemple 3

    L'galisation d'histogramme peut amliorer une image l o la correction de dynamique de l'histogramme est inefficace.

    2ME - 2013/2014

  • Exemple 4

    Si on prend la mme image avec des contrastes diffrents,lgalisation dhistogramme donne le mme rsultat pourtoutes les images.

    2ME - 2013/2014

  • Egalisation locale dhistogramme

    2ME - 2013/2014

  • Egalisation dune image couleur

    1. Calculer lintensit de limage couleur

    I = (R + V + B)/3

    2. Calculer lhistogramme de I

    3. Calculer lhistogramme cumul de I

    4. Appliquer lgalisation de lhistogramme dans

    chaque plan de limage couleur

    2ME - 2013/2014

  • Exemple

    2ME - 2013/2014

  • 2ME - 2013/2014

  • Oprations ponctuelles linaires

    Il faut viter et

    O K-1= intensit maximale (souvent, 255)

    g ( x , y ) P f ( x , y ) L

    g ( x , y ) 0 g ( x , y ) K 1

    Forme gnrale

    2ME - 2013/2014

  • Dcalage additif

    Contrle de la luminosit

    Ici P=1 et

    L=100

    L=-100

    (K 1) L K 1

    g ( x , y ) f ( x , y ) L

    2ME - 2013/2014

  • Mise lchelle multiplicative

    Ici L=0 et P>0

    g(x,y)=P . f(x,y)

    Modifie la luminosit et le contraste

    P=O.5

    P=1.5

    2ME - 2013/2014

  • Inversion

    Ici P=-1 et L=255

    g(x,y)= - g(x,y)+255

    Inversion

    2ME - 2013/2014

  • Oprations sur les images

    image1

    image2

    F(x,y)

    G(x,y)

    2ME - 2013/2014

  • Addition dimages

    Laddition pixel pixel de deux images F et G est dfinie

    par :

    A(x; y) = Min(F(x; y) + G(x; y); 255)

    Laddition dimages peut permettre

    de diminuer le bruit dune vue dans une srie

    dimages

    daugmenter la luminance en additionnant une

    image avec elle-mme

    2ME - 2013/2014

  • Exemple

    0.5*F(x,y) + 0.5*G(x,y)

    2ME - 2013/2014

  • La soustraction pixel pixel de deux images F et G est

    dfinie par :

    S(x; y) = Max(F(x, y) - G(x,y); 0)

    La soustraction dimages peut permettre

    la dtection de dfauts

    la dtection de mouvements

    Soustraction d'images

    2ME - 2013/2014

  • Exemple 1

    image 2 image 1

    F(x,y) - G(x,y)

    G(x,y) - F(x,y)

    image 1 image 2

    2ME - 2013/2014

  • Exemple 2

    2ME - 2013/2014

  • La multiplication dune image par un ratio (facteur) est

    dfinie par :

    M(x; y) = Max(F(x; y) x ratio; 255)

    La multiplication dimages peut permettre damliorer le

    contraste ou la luminosit

    Multiplication dimages

    2ME - 2013/2014

  • Exemple

    2ME - 2013/2014

  • 2ME - 2013/2014

  • Relation entre les pixels

    Pixels voisins d'un point (p) 4 horizontaux et verticaux

    (x+1,y),(x-1,y),(x,y+1),(x,y-1)

    4-voisins de p N4(p)

    4 diagonaux

    (x+1,y+1),(x+1,y-1),(x-1,y+1),(x-1,y-1)

    4-voisins diagonaux de p ND(p)

    Ces 8 pixels

    8-voisins de p N8(p)

    Certains peuvent tre hors image!

    0 1 1

    1 1 0

    0 1 1

    2ME - 2013/2014

  • Adjacence, Connectivit, Rgions et conteurs

    AdjacenceSoit V l'ensemble des valeurs de niveau gris utilises pour dfinir ladjacence.

    Dans une image binaire, V = {1} Dans une image de gray-scale, l'ide est le mme,

    V pourrait tre n'importe quel sous-ensemble de ces 256 valeurs.

    Nous considrons trois types dadjacence : Adjacence-4 Adjacence-8 Adjacence mixte (m)

    2ME - 2013/2014

  • Adjacence

    Adjacence

    Adjacence-4 p et q sont adjacent-4 si q est dans

    N4(p)

    Adjacence-8 p et q sont adjacent-8 si q est dans

    N8(p)

    1 1 1

    1 1 1

    1 1 1

    1 1 1

    1 1 1

    1 1 1

    2ME - 2013/2014

  • Adjacence

    Adjacence-m (mixe) p et q sont adjacent-m si

    q est dans N4(p) ou

    q est dans N8(p) et N4(p) N4(q) = 0

    limine les ambiguts de l'adjacence-8

    Adjacent-8 Adjacent-m

    2ME - 2013/2014

  • Adjacence

    Adjacence-6

    Adjacence-4 + une diagonale

    Adjacence-6 NO/SE

    Adjacence-6 NE/SO

    1 1 1

    1 1 1

    1 1 1

    1 1 1

    1 1 1

    1 1 1

    2ME - 2013/2014

  • Connectivit

    2 pixels sont connexes si l'on trouve un chemind'adjacence entre eux

    Concept essentiel en imagerie, surtout pour dfinir les rgions et les contours

    2ME - 2013/2014

  • Chemin

    p et q de coordonnes (x,y) et (s,t)

    Le chemin de p q est

    (x0,y0), (x1,y1), , (xn,yn)

    o (x0,y0)=(x,y) et (xn,yn)=(s,t)

    n est la longueur du chemin

    Si (x0,y0)=(xn,yn) le chemin est ferm

    2ME - 2013/2014

  • Chemin

    Chemin -4, -8, et -m

    Adjacent-8 Adjacent-m

    2ME - 2013/2014

  • Rgions et contours (edges)

    Une rgion est une zone de pixels connexes

    Un contour est un chemin dfinissant une frontire

    entre une zone connexe et ses voisines

    Un contour peut tre ouvert ou ferm

    S'il est ferm, il entour une rgion!

    Si toute l'image fait partie de la rgion, les pixels

    priphriques sont la limite.

    2ME - 2013/2014

  • Distance entre pixels

    Choisissons les pixels p, q et z avec coordonnes (x,y), (s,t) et (v,w)

    D est une distance ssi:

    D(p,q) 0 (=0 si p=q)

    D(p,q) = D(q,p)

    D(p,z) D(p,q) + D(q,z)

    Exp: Distance Euclidienne (De)

    De(p,q) = [(x-s)2 + (y-t)2]1/2

    Forme un disque de rayon constant centr sur (x,y)

    2ME - 2013/2014

  • Distance entre pixels

    City-block distance (D4)D4(p,q) = |x-s| + |y-t|

    Forme un diamant centr sur (x,y)

    Exemple: D4 2

    2

    2 1 2

    2 1 0 1 2

    2 1 2

    2

    2ME - 2013/2014

  • Distance entre pixels

    Distance chiquier (D8)

    D8(p,q) = maximum (|x-s| , |y-t|)

    Forme un carr centr sur (x,y)

    Exemple: D8 2

    2 2 2 2 2

    2 1 1 1 2

    2 1 0 1 2

    2 1 1 1 2

    2 2 2 2 2

    2ME - 2013/2014

  • Distance entre pixels

    Les distances D4 et D8 sont dpendantes des coordonnes, pas du chemin

    La distance Dm est dfinie comme le plus court chemin-m La valeur des pixels est importantes

    p3 p4p1 p2p

    0 1

    0 1

    1

    Dm (p,p4) = 2

    0 1

    1 1

    1

    Dm (p,p4) = 3

    2ME - 2013/2014

  • Les sources de bruit

    Bruits lis aux conditions de prise de vues

    Ce sont des vnements vrifiant les conditions

    dacquisition du signal

    Le boug

    Problmes lis lclairage de la scne observe

    Bruits lis au capteur

    Capteur mal rgl

    Capteur de mauvaise qualit

    2ME - 2013/2014

  • Les sources de bruit

    Bruits lis lchantillonnage

    Ces bruits refltent essentiellement des problmes de

    quantification (CCD)

    Prcision denviron 1/512

    Problmes dans le cas dapplications de grande prcision

    Bruits lis la nature de la scne

    Nuage sur les images satellitaires

    Poussires dans les scnes industrielles

    Brouillard pour les scnes routires

    2ME - 2013/2014

  • Les types de bruit

    Diffrents types de bruit

    Bruit additif ou multiplicatif

    P(i) = b(i) + P(i)

    P(i) = b(i) * P(i)

    et

    2ME - 2013/2014

  • Diffrents types de bruit

    Comment est gnr b(i) ?

    Loi gaussienne

    Loi uniforme

    Alatoire

    Principaux types de bruit

    Gaussien

    Poivre et sel

    2ME - 2013/2014

    Les types de bruit

  • Rduction du bruit

    Comment rduire le bruit ?

    Dmarche gnrale :

    Caractriser le bruit prsent dans limage

    Choisir un algorithme appropri

    Pour chaque pixel de limage

    tudier la valeur du pixel

    tudier les valeurs des voisins

    Modifier la valeur du pixel

    2ME - 2013/2014

  • Rduction du bruit

    Rduction du bruit par moyennage

    Soit n images dune mme scne, chaque image peut sexprimer gi(x,y)=f(x,y)+bi(x,y)

    f(x,y) est limage non bruite

    est un bruit blanc non corrl

    Limage moyenne

    2

    ib ( x , y ) N (0 , )

    i jE{b ( x , y ) b ( x , y )} 0 p o u r i j

    n

    i

    i 1

    1g ( x , y ) g ( x , y )

    n

    2ME - 2013/2014

  • Rduction du bruit

    limination du bruit par moyennage

    Limage moyenne:

    Signal inchang et un nouveau bruit

    Moyenne du nouveau bruit nulle, comme avant

    n

    i

    i 1

    1g ( x , y ) ( f ( x , y ) b ( x , y ))

    n

    n

    i

    i 1

    1g ( x , y ) f ( x , y ) ( b ( x , y )

    n

    n n

    i i

    i 1 i 1

    1 1E ( b ( x , y ) E ( b ( x , y ) = 0

    n n

    2ME - 2013/2014

  • Rduction du bruit

    Calcul de la variance du bruit

    2

    2

    V a r ( X ) E ( X E X )

    = E { X } S i E { X } = 0

    n2 2

    i

    i 1

    n n

    i j2i 1 j i

    n n

    i i i j2i 1 j i

    2n2

    i2i 1

    1E { ( b ( x , y )) }

    n

    1 E {b ( x , y ) b ( x , y )}

    n

    1 E {b ( x , y ) b ( x , y )} E {b ( x , y ) b ( x , y )

    n

    1 E {b ( x , y )}

    nn

    Car bruit non corrl

    2ME - 2013/2014

  • 0 000 000 00

    0

    00

    00

    00

    0

    0

    0 0 000 000 00

    0

    00

    00

    00

    0

    0

    0

    Transformation base sur le voisinage dun point (x ,y): opration locale

    Image traiteImage originale

    (x,y)

    transformation

    2ME - 2013/2014

  • Transformation par convolution

    2ME - 2013/2014

    Le produit de convolution est l'opration de voisinage linaire et invariante par translation. Cette opration fait donc appel aux outils disponibles pour respecter la convolution: multiplication du niveau de gris d'un point par une constante. addition des niveaux de gris des points d'une image; dans le cas continu, cette addition des niveaux se traduit sous forme d'une intgrale de surface

  • 2ME - 2013/2014

    Dfinition de la convolution dans l'espace continu

    Pour deux images continues f et g, le produit de convolution g = f h est dfini par :

    Pour deux images discrtes f et g. La convolution discrte est un calcul linaire de voisinage:

    Transformation par convolution

    Dfinition de la convolution dans l'espace discret

  • Convolution discrte

    La convolution discrte est un outil permettant la construction de filtres linaires ou de filtres de dplacements invariants

    L quation de convolution, note g(m,n), de la squence f(m,n) avec une fonction h(m,n) est :

    h(i,j) est appele masque de convolution, noyau de convolution, filtre, fentre, kernel,

    En pratique, la convolution numrique d'une image se fera simplement par une sommation de multiplications.

    2ME - 2013/2014

  • ( , ) ( , ) ( , )

    x y

    x ym n

    g x y f m n h x m y n

    2 2

    2 2

    D F + 1 D F + 1

    D F - 1 D F - 1

    Transformation par convolution : Exemple

    Masque

    w3

    w9

    w2

    w8

    w1

    w7

    w6w5w4

    DF ouDimensionFiltre : 3

    2ME - 2013/2014

  • Exemple de convolution 2D

    2ME - 2013/2014

  • Convolution numrique

    *

    Image

    Noyau de convolution

    I K

    2ME - 2013/2014

  • Convolution numrique R = I*K

    I R

    K

    R(1,1) = I(0,0) K(0,0) + I(1,0) K(1,0) + I(2,0) K(2,0) + I(0,1) K(0,1) + I(1,1) K(1,1) + I(2,1) K(2,1) + I(0,2) K(0,2) + I(1,2) K(1,2) + I(2,2) K(2,2)

    2ME - 2013/2014

  • Convolution numrique R = I*K

    I R

    K

    R(2,1) = I(1,0) K(0,0) + I(2,0) K(1,0) + I(3,0) K(2,0) + I(1,1) K(0,1) + I(2,1) K(1,1) + I(3,1) K(2,1) + I(1,2) K(0,2) + I(2,2) K(1,2) + I(3,2) K(2,2)

    2ME - 2013/2014

  • Convolution numrique R = I*K

    I R

    K

    R(x,y) = I(x-1,y-1) K(0,0) + I(x, y-1) K(1,0) + I(x+1, y-1) K(2,0) + I(x-1,y) K(0,1) + I(x,y) K(1,1) + I(x+1,y) K(2,1) + I(x-1,y+1) K(0,2) + I(x,y+1) K(1,2) + I(x+1,y+1) K(2,2)

    2ME - 2013/2014

  • Convolution numrique R = I*K

    I R

    K

    R(N-2,M-2) = I(N-3,M-3) K(0,0) + I(N-2,M-3) K(0,1) + I(N-1,M-3) K(0,3) + I(N-3,M-2) K(1,0) + I(N-2,M-2) K(1,1) + I(N-1,M-2) K(1,2) + I(N-3,M-1) K(2,0) + I(N-2,M-1 )K(2,1) + I(N-1,M-1) K(2,2)

    2ME - 2013/2014

  • Convolution numrique

    ? ? ? ? ? ? ? ? ? ?

    ? ?

    ? ?

    ? ?

    ? ?

    ? ?

    ? ?

    ? ?

    ? ?

    ? ? ? ? ? ? ? ? ? ?

    Problme : Que faire avec les bords de l'image ?

    Mettre zro (0)

    Convolution partielle

    Sur une portion du noyau

    2ME - 2013/2014

  • Masque de convolution

    Le masque de convolution est le plus souvent Carr

    De taille 3x3 ou 5x5 (ou plus, mais impair)

    Ce masque reprsente un filtre linaire permettant de modifier l'image.

    La plupart du temps, on divisera le rsultat de la convolution par la somme des coefficients du masque. Pour viter de modifier l'entropie de l'image, la somme des

    coefficients doit tre gale 1.

    Dans le cas du Laplacien (plus loin), la somme sera gale zro.

    2ME - 2013/2014

  • Typologie des Filtres

    2ME - 2013/2014

  • Typologie des Filtres : suite

    2ME - 2013/2014

  • Typologie des Filtres : suite

    La mise en cascade de filtres (associativit de la convolution) permet de gnrer des filtres de grande taille moindre cot de calculs

    2ME - 2013/2014

  • Le filtre moyenne

    Le filtre moyenne

    Permet de lisser l'image (smoothing)

    Remplace chaque pixel par la valeur moyenne de ses voisins

    Rduit le bruit

    Rduit les dtails non-important

    Brouille ou rend floue l'image (blur edges)

    Filtre dont tous les coefficients sont gaux.

    Exemple de filtres moyennes :

    1/9 1/9 1/9

    1/9 1/9 1/9

    1/9 1/9 1/9

    1 1 1

    1 1 1

    1 1 1

    ou 1/9

    1 1 1 1 1

    1 1 1 1 1

    1 1 1 1 1

    1 1 1 1 1

    1 1 1 1 1

    3x35x5

    1/25

    2ME - 2013/2014

  • On affecte chaque pixel la valeur moyenne obtenue dans le voisinage :

    avec j les voisins de i

    Filtre moyenneur

    2ME - 2013/2014

  • Exemples de filtres moyennes

    Original Moyenne 5x5 Moyenne 11x11

    Source : monkey.geog.ucsb.edu/mh/115b/filter.pdf

    2ME - 2013/2014

  • Filtre de moyenne

    Image originale Image filtre

    Exemples de filtres moyennes

    2ME - 2013/2014

  • Le filtre Gaussien

    Fonction gaussienne en 3D Image d'une gaussienne

    Le filtre gaussien donnera un meilleure lissage et une meilleure rduction du bruit que le filtre moyenne.

    2ME - 2013/2014

  • Filtre gaussien

    2

    22

    2

    2

    )(

    2

    1),(),(

    yx

    eyxPSFyxgauss

    fonction gaussienne 2-D

    w3

    w9

    w2

    w8

    w1

    w7

    w6w5w4 DimX = Dim Y = 8 + 1o 3,0

    2ME - 2013/2014

  • Filtre gaussien

    Filtre Gaussien1 2 1

    2 4 2

    1 2 1

    (1/16)*

    1 2 1

    2 4 2

    1 2 1

    (1/16)*

    1 2 1

    2 4 2

    1 2 1

    (1/16)*1 1

    1 1(1/4)*

    1 1

    1 1(1/4)** =

    1 2 1(1/4) =*

    1

    2

    1

    (1/4)*

    2ME - 2013/2014

  • Exemples de filtres gaussiens

    Original Gauss 5x5 Gauss 11x11

    2ME - 2013/2014

  • Triangle de Pascal

    Chaque lment est la somme des lments suprieur et suprieur gauche

    On choisit une ligne impaire

    On convolue un filtre horizontal avec un filtre vertical

    On obtient un filtre carr

    On normalise par la somme de tous les lments du filtre

    2ME - 2013/2014

  • Simulation

    2ME - 2013/2014

  • Dcomposition dun filtre

    Pour acclrer les traitements, il est possible de dcomposer les filtres en sous-filtres quivalents quon passe un aprs lautre.

    1 2 1

    2 4 2

    1 2 1

    = 1 2 1

    1

    2

    1*

    2ME - 2013/2014

  • Mdiane dune suite de : non linaire, non analytique

    Si n impair: tel quil ya autant de que de

    On doit ordonner les , puis prendre llment du milieu

    Plus coteux

    Complexit O(nlog n)

    Plus robuste aux valeurs extrmes

    ix

    x

    ix x

    ix x

    ix

    2ME - 2013/2014

    Filtre non linaire : Filtre Mdian

    Pour nettoyer le bruit dans une image, il existe mieux que lefiltre moyenneur ou le filtre gaussien : le filtre mdian.

  • Filtre non linaire : Filtre Mdian

    Exemple

    10 30 5

    20 200 20

    15 10 30

    5 10 10 15 20 20 30 30 200

    Valeurs dintensit mdiane

    10 30 5

    20 20 20

    15 10 30

    2ME - 2013/2014

  • Filtre Mdian

    On affecte chaque pixel la valeur mdiane

    obtenue dans le voisinage

    On vite ainsi les valeurs extrmes

    2ME - 2013/2014

  • Exemple de filtre mdian

    Original Moyenne 3x3 Mdian 3x3

    2ME - 2013/2014

  • Exemple de filtre mdian

    2ME - 2013/2014

  • Choix du filtre

    Bruit gaussien : filtre moyenneur

    poivre et sel : filtre mdian

    2ME - 2013/2014

  • Nettoyage du bruit dans une image

    Bruit "poivre et sel"

    3 X 3 Moyenne 5 X 5 Moyenne

    7 X 7 Moyenne Filtre mdian

    2ME - 2013/2014

  • 1 4 6 4 1

    4 16 24 16 4

    6 24 36 24 6

    4 16 24 16 4

    1 4 6 4 1

    1/256

    Filtre Gaussien ou binomial

    1 2 3 2 1

    2 4 6 4 2

    3 6 9 8 3

    2 4 6 4 2

    1 2 3 2 1

    1/81

    Filtre pyramidal

    0 0 1 0 0

    0 2 2 2 0

    1 2 5 2 1

    0 2 2 2 0

    0 0 1 0 0

    1/25

    Filtre Conique

    Obtenu par la convolution de deux filtres de moyenne 3X3

    Autres filtres

    2ME - 2013/2014

  • Filtrage frquentiel

    Pour appliquer un filtre:

    On veut multiplier le signal de limage par une fonction dans le domaine frquentiel

    Reviens convoluer dans le domaine spatial avec la transforme de Fourier inverse du filtre

    Limage est discrte: convolution discrte

    On utilise donc un Kernel de convolution

    2ME - 2013/2014

  • Filtrage frquentiel

    Une image peut tre reprsente par un signal 2D

    Sa transforme de Fourier donne donc lintensit en fonction de la frquence.

    On peut appliquer des filtres passe-bas et passe-haut sur limage pour faire ressortir certaines gammes de frquences.

    2ME - 2013/2014

  • Filtrage frquentiel

    La transform de Fourier prsente:

    Moyenne lorigine (composante DC)

    Les basses frquences - niveau de gris des surfaces douces (smooth)

    Les hautes frquences - les dtails, tels les arrtes et le bruits (sharp)

    Il est possible de crer des filtres ddis l'attnuation de frquences spcifiques

    Filtre passe-bande, passe-bas, passe-haut, Gaussien,

    2ME - 2013/2014

  • Filtrage frquentiel

    Dans une image, les basses frquences reprsentent les zones lisses, qui varient peu

    Les hautes frquences sont les zones trs variables: textures, arrtes, coins

    Un filtre passe-bas fait passer les basses frquences

    limine les hautes frquences, diminue le bruit

    Permet de lisser , dadoucir les artes

    Un filtre passe-haut fait passer les hautes frquences

    Met en vidence les artes, les contours, les ombres

    Augmente le bruit dans limage

    2ME - 2013/2014

  • Transforme de Fourier

    Reprsentation frquentielle dune fonction donne

    Images = fonctions relles L 2

    2

    2

    ( ) ( )

    1( ) ( )

    2

    i t

    i t

    F f t e d t

    f t F e d

    dttf2

    )(

    2ME - 2013/2014

  • Ralisation optique de la TF

    Le noyau de la transforme peut reprsenter une onde plane monochromatique

    2ME - 2013/2014

  • Quelques dfinitions

    TF est imaginaire

    Spectre de Fourier

    Phase

    Spectre de Puissance (densit spectrale)

    )()()()()(

    ieFIiRF

    )()()()()(22

    IRIiRF

    )()(tan)( 1 RI

    2)()()()()()(

    FeFeFP

    ii

    2ME - 2013/2014

  • Rsultats rectangle 1D

    2ME - 2013/2014

  • Rsultat rectangle 2D

    2ME - 2013/2014

  • Proprits de la TF

    Sparable

    Proprits de translation

    Priodicit et symtrie (conjugu)

    Rotation

    Distributivit

    chelle

    Valeur moyenne de lintensit

    Drive

    Laplacien

    2ME - 2013/2014

  • Proprits de la TF suite

    2ME - 2013/2014

  • 2ME - 2013/2014

    Proprits de la TF suite

  • Espace discret

    Cas continu (image optique) peut sexprimer pour le cas discret (image numrique). En 1D, on a

    M pas dchantillonnage uniformes x

    Pour les images, on a des pas x et y pour une fonction donne par

    )1(,),3(),2(),1(),0(

    ))1((,),3(),2(),(),(

    )(

    00000

    Mfffff

    xMxfxxfxxfxxfxf

    xf

    )1,1(,),0,2(),1,0(),0,1(),0,0(),( NMfffffyxf

    2ME - 2013/2014

  • TF discrte

    On passe de lespace discret aux frquences discrtes avec les pas dchantillonnage relis par:

    1

    0

    1,,2,1,0/2

    1,,2,1,0

    1

    0

    /2

    )()(

    )(1

    )(

    M

    MxMxi

    M

    M

    x

    Mxi

    eFxf

    exfM

    F

    xM

    1

    2ME - 2013/2014

  • TF discrte 2D

    Note: la normalisation a t rpartie sur la paire de transforme

    1 1

    2 ( ) /, 0 ,1 , 2 , , 1

    2

    0 0

    1 1

    2 ( ) /, 0 ,1 , 2 , , 1

    2

    0 0

    so it

    1( , ) ( , )

    1( , ) ( , )

    N N

    i x y NN

    x y

    N N

    i x y Nx y N

    M N

    F f x y eN

    f x y F eN

    2ME - 2013/2014

  • Passe-bas idal 0|1

    Coupe toutes les hautes frquences aprs une distance D0 du centre

    Distance du centre (M/2, N/2)

    0

    0

    1 s i D ( u , v ) DH ( u , v )

    0 s i D ( u , v ) D

    D u v uM

    vN

    ( , ) ( ) ( )

    /

    2 2

    2 2

    1 2

    2ME - 2013/2014

  • Passe-bas idal 0|1

    D0 : frquence de coupure (cutoff)

    3-D Section radiale2-D

    2ME - 2013/2014

  • r=128

    r=8r=16r=32r=64

    Exemple: Filtrage passe-bas

    2ME - 2013/2014

  • Passe-bas idal

    Effet de la frquence de coupure D0 valu en fonction de l'nergie comprise dans le

    cercle de rayon D0

    P u v F u v R u v I u v( , ) ( , ) ( , ) ( , ) 2

    2 2

    P P u vT

    v

    N

    u

    M

    ( , )0

    1

    0

    1

    %( , )

    p u issa n ceP u v

    PTvu

    1 0 0 (u,v) D0

    2ME - 2013/2014

  • Passe-haut idal

    Coupe toutes les basses frquences aprs une distance D0 du centre

    Distance du centre (M/2, N/2)

    0

    0

    1 ( , )( , )

    0 ( , )

    s i D u v DH u v

    s i D u v D

    D u v uM

    vN

    ( , ) ( ) ( )

    /

    2 2

    2 2

    1 2

    2ME - 2013/2014

  • Passe-haut idal

    3-D 2-D Section radiale

    2ME - 2013/2014

  • r=128

    r=64r=32r=16r=8

    Exemple : Filtrage passe-haut

    2ME - 2013/2014

  • Un filtre passe-bande est le complmentaire d'un filtre passe-bas et d'un filtre passe-haut.

    Un filtre passe-bande est un systme linaire qui prserve une plage de frquences.

    Filtrage passe-bande

    2ME - 2013/2014

  • Exemple : Filtrage passe-bande

    On dfinit la bande de frquence que lon souhaite conserver

    2ME - 2013/2014

  • Filtres passe-haut: Dtection de contours

    Au niveau des pixels

    Exp: filtre 3X3 ( partir du filtre de moyenne)

    Exp: filtre 5X5

    0 0 0 1 1 1 1 1 1

    1 1 1( x , y ) h ( x , y ) 0 9 0 1 1 1 1 8 1

    9 9 90 0 0 1 1 1 1 1 1

    1 1 1 1 1

    1 1 1 1 1

    11 1 2 4 1 1

    2 51 1 1 1 1

    1 1 1 1 1

    2ME - 2013/2014

  • Filtres passe-haut: Dtection de contours

    Oprations mathmatiques

    Image originale Image filtre passe-bas Hautes frquences

    - =

    2ME - 2013/2014

  • Filtres passe-haut: Dtection de contours

    2ME - 2013/2014

  • Filtres passe-haut: Dtection de contours

    La dtection de contour

    Deux approches :

    1. Approche gradient : dtermination des extrema locaux dans la direction du gradient.

    2. Approche laplacien : dtermination des passages par zro du laplacien.

    2ME - 2013/2014

  • Filtres diffrentiels

    (b)(a)

    Image

    prof il duneligne

    horizontale

    (drivepremire)(driveseconde)

    2ME - 2013/2014

  • Filtres passe-haut: Dtection de contours

    Dtection de contours par gradient

    Contour = gradient lev

    Technique en 2 tapes :

    Estimer le gradient (convolution)

    Localiser les valeurs leves (seuillage)

    2ME - 2013/2014

  • Filtres passe-haut: Dtection de contours

    Dtection de contours par gradient: Convolution Multiplication locale par un masque

    I(x,y) = I(x,y) * M

    2ME - 2013/2014

  • Filtres passe-haut: Dtection de contours

    Estimation du Gradient

    Soit un pixel f(x,y), le gradient y sera

    La norme du gradient

    La direction du gradient

    Gx = f * MxGy = f * My

    2ME - 2013/2014

  • Filtres passe-haut: Dtection de contours

    Approximation du gradient (en x artes verticales)

    Approximation du gradient (en y artes horizontales)

    Masque de convolution

    x x

    x x

    0 0x x

    f ( x , y ) f ( x , y ) f ( x , y ) f ( x , y )flim lim

    x

    x1 Masque de convolution 1 -1 -1 1

    x

    x x

    0x

    f ( x , y ) f ( x , y )flim

    x 2

    x1 Masque de convolution

    ou

    -1 0 1

    1

    -1

    -1

    1ou ou ou

    -1

    0

    1

    1

    0

    -1

    Diffrencesavant et arrire

    Diffrence centre

    2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • Filtre de Roberts

    Roberts

    Deux masques de taille 2x2 :et

    2ME - 2013/2014

  • Filtres de Sobel Sobel

    Le passe-haut intensifie le bruit; on fait donc un passe-bas pour le diminuer.

    Composition dun filtre gaussien et dun gradient

    1 0 1

    2 0 2

    1 0 1

    1 2 1

    0 0 0

    1 2 1

    et

    2ME - 2013/2014

  • Filtres de Sobel

    Sobel

    Deux masques de taille 3x3 :

    1 0 1

    2 0 2

    1 0 1

    1 2 1

    0 0 0

    1 2 1

    et

    2ME - 2013/2014

  • Drive premire (gradient)

    -1

    1

    -2

    2

    -1

    1

    000 |Gy |1

    1

    0

    0

    -1

    -1

    20-2 |Gx |

    |Gx | + |Gy |

    2ME - 2013/2014

  • 2ME - 2013/2014

  • cross-gradient operators

    Filtres de Robert , Prewitt et Sobel

    z3

    z9

    z2

    z8z7

    z6z5z4

    z1

    o zx : valeur duniveau de gris

    )(95

    zzy

    f

    (a)

    -10

    01

    0-1

    10

    (b) Roberts

    )(86

    zzx

    f

    y

    f

    x

    fGGf

    yx

    )(

    )(

    321

    987

    zzz

    zzz

    y

    f-1

    1

    -1

    1

    -1

    1

    000

    1

    1

    0

    0

    -1

    -1

    10-1

    (c) Prewitt operators

    )(

    )(

    741

    963

    zzz

    zzz

    x

    f

    )2(

    )2(

    321

    987

    zzz

    zzz

    y

    f-1

    1

    -2

    2

    -1

    1

    000

    1

    1

    0

    0

    -1

    -1

    20-2

    (d) Sobel

    )2(

    )2(

    741

    963

    zzz

    zzz

    x

    f

    2ME - 2013/2014

  • 2ME - 2013/2014

  • (d) idem c [sauf pourles pixels dont les2 gradients 25*qui ont t mis 0- image binaire]

    (c) image originaledont les pixels ayant1 gradient > 25*ont t mis 255

    Amlioration des artes et des contours

    25ou*

    y

    f

    x

    f25et*

    y

    f

    x

    f

    (a) image originale

    (b) image obtenue partir des valeursde magnitude dugradient [masquesde Prewitt]

    2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • Filtre de Laplacien

    Laplacien Drive seconde

    Diffrence centre

    Noyau de convolution

    2' '

    2

    f ( x , y )f ( x 1, y ) f ( x , y )

    x

    = [f(x + 1 ,y )-f (x ,y )]-[ f (x ,y )-f (x -1 ,y )]

    = f (x + 1 ,y )-2 f(x ,y )+ f(x -1 ,y )

    2

    2 2( )

    x y

    1 2 1

    2ME - 2013/2014

  • Filtre de Laplacien

    Laplacien (suite)

    Hautes frquences dans toutes les directions

    Autres formes

    2

    2 2( )

    x y

    1 0 1 0

    1 2 1 2 1 4 1

    1 0 1 0

    0 1 0

    1 4 1

    0 1 0

    1 1 1

    1 8 1

    1 1 1

    Ou

    2ME - 2013/2014

  • Filtre de Laplacien

    Laplacien (suite)

    Drive seconde du signal image

    Localisation des contours par le passage par 0

    Diffrents masques :

    0 1 0

    1 4 1

    0 1 0

    1 1 1

    1 8 1

    1 1 1

    2ME - 2013/2014

  • Filtre de Kirsch

    Kirsch

    8 masques, dans chaque direction (45)

    2ME - 2013/2014

  • 2ME - 2013/2014

    Filtre de Kirsch

  • Filtre de Marr-Hildreth

    Marr-Hildreth

    Le Laplacien augmente encore plus le bruit

    On filtre limage avec une gaussienne

    On prend le Laplacien de limage filtre

    On peut donc filtrer directement avec le laplacien dune gaussienne!

    g=(f*N)*L=f*(N*L)

    2ME - 2013/2014

  • Marr-Hildreth

    0 -1 -2 -1 0

    -1 0 2 0 -1

    -2 2 8 2 -2

    -1 0 2 0 -1

    0 -1 -2 -1 0

    -1 -3 -4 -3 -1

    -3 0 6 0 -3

    -4 6 20 6 -4

    -3 0 6 0 -3

    -1 -3 -4 -3 -1

    Filtre de Marr-Hildreth

    2ME - 2013/2014

  • Marr-Hildreth versus Sobel

    Plus rapide

    Une seule convolution pour toutes les directions

    Pas de somme de valeurs absolues ou de racine

    Moins robuste (plus sensible au bruit)

    Non directionnel

    Donne des contours plus ferms

    2ME - 2013/2014

  • Dtection de contours :Filtres passe-haut

    Filtres passe-haut

    Sobel

    Marr-Hildreth

    Canny

    2ME - 2013/2014

  • On utilise un filtre passe-haut et on compare la force du contour avec un seuil

    Image originale Sobel Laplacien

    Filtres passe-haut

    2ME - 2013/2014

  • Filtre de Sobel

    On applique le filtre horizontal, puis vertical

    On somme les valeurs absolues, ou racine carre des carres des valeurs

    Seuillage: si la valeur est assez leve, la drive est forte et il ya un contour

    2ME - 2013/2014

  • On applique le filtre de Marr-Hildreth

    On dtecte les PPZ (Passages Par Zro)

    Seuillage particulier, sur un Kernel (souvent 3X3)

    Sil ya changement de signe entre la valeur centrale et un des huit voisins, alors il ya PPZ

    Pour viter certaines anomalies: Band-crossing

    Changer de signe nest plus suffisant, il faut passer de

    Filtre de Marr-Hildreth

    2ME - 2013/2014

  • 2ME - 2013/2014

    Code Matlab

  • Seuillage

    Diffrents types de seuillage si ndg > sh alors ndg = 255

    si ndg < sb alors ndg = 0

    si ndg < s alors ndg = 0 sinon ndg = 255

    Binarisation

    2ME - 2013/2014

  • Binarisation

    Rduction du nombre de couleurs 2 (N & B)

    2ME - 2013/2014

  • Binarisation

    Comment trouver le bon seuil ?

    Localisation des modes de lhistogramme

    2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

    Problme avec un espace (a,b)

  • 2ME - 2013/2014

    une image binaire comportant 6 x 6 pixels dont lesvaleurs sont donnes dans le tableau suivant

    Exemple

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • SEGMENTATION DES IMAGES

    2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • Segmentation

    Recherche de rgions

    (approches rgions )Recherche de frontires

    (approches contours )

    Segmentation rgions/contours

    2ME - 2013/2014

  • 2ME - 2013/2014

  • Image = Rgion R

    n

    ii

    RR1

    connexeestRi

    jipourRRji

    VraiRPi

    )(

    jipourFauxRRPji

    )(

    Formulation dune rgion

    2ME - 2013/2014

  • 2ME - 2013/2014

    le seuillage permet de slectionner les parties de l'image qui intressent l'oprateur. Pour slectionner des objets, il faut donc choisir des limites entre lesquelles les pixels devront tre pris en compte.

  • 2ME - 2013/2014

  • Seuillage fTT

    Seuillage global

    fyxpTT ),,(

    Seuillage local

    ),( yxTT

    Seuillage dynamique

    fyxpyxTT ),,(),,(

    2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • Exemple dimage en 256 niveaux de gris : Seuil 75 Seuil 125

    Image initial Histogramme de limage

    Seuillage 75

    Exemple de seuillage

    Seuillage 1252ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

    Lalgorithme k-moyenne est lalgorithme de clustering le plus connu et le plus utilis, du fait de

    sa simplicit de mise en uvre. Il partitionne les

    donnes dune image en K clusters.

    Le k-moyenne est un algorithme itratif qui minimise la somme des distances entre chaque

    objet et le centrode de son cluster.

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • Description de l'algorithmeNombre de class k

    Dtermination

    des centroides

    Calcul de la

    distance minimale

    Regroupement

    Aucun donne a

    chang de groupe? Fin

    Oui

    Non

    K-moyennes

    2ME - 2013/2014

  • 2ME - 2013/2014

  • Exemple

    Image originale

    k-moyenne avec k=3 k-moyenne avec k=4

    2ME - 2013/2014

  • 2ME - 2013/2014

    K-mean pour limage couleur

  • 2ME - 2013/2014

    Image originale Image segment avec k=3Image segment avec k=6

    Exemple

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

    La segmentation par division-fusion regroupe les

    deux types dapproches. Tout dabord, limage est

    divise en rgions homognes, puis les rgions

    adjacentes qui rpondent des critres de fusion sont

    fusionnes.

    Phase 1 : Crer les zones homognes = DIVISION (split)

    Phase 2 : Les regrouper = FUSION (merge)

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • Exemples de division-fusion

    Image originaleImage segmente

    s=200 et min=2Image segmente

    s=250 et min=2

    2ME - 2013/2014

  • 2ME - 2013/2014

    Exemples de division-fusion

  • Segmentation en rgion

    Croissance de rgions

    2ME - 2013/2014

    partir de pixels-germes (gnralement slectionns

    partir de lhistogramme), on fait crotre les rgions

    en agglomrant les pixels ou rgions connexes tels

    que lunion vrifie le prdicat dhomognit

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • Ligne de partage des eaux

    La ligne de partage des eaux se dfini comme tant un

    algorithme de morphologie mathmatique qui revient

    dcomposer une image en diverses rgions homognes.

    2ME - 2013/2014

  • Ligne de partage des eaux

    Minimum local: Plateau ou point minimal d'un bassin versant.

    Bassin versant: Zone d'influence d'un minimum

    local. Toute goutte d'eau comprise dans cette rgion se

    dirige vers le minimum local.

    Ligne de partage des eaux: Ligne qui spare deux

    bassins versant qui, par le fait mme, spare deux

    minimums locaux. 2ME - 2013/2014

  • Ligne de partage des eaux

    Technique de limmersion

    On perce chaque minimum local de la surface.

    On inonde la surface partir des minima locaux, leau

    montant vitesse constante et uniforme dans les bassins

    versants.

    Quand les eaux issues de 2 minima diffrents se rencontrent,

    on monte une digue pour quelles ne se mlangent pas.

    A la fin de limmersion, lensemble des digues constituent la

    ligne de partage des eaux.2ME - 2013/2014

  • Ligne de partage des eaux

    2ME - 2013/2014

  • 2ME - 2013/2014

    L'algorithme se compose de deux tapes:

    Gnrer une carte d'lvation partir de

    l'image de dpart

    Remplir progressivement les bassins

    Algorithme LPE

  • 2ME - 2013/2014

    La carte d'lvation est une image dont les valeurs reprsentent une

    altitude. Pour construire cette image nous allons partir du gradient

    de l'image.

    Dans la carte d'lvation, on assigne l'altitude la plus leve

    (HMAX) aux pixels ayant un fort gradient ainsi qu'aux bords de

    l'image. Cela nous donne les lignes de crte.

    La valeur d'altitude des autres pixels est calcule en fonction de

    l'loignement de la ligne de crte : plus on s'loigne de la ligne de

    crte, plus l'altitude doit dcrotre. La formule pour calculer la

    valeur d'altitude d'un pixel est donc :

    Carte d'lvation (elevation map)

    Altitude(Pixel) = HMAX - distance(Pixel, ligne de_crte)

  • 2ME - 2013/2014

    Remplissage des bassins par infiltration (flooding)

    Pour NIVEAU de 0 HMAX /*** Action 1 : Etendre les rgions existantes ***/

    Pour chaque Rgion [R] dans la liste [Rgions] Faire crotre [R] jusqu' l'altitude NIVEAU

    Fin Pour/*** Action 2 : crer les nouvelles rgions ***/

    Pour chaque pixel P l'altitude NIVEAU Si P n'est pas associ une rgion Alors

    Crer une nouvelle rgion [R] dans la liste [Rgions] A jouter le pixel P dans la rgion [R] Faire crotre [R] jusqu' l'altitude NIVEAU

    Fin Si Fin Pour

    Fin Pour

  • Ligne de partage des eaux

    image segmenteLPE

    image gradientimage originale

    2ME - 2013/2014

  • Ligne de partage des eaux

    Segmentation par LPE contrainte par marqueurs

    LPE non contrainte LPE contrainte

    2ME - 2013/2014

  • Ligne de partage des eaux

    image gradientimage originale

    image modifie de gradient rsultats amliors de segmentation

    2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • 2ME - 2013/2014

  • Oprations locales

    Fermeture de contours

    Problme des contours ouverts

    Seuillage fermeture

    2ME - 2013/2014

  • 2ME - 2013/2014

    Morphologie mathmatique

  • Amlioration des images par filtrage morphologique

    Morphologie mathmatique

    Oprations morphologiques

    Oprations morphologiques sur les images

    Lissage morphologique

    Rehaussement morphologique

    2ME - 2013/2014

  • Morphologie mathmatique

    Permet lextraction de composantes dimage utilises pour reprsenter des formes

    Une forme peut tre caractrise par son contour, son squelette ou son enveloppe convexe

    Nous pouvons aussi utiliser des techniques mor-phologiques pour le filtrage et la transformation de formes

    La morphologie mathmatique est base sur la thorie des ensembles

    2ME - 2013/2014

  • Morphologie mathmatique

    Les ensembles en morphologie mathmatique reprsentent les objets (formes) dans les images

    Lensemble des pixels noirs dans une image binaire sont regroup dans un espace 2-D entier Z2 o chaque lment (pixel) est la coordonne (x,y)

    Les images en niveaux de gris peuvent tre reprsentes par des ensembles dans un espace Z3

    dont deux composantes font rfrence aux coordonnes de chaque pixel et une troisime sa valeur de niveau de gris

    2ME - 2013/2014

  • Oprations morphologiques

    Dfinitions de base

    Dilatation

    rosion

    Ouverture (rosion suivie dune dilatation)

    Fermeture (dilatation suivie dune rosion)

    2ME - 2013/2014

  • Dfinitions de base

    A et B sont des ensembles dans Z2

    Avec des lments reprsents par (a1,a2) et (b1,b2)

    Translation: Translation de A par x = (x1,x2)

    AapourxaccAx

    ,)(

    Rflexion: Rflexion de B

    BbpourbxxB ,

    2ME - 2013/2014

  • 2ME - 2013/2014

    Dfinitions de base oprations lmentaires

  • Dilatation

    ABxBAx

    )(

    Dilatation de A par un oprateur Morphologique B

    2ME - 2013/2014

  • 2ME - 2013/2014

    Dilatation

  • rosion

    ABxBAx

    )(

    rosion de A par un oprateur morphologique B

    2ME - 2013/2014

  • 2ME - 2013/2014

    rosion

  • Ouverture (rosion + dilatation)

    BBABA )(

    Lissage des contours des formes

    limination des pics et des bosses

    Brise les sections minces

    2ME - 2013/2014

  • 2ME - 2013/2014

    Ouverture(rosion suivie dune dilatation)

  • Fermeture (dilatation + rosion)

    BBABA )(

    Lissage des contours des formes

    Remplissage des trous et vides

    2ME - 2013/2014

  • 2ME - 2013/2014

    Fermeture(dilatation suivie dune rosion)

  • Oprations morphologiquessur les images

    Dilatation

    rosion

    Ouverture

    Fermeture

    2ME - 2013/2014

  • Dilatation

    ( )( , ) max ( , ) ( , ) ( ),( ) ;( , )f bf B s t f s x t y b x y s x t y D x y D

    Dilatation dune image f par b

    Image plus brillante

    Partie fonce sont rehausses (niveau de

    brillance plus leve)

    2ME - 2013/2014

  • 2ME - 2013/2014

    Dilatation

  • rosion

    ( )( , ) min ( , ) ( , ) ( ),( ) ;( , )f bf B s t f s x t y b x y s x t y D x y D

    rosion dune image f par b

    Image plus fonce

    Parties brillantes sont attnues (niveau de

    brillance plus faible)

    2ME - 2013/2014

  • 2ME - 2013/2014

    rosion

  • 2ME - 2013/2014

    Dilatation et rosion dune image niveaux de gris (exemples)

  • Ouverture

    bbfBf )(

    Ouverture dune image f par b

    limination des pics brillants plus petits que b

    Dtails importants sont conservs (plus grand que b)

    Lrosion limine les petits pics (bruit) et rend limage

    plus fonce

    La dilatation redonne le niveau de brillance moyen

    2ME - 2013/2014

  • 2ME - 2013/2014

    Ouverture

  • Fermeture

    bbfBf )(

    Fermeture dune image f par b limination des zones sombres plus petites que b Dtails importants sont conserv(plus grand que b) La dilatation limine les zones sombres et rend

    limage plus brillante Lrosion redonne le niveau de brillance moyen

    2ME - 2013/2014

  • Fermeture

    2ME - 2013/2014

  • 2ME - 2013/2014

    Ouverture et fermeture dune image niveaux de gris (exemples)

  • Lissage morphologique dimage

    ))))((( bbbbf

    Lissage dimages

    limination des pics brillants plus petit que b

    limination des zones sombres plus petites que b

    Ouverture Fermeture

    2ME - 2013/2014

  • Rehaussement morphologique dimage

    )()( bfbfg

    Rehaussement dimages

    Bas sur le calcul du gradient morphologique

    2ME - 2013/2014

  • 2ME - 2013/2014

    Lissage et rehaussement morphologiques

  • Rsum

    Amlioration des images par filtrage morphologique

    Morphologie mathmatique

    Oprations morphologiques

    Oprations morphologiques sur les images

    Lissage et rehaussement morphologiques

    2ME - 2013/2014

  • 2ME - 2013/2014

    I = imread('chine.png');seuil = graythresh(I) % recherche du seuil avec la mthode d'OtsuIb = im2bw(I,seuil); % binarisationfigure(1)imshow(Ib)Ibi =~ Ib;figure(2)imshow(Ibi)%Pour roder limage binaire Ibi et afficher le rsultat :SE = [0 1 0;1 1 1;0 1 0] % lment structurantIer = imerode(Ibi,SE) ;figure(3)imshow(Ier)%Pour dilater limage binaire Ibi et afficher le rsultat :Idi = imdilate(Ibi,SE) ;figure(4)imshow(Idi)

    Code Matlab

  • 2ME - 2013/2014

    I = imread('chine.png');L = graythresh(I)I = ~im2bw(I,L);SE = strel('disk', 6)Ifer = imclose(I,SE);Im = imopen(Ifer,SE);subplot(1,3,1)subimage(I),title('image originale');subplot(1,3,2)subimage(Ifer),title('image ferme');subplot(1,3,3)subimage(Im),title('image ouverte');

    Code Matlab