Professional Documents
Culture Documents
Temats 03
Temats 03
1
Konvolūcija
• Attēls ir visā plaknē definēta divu
argumentu intensitātes funkcija f(x, y).
• Rastra gadījumā – f(k, l), – < k, l < +.
• Filtrs ir attēla funkcijas pārveidošanas
operators, piemēram,
f(x, y) f(x, y) x,
f(x, y) f 2(x, y).
2
• Teiksim, ka filtrs darbojas uz funkciju, un
vispārīgā gadījumā filtra rezultātu un filtru
apzīmēsim sekojoši
g(x, y) = F(f)(x, y).
3
• Linearitāte:
F(a f + b g) a F(f) + b F(g),
kur a un b ir patvaļīgi reāli skaitļi, bet f un g
patvaļīgas attēlu intensitātes funkcijas.
4
• Telpiskā invariance:
F(Tu,v (f)) Tu,v (F(f)),
kur
Tu, v (f)(x, y) = f(x – u, y – v),
kas savukārt nozīmē funkcijas f grafika
nobīdi par vektoru (u, v).
6
• Acīmredzami ir spēkā vienādība
f(k, l) = f (i, j ) Ti, j (p)(k, l).
i , j
f *g (x, y) = f (u, v)
( , )
g(x – u, y – v) du dv.
8
• Tagad lineāra telpiski invarianta filtra F
darbību iespējams pierakstīt pavisam īsi:
F(f) f *F(p).
• F(p) ir filtra darbība uz impulsa funkciju.
Šīs darbības rezultātu tā arī sauc – filtra
impulsa reakcija.
• Tādējādi varam formulēt atziņu: lineāra
telpiski invarianta filtra darbība uz
attēlu ir šī attēla konvolūcija ar filtra
impulsa reakciju.
9
• Aizvietojot i ar k – i un j ar l – j, iegūstam
sakarību
f *g g * f.
F(f)(k, l) = f (k i, l j )
i , j
F(p)(–i, –j).
10
• Tieši negatīvi indeksēto filtra impulsa
reakciju ņem par galveno filtra raksturotāju,
apzīmējot
F(p)(–i, –j) = w(i, j).
• Tas dod sakarību
F(f)(k, l) = f (k i, l j )
i , j
w(i, j).
11
• Masku parasti izvēlas identiski vienādu ar 0
ārpus galīga loga
(i1, i2, j1, j2).
• Summēšana līdz ar to kļūst pavisam
konkrēta un elementāri algoritmizējama:
F(f)(k, l) = f (k i, l j )
i1i i 2 , j1 j j 2
w(i, j).
12
Izpludināšanas filtri
• Kas ir izpludināšana?
• Attēla apgabala starojuma izkliedēšana
lielākā platībā.
• Kāda būtu izpludināšanas filtra impulsa
reakcija?
• Vienkāršākajā gadījumā impulsa attēla
vienīgā nenulles pikseļa (0, 0)
izpludinājums ir attēls, kurā atšķirīgi no
nulles ir vienīgi kvadrāta (–r, r, –r, r)
pikseļi.
13
• Visu pikseļu intensitātes ņemsim vienādas.
• Lai saglabātu attēla summāro intensitāti,
katra pikseļa intensitāte tad jāņem
1
2
.
(2r 1)
14
• Filtra darbība līdz ar to izrādās ir pikseļa
loga intensitāšu vidējās vērtības aprēķins:
1
F ( f )(k , l )
(r 1) 2
f (k i, l j ).
r i r , r j r
15
• Vidējās vērtības filtra piemērs
w=
16
• Var vēlēties izkliedi veikt nevienmērīgu –
tālāk no loga centra izplatīt mazāk pikseļa
starojuma.
• Šādā gadījumā impulsa reakcijas
definējumam dabiski lietot kādu Gausa
funkcijas versiju diviem argumentiem.
• Klasiskais variants:
( x2 y2 )
2 2
w( x, y ) e .
17
• Gausa filtra piemērs
18
• Izpludināšanas filtru salīdzinājums
19
• Izrādās, ka it kā triviālā izpludināšana
uzdod interesantus jautājumus!
• Vienkāršs attēls –
sarkans aplis RGB(255, 0, 0)
uz gaišzila fona RGB(0, 255, 255):
20
• Pa kreisi tas pats attēls vienkārši izpludināts
(ar profesionālu rīku).
• Pa labi tas pats attēls nofotografēts bez
asuma.
22
• Vēl apsvērums – ja pieņemam, ka asums ir
zudis kaut kādas izpludināšanas rezultātā,
tad šis izpludinājums būtu jādabū prom.
• Skaista ir ļoti globāla ideja – atņemt no
attēla f tā izpludinātu versiju h:
g ( 1) f h, 0,
23
• Sāksim ar tiešo ideju par intensitātes
pārdalīšanu no mazākas intensitātes
apgabala uz lielākas intensitātes apgabalu.
• Šajā nolūkā tuvāk aplūkosim tipisku neasas
robežas intensitātes sadalījumu.
4.5
4
3.5
3
2.5
2
1.5
1
0.5
0
1 2 3 4 5 6 7 8 9
24
• Asināšana notiktu, ja mazās intensitātes
tiktu vel samazinātas, bet lielās palielinātas.
• Vēl vairāk, vajadzētu samazināt intensitāti
tās kāpuma sākuma daļā – intervālā (2, 5),
bet palielināt beigu daļā – intervālā (5, 8).
4.5
4
3.5
3
2.5
2
1.5
1
0.5
0
1 2 3 4 5 6 7 8 9
25
• Atceramies, ka funkciju atvasinājumi
norāda to augšanas un dilšanas apgabalus
(pirmais atvasinājums).
• Kā arī izmaiņu sākumu un beigu apgabalus
(otrais atvasinājums).
• Mūs interesē funkcijas f otrais atvasinājums,
kuru diskrētajā gadījumā aizstāj diference
f (k ) (f(k + 1) – f(k)) – (f(k) – f(k – 1)) =
= f(k – 1) – 2f(k) + f(k + 1).
26
• Te redzams f (k ) grafiks mūsu piemēram:
2
1.5
0.5
0
1 2 3 4 5 6 7 8 9
-0.5
-1
-1.5
-2
4.5
4
3.5
3
2.5
2
1.5
1
0.5
0
1 2 3 4 5 6 7 8 9
27
• Tiešs izmantojums asināšanā ir
nesamākslots
g f f , 0.
0
1 2 3 4 5 6 7 8 9
-1
-2
28
• f aprēķins ir f filtrēšana ar 1-dimensionālu
svaru masku
(1, –2, 1),
• f aprēķins – filtrēšana ar masku
( , 2 , ),
• f nemainīšanu nodrošina maska
(0, 1, 0).
• Rezultātā mūsu 1-dimensionālās asināšanas
filtra maska ir
( , 1 2 , ).
29
• Pārsteidzoši, ka, pie attiecīgi izvēlētām
vērtībām, iegūtais filtrs nodrošina to pašu,
ko attēla izpludinātās versijas atņemšana.
• Piemēram, ņemot 1 , pēdējā maska ir
(–1, 3, –1).
• Savukārt, izvēloties 3 izpludinātās
versijas atņemšanai, tiešām iegūstam to
pašu:
1 1 1
(0, 4, 0) 3( , , ) (1, 3, 1).
3 3 3
30
• Analoģiski spriežot 2 dimensiju gadījumā
f(k, l), pilna asināšanas filtra svaru maska ir
sekojoša
0 0
1 4
0 0
32
• Asuma uzlabošanas filtra trūkumi
33