image processing 2 mathcad

31
Prelucrarea imaginilor Ameliorarea imaginilor in domeniul spatial

Upload: dragos-nicu

Post on 31-Oct-2014

154 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Image Processing 2 Mathcad

Prelucrarea imaginilor

Ameliorarea imaginilor in domeniul spatial

Page 2: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 2

Ameliorarea imaginilor in domeniul spatialNotiuni introductive

Termeni, notiuni si notatii- f(x,y) – imaginea initiala- g(x,y) – imaginea procesata- (x,y) – coordonatele unui punct al imaginii-Transformare: 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.

Page 3: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 3

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>=0Transformata 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.

Page 4: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 4

Ameliorarea imaginilor in domeniul spatialTransformari punctuale in nuante de gri -2

-Transformata 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 <1 mai intunecate). Daca se aplica o corectie gama cu valoarea 0.4, se corecteaza acest efect.

Exemplul 1 Exemplul 2

Page 5: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 5

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.

Ex. Ex.

Page 6: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 6

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.

Page 7: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 7

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,2…7. 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.

Ex.

Pixel Valoarezecimal

Valoare binar

Plan 3 Plan 2 Plan 1 Plan 0

1 11 1011 1 0 1 1

2 8 1000 1 0 0 0

3 14 1110 1 1 1 0

4 6 0110 0 1 1 0

Pentru extragerea informatiilor pe plane de biti se vor aplica transformari de tip prag cu urmatoarele trasee:

Ex.

Page 8: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 8

Ameliorarea imaginilor in domeniul spatialProcesarea histogramelor

Pentru 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

Page 9: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 9

Ameliorarea imaginilor in domeniul spatialEgalizarea histogramelor - 1

Fie o transformare T, din relatia s=T(r), cu 0<=r<=1, cu proprietatile:1. T(r) este strict crescatoare si univoca2. 0<=T®<=1Avand in vedere ca in grafica bitmap se opereaza cu valori discrete, vom considera o relatie de forma:

Aceasta relatie defineste probabilitatea de aparitie a nivelului de gri rk

O transformare de forma:

Satisface conditiile puse pentru transformarea continua notata tot cu T mai sus. Transformarea se numeste egalizare de histograma, sau liniarizare de histograma. Ea asigura concret nivelarea histogramei unei imagini, cu efectul vizibil de crestere a contrastului.

0 0

( ) ( ) 0,1,2....., 1k k

jk k r j

j j

ns T r p r k L

n

( ) , 0,1, 2....., 1kr k

np r cu k L

n

Page 10: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 10

Ameliorarea imaginilor in domeniul spatialEgalizarea histogramelor - 2

1 22 43 64 85 1061271481691902112322530

5000

10000

15000

20000

25000

1 26 51 76 1011261511762012262510

5000

10000

15000

20000

25000

Page 11: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 11

Ameliorarea imaginilor in domeniul spatialAmeliorarea imaginilor folosind operatii aritmetice si logice

Sunt operatii care se executa pixel cu pixel intre doua imagini sau mai multe. Exceptie operatia logica NEGARE, ce se aplica unei singure imagini.

Operatiile aritmetice:•Adunarea•Diferenta•Multiplicarea•Divizarea

Operatii logice:•SI•SAU•NEGAREA

Pixelii sunt prelucrati ca siruri de caractere sau ca valori binare. Operatiile logice Si, SAU sunt folosite pentru mascare (masking). Operatiile se mai numesc Region Of Interest processing (ROI)

Page 12: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 12

Ameliorarea imaginilor in domeniul spatialAmeliorarea imaginilor folosind operatii aritmetice si logice – AND si OR

Operatii logice

Imagine initiala

Imagine (masca) pentru “si” logic

Imagine (masca) pentru “sau” logic

Rezultatul operatiilor logice: “sau” “si”

Sugestie:Incercati sa realizati “si” logic folosind imaginea “sau” si invers.

A se vedea in Matlab sectiuneaRegion of Interest!

Functiile “and” si “or”

Page 13: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 13

Ameliorarea imaginilor in domeniul spatialAmeliorarea imaginilor folosind operatii aritmetice si logice – Diferenta

Daca notam doua imagini cu f1(x,y), respectiv f2(x,y). Imaginea diferenta este data de:g(x,y)=f1(x,y)-f2(x,y).Scopul executarii de diferente intre imagini este de a pune in evidenta deosebirile dintre ele.

Probleme ce pot aparea la diferenta imaginilor:Apar valori negative in imaginea diferentaSolutia 1: Adaugarea la fiecare pixel al imaginii diferenta a valorii 255 si apoi impartire cu 2

Solutia 2: - Se calculeaza valoarea minima a imaginii rezultat-Se adauga aceasta valoare negativata la fiecare pixel al imaginii diferenta. Valoarea minima va fi acum 0- Se inmulteste fiecare pixel al imaginii diferenta cu 255/Max, unde Max este cea mai mare valoare a imaginii rezultat

Aplicatii in imagistica medicala

Page 14: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 14

Ameliorarea imaginilor in domeniul spatialAmeliorarea imaginilor folosind operatii aritmetice si logice – Diferenta

Aplicatie medicala

Imagine “masca”, notata cu f(x,y), obtinuta in domeniul razelor X

Mask mode radiography

Se injecteaza un mediu contrastant si se obtine imaginea h(x,y)Imagine obtinuta prin operatia f(x,y)-h(x,y)

Page 15: Image Processing 2 Mathcad

04/08/2023Prelucrarea imaginilor 15

Ameliorarea imaginilor in domeniul spatialAmeliorarea imaginilor folosind operatii aritmetice si logice – Mediere

Daca dispunem de K imagini distincte, date de relatia de mai sus, se poate scrie:

),(),(),( yxnyxfyxg

Fie o imagine f(x,y). Se “amesteca” (“corupe”) aceasta imagine cu un zgomot, notat n(x,y), care satisface urmatoarele proprietati:-Este necorelat cu imaginea-Are valoarea medie 0Atunci se poate scrie:

K

ii yxg

Kyxg

1

),(1

),(

Daca sunt respectate conditiile legate de zgomot si daca si valoarea parametrului K este suficient de mare, putem spune ca:

),(),( yxfyxg

Vom spune ca imaginea mediata tinde catre cea corecta. Este valabila si relatia:

2),(

2),(

1yxnyxg K

Cu cat K este mai mare, cu atat abaterea media patratica va fi mai mica

Page 16: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 16

Ameliorarea imaginilor in domeniul spatialAmeliorarea imaginilor folosind operatii aritmetice si logice – Mediere

Exemplu

Discutie distributii

Page 17: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 17

Ameliorarea imaginilor in domeniul spatialFiltrarea in domeniul spatial - 1

Filtrarea in domeniul spatial are la baza mecanismul deplasarii unei masti (kernel, sablon sau fereastra) “peste” imaginea ce se filtreaza. De regula masca are dimensiuni (exprimate in pixeli) impare (3x3, 5x5 etc.), pentru a putea usor defini un punct central al sau. Daca filtrarea este liniara, fiecare pixel din imagine este inlocuit (valoarea sa de gri) cu ceea ce rezulta dintr-o suma de produse de forma:

R = w(-1, -1)f(x - 1, y - 1) + w(-1, 0)f(x - 1, y) + w(0, 0)f(x, y) + w(1, 0)f(x + 1, y) + w(1, 1)f(x + 1, y + 1)

( , ) ( , ) ( , )a b

s a t b

g x y w s t f x s y t

In general, pentru o imagine cu dimensiunea M x N si o masca cu dimensiunea m x n, se poate scrie:

Unde: 1 1,

2 20,1,..... 1

0,1,.... 1

m na b

x M

y N

Pentru procesul de filtrare se mai foloseste termenul de convolutie.(Convolutia este o operatie matematica executata asupra a doua functii. Rezultatul este o functie ce se considera a fi o versiune modificata a unei din functiile implicate.)

Page 18: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 18

Ameliorarea imaginilor in domeniul spatialFiltrarea in domeniul spatial - 2

Se mai poate folosi si notatia:

1

mn

i ii

R w z

Unde zi sunt valorile pixelilior din imagine corespunzatori coeficientilor w1,…. w9

O problema in cazul mastilor este legata de pixelii din vecinatatea frontierei imaginii. Se poate folosi una dintre optiunile:-Sa se limiteze miscarea mastii pana ajunge la distanta (n-1)/2, deci raman nefiltrati pixelii din vecinatatea frontierei imaginii, iar imaginea filtrata este mai mica decat cea originala.- Sa se bordeze imaginea initiala cu “fasii” de pixeli cu valoarea 0 sau 1, ai, dupa filtrare sa rezulte o imagine idenmtica dimensional cu cea initiala. Evident ca pixelii adaugati vor influenta rezultatul filtrarii.

Page 19: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 19

Ameliorarea imaginilor in domeniul spatialFiltre de netezire (smoothing) – Filtre liniare

Se mai numesc si filtre de mediere sau filtre trece jos (low pass filter).Astfel de filtre inlocuiesc valoarea [de gri a] fiecarui pixel cu o valoare mediata a pixelilor din vecinatatea considerata.Se foloseste pentru reducerea zgomotului dintr-o imagine (care daca e aleator, este eliminat prin mediere). Efectul negativ este cel al reducerii claritatii muchiilor , deci o anumita neclaritate a imaginii filtrate.Exemple de filtre:

a) b)Primul filtru face o medie clasica, al doilea, una ponderata, ce da o importanta mai mare pixelului central si valori mai mici pixelilor aflati mai departe de acesta.In general, pentru o imagine cu dimensiunea MxN, si o masca cu dimensiunea m x n (m si n impare), se poate scrie:

9

1

1

9 ii

Med z

9

1

1

16 ii

Med z

( , ) ( , )( , )

( , )

a b

s a t ba b

s a t b

w s t f x s y tg x y

w s t

w(s,t) sunt valorile celulelor mastii. Numitorul e o constanta si se calculeaza o singura data.

Page 20: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 20

Ameliorarea imaginilor in domeniul spatialFiltre de netezire liniare – exemple 1

Imaginea initiala Masca 5 x 5 ponderata Masca 5 x 5 neponderata

Masca 3 x 3 neponderata

Page 21: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 21

Ameliorarea imaginilor in domeniul spatialFiltre de netezire neliniare – filtre mediane

In acest caz pixelul ce se suprapune peste centrul mastii este inlocuit cu valoarea mediana a pixelilor acoperiti de masca. Aceste filtre sunt foarte indicate pentru eliminarea zgomotului de tip impuls, care se mai numeste si “sare si piper” ( pentru ca este o alternanta de puncte albe si negre).Filtrele de acest tip au si avantajul ca nu produc o asa de mare scadere a claritatii imaginii fata de filtrele liniare.

Imagine initiala Imagine netezita cu filtru 3 x 3 Imagine netezita cu filtru 5 x 5

Demo digimizer

Page 22: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 22

Ameliorarea imaginilor in domeniul spatialFiltre de claritate (sharpening filters)

Spre deosebire de filtrele de netezire, care presupuneau de regula medieri, deci o operatie analoaga cu integrarea, filtrele de claritate se vor realiza prin operatii de derivare. In esenta, filtrele de claritate scot in evidenta discontinuitatile unei imagini: treceri de la intunecat la luminos, muchii, linii.Operatiile de derivare vor fi modelate in cadrul algoritmilor pentru filtrele de claritate prin diferente. Astfel:

2

2

( 1) ( )

( 1) ( 1) 2 ( )

ff x f x

x

ff x f x f x

x

Aceste formulari au fost scrise tinand cont de faptul ca, data fiind structura discreta a unei imagini bitmab, variabila x ia numai valori intregi cu pasul 1.Prima si cea de a doua derivata trebuie sa respecte urmatoarele conditii:Derivata 1

1. Sa fie zero pe segmentele [de imagine] fara variatii de intensitate (cu nivel de gri constant)2. Sa fie diferita de zero pe zonele de variatie a nivelului de gri (crestere in panta sau treapta)

Derivata 21. Sa fie zero pe zonele fara variatii de intensitate [de gri]2. Sa fie diferita de zero la inceputul zonelor de variatie de intensitate (panta sau treapta)3. Sa fie zero de-a lungul rampelor cu panta constanta

Page 23: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 23

Ameliorarea imaginilor in domeniul spatialFiltre de claritate - Exemplificare

Fie imaginea de mai jos si o linie de scanare ce trece chiar prin punctul (pixelul) alb situat aproximativ in centrul imaginii.

Linia de scanare

Variatia nivelului de gri

Valorile nivelelor de gri de-a lungul liniei de scanare

Se poate observa ca prima si a doua derivata respecta conditiile enuntate anterior.

Concluzii:1. Prima derivata produce in general muchii mai groase intr-o imagine2. Derivata a doua raspunde mai bine la detalii, cum ar fi punctele izolate sau liniile subtiri3. Prima derivata are un raspuns mai bun la la variatia in trepte a nivelului de gri.4. Derivata de ordinul al doilea produce un raspuns dublu la modificare nivelului de gri in treapta5. Pentru derivata a doua, raspunsul e mai puternic pentru o linie fata de o treapta, sau pentru un punct fata de o linie

Page 24: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 24

Ameliorarea imaginilor in domeniul spatialFiltre de claritate - Laplacianul

2 22

2 2

f ff

x y

O posibilitate este de a utiliza operatorul numit Laplacian, care este liniar si izotrop (invariant la rotatii). Filtrele izotropice sunt invariante la rotatii, deci daca imaginea se roteste, se obtine acelasi efect cu cel ce s-ar obtine daca s-ar aplica filtrul si apoi s-ar roti rezultatul [aplicarii].Expresia laplacianului este:

Formularea discreta este:2

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

ff x y f x y f x y

x

2

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

ff x y f x y f x y

y

2 ( 1, ) ( 1, ) ( , 1) ( , 1) 4 ( , )f f x y f x y f x y f x y f x y

Aceasta formulare se poate implementa cu urmatoarele masti:

a. b. c. d.

Observatii:1. Masca a. este izotropica pentru rotatii de 90 de grade2. Mastile b. tine cont si de termenii diagonali. Ea este invarianta la rotatii de 45 grade3. Laplacianul va avea ca efect evidentierea zonelor cu discontinuitati in nivelul de gri si le va atenua pe cele cu

variatii lente sau nule ale nivelului de gri. Acest lucru va produce imagini cu linii gri si zone de fond inchis la culoare. Pentru a contracara acest efect se poate aduna imaginea initiala cu cea filtrata. In cazul mastilor pentru care coeficientul central este negativ (a. si b.), Imaginea filtrata se scade din cea initiala, adica:

2

2

( , ) ( , ),( , )

( , ) ( , ),

f x y f x y daca centrul mastii e negativg x y

f x y f x y daca centrul mastii e pozitiv

Page 25: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 25

Ameliorarea imaginilor in domeniul spatialFiltre de claritate – Exemplificare 1

Secventa Matlab:>> imagine=imread('moon.jpg');>> figure, imshow(imagine);>> masca=[1 1 1;1 -8 1; 1 1 1];>> laplace=imfilter(imagine,masca);>> imshow(laplace);>> clar=imagine-laplace;>> figure, imshow(clar);

Imagine initiala Laplacian

Imagine filtrata (mai clara) Masca folosita

Laplacian

Imagine filtrata

Page 26: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 26

Ameliorarea imaginilor in domeniul spatialFiltre de claritate - simplificare

Exista posibilitatea de a se genera o masca ce va face inutila scaderea (sau adunarea) a doua imagini. Se porneste de la relatia ce descrie diferenta dintre imaginea initiala si laplacian:

( , ) ( , ) [ ( 1, ) ( 1, ) ( , 1) ( , 1)] 4 ( , )

5 ( , ) [ ( 1, ) ( 1, ) ( , 1) ( , 1)]

g x y f x y f x y f x y f x y f x y f x y

f x y f x y f x y f x y f x y

Mastile ce modeleaza aceste relatiile sunt (a doua tine cont si de termenii diagonali):

>> imagine=imread('moon.jpg');>> masca=[0 -1 0; -1 5 -1; 0 -1 0];>> clar=imfilter(imagine,masca);>> imshow(clar);

Se observa si aici ca luarea in consideratie a termenilor diagonali produce imagini mai nete

Page 27: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 27

Ameliorarea imaginilor in domeniul spatialFiltre de accentuare (high-boost filtering)

O metoda de a obtine imagini mai clare este sa se scada o imagine neclara (blured) din imaginea initiala, adica:

( , ) ( , ) ( , )s ncf x y f x y f x y

Unde fs este imaginea neta (sharped), iar fnc este imaginea neclara (blured).O generalizare a acestei metode o constituie asa numitul filtru de accentuare (high boost filter), care este definit astfel:

( , ) ( , ) ( , )hb ncf x y Af x y f x y

Sau inca: ( , ) ( 1) ( , ) ( , ) ( , )hb ncf x y A f x y f x y f x y

( , ) ( 1) ( , ) ( , )hb sf x y A f x y f x y

Cum nu se face nicio precizare privind modul de obtinere a imaginii clare (sharp), putem considera ca aceasta s-a obtinut prin aplicarea Laplacianului, deci:

2

2

( , ) ( , ),( , )

( , ) ( , ),hb

Af x y f x y cand elementul central al mastii este negativf x y

Af x y f x y cand elementul central al mastii este pozitiv

Se observa ca pentru A=1, se obtine chiar Laplacianul standard.Mastile ce se pot folosi pentru modelarea acestui filtru sunt:

Page 28: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 28

Ameliorarea imaginilor in domeniul spatialFiltre de accentuare (high-boost filtering) - Exemplu

Imagine initiala Imagine filtrata cu A=0

Imagine filtrata cu A=1.7Imagine filtrata cu A=1

Se considera imagine intunecata din coltul din stanga sus si se filtreaza cu masca de mai jos pentru diverse valori ale parametrului A

Imagine filtrata cu A=4

Page 29: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 29

Ameliorarea imaginilor in domeniul spatialFiltre ce folosesc prima derivata - 1

Filtrele ce folosesc prima derivata se implementeaza folosind de fapt magnitudinea primei derivate, adica, daca notam vectorul prima derivata:

12 2 2x

f ( , )

( f)=[ ]

x

y

y

fGx

x yf Gy

f mag G G

Operatorul magnitudine al gradientului este neliniar (datorita ridicarilor la putere si extragerii radicalului), desi componentele sunt liniare. Pe de alta parte, operatorul magnitudine este invariant la rotire, desi derivatele partiale nu sunt. In practica, din motive de eficienta, se utilizeaza o expresie simplificata a magnitudinii:

x yf G G

Expresia nu asigura mentinerea caracterului izotropic.Ca si in cazul Laplacianului, se va lucra cu masti de dimensiune 2x2, 3x3, sau mai rar, 5x5. Pastrand notatiile si conventiile deja prezentate, se poate scrie:

8 5

6 5

x

y

G z z

G z z

Sau, formele diagonale:

9 5

8 6

x

y

G z z

G z z

9 5 8 6f z z z z

Masca Roberts a gradientilor diagonali

Page 30: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 30

Ameliorarea imaginilor in domeniul spatialFiltre ce folosesc prima derivata - 2

Masti impare: 7 8 9 1 2 3 3 6 9 1 4 7( 2 ) ( 2 ) ( 2 ) ( 2 )f z z z z z z z z z z z z

Diferenta dintre randul 3 si randul 1 aproximeaza derivata dupa x, iar diferenta dintre coloana a treia si prima coloana, aproximeaza derivata dupa y.Coeficientul 2 apare pentru a da o mai mare importanta pixelului central.

Masca SobelMasca (filtrul) Sobel se foloseste la detectarea muchiilor din imagini.

>> imagine=imread('lentila.jpg');>> figure, imshow(imagine);>> masca=[-1 -2 -1;0 0 0;1 2 1];>> muchii1=imfilter(imagine, masca);>> figure, imshow(muchii1);>> masca2=[-1 0 1;-2 0 2;-1 0 1];>> muchii2=imfilter(imagine,masca2);>> figure, imshow(muchii2);>> muchii3=imfilter(muchii1,masca2);>> figure, imshow(muchii3);

Imagine initiala

Page 31: Image Processing 2 Mathcad

04/08/2023 Prelucrarea imaginilor 31

Ameliorarea imaginilor in domeniul spatialFiltre ce folosesc prima derivata - 3

>> imagine=imread('imagine.jpg');>> masca1=[-1 0 -1;-2 0 2;-1 0 1];>> muchii1=imfilter(imagine,masca1);>> imshow(muchii1);>> masca2=[-1 -2 -1; 0 0 0;1 2 1];>> muchii2=imfilter(imagine,masca2);>> figure, imshow(muchii2);>> masca3=fspecial('sobel');>> muchii3=imfilter(imagine,masca3);>> figure, imshow(muchii3);>> muchii4=edge(imagine,'sobel');>> figure, imshow(muchii4);

Imagine initiala