Sunteți pe pagina 1din 28

25.03.

2020

6c. Convoluţia imaginilor


- Convoluţia directă
- Îmbunătăţirea mărginilor 3×3
- Convolutia prin Separabilitate
- FFT Convoluția

1
25.03.2020

13. Convoluţia imaginilor


Convoluţia directă
 Ca si semnalele uni-dimensionale, convolutia imaginii poate fi
vazuta in doua feluri: de la intrare, si de la iesire.
 Din partea intrării, fiecare pixel din imaginea de intrare
contribuie la o versiune scalata si modificata a functiei de
extensie a punctului spre imaginea de iesire.
 Vazută din partea de iesire, fiecare pixel din imaginea de ieşire
este influenţat de un grup de pixeli din semnalul de intrare.

 Pentru semanlele uni-dimensionale, aceasta regiune de influenţă


este raspunsul impulsului reflectat de la stinga-la-dreapta.
 Pentru imagini, aceasta este FEP reflectat de la stinga-la-
dreapta (left-for-right) şi de sus-în-jos (top-for- bottom).
 Deoarece marea parte a FEP utilizata in DSP este simetrica in
jurul axelor verticale si orizontale, aceste reflectări nu fac nimic
si deci ele pot fi ignorate.

2
25.03.2020

 Delta-funcţia bi-dimensională
este o imagine compusă toată din
zerouri, cu exceptia unui singur
pixel la: rindul = 0, coloana = 0, care
are valoarea unu.
 Pentru inceput presupunem ca
indicii liniei si coloanei pot avea
ambele valori pozitive şi negative, în
asa fel incât unitatea este centrata
intr-un vast masiv de zerouri. Cind
functia delta trece direct printr-un
sistem linear, singurul punct nenul
va fi schimbat intr-un alt oarecare
model bi-dimensional.
 Din acel moment singurul lucru
care poate sa i se intimple unui
punct este acela ca poate sa se
extinda in afară, raspunsul la impuls
este deseori numit functia de
extensie a punctului (FEP) in
jargonul de tratare al imaginii.
5

 Ochiul uman reprezintă un excelent exemplu al


acestui concept. Dupa cum am descris in punctul trecut,
primul strat al retinei transforma o imagine reprezentata
ca o mostră de lumina intr-o imagine reprezentată ca o
mostră al impulsurilor nervului.
 Al doliea strat al retinei proceseaza aceasta imagine
neurala si o pasează stratului al treilea, anume fibrelor ce
formeaza nevul optic.

3
25.03.2020

 Imaginaţi-vă că imaginea care trebuie


sa se proiecteze pe retină este un spot
foarte mic de lumina in centrul unui masiv
(background) intunecat.
 Adică un impuls este introdus in ochi.
Presupunând că sistemul este linear,
tratarea imaginii se petrece în retină şi
acest lucru poate fi determinat inspectând
imaginea ce apare în nervul optic.
 Prin alte cuvinte, noi vrem sa aflam
functia de extensie al punctului a tratării
(procesării). Vom mai reveni la aceast
concept despre linearitatea ochiului mai
tirziu in acest punct. 7

 Figura 24-1 schiteaza


acest experiment. Figura
(a) ilustreaza impulsul
strapungind retina, în
timp ce (b) arata imaginea
ce apare în nervul optic.
Stratul din mijloc al
ochiului transmite
impulsul luminos, dar
produce totodata o
regiune circulara de
culoare mai inchisă.
 Ochiul subintelege
acest fenomen ca un
process numit inhibiţie
laterala.
 Daca o celula
nervoasa din mijlocul
stratului este activată, ea
reduce posibilitatea de
activare a vecinilor
apropiati.
8

4
25.03.2020

 Cind ochiul vede o


imagine completă, fiecare
punct din aceasta imagine
conctituie o versiune scalată
şi deplasată a răspunsului de
impuls a imaginii ce apare in
nervul optic.
 În alte cuvinte, imaginea
vizuală este convuluţionată cu
funcţia de extensie a
punctului (FEP) pentru a
produce imaginea neurala
transmisa creierului.
 Intrebarea este evidentă:
cum se convuluţionează
imaginea vazută cu această
functie de extensie a
punctului (FEP) îmbunătăţind
astfel capacitatea ochiului de
a intelege lumea.
9

 Oamenii si celelalte
animale utilizeaza ochiul pentru
a identifica obiectele apropiate,
cum ar fi duşmanii, mincarea,
partenerii. Aceast lucru este
înfăptuit prin distingerea unei
regiuni din imagine fata de alta,
bazată pe diferentele de
luminozitate şi culoare.
 Cu alte cuvinte, primul pas
in recunoasterea unui obiect
este identificarea marginilor
sau extremitatilor sale,
discontinuitatea care separă un
obiect de background-ul său.

10

5
25.03.2020

 Stratul din mijloc al retinei


faciliteaza aceste sarcini prin
ascuţirea marginilor in imaginea
văzută.
 Ca ilustrare cum lucreaza
aceasta procedură, ne serveste
Fig. unde o imagine ce se
schimba incet de la intunecat la
luminos, producând o conturare
neclara si proastă a marginilor.
 Figura (a) arată profilul
intensităţii acestei imagini,
modelul claritatii care pătrunde
în ochi.

11

 Figura (b) arată profilul


clarităţii ce apare in nervul
optic, imaginea transmisă
creierului.
 Procesul de tratare in retina
face margina dintre partea
luminoasa si partea întunecata
sa pară mai abruptpă,
reântărind ideea că cele doua
regiuni sunt diferite.

12

6
25.03.2020

 Reactia de depăşire a
mărginilor creeaza o iluzie
optica interesanta.
 Aproape de margină,
regiunea inchisă pare a fi
neobişnuit de intunecată, iar
regiunea deschisă pare a fi
neobişnuit de luminoasă .
 Dungile intunecete si
luminoase rezultate sunt
numite Mach bands, dupa
Ernst Mach (1838-1916), un
fizician Austriac care pentru
prima oara le-a descris.

13

14

7
25.03.2020

15

 Figura arată câteva FEP


comune.
 In (a), funcţia pillbox are
un vârf circular şi părti
netede.
 De exemplu, daca
lentilele unei camere nu sunt
cum trebuie focalizate,
fiecare punct din imagine va
fi proiectat pe un spot
circular în imaginea de pe
sensor.
 Cu alte cuvinte, funcţia
pillbox este functia de
extensie a punctului unui
obiectiv afară-de-focus.

16

8
25.03.2020

 FEP Gaussian, aratata in


(b), este functia de extensie
a punctului (FEP) a
sistemelor de formare a
imaginii limitată de
imperfecţiunile aleatorii.
 De exemplu, imaginea
unui telescop este neclara
din cauza turbulenţelor
atmosferice, in consecinta
transformind fiecare punct al
luminii in obscuritate
Gaussian din imaginea
finală.

17

 FEP pillbox şi Gaussiană sunt


folodsite in tratarea imaginii la fel ca
şi filtrul MAF cu semanle uni-
dimensionale.
 O imagine convolutionata cu
aceste FEP va aparea neclara si va
avea marginile nu prea bine definite,
dar va fi mai puţin afectată de
zgomotul aleatoriu.
 Acestea sunt numite filtre de
netezire (smoothing), pentru
actiunea lor în domeniul de timp,
sau filtre trece-jos, pentru tratarea
în domeniului de frecvente.

18

9
25.03.2020

 FEP în formă pătrată, arătată in (c), poate de


asemenea sa fie folosita ca un filtru de netezire, dar
acest filtru nu este simetric circular.
 Acest fapt are ca consecinţă o dispersie diferita in
directiile diagonalei comparate cu verticalul si
orizontalul.

19

*Demo - GaussianSmoothing
*Demo - ImageJitterFilter

20

10
25.03.2020

 Opusul unui smoothing filtru


este un filtru înbunătăţire a
mărginii sau un filtru trecere-sus.
 Dupa cum este ilustrat in (d),
un filtrul de înbunătăţire a
mărginii este format din
negativul unui smoothing filtru,
si adaugând o functie Delta in
centru. Tratarea imaginii ce are
loc in retină este un exemplu a
acestui tip de filtru.

21

 Figura (e) arata functia


bidimensională sinc. Tratarea
semnalul uni-dimensional
foloseste windowed-sinc
pentru a separa benzile de
frecvenţă.
 Deoarece imaginile nu au
informatia lor codata in
domeniul de frecvenţă, functia
sinc poate deveni dificil de
utilizat din cauza că cozile sale
diminueaza (micsoreaza) foarte
incet în amplitudine (1/x), ceea
ce inseamna ca trebuie sa fie
tratata ca o cale neinfinita. In
comparatie, cozile Gaussiene
scad foarte rapid ( e-x2 ) si
eventual pot fi truncate fara nici
un effect.

22

11
25.03.2020

 O problemă în convolutia imaginii este aceea


că un numar mare de calcule sunt invocate.
 Pentru moment, când o imagine cu
dimensiunea de 512*512 pixeli este convolutionata
cu FEP de 64*64 pixeli, mai multe de un miliard de
multiplicari si adunări sunt necesare (i.e.,
64×64×512×512 ). Timpul lung de executie poate
face tehnicile impracticabile.
 Trei strategii apropiate sunt folosite pentru a
mări viteza procesului.

23

 Prima strategie consta in a folosi o FEP de


marime foarte mica, deseori de o marime 3×3
pixeli, aceasta fiind efectuat prin incercuirea
directa a fiecarei monstre din imaginea finala
sau de iesire, folosind codul optimizat pentru a
multiplica şi acumula cei 9 pixeli corespunzatori
din imaginea de intrare.
 O valoare surprinzatoare a tratariii poate sa
fie realizata cu o simpla 3×3 FEP, pentru ca ea
este destul de larga pentru a îmbunătăţi
marginile intr-o imagine.

24

12
25.03.2020

25

26

13
25.03.2020

27

28

14
25.03.2020

29

30

15
25.03.2020

31

32

16
25.03.2020

33

34

17
25.03.2020

 A doua strategie este folosita când este


nevoie de o FEP mai larga, dar forma ei nu este
critica. Acesta apeleaza la un filter kernel care
este separat, o proprietate care permite
procesului de convolutie a imaginii sa fie efectaut
ca o serie de operatii uni-dimensionale. Acest
lucru poate imbunătăţit rapiditatea executiei de
mii de ori.
 A treia strategie este convolutia FFT, folosita
cind filter kernel este larg si are o formă specifică.
Chiar cu toate imbunatăţirile rapiditatii asigurata
de eficacitatea inalta a FFT, timpul de executie va
fi jenant.
 Să privim mai atent detaliile acestor strategii,
si exemple cum sunt ele utilizate in tratarea
imaginilor.

35

Îmbunătăţirea
mărginilor 3×3
 Figura arata câteve
operatii 3×3. Figura (a) este
o imagine, obţinută cu
ajutorul scanerului de
bagaje cu raze-X a
aeroportului.
 Când aceasta imagine
este convolutionata cu o
functie delta 3×3 , imaginea
ramine neschimbata. Atit
timp cit aceasta nu este
interesata de ea insasi, ea
formeaza baza pentru alte
filter kernel.

36

18
25.03.2020

 Figura (b) arata imaginea


convolutionata cu un filter kernel de
dimensiunea 3×3 ce consta din un
unu, un minus unu şi 7 zerouri. Acest
proces este numit operatie de
mişcare (shift) si scadere
(extragere), deoarece o versiune
modificata prin mişcare (shift) a
imaginii (coresounizând cu valoarea -
1) este extrasă din imaginea originala
(ce corespunde cu 1).
 Această tratare (proces)
produce iluzia optica, că unele
obiecte sunt mai aproape sau mai
departate de background, creând un
efect de relief sau 3D. Creierul
interpreteaza imaginile de parca
lumina ar veni de deasupra.

37

http://matlabtricks.com/post-5/3x3-
convolution-kernels-with-online-demo

38

19
25.03.2020

 Daca marginile de sus


ale unui obiect sunt
luminoase iar cele de jos
sunt intunecate, obiectul
este perceput ca ceva
aruncat in afara de
background.

 Pentru a vedea un alt
efect interesant, vom
intoarce imaginea cu 180o,
si vom observa că obiectul
este impins in interiorul
backgroundului.

39

 O tehnica comuna de
tratare a imaginii este
prezentata in figura (d):
îmbunătăţirea mărginilor.
 Acest fenomen este
uneori numit operatie de
ascutire. In (a), obiectele au
un bun contrast (un nivel
apropiat de lumina si
intuneric), dar cu margini
foarte neclare.
 In (c), obiectele nu au
absolut nici un contrast, dar
margini foarte ascutite.
Strategia de rezolvare a
acestei probleme este cea
de multiplicare a imaginilor
cu « margini bune » cu o
constanta k , si aditionind-o
la imaginea cu contrast
bun.
40

20
25.03.2020

 Aceasta operatie este


echivalenta cu convolutionarea
imaginii originale cu 3×3 FEP
prezentata in figura (d).
 Daca k este setat la 0, functia
FEP devine o delta functie, si
imaginea este lasata neschimbata.
 Daca k este de o marime mai
mare, imaginea este prezentata cu
marginile mai bine definte.
 Pentru imaginea prezentată in
(d), o valoare a lui k=2 a fost
folosita: doua parti ale imaginii (c) la
o parte din imaginea (a).
 Aceasta operatie imita
abilitatile ochiului de a ascuti
marginile, permitind astfel
obiectelor posibilitate de a se separa
mai usor de background.
41

 Convolutia cu una din


aceste FEP poate rezulta cu
prezenta unor pixeli cu
valoare negativa in imaginea
finala. Chiar daca programul
poate sustine valori negative
ale pixelilor, nu putem
spune acelasi lucru despre
afisarea imaginii .
 Cea mai comoda cale
pentru infaptuirea acestui
lucru este de a aditiona un
offset la fiecare din pixelii
calculate, dupa cum este
redat in aceste imagini.

42

21
25.03.2020

*Demo - SobelEdgeDetectionFilter

43

Convolutia prin Separabilitate


 Aceasta este o tehnica pentru convolutia rapidă, atita timp cit
FEP este separabila. O FEP poate fi numita separabilă dacă poate fi
despărţită in doua semnale uni-dimensionale: intr-o proectie
orizontala si verticala.
 Figura arata un exemplu de imagine separata, FEP în formă de
dreptunghi (the square PSF). In special, valoarrea la fiecărui pixel
din imagine este egal cu punctul corespunzator din proiectia
orizontala multiplicat de punctul corespunzator din proiectia
verticala. In forma matematica :

x[r,c ] = vert [r] × horz [c ]

unde x[r,c] este imaginea


bidimensionala si vert[r] & horz[c]
sunt proiectii unidimensionale.
Evident, ca majoritatea FEP nu
satisfac aceasta cerinta. De
exemplu, pillbox nu este
separabila.
44

22
25.03.2020

 Acest lucru poate fi inteles prin generarea arbitrara de


proiectii orizontale si verticale, si gasirea imaginii care
corespunde lor.
 De exemplu, Fig ilustreaza acest fapt cu profiluri care sunt
din ambele parti exponentiale. Imaginea care corespunde acestor
profiluri poate fi gasita in ecuaţia

 Cind imaginea este afisata, ea apare în formă de romb care scade la zero
in raport cu mărirea distanţei de la origine
45

 In majoritatea cazurilor de
tratare a imaginii, FEP ideala este
circular simetrica, ca pillbox. In
aceeasi masura cum imaginile
digitale sunt deseori pastrate si
tratate intr-un format rectangular
de rinduri si coloane, este de dorit
ca imaginea sa fie modificata la fel
in toate directiile.
 Acest fapt ridica intrebarea: exista
o FEP circular simetrica si
separabila ? Raspunsul este “DA”,
dar este doar unul, si anume cel
Gaussian. Dupa cum este aratat in
Figura, imaginea Gaussian
bidimensionala contine proiectii
care de asemenea sunt Gaussiene.
Imaginea si proiectia Gaussiana au
acelaiaşi deviaţii standart.

46

23
25.03.2020

 Pentru a convolutiona o
imagine cu un nucleu de filtru
separabil, se convolutioneaza
fiecare linie din imagine cu
proiectia orzontala, rezultind o
imagine intermediara.
 Urmatorul pas, convolutia
fiecarei coloane din imaginea
intermediara cu proiectia verticala
a FEP.
 Imaginea rezultata este
identica cu convolutia directa a
imaginii originale si nucleului
filtrului. Dupa dorinta, este posibil
de convolutionat coloabnele mai
intii si mai apoi rindurile,
rezultatul va fi acelasi.

47

 Convolutia unei iamagini


N×N cu un nucleu de filtru M×M
cere un timp proportional cu
N2M2.
 Cu alte cuvinte, fiecare pixel
din imaginea de iesire depinde
de toti pixelii din nucleul filtrului.
In comparatie, convolutia prin
separabilitate cere un timp
proportional cu N2M.
 Pentru nucleiele filtrului care
cunţin sute de pixeli, aceasta
tehnica va reduce timpul de
executie cu un factor de sute.

48

24
25.03.2020

Separarea Gaussiana. Proiectia Gaussiana este


singura FEP care este circular simetrica si
separabila. Acest fapt o face sa devină un nucleu de
filtru comun in tratarea imaginii, .

49

12.2 FFT Convolutia


 Chiar daca prin transformata Fourier procesul de convolutie este
lent, totusi pina acum acest fenomen s-a dovedit a fi cea mai
eficienta cale de convoluţie cu un nucleu de filtru mare.
 De exemplu, convoluţionind o imagine de 512×512 cu 50×50 FEP
este de 20 de ori mai repede folosind FFT comparat cu convoluţia
convenţionala.

50

25
25.03.2020

 Vom demonstra FFT convoluţia cu un exemplu, un algoritm care va


localiza un şablon predeterminat într-o imagne.
 Să presupunem că construim un sistem pentru inspecţia unei note
de plată de un dolar, după cum el poate fi folosit pentru controlul
calităţii tipăririi, determinare falsificaţiei, sau verificarea plăţii în
maşina de vânzare .
 Dupa cum este arata in figura, o imagine de 100-100 pixeli este
capatată din bancnota de 100 de dolari, unde este centrat portretul
lui G.Washington.
 Scopul este de a cauta această imagine pentru un model cunoscut,
în acest exemplu, 29×29 pixeli a imaginii feţei.
 Problema stă astfel: de a compara o imagine capatată şi un model
cunoscut, care este cea mai efectivă cale de a localiza acolo unde
apare modelul in imagine ?

51

 Inainte de a interpreta convoluţia, sunt doua modificari care


trebuie să fie facute astfel încât să întoarca imaginea tinta in
FEP.
 Acest fapt este ilustrat în figura. Figura (a) arata semnalul tinta,
medlul pe care incercam sa-l detectăm.
 In (b), imaginea a fost rotită cu 1800. După cum s-a discutat
anterior, când interpretarea colrelatiei s-a produs utilizind
convoluţia, semnalul tinta trebuia să fie inversat pentru a
compensa răsturnarea care survine pe parcursul convolutiei.
 A doua modificare este un truc pentru ridicarea eficacităţii
algoritmului.

52

26
25.03.2020

 Decât sa incerci sa detectezi fata in imaginea originală, este mult


mai efectiv sa detectezi mărginile feţei în mărginile imaginii
originale.
 Acest fapt se produce din cauza că capetele sunt mai ascitite faţă
de fundal, facând astfel ca corelaţia sa aiba un virf ascutit.
 Acest pas nu este neapărat necesar, dar el îmbunătăţeşte
semnificativ rezultatele. Intr-o forma mai simplă, o detectare a
mărginilor cu un filtru 3×3 este aplicată pentru ambele, imaginea
originală şi semnalul ţinta înainte de efectuarea corelaţiei.
 Utilizând proprietatea asociativa a convolutiei, aceasta este
echivalent cu procedura de aplicare a unui filtru de detectare a
marginilor la imaginea ţinta de doua ori.
 În practică, aplicarea detectarii mărginilor cu nucleu 3 × 3 doar o
singură dată este în general suficient. Acesta este modul cum (b)
este schimbat în (c).

53

 Figura ilustrează detaliile a


convoluţiei FFT. In acest exemplu,
vom convoluţiona imagina (a) cu
imaginea (b) pentru a reproduce
imaginea (c). Faptul că aceste
imagini au fost alese şi
preprocesate pentru efectuarea
corelaţiei este irelevant; aceasta
este o diagrama de scurgere a
convolutiei.
 Primul pas este acela de a
adăuga la ambele semnale ce au
fost convoluţionate, cu zerouri
necesari pentru a le putea ridica
la puterea a doua ca mărime, şi sa
fie indeajuns pentru a obtine
imaginea finala.
 Pentru inceput, cind
imaginile de 100×100 si 29×29
pixeli sunt convoluţionate,
imaginea rezultanta va fi de
128×128 pixeli. Deci, ca urmare
trebuie sa fie aditionate zerourile
necesare la (a) si (b) pentru a
face din ele 128×128 pixeli in
marime. 54

27
25.03.2020

 Valoarea fiecărui pixel in imaginea corelata


este o masura ce ne relateaza despre cit de
bine imaginea ţinta marcheaza imaginea
cautata in punctul dat.
 In acest exemplu particular, imaginea corelata
in (c) este compusa din zgomot plus un singur
vârf luminos. Simplu, localizind cel ma luminos
pixel in aceasta imagine va specifica
coordonatele depistate pe fata.

55

 Atit timp cât corelaţia este o puternică


unealtă a tratării imaginii, ea sufera de o
limitare semnificativa : imaginea tinta trebuie
sa fie de aceeasi mărime si operaţia de
rotaţie ca ea fie de aria corespunzătoare
imaginii cautate. Zgomotul si alte variaţii în
amplitudinea fiecărui pixel sunt relativ
neimportante.
 De exemplu, acest fapt face metoda utilă in
depistarea fotografiilor tankurilor inamice in
militărie, tumori şi imagini medicale, şi
scanarea armelor in bagajele aeroportului. O
solutie ar fi corelarea imaginii de multiple ori
cu o varietate de forme si rotatii a imaginii
ţinta.

56

28

S-ar putea să vă placă și