13
Prelucrarea imaginilor Ameliorarea imaginilor in domeniul spatial

Imagine digitala

Embed Size (px)

Citation preview

  • Prelucrarea imaginilor

    Ameliorarea imaginilor in domeniul spatial

    *

  • Ameliorarea imaginilor in domeniul spatialNotiuni introductive**Prelucrarea imaginilorTermeni, notiuni si notatii- f(x,y) imaginea initiala- g(x,y) imaginea procesata- (x,y) coordonatele unui punct al imaginiiTransformare: g(x,y)=T[f(x,y)], unde T este un operator ce actioneaza asupra lui f si este definit pe o vecinatate a punctului (x,y). Aceasta vecinatate se mai numeste si masca, kernel, sablon sau filtru. Vecinatatea poate avea forma patrata, dreptunghiulara, sau mai rar, de disc.

    Pixelul central al mastii se misca peste imagine, acoperind fiecare pixel al acesteia. Transformarea foloseste numai pixelii din zona mastii.Cel mai simplu exemplu de masca este cea cu dimensiunea 1 (1 x 1).Atunci se va scrie s=T(r) si T devine functia de transformare [punctuala] de nivel de gri, unde s este nivelul de gri in imaginea f, in punctul de coordonate (x,y), iar r este nivelul de gri in imaginea g (procesata), tot in punctul de coordonate (x,y).Exemplu de transformare punctuala:Efect: Pixelii cu nivelul de gri mai mic decat m vor fi facuti mai intunecati, iar cei cu nivel de gri mai mare decat m vor fi facuti mai luminosi (cazul a.). Deci se va mari contrastul imaginii. In cazul b., imaginea este transformata intr-una binara, alb-negru.

    Prelucrarea imaginilor

    *

  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialTransformari punctuale in nuante de gri - 1

    Definirea contextului:Fie f(x,y) o imagine cu L nuante de gri (0, 1, 2.L-1)Si transformata punctuala descrisa de relatia: s=T(r), unde s si r au semnificatiile prezentate in diapozitivul anterior.- Transformata negativa: s=L-1-rTransformarea este indicata pentru scoaterea in evidenta a detaliilor albe sau gri, inconjurate de regiuni intunecate (care domina imaginea ca intindere). Transformata Log: s = c log (1 + r), cu c constant si r>=0

    Transformata mapeaza o zona ingusta de valori mici de nivel de gri intr-o zona larga de valori mai mari de nivele de gri. Efectul este contrar pentru valorile mari de nivel de gri (vezi imaginea alaturata si compara segmentele orizontale cu cele verticale). Transformata este folosita pentru a comprima nivele de gri pentru imaginile cu variatii mari de intensitate. De exemplu spectrul Fourier al unei imagini, care poate avea valori in intervalul [0 10^6] (a), si care poate fi comprimat in intervalul [0 6] , daca c=1,(b) a. b.

    Prelucrarea imaginilor

    *

  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialTransformari punctuale in nuante de gri -2Transformata putere: s=c r , sau s=c (r+)

    Rolul parametrului este de a contracara un semnal de intrare nul. In functie de valorile parametrului se poate obtine o familie de curbe de transformare, ca in figura de mai jos.Multe dispozitive pentru captura de imagini sau pentru printare sau vizualizare raspund pe baza unei legi de tip putere. Pentru corectarea efectelor unui astfel de raspuns (comportament) se realizeaza asa numita corectie gamma (dupa numele exponentului). Exemplu:Monitoarele CRT au caracteristica intensitate-voltaj de tip putere, cu exponentul in intervalul 1.8-2.5. Aceasta inseamna ca imaginea trimisa va fi reprezentata pe monitor mai intunecata decat originalul (Cand >1, imaginile sunt mai luminoase, iar cand

  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialTransformari punctuale in nuante de gri Extinderea contrastului(contrast stretching)Transformarea de tip extindere a contrastului:Esto o transformare descrisa de trasee liniare, de pante diferite. Conform imaginii alaturate, daca r1=s1 si r2=s2, se obtine trasformarea identitate (traseul de culoare rosie). Daca r1=r2, s1=0 si s2=L-1, se obtine transformarea de tip prag (traseul albastru). Aceasta produce imagini binare.

    Prelucrarea imaginilor

    *

  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialTransformari punctuale in nuante de gri Decupari de nivele de gri(Gray level slicing)Aceste transformari au ca scop sa scoata in evidenta anumite zone de nuante de gri. In functie de traseul transformarii, efectele pot fi diferite.Exemple:In cazul transformarii a., sunt scoase in evidenta nivele de gri din intervalul A-B, reducandu-le pe celelalte.In cazul transformarii b., cu zona A-B se intampla acelasi lucru, dar restul nivelelor de gri raman aceleasi.

    Prelucrarea imaginilor

    *

  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialDecuparea pe plane de biti(Bit-plane slicing)O alta transformare utila este si decuparea pe plane de biti. Se pot obtine astfel imagini ce corespund fiecarui bit din sirul alocat informatiei de nivel de gri (pentru imaginile de intensitate).De exemplu, pentru o imagine cu adancimea de culoare de 8 biti, se pot obtine 8 plane, notate de regula 0,1,27. Se va vedea ca planul corespunzator bitului celui mai semnificativ (7) contine majoritatea informatiei semnificative.

    Izolarea planelor se poate face fie prin procedee strict numerice, fie aplicand filtre de tip prag, acestea urmand sa genereze chiar imaginile corespunzatoare unui anumit plan de biti.Exemplu:Fie o imagine formata din 4 pixeli, dispusi pentru simplitate pe verticala. Adancimea de culoare este de 4 biti, deci 16 nuante de gri.Pentru extragerea informatiilor pe plane de biti se vor aplica transformari de tip prag cu urmatoarele trasee:

    PixelValoarezecimalValoare binarPlan 3Plan 2Plan 1Plan 0111101110112810001000314111011104601100110

    Prelucrarea imaginilor

    *

  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialProcesarea histogramelorPentru o imagine in nuante de gri, in intervalul [0, L-1], o histograma este o functie discreta h(rk)=nk, unde k este indicele nivelului de gri, rk este valoarea nivelului de gri, iar nk este numarul de pixeli din imagine caracterizati de nivelul de gri cu indicele k.De regula histogramele sunt normalizate, adica hn(rk)=nk/n, unde n este numarul total de pixeli din imagine. Este evident ca hn(rk)=1.Histogramele au multiple aplicatii in procesarea imaginilor, inclusiv in ameliorarea acestora. Contrast mare Contrast redus Imagine luminoasa Imagine intunecata

    Prelucrarea imaginilor

    *

  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialEgalizarea histogramelor - 1 Fie o transformare T, din relatia s=T(r), cu 0
  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialEgalizarea histogramelor - 2>> i=imread('loco 3.jpg');>> [j,t]=histeq(i);>> t=t';>> h_i=imhist(i);>> h_j=imhist(j);>> xlswrite('histograma original',h_i);>> xlswrite('histograma rezultat',h_j);>> xlswrite('transformata.xls',t);>> imshow(i);>> figure;>> imshow(j);

    Prelucrarea imaginilor

    *

  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialPotrivirea histogramelor baza teoretica 1(histogram matching, or specification)In afara de egalizarea histogramelor, este posibila si generarea unei imagini care sa aiba histograma asociata (ca expresie a densitatii de probabilitate a aparitiei nuantelor de gri) APROXIMATIX identica cu o histograma (densitate de probabilitate) data.Baza teoreticaFie o imagine sursa, caracterizata de densitatea de probabilitate pr(r) (practic de o histograma a carei infasuratoare este functia densitate de probabilitate). Fie o densitate de probilitate (histograma) specificata (tinta) pz(z). S-au notat cu r si z nivele de gri.Fie transformarea :

    (exact expresia continua pentru egalizarea histogramelor).Fie transformarea:

    In aceste conditii se poate scrie:

    Aceleasi relatii, dar scrise pentru variabile si functii discrete sunt:

    Prelucrarea imaginilor

    *

  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialPotrivirea histogramelor baza teoretica 2(histogram matching, or specification)Implementare:Se calculeaza histograma imaginii sursaSe calculeaza sk pentru fiecare rkSe determina transformata G din pz(z)Se determina, printr-un proces iterativ zk, corespunzator lui sk. z este cel mai mic intreg in intarvalul

    [0, L-1] care satisface relatia:

    Pentru fiecare pixel se face maparea rk -> sk -> zk

    Functia histeq in Matlab

    Prelucrarea imaginilor

    *

  • *Prelucrarea imaginilor*Ameliorarea imaginilor in domeniul spatialPotrivirea histogramelor - exempluImagine sursaImagine pentru histogramaImagine rezultatHistogramele corespunzatoare

    Prelucrarea imaginilor

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *