Uploaded by Matej Horniak

Pocitacove Videnie - Detekcia a Rozpoznavanie Objektov

advertisement
POČÍTAČOVÉ VIDENIE
DETEKCIA A ROZPOZNÁVANIE OBJEKTOV
E LENA Š IKUDOVÁ
Fakulta matematiky, fyziky a informatiky
Univerzita Komenského, Bratislava
Z UZANA Č ERNEKOVÁ
Fakulta matematiky, fyziky a informatiky
Univerzita Komenského, Bratislava
WANDA B ENEŠOVÁ
Fakulta informatiky a informačných technológií
Slovenská technická univerzita, Bratislava
Z UZANA H ALADOVÁ
Fakulta matematiky, fyziky a informatiky
Univerzita Komenského, Bratislava
J ÚLIA K U ČEROVÁ
Fakulta matematiky, fyziky a informatiky
Univerzita Komenského, Bratislava
W IKINA
Venujem mojim rodičom a neterkám Lucke a Pet’ke
Elena Šikudová
Venujem mojim rodičom
Zuzana Černeková
Venujem môjmu otcovi in memoriam
Wanda Benešová
Venujem Ome a Opovi
Zuzana Haladová
Venujem mojim rodičom a bratovi
Júlia Kučerová
Obsah
Predslov
x
I
Predspracovanie obrazu
1
Spracovanie obrazu vo frekvenčnej oblasti
1.1 Načo slúžia diskrétne lineárne transformácie? . . . . . . .
1.1.1 Príklad . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.2 Použitie . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.3 Lineárna transformácia obrazu. . . . . . . . . . . .
1.2 Fourierova transformácia . . . . . . . . . . . . . . . . . . . .
1.2.1 Fourierov rad . . . . . . . . . . . . . . . . . . . . . .
1.2.2 Spojitá Fourierova transformácia . . . . . . . . . .
1.2.3 Dvojdimenzionálna Fourierova transformácia . .
1.2.4 Vlastnosti Fourierovej transformácie . . . . . . . .
1.2.5 Diskrétna Fourierova transformácia (DFT) . . . .
1.2.6 DFT ako špeciálny prípad lineárnej transformácie
1.2.7 Dvojrozmerná DFT . . . . . . . . . . . . . . . . . . .
1.3 Výpočet diskrétnej Fourierovej transformácie . . . . . . . .
1.3.1 Výpočet z definície . . . . . . . . . . . . . . . . . . .
1.3.2 Výpočet pomocou maticových operácií . . . . . . .
1.3.3 Rýchla Fourierova transformácia (FFT) . . . . . .
1.3.4 Doplnenie nulami . . . . . . . . . . . . . . . . . . .
1.4 Príklady Fourierovej transformácie obrazu . . . . . . . . .
i
2
2
3
4
5
5
5
7
8
9
12
13
15
15
15
16
17
21
22
O BSAH
1.5
1.6
2
ii
Kosínusová transformácia . . . . . . . . . . . . .
1.5.1 Diskrétna kosínusová transformácia . .
Filtrácia obrazu vo frekvenčnej oblasti . . . . . .
1.6.1 Filtrácia vybratých frekvenčných oblastí
Spracovanie obrazu v priestorovej oblasti
2.1 Diskrétna konvolúcia . . . . . . . . . . . .
2.1.1 Diskrétna 2D konvolúcia . . . . .
2.1.2 Vlastnosti konvolúcie . . . . . . .
2.2 Výpočet konvolúcie . . . . . . . . . . . . .
2.2.1 Znázornenie výpočtu konvolúcie
2.3 Najdôležitejšie konvolučné masky . . . .
2.3.1 Vyhladzovacie filtre . . . . . . . .
2.3.2 Hranové filtre . . . . . . . . . . . .
2.4 Použitie konvolúcie . . . . . . . . . . . . .
2.5 Nelineárna filtrácia . . . . . . . . . . . . .
2.5.1 Zorad’ovacií filter . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
26
26
27
35
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
38
38
39
39
39
40
41
41
43
47
48
48
3
Konvolučná teoréma
4
Morfologické operácie
4.1 Matematická morfológia . . . . . . . . . . . . . . . .
4.1.1 Morfologické spracovanie obrazu . . . . . .
4.2 Základné pojmy a definície . . . . . . . . . . . . . .
4.2.1 Susednost’, súvislost’ . . . . . . . . . . . . . .
4.2.2 Minkowského suma . . . . . . . . . . . . . .
4.2.3 Štrukturálny element . . . . . . . . . . . . .
4.2.4 Morfologická transformácia . . . . . . . . .
4.3 Základné morfologické operácie . . . . . . . . . . .
4.4 Binárna dilatácia a erózia . . . . . . . . . . . . . . . .
4.4.1 Dilatácia . . . . . . . . . . . . . . . . . . . . .
4.4.2 Erózia . . . . . . . . . . . . . . . . . . . . . .
4.4.3 Vlastnosti dilatácie a erózie . . . . . . . . . .
4.4.4 Použitie dilatácie a erózie . . . . . . . . . . .
4.4.5 Vzájomný vzt’ah medzi eróziou a dilatáciou
4.5 Morfologické otvorenie a uzavretie . . . . . . . . . .
4.5.1 Morfologické otvorenie . . . . . . . . . . . .
4.5.2 Morfologické uzavretie . . . . . . . . . . . .
4.6 Šedotónová dilatácia a erózia . . . . . . . . . . . . .
4.6.1 Nerovný štrukturálny element . . . . . . . .
4.6.2 Rovný štrukturálny element . . . . . . . . .
50
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
52
52
52
53
53
55
55
55
56
57
57
59
61
61
61
62
62
62
64
64
65
Obsah
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.15
4.16
4.17
Morfologický gradient . . . . . . . . . . . . . . . . . . . . . .
Morfologická vrchná a spodná čast’ klobúka . . . . . . . .
Granulometria . . . . . . . . . . . . . . . . . . . . . . . . . .
Morfologická operácia Hit-or-Miss . . . . . . . . . . . . . .
Vzdialenostná transformácia . . . . . . . . . . . . . . . . .
Kostra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.12.1 Príklady algoritmických postupov výpočtu kostry .
Transformácia rozvodím . . . . . . . . . . . . . . . . . . . .
4.13.1 Značková segmentácia rozvodím pre farebný obraz
Geodetické metódy . . . . . . . . . . . . . . . . . . . . . . .
4.14.1 Geodetická vzdialenost’ . . . . . . . . . . . . . . . .
Morfologická rekonštrukcia . . . . . . . . . . . . . . . . . .
4.15.1 Geodetická binárna dilatácia . . . . . . . . . . . . .
4.15.2 Geodetická binárna erózia . . . . . . . . . . . . . .
4.15.3 Morfologická rekonštrukcia a jej použitie . . . . .
Morfologická šedotónová rekonštrukcia . . . . . . . . . . .
4.16.1 Geodetická šedotónová dilatácia a erózia . . . . .
4.16.2 Generovanie značiaceho obrazu . . . . . . . . . . .
4.16.3 Príklady použitia . . . . . . . . . . . . . . . . . . . .
Príklad použitia morfologických operácií pre segmentáciu
superpixelov . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.17.1 Vyhladenie morfologickou rekonštrukciou . . . . .
4.17.2 Generovanie značiek – semiačok pre značkovú transformáciu rozvodím . . . . . . . . . . . . . . . . . .
4.17.3 Transformácia rozvodím . . . . . . . . . . . . . . .
4.17.4 Vyhodnotenie . . . . . . . . . . . . . . . . . . . . . .
4.17.5 Výsledky . . . . . . . . . . . . . . . . . . . . . . . . .
Zoznam použitej literatúry
68
70
71
73
75
75
76
76
78
79
79
79
80
81
81
82
82
83
84
85
87
88
88
89
90
92
II Príznaky
5
Príznaky v oblasti počítačového videnia
6
Príznaky tvaru
6.1 Binárny obraz . . . . . . . . . . . . . .
6.2 Opis tvaru založený na hranici oblasti
6.2.1 Ret’azcový Freemanov kód . .
6.2.2 Obvod . . . . . . . . . . . . . .
6.2.3 Krivost’ krivky . . . . . . . . . .
96
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
98
. 98
. 99
. 100
. 101
. 102
iii
O BSAH
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
104
105
105
106
107
108
110
111
112
113
113
113
115
115
115
117
Príznaky farby
7.1 Dominantná farba . . . . . . . . . . . . . . . . . . . .
7.2 Histogram farieb . . . . . . . . . . . . . . . . . . . . .
7.2.1 Histogram priestorového rozloženia farieb .
7.2.2 Ďalšie opisy priestorového rozloženia farieb
7.3 MPEG-7 . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3.1 Deskriptor dominantnej farby . . . . . . . .
7.3.2 Škálovatel’ný deskriptor farby . . . . . . . .
7.3.3 Deskriptor rozloženia farieb . . . . . . . . .
7.3.4 Deskriptor štruktúry farieb . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
118
118
118
120
120
122
123
123
124
124
Príznaky textúry
8.1 Autokorelácia . . . . . . . . . . . . . .
8.2 Matica opakovaných výskytov . . . .
8.3 Diskrétna Fourierova transformácia
8.4 Gaborove filtre . . . . . . . . . . . . .
8.5 MPEG-7 . . . . . . . . . . . . . . . . .
8.5.1 Prehl’adávanie textúr . . . .
8.5.2 Homogénne textúry . . . . .
8.5.3 Histogram lokálnych hrán .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
128
129
129
130
131
133
133
134
135
6.3
6.4
6.5
7
8
9
iv
6.2.4 Signatúra . . . . . . . . . . . . . . . . . .
6.2.5 Fourierov opis . . . . . . . . . . . . . . . .
Opis tvaru založený na oblasti . . . . . . . . . . .
6.3.1 Ťažisko a k nemu prislúchajúce príznaky
6.3.2 Príznaky odvodené z priemeru a obsahu
6.3.3 Osi oblasti . . . . . . . . . . . . . . . . . .
6.3.4 Opísaný obdĺžnik . . . . . . . . . . . . . .
6.3.5 Topologické príznaky . . . . . . . . . . .
6.3.6 Morfologické príznaky . . . . . . . . . . .
Šedotónový obraz . . . . . . . . . . . . . . . . . .
6.4.1 Projekcie . . . . . . . . . . . . . . . . . . .
6.4.2 Opisné štatistiky . . . . . . . . . . . . . .
6.4.3 Energia a entropia . . . . . . . . . . . . .
MPEG-7 . . . . . . . . . . . . . . . . . . . . . . . .
6.5.1 Tvar kontúry . . . . . . . . . . . . . . . .
6.5.2 Tvar regiónu . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Lokálne príznaky
138
9.1 Lokálne vs. globálne príznaky . . . . . . . . . . . . . . . . . 138
9.2 Lokálne príznaky . . . . . . . . . . . . . . . . . . . . . . . . 140
Obsah
9.3
9.4
9.5
9.6
9.7
Metódy detekcie a deskripcie lokálnych príznakov
9.3.1 Harrisov detektor rohov . . . . . . . . . . .
9.3.2 FAST . . . . . . . . . . . . . . . . . . . . . .
9.3.3 SIFT . . . . . . . . . . . . . . . . . . . . . .
9.3.4 SURF . . . . . . . . . . . . . . . . . . . . . .
9.3.5 BRIEF . . . . . . . . . . . . . . . . . . . . .
9.3.6 ORB . . . . . . . . . . . . . . . . . . . . . . .
9.3.7 Porovnávanie deskriptorov . . . . . . . . .
Registrácia objektov . . . . . . . . . . . . . . . . . .
Využitie lokálnych príznakov . . . . . . . . . . . .
9.5.1 Spájanie panorám . . . . . . . . . . . . . .
9.5.2 Stereo rekonštrukcia . . . . . . . . . . . . .
9.5.3 Vlastná kalibrácia kamery . . . . . . . . . .
9.5.4 Sledovanie objektov . . . . . . . . . . . . .
9.5.5 Vyhl’adávanie obrazov . . . . . . . . . . . .
Prípad použitia: Klasifikácia malieb . . . . . . . . .
3D lokálne príznaky . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
141
142
142
143
147
148
148
150
150
151
151
152
152
152
153
153
156
10 Predspracovanie príznakov
158
10.1 Príznaky bez rozmeru . . . . . . . . . . . . . . . . . . . . . . 160
10.2 Škálovanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
11 Výber príznakov
11.1 Filter a obálka . . . . . . . . . . . . .
11.2 Dopredný výber . . . . . . . . . . . .
11.3 Spätný výber . . . . . . . . . . . . . .
11.4 Kombinovaný výber . . . . . . . . . .
11.5 Ohodnotenie príznakov . . . . . . . .
11.5.1 Štatistická závislost’ . . . . .
11.5.2 Konzistencia . . . . . . . . .
11.5.3 Medzitriedna vzdialenost’ . .
11.5.4 Informačno-teoretické miery
11.5.5 Hodnotiace miery . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
162
162
163
164
165
165
165
166
167
167
169
12 Redukcia príznakov
12.1 Metóda hlavných komponentov . . . . . .
12.1.1 Použitie PCA . . . . . . . . . . . .
12.1.2 Ako môže PCA znížit’ dimenziu? .
12.1.3 Vzt’ah medzi PCA a SVD . . . . . .
12.2 Fisherova lineárna disriminačná analýza
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
170
170
172
174
176
176
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
v
O BSAH
Zoznam použitej literatúry
180
III Klasifikácia
13 Klasifikácia príznakov
188
14 Riadené klasifikátory
14.1 Bayesovská teória rozhodovania . . . . . . . . . . . .
14.1.1 Optimalita Bayesovho klasifikátora . . . . .
14.1.2 Rozhodovacie hranice . . . . . . . . . . . . .
14.2 Techniky najbližších susedov . . . . . . . . . . . . .
14.3 Rozhodovacie stromy . . . . . . . . . . . . . . . . . .
14.3.1 Rozdel’ujúce kritérium . . . . . . . . . . . .
14.3.2 Ukončujúce kritérium . . . . . . . . . . . . .
14.3.3 Orezávanie rozhodovacích stromov . . . . .
14.3.4 Výhody a nevýhody rozhodovacích stromov
14.4 Diskriminačná analýza . . . . . . . . . . . . . . . . .
14.4.1 Lineárne diskriminačné funkcie . . . . . . .
14.4.2 Klasifikácia do dvoch tried . . . . . . . . . .
14.4.3 Určenie váh . . . . . . . . . . . . . . . . . . .
14.4.4 Vol’ba účelovej funkcie . . . . . . . . . . . .
14.4.5 Klasifikácia do K tried . . . . . . . . . . . . .
14.5 Mechanizmy podporných vektorov . . . . . . . . . .
14.5.1 Neseparovatel’né dáta . . . . . . . . . . . . .
14.6 Neurónové siete . . . . . . . . . . . . . . . . . . . . .
14.6.1 Aktivačné funkcie . . . . . . . . . . . . . . .
14.6.2 Viacvrstvový perceptrón . . . . . . . . . . . .
14.6.3 Učenie neurónovej siete . . . . . . . . . . . .
14.6.4 Rýchlost’ učenia sa neurónovej siete . . . .
14.6.5 Ukončenie učenia sa neurónovej siete . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
192
192
193
194
195
196
199
200
201
203
203
203
204
205
207
209
210
215
218
219
220
221
224
226
15 Neriadené klasifikátory
15.1 Metóda K priemerov . . . .
15.1.1 Metóda C priemerov
15.2 Hierarchické zhlukovanie .
15.3 Samoorganizujúce sa mapy
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
228
228
230
231
233
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
16 Hodnotenie kvality klasifikácie
238
16.1 Vzájomná validácia . . . . . . . . . . . . . . . . . . . . . . . 240
16.1.1 Náhodné prevzorkovanie . . . . . . . . . . . . . . . 240
vi
Obsah
16.1.2 K-násobná vzájomná validácia . . . . . . . . . . .
16.1.3 Vrstvená K-násobná vzájomná validácia . . . . .
16.1.4 Vzájomná validácia s vynechaním jednej vzorky
16.2 Bootstrap . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16.3 Chybová funkcia klasifikátora . . . . . . . . . . . . . . . .
16.4 Metódy porovnávania klasifikátorov . . . . . . . . . . . .
16.4.1 Matica zámen . . . . . . . . . . . . . . . . . . . . .
16.4.2 Koeficienty kvality klasifikácie . . . . . . . . . . .
16.4.3 ROC krivky . . . . . . . . . . . . . . . . . . . . . .
16.4.4 McNemarov test . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
Zoznam použitej literatúry
240
241
241
241
242
244
244
245
247
252
254
IV Farba a vizuálne vnímanie
17 Svetlo a farba
17.1 Veličiny opisujúce svetlo . . . .
17.1.1 Rádiometrické veličiny
17.1.2 Fotometrické veličiny .
17.2 Funkcie spektrálnej hustoty . .
17.3 Geometrické vlastnosti svetla .
17.4 Žiarenie čierneho telesa . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
258
260
261
262
263
263
265
18 L’udský vizuálny systém
18.1 Štruktúra oka . . . . . . . . . . . . . . . . . .
18.2 Procesy prebiehajúce na sietnici . . . . . .
18.2.1 Trichromatické procesy . . . . . . .
18.2.2 Oponentné procesy v sietnici . . . .
18.2.3 Gangliové bunky a receptívne polia
18.3 Vizuálny kortex . . . . . . . . . . . . . . . . .
18.4 Poruchy farbocitu . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
268
269
271
271
272
274
275
276
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
19 Kolorimetria
19.1 Grassmanov experiment . . . . . . . . . . . . . . . . . . . .
19.2 Grassmanov zákon aditívneho miešania farieb . . . . . . .
19.3 Kolorimetrický priestor . . . . . . . . . . . . . . . . . . . . .
19.4 Štandardný kolorimetrický pozorovatel’ . . . . . . . . . . .
19.4.1 CIE 1931 štandardný kolorimetrický pozorovatel’ .
19.4.2 CIE 1964 doplnkový štandardný kolorimetrický pozorovatel’ . . . . . . . . . . . . . . . . . . . . . . . .
278
279
280
280
285
285
286
vii
O BSAH
19.5
19.6
19.7
19.8
viii
Kolorimetrická sústava CIE XYZ .
CIE diagram chromatickosti . . .
MacAdamove elipsy . . . . . . . .
Štandardné iluminanty . . . . . .
19.8.1 Štandardné zdroje svetla
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
287
289
293
294
296
20 Modely a priestory farieb
20.1 Homogénne priestory farieb . . . . . . . . .
20.1.1 CIE 1960 Yuv . . . . . . . . . . . . .
20.1.2 CIE 1964 U*V*W* . . . . . . . . . . .
20.1.3 CIE 1976 Yu’v’ . . . . . . . . . . . . .
20.1.4 CIE 1976 L*u*v* . . . . . . . . . . . .
20.1.5 CIE 1976 L*a*b* . . . . . . . . . . . .
20.1.6 CIE CAM02 . . . . . . . . . . . . . .
20.2 Hardvérovo orientované modely . . . . . .
20.2.1 Lineárny model RGB . . . . . . . . .
20.2.2 Model RGBA . . . . . . . . . . . . . .
20.2.3 Nelineárne priestory RGB . . . . . .
20.2.4 Model CMY . . . . . . . . . . . . . .
20.2.5 Model CMYK . . . . . . . . . . . . .
20.3 Modely farieb v televíznej a videotechnike .
20.3.1 Model YIQ . . . . . . . . . . . . . . .
20.3.2 Model YUV . . . . . . . . . . . . . .
20.3.3 Model YPbPr . . . . . . . . . . . . .
20.3.4 Model YCbCr . . . . . . . . . . . . .
20.3.5 Model Kodak Photo YCC . . . . . .
20.4 Používatel’sky orientované modely . . . . .
20.4.1 Model HSV . . . . . . . . . . . . . .
20.4.2 Model HSL . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
298
298
299
299
300
300
302
304
304
305
306
306
308
310
311
313
314
315
316
317
319
320
324
21 Vizuálne vnímanie a pozornost’
21.1 Vizuálna pozornost’ . . . . . . . . . . . . . . . . . .
21.2 Určovanie významných oblastí v obraze . . . . . .
21.2.1 Sledovanie pohybu očí . . . . . . . . . . . .
21.2.2 Modely na detekciu významných oblastí .
21.2.3 Model pre rýchlu analýzu scény . . . . . .
21.3 Využitie detekcie významných oblastí v obraze . .
21.3.1 Hl’adanie najlepších pohl’adov na objekty
21.3.2 Kompresia obrazu . . . . . . . . . . . . . .
21.4 Príklad využitia: Hodnotenie kvality videa . . . . .
21.4.1 Detekcia významných oblastí . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
326
327
329
330
334
339
344
344
344
345
345
Obsah
21.4.2 Hodnotenie kvality videa . . . . . . . . . . . . . . . 346
Zoznam použitej literatúry
348
V Dodatky
A
Vybrané témy z pravdepodobnosti
A.1 Pravdepodobnost’ . . . . . . . . . . . . . . . . . . . . . . . .
A.1.1 Nezávislost’ javov, podmienená pravdepodobnost’
A.2 Náhodná premenná . . . . . . . . . . . . . . . . . . . . . . .
A.3 Číselné charakteristiky náhodnej premennej . . . . . . . .
A.3.1 Momenty . . . . . . . . . . . . . . . . . . . . . . . .
A.3.2 Kvantily . . . . . . . . . . . . . . . . . . . . . . . . .
A.3.3 Modus . . . . . . . . . . . . . . . . . . . . . . . . . .
A.4 Náhodné vektory . . . . . . . . . . . . . . . . . . . . . . . .
A.4.1 Marginálne rozdelenie pravdepodobnosti . . . . .
A.5 Číselné charakteristiky náhodného vektora . . . . . . . . .
A.5.1 Združené momenty . . . . . . . . . . . . . . . . . .
A.5.2 Marginálne charakteristiky . . . . . . . . . . . . . .
A.5.3 Kovariancia . . . . . . . . . . . . . . . . . . . . . . .
A.6 Normálne rozdelenie . . . . . . . . . . . . . . . . . . . . . .
A.6.1 Viacrozmerné normálne rozdelenie . . . . . . . . .
354
354
356
358
359
360
362
363
363
364
364
364
365
366
367
367
B Vybrané témy z maticového počtu
B.1 Singulárny rozklad matice . . . . . . . . . . . . . . . . . . .
B.1.1 Úsporná forma SVD . . . . . . . . . . . . . . . . . .
B.1.2 Vlastnosti SVD . . . . . . . . . . . . . . . . . . . . .
370
370
371
371
C Vybrané kapitoly z lineárnej algebry
C.1 Vektorový priestor (Lineárny priestor)
C.2 Lineárna kombinácia vektorov . . . .
C.3 Lineárna transformácia . . . . . . . . .
C.4 Báza vektorového priestoru . . . . . .
374
374
375
375
375
Zoznam použitej literatúry
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
378
ix
Predslov
Vizuálna detekcia a rozpoznávanie objektov patrí v poslednom desat’ročí
medzi najväčšie výzvy počítačového videnia. Potenciálne uplatnenie systémov detekcie a rozpoznávania objektov je vel’mi široké, od bezpečnostných systémov (napr. identifikácia oprávnených osôb), cez medicínske
techniky (napr. detekcia tumorov), priemyselné aplikácie (napr. vizuálna
inšpekcia výrobkov), robotiku (napr. navigácia robota v nedostupnom teréne) až po rozšírenú realitu a mnohé d’alšie.
Úloha automaticky vyhl’adat’ objekt sa spravidla formuluje ako úloha segmentácie objektu, prípadne iba ako detekcia opísaného štvoruholníka, alebo ako rozpoznanie samotného objektu.
Obrázok 0.1: *
Detekcia objektu
bez segmentácie
Obrázok 0.2: *
Detekcia objektu
so segmentáciou
x
Obrázok 0.3: *
Rozpoznanie objektu
v obraze
Predslov
K úlohe detekcie môžeme pristupovat’ na rôznych stupňoch zovšeobecnenia. Bud’ rozpoznávame konkrétne inštancie jednotlivých objektov, alebo celú kategóriu objektov.
Vizuálna detekcia a rozpoznávanie objektov je vel’mi komplexný problém. Musí sa zaoberat’ mnohými aspektmi, ktoré riešenie rozhodne neul’ahčujú. Príkladom sú:
• nehomogénne a premenlivé osvetlenie scény,
• meniace sa spektrálne charakteristiky osvetlenia a následne i farba
snímaného objektu,
• objekty, ktoré sa prekrývajú,
• rôzne uhly snímania objektov kamerou,
• v prípade rozpoznávania kategórií je samozrejme vel’kou výzvou
i rôznorodost’ objektov v rámci jednej kategórie.
Základný ret’azec operácií systému detekcie rozpoznávania môžeme
znázornit’ nasledovne:
Základné členenie tejto knihy korešponduje s týmto ret’azcom. Navyše bude čitatel’ oboznámený s problematikou farby a l’udského vnímania vizuálnej informácie, ktoré sú vel’mi dôležité pre riešenie detekcie
a rozpoznávania objektov a zároveň majú presahy do iných významných
odborov, ako sú počítačová grafika alebo interakcia človeka s počítačom.
Na vstupe uvedeného ret’azca je digitálna kamera, z ktorej získame
signál obrazu, či už farebný alebo čiernobiely. Úlohou predspracovania
obrazu je odstránenie nežiaducich a pre d’alšie spracovanie rušivých javov ako sú napr. šum v signáli, zvýraznenie informácie (napr. kontúr objektov), ktorá je relevantná a naopak potlačenie informácie, ktorá nie je
relevantná z pohl’adu danej úlohy.
Dobrým príkladom je filtrácia pre odstránenie šumu, hornopriepustná filtrácia pre odstránenie nehomogenity osvetlenia, prevod do iných
farebných priestorov alebo morfologické spracovanie.
Ciel’om d’alšieho stupňa spracovania je získanie príznakov, ktoré budú dobre reprezentovat’ obrazovú informáciu dostatočne reprezentatívnym a diskriminatívnym spôsobom.
Ak je našou úlohou napríklad detekcia l’udskej tváre v obraze, celý
obraz budeme postupne prechádzat’ tzv. kĺzavým oknom a v každej jeho
xi
P REDSLOV
pozícii bude úlohou klasifikátora rozhodnút’ medzi dvoma triedami – je
alebo nie je tvár v tej časti obrazu, ktorú práve vyšetruje? Vstupom pre
klasifikátor je práve vektor príznakov, na základe ktorého môže klasifikátor rozhodnút’. V procese návrhu môžeme vygenerovat’ vektor príznakov podstatne väčší, než ktorý bude použitý vo výslednom klasifikátore.
Vhodné (relevantné) príznaky určíme metódami selekcie príznakov.
V d’alšom rozhodovacom stupni klasifikátor na základe vektora príznakov rozhodne o príslušnosti k triede.
Každý systém vizuálneho rozpoznávania objektov musí byt’ najskôr
naučený na úlohu, pre ktorú je určený. Definovanie rozhodovacej úlohy
pomocou súboru deterministických podmienok sa používa skôr zriedkavo. Príkladom môžu byt’ niektoré systémy priemyselnej inšpekcie, kde
v reprodukovatel’ných podmienkach systém vyhodnotí namerané veličiny, napr. rozmery objektu. Záujem vedcov a výskumníkov sa však koncentruje predovšetkým na metódy na princípe umelej inteligencie.
Metódy detekcie a rozpoznávania objektov môžeme podl’a základného prístupu k riešeniu rozdelit’ na:
• metódy založené na globálnom opise,
• metódy založené na lokálnych príznakoch.
Väčšina metód založených na globálnom opise používa metódu kĺzavého okna, ktoré vyberie určitý región obrazu a tento je vyhodnotený porovnávaním s danými vzorovými reprezentáciami objektov. Tento prístup
sa úspešne používa napr. pri detekcii tváre podl’a autorov Viola Jones.
Principiálne však má niekol’ko nedostatkov, napr. škálovú a rotačnú nezávislost’ dosahujeme porovnávaním s otočeným vzorom v rôznej škále,
čo je výpočtovo náročné. Prípadné prekryvy objektov alebo zmena tvaru
nerigidných objektov vel’mi znižujú pravdepodobnost’ správnej detekcie.
Druhou alternatívou je využitie lokálnych príznakov. Tieto metódy
pracujú smerom zdola nahor, od opisu pomerne malého okolia mnohých
kl’účových bodov až po rozhodnutie, či tieto určité zostavy lokálnych deskriptorov patria k detegovanému objektu. Najjednoduchší postup pozostáva z troch základných krokov:
1. Extrakcia lokálnych príznakov. Lokálne príznaky sa počítajú v okolí
detegovaných kl’účových bodov a to nezávisle najskôr na vzorovom
obraze objektu a potom v obraze, ktorý vyšetrujeme.
2. Porovnanie lokálnych príznakov tak, aby sa našli korešpondencie
podobných.
3. Overenie, či spárované príznaky sa nachádzajú v konzistentnej geometrickej konfigurácii.
xii
Predslov
Obrázok 0.4: *
Príklad párovania lokálnych príznakov
Vel’mi perspektívne (v tomto vydaní knihy zatial’ bez podrobnejšieho
opisu) sa javia metódy nazývané ako „vrecia príznakov“. Základná myšlienka sa dá vyjadrit’ nasledovne. Najskôr sa vygeneruje kódová kniha nazývaná vizuálny slovník. S jednotlivými inštanciami lokálnych príznakov
sa d’alej pracuje na základe indexu v kódovej knihe (tzv. vizuálne slovo),
ku ktorému patria. Uplatňujú sa metódy tvorby histogramov podl’a príslušnosti jednotlivých príznakov k vizuálnym slovám, metódy prieniku
týchto histogramov alebo spätného indexovania. Tieto metódy sú vel’mi
sl’ubné hlavne pre úlohy vyhl’adávania objektov vo vel’kých databázach.
Ciel’om tejto vedeckej monografie je zoznámit’ čitatel’a s teóriou vizuálnej detekcie a rozpoznávania objektov a uviest’ príklady moderných
aplikácií, v ktorých je táto teória využívaná.
Členenie knihy je nasledovné.
Prvá kapitola sa zaoberá obrazom, jeho snímaním a prechodom od
analógového signálu k digitálnemu.
Ďalej nasleduje čast’ Predspracovanie obrazu, kde sa čitatel’ dozvie
princípy filtrácie vo frekvenčnej oblasti, v priestorovej oblasti a morfologického spracovania obrazu spolu s príkladmi použitia týchto metód.
V časti nazvanej Príznaky sú predstavené početné spôsoby výpočtu
globálnych príznakov reprezentujúcich tvar objektu, farbu, textúru ako
i lokálne príznaky. Vhodným príkladom využitia globálnych a lokálnych
príznakov je klasifikácia malieb na fotografiách. Posledná kapitola tejto
časti sa zaoberá metódami vhodného výberu príznakov.
V časti Klasifikácia sú opísané najvýznamnejšie klasifikačné metódy
rozdelené podl’a toho, či sú riadené (s učitel’om) alebo neriadené (bez
učitel’a). Samostatnou kapitolou sú spôsoby hodnotenia kvality klasifikácie.
Posledná čast’ monografie sa nazýva Farba a vizuálne vnímanie. Opisuje základné fyzikálne a biologické pojmy používané v počítačovom vixiii
P REDSLOV
dení, metódy kolorimetrie a modely rôznych farebných priestorov. Kapitola o vizuálnej „výraznosti“ (saliency) v obraze a sledovaní pozornosti
pozorovatel’a uzatvára túto čast’. Príkladom súčasného využitia výraznosti je hl’adanie najlepších pohl’adov na objekty alebo detekcia oblasti
záujmu pre zlepšenie kódovania obrazu a videa.
V doplnku čitatel’ nájde prehl’ad vybraných tém z matematiky, ktoré
sú nutné pre pochopenie teoretických častí knihy.
Pod’akovanie
Autorky by rady pod’akovali kolegom a priatel’om, ktorí pomohli pri realizácii tejto knihy. Obálku navrhol pán Spyridon Giochalas. Fotografie poskytli Dr. Barbora Benešová, Mgr. Peter Berger, Dr. Martina Bátorová a autorky. Obrázky kreslili Dr. Ivana Varhaníková, Spyridon Giochalas a autorky. S korektúrou textu pomohol doc. Andrej Ferko, a vylepšeniami prispeli recenzenti prof. Ivan Bajla, ÚMER SAV, Bratislava, prof. Jaroslav Polec, ÚT FEI STU, Bratislava a doc. Jarmila Pavlovičová, ÚT FEI STU, Bratislava. Pod’akovanie patrí aj agentúre KEGA, ktorá finančnou podporou
projektu 068UK-4/2011 umožnila vydanie publikácie.
xiv
Č AS Ť I
P REDSPRACOVANIE OBRAZU
K APITOLA
1
Spracovanie obrazu
vo frekvenčnej oblasti
Najskôr odporúčame čitatel’ovi pripomenút’ si kapitoly z lineárnej algebry, ktoré sú potrebné pre spracovanie obrazového signálu vo frekvenčnej
oblasti. Na pomoc uvádzame v dodatku C najdôležitejšie základné pojmy
a definície. Vektorový priestor – Lineárny priestor (vid’ C.1), Lineárna kombinácia (vid’ C.2), Lineárna transformácia (vid’ C.3) a Báza vektorového
priestoru (vid’ C.4).
Teoretické základy spracovania vo frekvenčnej oblasti budú v d’alšom výklade najskôr objasnené pre 1-dimenzionálny signál a vysvetlená teória
bude d’alej rozšírená na obrazový, čiže 2-dimenzionálny signál.
1.1
Načo slúžia diskrétne lineárne transformácie?
Fourierova transformácia je jedným z najdôležitejších matematických nástrojov používaných pri spracovaní signálov. Popri Diskrétnej Fourierovej transformácii (DFT) našla významné uplatnenie v technickej praxi
i Diskrétna kosínusová Transformácia (DCT). DFT a DCT sú spolu s vlnkovou transformáciou (Wavelet transform) najpoužívanejšie pri filtrácii
obrazu.
DFT a DCT patria medzi lineárne transformácie, ktoré nám umožňujú reprezentovat’ číslicový vstupný signál ako lineárnu kombináciu diskrétnych bázových funkcií (vid’ C.2 a C.4). Lineárne transformácie DFT
a DCT teda umožňujú vzájomne jednoznačný prevod signálu (priamo
i spätne) medzi reprezentáciou signálu v časovej/priestorovej doméne
a frekvenčnej doméne.
2
1.1. Načo slúžia diskrétne lineárne transformácie?
Obidve transformácie patria do rodiny tzv. goniometrických transformácií.
1.1.1 Príklad
Pre ilustráciu si najskôr ukážeme jednoduchý príklad.
Obrázok 1.1: Príklad spektrálnej analýzy sínusového signálu.
Na obrázku 1.1 hore je znázornený číslicový vstupný signál, ktorý je
generovaný ako jednoduchý sínusový signál. Spektrum je počítané z časového okienka ktoré zodpovedá piatim periódam sínusového signálu.
Hodnoty signálu boli nadôvažok ešte zmenené pripočítaním kladnej konštanty, dôsledkom čoho má tento vstupný signál nenulovú strednú hodnotu.
Obrázok 1.1 dole ilustruje výstup frekvenčnej analýzy tohoto signálu,
konkrétne po transformovaní do frekvenčnej oblasti prostredníctvom diskrétnej Fourierovej transformácie. Vl’avo dole je magnitúdové spektrum
a vpravo dole je fázové spektrum. Očakávame, že magnitúdové spektrum
bude mat’ nenulový nultý koeficient, pretože vstupný signál má nenulovú strednú hodnotu. (Nultý koeficient je nazývaný tiež ako jednosmerná zložka, tzv. DC komponent.) Očakávame tiež, že v spektre uvidíme
3
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
jednu výraznú spektrálnu hodnotu, ktorá zodpovedá frekvencii vstupného sínusového signálu.
Na obrázku 1.1 dole vidíme, že vypočítané magnitúdové spektrum je symetrické okolo koeficientu s indexom nula v strede spektra. Spektrálny
koeficient s indexom nula reprezentuje jednosmernú zložku signálu, teda
v našom prípade strednú hodnotu signálu. Podl’a očakávania je nenulový. V spektre tiež vidíme nenulový 5. spektrálny koeficient symetricky
rozložený do dvoch častí magnitúdového spektra, ktorý indikuje frekvenciu vstupného sínusového signálu.
Poznámka: Fourierovské magnitúdové spektrum je pre reálne signály
vždy symetrické .
1.1.2 Použitie
V technickej praxi je výpočet spektra vel’mi významný nástroj, pretože
umožňuje analýzu a spracovanie signálu selektívne podl’a jednotlivých
frekvencií obsiahnutých v signáli.
Výhodne môžeme frekvenčnú analýzu použit’ pre opis a tvorbu príznakov, napr. rôznych textúrových vzorov.
Dôležitým príkladom použitia je aj filtrácia obrazu, a to priamo vo
frekvenčnej oblasti. Takto môžeme odfiltrovat’ napr. vysokofrekvenčné
zložky, alebo naopak odfiltrovat’ nízkofrekvenčné zložky obrazu. Po odfiltrovaní vysokých frekvencií z obrazu zmiznú jemné hrany a obraz bude
pôsobit’ rozmazane. Naopak, ak odfiltrujeme nízke frekvencie, tak získame hranový obraz. Samozrejme záleží od konkrétneho návrhu filtra.
Vo frekvenčnej oblasti môžeme tiež cielene odstránit’ určitú konkrétnu rušivú zložku obrazu, ktorá má periodický charakter, a ktorú vieme
v spektre lokalizovat’.
Ďalšou významnou vlastnost’ou je dekorelácia spektrálnych koeficientov. Z tohoto pohl’adu má výborné vlastnosti DCT, čo predurčuje jej
použitie pri kompresii dát, napr. v norme JPEG.
Transformovaním obrazu pomocou priamej alebo spätnej lineárnej
transformácie takpovediac „prepíname“ medzi
• priestorovou doménou obrazu (alebo časovou doménou, ak sa jedná o jednodimenzionálne signály meniace sa v čase) a
• spektrálnou doménou daného vektorového priestoru,
do ktorého transformujeme (napr. Fourierovho). Ak vypočítané hodnoty
nemeníme, tak priamym a spätným transformovaním nedochádza k žiadnej strate informácie (až na malé odchýlky spôsobené limitovanou pres4
1.2. Fourierova transformácia
nost’ou výpočtu). Spektrum daného signálu teda obsahuje kompletnú informáciu o danom signáli.
1.1.3 Lineárna transformácia obrazu.
Diskrétna lineárna transformácia v prípade 1-dimenzionálneho signálu
prirad’uje postupnosti hodnôt číslicového signálu postupnost’ spektrálnych koeficientov.
Ako už bolo spomenuté, ciel’om diskrétnej Fourierovej transformácie
je reprezentácia signálu ako lineárnej kombinácie goniometrických
funkcií, ktoré tvoria bázu. Získané súradnice sú vlastne spomínané váhové koeficienty lineárnej kombinácie a v technickej praxi ich nazývame
spektrálne koeficienty.
Fourierova transformácia je definovaná nad oborom komplexných čísiel a spektrálne koeficienty sú komplexné čísla, pozostávajú z reálnej
a imaginárnej zložky. V praxi sa častejšie používa prepočet reálnej a imaginárnej zložky na magnitúdu a fázu komplexného čísla, teda máme spektrum magnitúdové a fázové.
1.2
Fourierova transformácia
Ako prvý publikoval francúzsky matematik Jean Baptiste Joseph Fourier
v roku 1822 myšlienku, že každú periodickú funkciu je možné vyjadrit’
ako súčet sínusových a kosínusových funkcií o rôznych frekvenciách vynásobených násobnými koeficientami. Význam Fourierovej vety o reprezentácii periodického signálu je prevratný, ked’že každú periodickú funkciu môžeme reprezentovat’ ako Fourierov rad.
V centre záujmu nášho d’alšieho výkladu bude predovšetkým Diskrétna Fourierova Transformácia dvoch premenných pre spracovanie
číslicového signálu obrazu a jej praktické využitie. Pre úplnost’ však stručne najskôr uvedieme tiež definíciu Fourierovho radu a definíciu spojitej
Fourierovej transformácie.
1.2.1 Fourierov rad
Máme periodický signál, ktorý matematicky môžeme zapísat’ ako funkciu f (x) s periódou T > 0. Túto periodickú funkciu môžeme interpretovat’ ako jej rozvoj na nekonečný rad sínusových a kosínusových funkcií.
5
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Na intervale [−π, π] je Fourierov rad funkcie f (x) potom definovaný
ako
f (x) = a0 +
∞
(an cos(nx) + b n sin(nx)).
(1.1)
k=1
Fourierov rad môžeme teda rozpísat’ na jednotlivé členy nasledovne.
f (x) = a0 + a1 cos(x) + b 1 sin(x) + a2 cos(2x) + b 2 sin(2x) + ....
(1.2)
Intuitívne si môžeme predstavit’, že akýkol’vek spojitý periodický signál aproximujeme váhovaným súčtom spojitých sínusových a kosínusových funkcií s rôznou uhlovou frekvenciou. Nasledujúci obrázok 1.2 ilustruje prvých 18 týchto funkcií na intervale [−π, π].
Obrázok 1.2: Ukážka kosínusových C0-C17 a sínusových funkcií S0-S17 s rôznou
uhlovou frekvenciou.
Ak by sme použili iba kosínusové funkcie, tak by sme mohli aproximovat’ iba párne funkcie. (Párne funkcie sú funkcie, pre ktoré platí
f (−x) = f (x) na intervale [−π, π], teda sú symetrické okolo y-novej osi
podobne ako funkcia kosínus).
Podobne, ak by sme použili iba sínusové funkcie, tak by sme mohliaproximovat’ iba nepárne funkcie. (Nepárne funkcie sú funkcie, pre
ktoré platí, že: f (−x) = − f (x) na intervale [−π, π], teda sú symetrické
okolo nuly podobne ako sínus.)
Pre aproximáciu l’ubovol’ného periodického signálu Fourierovym radom teda potrebujeme kombináciu sínusových aj kosínusových funkcií.
Príklad. Obrázok 1.3 ilustruje aproximáciu zvolenej funkcie Fourierovym radom. Konkrétne sme zvolili obdĺžnikovú funkciu (na obr. znázornená červenou). Pre názornost’ sú zobrazené iba prvé tri postupné aproximácie pomocou Fourierovho radu. Každá d’alšia postupná aproximácia
6
1.2. Fourierova transformácia
by d’alej zmenšila rozdiel medzi obdĺžnikovou funkciou a jej aproximáciu, v limitnom prípade sa chyba aproximácie bude blížit’ k nule a počet
sínusových funkcií aproximácie sa bude blížit’ nekonečnu. Pretože naša
obĺžniková funkcia je nepárna, uplatia sa iba sínusové zložky, kosínusové
členy majú nulové váhovacie koeficienty.
Obrázok 1.3: Aproximácia obdĺžnikovej funkcie f(x) ako Fourierovho radu, čiastočné súčty 1., 3., a 5. člena.
Harmonická analýza. Rozklad periodického signálu na Fourierov rad
sa často nazýva aj harmonická analýza. Takéto označenie sa často používa v technickej praxi. Terminológia, ktorú potom používame je nasledovná: nultý koeficiet nazývame nultou harmonickou. Je to priemerná
hodnota signálu, oznčujeme ju tiež z angličtiny ako DC komponent. Prvý
koeficient je základná frekvencia signálu. Ďalšie koeficienty prislúchajú
násobným frekvenciám základnej frekvencie a nazývame ich druhá harmonická, tretia harmonická . . .
f (x) = a0 + a1 cos(x) + b 1 sin(x) + a2 cos(x) + b 2 sin(x) +
DC
základná harmonická
2. harmonická
+ a3 cos(x) + b 3 sin(x) . . .
3. harmonická
(1.3)
1.2.2 Spojitá Fourierova transformácia
Spojitá Fourierova transformácia v porovnaní s Fourierovým radom (vid’
1.2.1) rozširuje možnost’ reprezentácie periodických signálov aj na neperiodické signály spojité v čase, avšak za podmienky, že obsah plochy
(v absolútnej hodnote) pod grafom funkcie je konečný
∞
| f (x) | dx < ∞.
(1.4)
−∞
7
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Definícia spojitej Fourierovej transformácie. Fourierovou transformáciou spojitej funkcie f (x) jednej premennej nazveme funkciu F (u), ktorá
je definovaná vzt’ahom
F (u) =
∞
−∞
f (x)e − j 2πux dx,
(1.5)
inverzná spojitá Fourierova transformácia je potom definovaná ako
f (x) =
∞
−∞
F (u)e j 2πux du,
kde
j=
(1.6)
−1,
e j θ = cos θ + j sin θ,
a d’alej platí, že
2π f = ω,
kde ω je uhlová frekvencia v radiánoch [rad] a f je frekvencia v [Hz].
1.2.3 Dvojdimenzionálna Fourierova transformácia
Nech f (x, y) je spojitá integrovatelná funkcia, a nech F (u, v) je integrovatel’ná. Potom pre výpočet spojitej dvojdimenzionálnej Fourierovej transformácie platí
F (u, v) =
∞ ∞
−∞ −∞
f (x, y)e − j 2π(ux+v y ) dxdy,
(1.7)
a pre výpočet spätnej dvojdimenzionálnej Fourierovej transformácie platí
vzt’ah
f (x, y) =
∞
∞
−∞ −∞
F (u, v)e j 2π(ux+v y ) dudv,
kde
j=
(1.8)
−1,
e j θ = cos θ + j sin θ.
Ako už bolo spomenuté, F (u, v) je z oboru komplexných čísiel a pre interpretáciu je výhodné použit’ nasledovný zápis.
F (u) = |F (u)| e iϕ(u) ,
8
(1.9)
1.2. Fourierova transformácia
kde magnitúdové spektrum počítame s použitím vzt’ahu
|F (u)| = R 2 (u) + I 2 (u)
1
2
,
a fázové spektrum počítame podl’a nasledovného vzt’ahu
ϕ(u) = arctan
I (u)
.
R(u)
1.2.4 Vlastnosti Fourierovej transformácie
V tomto odstavci si stručne, bez dôkazov, uvedieme najdôležitejšie vlastnosti Fourierovej transformácie:
Linearita. Fourierova transformácia patrí medzi lineárne transformácie, linearita je jej základná vlastnost’.
Majme transformačný pár: funkciu f 1 (t ) a k nej príslušné spektrum
F 1 (u). Ďalej majme druhý transformačný pár: funkciu f 2 (t ) a k nej príslušné spektrum F 2 (u).
Takéto páry budeme označovat’ ako:
f 1 (t ) ⇐⇒ F 1 (u),
f 2 (t ) ⇐⇒ F 2 (u).
Ďalej sú dané konštanty K 1 a K 2 .
Potom platí, že
K 1 f 1 (t ) + K 2 f 2 (t ) ⇐⇒ K 1 F 1 (u) + K 2 F 2 (u).
(1.10)
Veta o posunutí v čase. V anglickej literatúre ju nájdeme pod názvom
time shifting.
Majme transformačný pár: funkciu f (t ) a k nej príslušné spektrum
F (u). Ked’ signál f (t ) posunieme v čase o t0 , tak pre jeho spektrum platí
f (t − t0 ) ⇐⇒ e − j 2πuT0 F (u).
(1.11)
Na strane spektra po posunutí signálu v čase pribudol multiplikatívny
člen, spektrum bude vynásobené komplexnou jednotkou e − j 2πuT0 . Magnitúdové spektrum posunutého signálu zostáva teda nezmenené, zmení
sa len fázové spektrum.
9
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Veta o podobnosti. Nazývaná je tiež ako veta o zmene mierky času (time
scaling). Majme transformačný pár: funkciu f (t ), k nej príslušné spektrum F (u) a konštantu a. Potom platí veta
f (at ) ⇐⇒
1
F (u/a).
|a|
(1.12)
„Roztiahnutie“ signálu v časovej osi sa prejaví ako „zúženie“ signálu jeho
spektra, čo je ilustrované na obrázku 1.4
1
0.035
0.03
0.8
0.025
0.6
0.02
0.4
0.015
0.01
0.2
0.005
0
0
−0.2
−0.005
−0.01
−6
−4
−2
0
2
4
6
−0.4
−6
−4
−2
0
2
4
6
−40
−20
0
20
40
60
−200
−100
0
100
200
300
−3
3.5
x 10
1
3
0.8
2.5
0.6
2
0.4
1.5
1
0.2
0.5
0
0
−0.2
−0.5
−1
−60
−40
−20
0
20
40
60
−0.4
−60
−4
8
x 10
1
7
0.8
6
0.6
5
4
0.4
3
0.2
2
1
0
0
−0.2
−1
−2
−300
−200
−100
0
100
200
300
−0.4
−300
Obrázok 1.4: Ilustrácia vety o podobnosti. Na x-ovej osi je premenná x pre
vstupný signál resp. premenná u pre spektrum. Na y-novej osi je amplitúda signálu resp. spektra.
10
1.2. Fourierova transformácia
Veta o symetrii. Vyjadruje dualitu signálu a jeho spektrálneho obrazu.
Majme transformačný pár: funkciu f (t ) a k nej príslušné spektrum F (u).
Potom platí
f (t ) ⇐⇒ F (−u).
(1.13)
Parsevalova teoréma. Parsevalova teoréma hovorí, že energia vstupného signálu f (t ) a energia jeho spektra F (u) sa rovnajú
∞
∞
| f (t )|2 dt =
|F (u)|2 du.
(1.14)
−∞
−∞
Vybrané transformačné páry funkcií. Niektoré funkcie majú špeciálny
význam pre prax, preto si uvedieme tie najdôležitejšie.
Transformačný pár funkcií sinc(t ) ⇐⇒ obdĺžniková funkcia.
me funkciu sinc(t ) nasledovne
sinc(t ) =
1
t =0
sin(t )/t
t > 0.
Definuj-
(1.15)
Spektrum funkcie sinc(t ) bude obdĺžniková funkcia F(u), ako ilustruje
obrázok 1.5.
Obrázok 1.5: Funkcia sinc(t) a jej reálne spektrum.
Obrázok 1.6: Obdĺžniková funkcia
a jej reálne spektrum.
Tieto dva páry funkcií a ich spektier sú vel’mi dôležité pre objasnenie
niektorých javov pri filtrácii obrazu, napr. pri filtrácii tzv. idálnym filtrom
11
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
opísaným v kapitole 1.6. Dôležité je tiež poznamenat’, že funkcia sinc( )
je definovaná pre definičný obor [−∞, ∞], a teda nie je fyzikálne realizovatel’ná.
Gaussova funkcia.
Pre Gaussovu funkciu definovanú ako
2
f (t ) = e −a t ,
(1.16)
môžeme vypočítat’ prostredníctvom Fourierovej transformácie jej Fourierov obraz.
π (−π2 u 2 /a)
F (u) =
e
.
(1.17)
a
Transformačný pár Gaussovej funkcie je ilustrovaný na nasledujúcom obrázku 1.7.
Obrázok 1.7: Gaussova funkcia a jej reálne spektrum.
Fourierovým spektrálnym obrazom Gaussovej funkcie je teda znovu
Gaussova funkcia, pričom samozrejme platí veta o podobnosti. „Širšej“
Gaussovej funkcii ako vstupný signál zodpovedá „užšia“ Gaussova funkcia v spektrálnej oblasti.
1.2.5 Diskrétna Fourierova transformácia (DFT)
Ekvivalentom spojitej Fourierovej transformácie pre spojié signály je Diskrétna Fourierova transformácia (DFT) pre diskrétne signály.
Diskrétna Fourierova transformácia (DFT) je na rozdiel od spojitej
Fourierovej transformácie definovaná iba pre periodické signály.
Prechod od spojitej k diskrétnej Fourierovej transformácii si matematicky môžeme odvodit’ ak budeme predpokladat’, že určitý úsek signálu
x(t) signálu bol vzorkovaním prevedený na diskrétny a tento navzorkovaný úsek sa bude periodicky opakovat’.
12
1.2. Fourierova transformácia
Priama transformácia DFT.
F (u) =
DFT je matematicky vyjadrená vzt’ahom
1 N−1
f (n)e − j 2πun/N ,
N n=0
(1.18)
pre
u = 0, 1, 2, ..., N − 1.
Spätná transformácia IDFT.
sledovne.
f (n) =
Inverzná (spätná) IDFT je definovaná naN−1
F (u)e j 2πun/N ,
(1.19)
u=0
pre
n = 0, 1, 2, ..., N − 1.
1.2.6 DFT ako špeciálny prípad lineárnej transformácie
Postupnost’ vzoriek signálu F s(n) pre n = 0, 1...N − 1, ktorú získame digitalizáciou 1D signálu na konečnom intervale s počtom vzoriek N , si môžeme predstavit’ ako jeden vektor v N -rozmernom vektorovom priestore.
Princíp lineárnej transformácie môžeme vysvetlit’ nasledovne.
• Diskrétny signál F s(n) pre n = 0, 1...N −1, získaný digitalizáciou 1D
signálu na konečnom intervale s počtom vzoriek N , môžeme reprezentovat’ ako jeden vektor v N -rozmernom komplexnom priestore CN (vid’ dodatok C.1) s ortonormálnou bázou Φ0 (vid’ dodatok C.4). (U reálnych signálov je imaginárna zložka signálu automaticky nulová.)
F s(n) ∈ CN .
(1.20)
• Pomocou lineárnej transformácie (napr. Fourierovej) (vid’ dodatok
C.3) môžeme súradnice každého vektora z N -rozmerného vektorového priestoru V1 s ortonormálnou bázou Φ0 transformovat’ do
iných súradníc v N -rozmernom priestore V2 s novou bázou Φ (vid’
dodatok C.4). V našom prípade V 1 = V 2 = CN .
• Spätne môžeme vyjadrit’ pôvodný číslicový signál ako sumu N vážených bázových funkcií bázy Φ (až na násobnú konštantu).
• Tieto váhové koeficienty sú komlexné spektrálne koeficienty získané výpočtom danej lineárnej transformácie.
13
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Obrázok 1.8: Ilustratívny príklad bázových funkcií Φ0 a Φ.
Diskrétne Fourierove bázové funkcie. Pre názornost’ si vizualizujeme
16 kosínusových a 16 sínusových diskrétnych Fourierových bázových
funkcií pre N = 15. Definované sú ako súbor sínusových a kosínusových
diskrétnych funkcií s rôznou uhlovou frekvenciou (vid’ def. v časti 1.2.5).
Obrázok 1.9: Vizualizácia 16 bázových funkcií DFT. Vl’avo sú kosínusové funkcie,
ktoré tvoria reálnu čast’ bázových vektorov, vpravo sú sínusové funkcie, ktoré tvoria imaginárnu čast’ bázových vektorov.
14
1.3. Výpočet diskrétnej Fourierovej transformácie
1.2.7 Dvojrozmerná DFT
Ked’že v centre nášho záujmu je spracovanie digitálneho obrazu, ktorý
je z pohl’adu spracovania signálu diskrétny dvojdimenzionálny signál,
tak potrebujeme definovat’ dvojrozmernú DFT (označovaná tiež ako 2D
DFT).
Základnú definíciu 2D DFT môžeme zapísat’ ako
F (u, v) =
N−1
1 M−1
f (x, y)e − j 2π(ux/M+v y /N) ,
M N x=0 y =0
(1.21)
pre u = 0, 1, 2, ..., M − 1, v = 0, 1, 2, ..., N − 1.
Príslušnú inverznú 2D IDFT definujeme ako
f (x, y) =
M−1
N−1
F (u, v)e j 2π(ux/M+v y /N) ,
(1.22)
u=0 v=0
pre x = 0, 1, 2, ..., M − 1, y = 0, 1, 2, ..., N − 1,
kde
• u, v sú súradnice vo frekvenčnej doméne (spektre),
• x, y sú priestorové súradnice v obraze.
1.3
Výpočet diskrétnej Fourierovej transformácie
Pre výpočet DFT máme viaceré možnosti. Uvedieme tie najdôležitejšie.
1.3.1 Výpočet z definície
Najjednoduchší spôsob, ktorý sa nám pre výpočet DFT ponúka, je dosadenie hodnôt vstupného číslicového signálu priamo do definície 1.18
a postupný výpočet jednotlivých spektrálnych koeficientov.
Výpočtová zložitost’. Pri vyhodnotení výpočtovej zložitosti môžeme abstrahovat’ od určitého počítača a vyhodnotit’ iba najhorší prípad výpočtovej zložitosti, či už časovej alebo pamät’ovej. Potom používame označenie vel’ké písmeno O.
Výpočet DFT z definície má kvadratickú náročnost’ výpočtu O(n 2 ) ,
čo znamená, že počet krokov algoritmu bude v najhoršom prípade úmerný kvadrátu počtu vzoriek.
Takáto kvadratická zložitost’ O(n 2 ) je samozrejme horšia než napr. lineárna zložitost’ O(n) alebo konštantná O(1), ktorá je nezávislá od dĺžky n.
15
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Vzhl’adom ku kvadratickej náročnosti výpočtu O(n 2 ) je výpočet DFT z definície pre aplikácie v rálnom čase prakticky nevhodný. Výpočet DFT z definície používame teda iba výnimočne, prakticky u všetkých softvérových
nástrojov nájdeme podporu rýchlejších metód výpočtu.
1.3.2 Výpočet pomocou maticových operácií
Vzt’ah 1.18 môžeme s pomocou substitúcie W = e 2π i u/N prepísat’ do
maticového tvaru ako
⎛
⎞ ⎛
⎞ ⎛
⎞
1
1
...
1
F0
f0
1
N−1
⎜ F ⎟ ⎜1
⎟ ⎜ f ⎟
W
...
W
⎜ 1 ⎟ ⎜
⎟ ⎜ 1 ⎟
⎜ F ⎟ ⎜1
⎟
2
2N−2 ⎟ ⎜
W
.
.
.
W
⎜ 2 ⎟=⎜
⎟ . ⎜ f2 ⎟ .
(1.23)
⎜ . ⎟ ⎜.
⎜
⎟
⎟
..
..
⎜ . ⎟ ⎜.
⎟ ⎜ .. ⎟
⎝ . ⎠ ⎝.
⎠ ⎝ . ⎠
.
.
2
F (N−1)
f (N−1)
1 W N−1 . . . W (N−1)
W
Maticový zápis výpočtu DFT skrátene napíšeme ako
F = W.f,
(1.24)
kde
f je stĺpcový vektor vstupného signálu,
F je stĺpcový vektor jeho Fourierovho spektra a
W je Fourierova transformačná matica.
Výpočet pomocou uvedeného maticovéha násobenia má rovnakú výpočtovú náročnost’ ako výpočet z definície: O(n 2 ). Napriek rovnakej teoretickej náročnosti sa dá očakávat’, že skutočný potrebný čas výpočtu
môže byt’ kratší, a to v prípade, ked’ sú v použitom softvérovom nástroji
už nachystané optimalizované funkcie pre maticové násobenie.
Maticový zápis pre výpočet 2D DFT. Výpočet dvojrozmenrnej 2D DFT
zapíšeme pomocou maticových operácií nasledovne.
F = W.f.WT ,
(1.25)
pričom
f je maticová reprezentácia dvojdimenzionálneho signálu, v našom prípade obrazu,
WT je transponovaná matica W,
W je transformačná matica Fourierovej transformácie.
16
1.3. Výpočet diskrétnej Fourierovej transformácie
1.3.3 Rýchla Fourierova transformácia (FFT)
V anglickej literatúre ju nájdeme pod názvom Fast Fourier Transform,
skrátene FFT.
Dnes existuje značný počet prístupov, ako optimalizovt’ výpočtovú
náročnost’ DFT a teda urýchlit’ jej výpočet. Uvedieme pôvodný CooleyovTukeyov algoritmus nazvaný podl’a jeho autorov, publikovaný v roku 1965
[CT65]. Spolu s nástupom špeciálnych čipov pre spracovanie signálu (Digital Signal Processor DSP) v 70. a 80. rokoch 20. storočia priniesol algoritmus FFT hotovú „revolúciu“ v spracovaní signálu a otvoril možnost’
spracovania číslicového signálu v spektrálnej oblasti v reálnom čase.
Pokúsime sa vo vel’mi skrátenej forme načrtnút’ iba jeho podstatu
a postup výpočtu, podrobný výklad by bol nad rámec tejto knihy.
Základný koncept FFT. Základný princíp FFT pre vektory s dĺžkou N
s l’ubovol’ným základom (mixed-radix FFT), ktorý predstavili už autori
Danielson a Lanczos v roku 1942, je faktorizácia.
Ak N môže byt’ rozložené na súčin n f prirodzených čísiel,
N = f 1 f 2 ... f N f ,
(1.26)
tak výpočet DFT môže byt’ rozdelený na výpočet viacerých DFT pre každý
činitel’ zvlášt’. Presnejšie povedané, výpočet DFT s dĺžkou N môže byt’
rozdelený na
(N / f 1 ) výpočtov DFT s dĺžkou f 1 ,
(N / f 2 ) výpočtov DFT s dĺžkou f 2 ,
...
(N / f n f ) výpočtov DFTs s dĺžkou f n f .
Celkový počet operácií pre tieto suboperácie potom bude: O(N ( f 1 + f 2 +
...+ f n f )). V prípade, že činitele N sú malé celé čísla, tak výpočtová náročnost’ bude podstatne menšia ako O(N 2 ).
Príklad.
Najskôr začneme s výpočtom DFT s celkovou dĺžkou,
ha
=
N−1
g b WNab ,
(1.27)
b=0
kde
WN = exp(−2πi /N ).
17
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Potom rozdelíme túto sumu na párne a nepárne členy podl’a ich pozície
vo vektore.
ha
=
N/2−1
b=0
g 2b WNa(2b) +
N/2−1
b=0
g 2b+1WNa(2b+1) .
(1.28)
Týmto konvertujeme DFT s dĺžkou N do dvoch výpočtov DFT s dĺžkou
N /2,
ha =
N/2−1
b=0
ab
g 2b W(N/2)
+ WNa
N/2−1
b=0
ab
g 2b+1W(N/2)
.
(1.29)
Prvý člen predstavuje výpočet DFT elementov na párnych pozíciách g .
Druhý člen predstavuje výpočet prvkov na nepárnych pozíciách g , prednásobený exponenciálnym činitel’om WNk .
ab
ab
DFT(h) = W(N/2)
DFT(g pár ne ) + W(N/2)
DFT(g nepár ne ).
(1.30)
Obrázok 1.10: Rozdelenie DFT s dĺžkou N na dve DFT s dĺžkou N/2.
Rozdelením DFT na párnu a nepárnu čast’ sme zredukovali počet operácií z N 2 (pre výpočet DFT s dĺžkou N ) na 2(N /2)2 (pre dva výpočty DFT,
každý pre vektor s dĺžkou N /2).
Môžeme pokračovat’ v takomto rozdel’ovaní d’alej rekurzívne log2 N
krát ( tj. postupujeme k DFT o dĺžkach N /4 ,N /8 , ... až je dĺžka = 1), teda
až pokial’ celý výpočet DFT nie je zredukovaný na výpočet DFT jedného
prvku, čo je operácia s nulovou výpočtovou náročnost’ou.
18
1.3. Výpočet diskrétnej Fourierovej transformácie
Výpočtová náročnost’ FFT. Ked’že N je mocninou čísla 2, výpočtová
náročnost’ DFT dĺžky N = 2m môže byt’ znížená na mN /2 DFT výpočtov
s dĺžkou 2, alebo O(N log 2 N ) operácií.
Výpočtová náročnost’ v tomto prípade už nie je kvadratická, ale logaritmická, čiže O(N log2 N ).
Motýlikový diagram.
počtu FFT.
Je základným prvkom signálového diagramu vý-
Obrázok 1.11: Motýlikový diagram FFT.
Exponenciálne členy WNa sú v anglickej literatúre nazývané tiež ako
twiddle factors. Diagram, ktorý znázorňuje výpočet dvoch výstupných
prvkov ako kombináciu dvoch vstupných prvkov pomocou sčítania, odčítania a násobenia exponenciálnym členom, sa nazýva motýlikový diagram (vid’ obr. 1.11 ). Je základným prvkom výpočtu FFT.
Diagram výpočtu FFT. Nasledujúci diagram (vid’ obr. 1.12) znázorňuje
signálový diagram: príklad výpočtu FFT pre N = 16. Výpočet algoritmu
prebieha rekurzívne v 4 stupňoch.
Obrázok 1.12: Graf výpočtu FFT pre vektor s dĺžkou 8.
19
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Obrázok 1.13: FFT – decimácia vo frekvencii.
Obrázok 1.14: FFT – decimácia v čase.
Decimácia vo frekvencii a decimácia v čase. V odbornej literatúre nachádzame dva typy algoritmu FFT: decimácia vo frekvencii a decimácia
20
1.3. Výpočet diskrétnej Fourierovej transformácie
v čase. Ich zásadný rozdiel je zrejmý z nasledovných znázornených signálových diagramov výpočtu na obrázkoch 1.13 a 1.14.
Bitovo invertované poradie prvkov. Poradie prvkov napíšeme ako bitový ret’azec. Jeho bitovo invertované poradové číslo potom získame tak,
že tento bitový ret’azec interpretujeme opačným smerom zápisu, čiže odzadu smerom dopredu.
V signálovom diagrame FFT je poradie prvkov bitovo invertované, a to
na vstupe alebo na výstupe, podl’a toho, či sa jedná o FFT typu decimácia
v čase alebo decimácia vo frekvencii. V algoritme decimácie vo frekvencii
sú prvky preusporiadané bitovou inverziou na vstupe a v algoritme decimácie v čase sú naopak preusporiadané bitovou inverziou na výstupe.
Optimalizácia výpočtu FFT. Algoritmus výpočtu FFT sa nechá paralelizovat’, je vhodný na rýchle hardvérové implementácie na špeciálnych
čipoch i na výpočet pomocou grafického procesora GPU.
Na záver si pripomeňme, že algoritmus FFT (Cooley–Tukey) je pre
vektory s dĺžkou N = 2M .
1.3.4 Doplnenie nulami
Metódu doplnenia nulami nájdeme v anglickej literatúre pod názvom
zero padding. Používajú sa dva základné prístupy:
• doplnenie nulami v spektrálnej oblasti,
• doplnenie nulami v priestorovej oblasti.
Doplnenie nulami v spektrálnej oblasti môžeme použit’ pre zvýšenie rozlíšenia vstupného obrazu. Novozískané hodnoty sú vlastne interpolované
existujúce hodnoty obrazu, neobsahujú novú informáciu.
Doplnenie nulami v priestorovej oblasti síce tiež podobne zvýši rozlíšenie, v tomto prípade rozlíšenie v spektrálnej oblasti, ale najčastejší
dôvod použitia je ten, že štandartne používané algoritmy výpočtu FFT
(napr. algoritmus Cooley–Tukey popísaný v odstavci 1.3.3 ) predpokladajú vstupný obraz, ktorého vel’kost je práve mocnina čísla 2. V prípade,
že náš vstupný obraz túto podmienku nespĺňa, čo je v praxi vel’mi pravdepodobné, tak výhodne môžeme použit’ metódu doplnenia nulami. Postupujeme jednoducho.
• Vytvoríme si obraz požadovanej vel’kosti (napr. s rozmermi, ktoré
môžeme vyjadrit’ ako mocninu čísla 2). Tento je samozrejme väčší
než náš vstupný obraz.
21
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
• Skopírujeme doňho pôvodný vstupný obraz a chýbajúce hodnoty
doplníme nulami.
Takto vytvorený obraz potom použijeme ako vstup pre FFT.
Doplnením nulami zväčšíme vstupný obraz a tiež zvýšime jeho rozlíšenie v spektrálnej oblasti. Nezískame však však žiadnu novú, detailnejšiu informáciu, jemnejšie rozlíšenie v spektre je vlastne výsledkom interpolácie. Musíme si tiež byt’ vedomí skutočnosti, že týmto postupom
vzniknú v signáli obrazu body nespojitosti, ktoré môžu negatívne ovplyvnit’ očakávané výsledky spektrálnho spracovania.
1.4
Príklady Fourierovej transformácie obrazu
Uvedieme si niekol’ko príkladov transformačných párov pozostávajúcich
z príkladu testovacieho obrazu a jeho magnitúdového spektra. Ciel’om
je budovanie prvej intuitívnej predstavy ako správne interpretovat’ informáciu obsiahnutú v spektre obrazu.
Na obrázku 1.15 je testovací obraz, ktorý je generovaný ako periodická
textúra vertikálneho smeru. Jeho magnitúdové spektrum na obrázku 1.16
je i napriek logaritmickému merítku skoro celé čierne. Pozorný čitatel’
si všimne v tomto spektre dve maximá horizontálne symetrické poblíž
stredu. Táto poloha indikuje, že ide o vertikálne periodické štruktúry s nízkou frekvencoiu, čo odpovedá vstupnému obrazu. Pre lepšiu názornost’
je na obrázku 1.17 znázornený horizontálny rez týmto obrazom kde sú
dve symetrické maximá zretel’ne viditel’né. Obrázky 1.18 znázorňujú podobný príklad, ibaže periodická štruktúra obrazu je vodorovná a maximá
v spektre sú vertikálne symetrické.
Príklady na obrázkoch 1.20 až 1.24 sú analogické k predchádzajúcim,
ibaže frekvencia periodickej štruktúry vo vstupných obrazoch (horizontálnom i vertikálnom) je vyššia. Dôležité je všimnút’ si, že poloha maxím
v obidvoch prípadoch sa posunula od stredu smerom ku krajom, ked’že
ide o vyššiu frekvenciu než v predchádzajúcom prípade.
Na vizualizácii vstupných obrazov na obrázkoch 1.15 a 1.23 je viditel’ný jav, ktorý nastal porušením Nyquistovho kritéria pri vizualizácii.
Tento jav podvzorkovania nazývame ako tzv. Moire efekt. Pre výpočet však
bol použitý vstupný obraz s vysokým rozlíšením, ktorý nebol zat’ažený
chybou podvzorkovania ako obrazy vizualizované.
Na obrázkoch 1.27 až 1.30 je v spektre viditel’ný vplyv funkcie sinc( ).
22
1.4. Príklady Fourierovej transformácie obrazu
Obrázok
1.15:
Nízkofrekvenčnou
vertikálnou periodickou textúrou.
Obrázok 1.16: Magnitúdové
spektrum v logaritmickej škále.
18
17
16
15
14
13
12
11
10
0
100
200
300
400
500
600
Obrázok 1.17: Rez magnitúdovým spektrom v logaritmickej
škále.
Obrázok 1.18: Obraz s nízkofrekvenčnou horizontálnou periodickou textúrou.
Obrázok 1.19: Magnitúdové
spektrum v logaritmickej škále.
23
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Obrázok 1.20: Príklad vysokofrekvenčnej vertikálnej periodickej textúry so zväčšeným
detailom.
Obrázok 1.21: Magnitúdové
spektrum
vysokofrekvenčnej
vertikálnej periodickej textúry
v logaritmickej škále.
18
17
16
15
14
13
12
11
0
100
200
300
400
500
600
Obrázok 1.22: Rez magnitúdovým spektrom v logaritmickej
škále.
Obrázok 1.23: Príklad vysokofrekvenčnej horizontálnej periodickej textúry so zväčšeným
detailom.
24
Obrázok 1.24: Magnitúdové
spektrum
vysokofrekvenčnej horizontálnej periodickej
textúry v logaritmickej škále.
1.4. Príklady Fourierovej transformácie obrazu
Obrázok 1.25: Obraz s kruhovým
objektom s priemerom 15 pixelov.
Obrázok 1.26: Magnitúdové spektrum v logaritmickej škále.
Obrázok 1.27: Obraz s kruhovým
objektom s priemerom 75 pixelov.
Obrázok 1.28: Magnitúdové spektrum v logaritmickej škále.
5
10
4
8
3
6
2
1
4
0
2
−1
0
−2
−3
0
100
200
300
400
500
600
Obrázok 1.29: Rez magnitúdovým
spektrom z obr. 1.26 v logaritmickej
škále.
−2
0
100
200
300
400
500
600
Obrázok 1.30: Rez magnitúdovým
spektrom z obr. 1.28 v logaritmickej
škále.
25
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Na uvedených príkladoch teda 1.15 až 1.24 vidíme, že magnitúdové
spektrum je vždy symetrické, odpovedajúcu odozvu v spektre nachádzame na transponovanej pozícii. Frekvencia zobrazená v spektre je v strede
nulová a ku kraju obrazu sa frekvencia zvyšuje. Najvyššia frekvencia sa
rovná polovici vzorkovacej frekvencie.
1.5
Kosínusová transformácia
1.5.1 Diskrétna kosínusová transformácia
Bázové funkcie príslušné Diskrétnej kosínusovej transformácie (DCT) sú,
na rozdiel od Fourierovej transformácie, definované iba pomocou kosínusovej funkcie, a to tak, aby báza bola úplná. To znamená, že každý vektor reálnych čísiel o rovnakej dimenzii ako dimenzia danej bázy DCT, je
možné vyjadrit’ ako lineárnu kombináciu bázových vektorov DCT. Koeficienty, ktoré vypočítame prostredníctvom DCT sú na rozdiel od DFT
iba z oboru reálnych čísiel.
V praxi sa stretávame s viacerými definíciami kosínusovej transformácie, označenými spravidla ako DCT-I, DCT-II, DCT-III, DCT-IV. Všetky
definujú úplnú bázu pomocou kosínusových funkcií. V spracovaní obrazu sa používa predovšetkým DCT-II definovaná nasledovne.
F (u, v) =
N−1
2y + 1 2x + 1 2C (u)C (v) N−1
uπ cos
vπ ,
f (x, y) cos
N
2N
2N
x=0 y =0
(1.31)
kde
C (k) =
1
2
k = 0,
1
inak.
DCT-II môžeme definovat’ pomocou maticovéha zápisu nasledovne
T
F = CN N f CN
N,
(1.32)
a inverzná DCT-II je definovaná
T
f = CN
N F CN N ,
kde
26
⎧
⎨ 1
l = 0,
C N N (k, l) = N
⎩ 2 cos a 2k+1 lπ inak.
N
2N
(1.33)
1.6. Filtrácia obrazu vo frekvenčnej oblasti
Obrázok 1.31: Vizualizácia bázových funkcií v tvare matíc vel’kosti 8 × 8 pre 2dimenzionálnu DCT-II.
Vel’mi názorné je zobrazenie dvojdimenzionálnych bázových funkcií
diskrétnej kosínusovej transformácie (vid’ obr. 1.31).
Použitie diskrétnej kosínusovej transformácie. Diskrétna kosínusová
transformácia (DCT) má pre fotorealistické obrazy vel’mi dobré dekorelačné vlastnosti a preto sa používa predovšetkým na kompresiu dát.
Konkrétne napr. v norme pre kompresiu obrazu JPEG sa využíva DCT na
transformovanie neprekrývajúcich sa regiónov obrazu o vel’kosti 8× 8 pixelov, pričom získané spektrálne koeficienty sú zaokrúhl’ované podl’a ich
relevancie pre l’udské vizuálne vnímanie.
1.6
Filtrácia obrazu vo frekvenčnej oblasti
Filtrácia obrazu patrí medzi základmé nástroje pre úpravu a vylepšenie
kvality číslicového obrazu.
Základná operácia filtrácie vo frekvenčnej oblasti je operácia násobenia, presnejšie povedané, v prípade obrazu použijeme násobenie dvoch
matíc po prvkoch.
Na nasledujúcom obrázku 1.32 je schématicky znázornený základný
koncept filtrácie vo frekvenčnej doméne.
27
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Obrázok 1.32: Filtrácia v spektrálnej oblasti.
Prvá matica je spektrum vstupného obrazu, ktoré získame výpočtom
dvojdimenzionálnej diskrétnej Fourierovej transformácie zo vstupného
obrazu. Druhá matica je spektrum filtra, ktorý chceme pre filtráciu použit’. Spektrum požadovaného filtra je nazývané tiež ako prenosová funkcia filtra. Spektrum požadovaného filtra môžeme navrhnút’ priamo vo
frekvenčnej oblasti, alebo si ho môžeme odvodit’ z filtra daného v priestorovej oblasti. Obidve matice, spektrum obrazu i spektrum filtra, musia
mat’ samozrejme rovnakú vel’kost’.
Filter typu dolná a horná priepust’. Celý postup si ukážeme na príklade. Najskôr si však povieme, aké budú naše intuitívne očakávania. Ktoré zmeny filtrácia prinesie?
Máme vstupný obraz, v našom príklade je na obraze vták na skale.
Skala je pomerne texturovaná. Príspevok takejto textúry, jemných hrán
ako i vel’mi malých prvkov v obraze, bude v spektre predovšetkým vo
vyšších frekvenciách. Nízke frekvencie sú spekrálnym obrazom väčších
plôch v obraze.
28
1.6. Filtrácia obrazu vo frekvenčnej oblasti
Ak chceme odstránit’ drobné detaily z obrazu, ako napr. textúra na
skale, tak odfiltrujeme vyššie frekvencie. Tým získame vyhladený a rozmazaný obraz bez jemných detailov. Na odfiltrovanie vysokých frekvencií
a zachovanie nízkych frekvencií je vhodný filter, ktorý nazývame dolná
priepust’ (low pass – LP filter).
Naopak, ak chceme získat’ iba obraz s hranami a textúrou a zachované malé detaily, tak použijeme opačný filter, odfiltrujeme nízke frekvencie, použijeme tzv. hornú priepust’ (high pass – HP filter).
Výpočet Fourierovho spektra vstupného obrazu. Najskôr transformujeme vstupný obraz do spektrálnej oblasti. Aby boli hodnoty spektra lepšie viditel’né, použijeme zaužívanú konvenciu pre vizualizáciu magnitúdového spektra v logaritmickej mierke.
Obrázok 1.33: Vstupný
šedotónový obraz –
vták na skale.
Obrázok
1.34:
Magnitúdové
spektrum (log škálované).
Obrázok
1.35:
Posunuté
magnit.
spektrum (log škálované).
Magnitúdové spektrum po výpočte dostávame tak, ako ho vidíme na
obrázku 1.34. Nízke frekvencie sú v rohoch obrazu a v strede spektra sú
vysoké frekvencie, čo nezodpovedá zvyklostiam zobrazovania spektra.
Preto v d’alšom kroku prehodíme jednotlivé kvadranty Fourierovho spektra tak, aby nízke frekvencie boli v strede obrazu spektra. Na centrálnej
pozícii v strede spektra je potom DC komponent, ktorý zodpovedá priemernej hodnote jasu obrazu. DC komponent je spravidla dobre viditel’ný.
Od stredu spektra ku krajom sú zobrazené stále vyššie frekvencie.
Poznámka: Z teoretického pohl’adu, uvedené preorganizovanie kvadrantov zodpovedá takému DFT spektru, ktoré by sme vypočítali pre vstup29
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
ný signál na intervale x ∈ ⟨−M/2, M/2 − 1⟩ , y ∈ ⟨−N /2, N /2 − 1⟩, kde x, y
sú priestorové súradnice a M, N sú rozmery spracovávaného obrazu, ked’že vstupný signál interpretujeme ako periodický signál, ktorý získame
opakovaním spracovávaného vstupného signálu.
Dolnopriepustná filtrácia. V nasledujúcom príklade si ukážeme dolnopriepustnú filtráciu, a to s použitím dvoch rôznych LP filtrov.
• ideálny LP filter
• Gaussov LP filter
Obrázok 1.36: Ideálny
LP filter vo frekvenčnej
oblasti.
Obrázok 1.37: Gaussov
LP filter vo frekvenčnej
oblasti.
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0
0.1
0
500
1000
1500
Obrázok 1.38: Rez ideálnym LP filtrom.
0
0
500
1000
1500
Obrázok 1.39: Rez
Gaussovým LP filtrom.
Hodnoty filtra sa pohybujú v rozsahu ⟨0, 1⟩ reálnych čísiel, operáciu
násobenia teda musíme tiež počítat’ v obore reálnych čísiel. Nulové hodnoty filtra majú za následok úplné odstránenie príslušného spektrálneho
30
1.6. Filtrácia obrazu vo frekvenčnej oblasti
komponentu, jednotková hodnota naopak zachová po vynásobení príslušnú spektrálnu zložku v pôvodnej hodnote. Ostatné hodnoty z intervalu (0, 1) lineárne váhujú príslušnú spektrálnú zložku.
Ideálny filter. Ideálny filter má teoreticky nekonečne strmý prechod
medzi priepustnou a nepriepustnou čast’ou v spektre filtra, čiže nežiadúce frekvenčné komponenty môžu byt’ selektívne úplne vynulované. Aj
ked’ z pohl’adu návrhu sa javí skutočne ako ideálny (odtial’ názov), a to
práve pre možnost’ vel’mi selektívnej filtrácie bez prechodových oblastí,
tak v skutočnosti má jednu nepríjemnú vlastnost’. Táto vlastnost’ spôsobuje efekt rozvlnenia (v anglickej literatúre označovaný ako ringing efekt)
a jej príčinou je jav, ktorý nazývame Gibbsov jav. Vysvetlíme ho v odstavci 1.6.
Gaussov filter. Na rozdiel od ideálneho filtra, Gaussov filter má plynulý prechod medzi priepustnou a nepriepustnou čast’ou spektra, pričom hodnoty filtra sú dané dvojrozmernou Gaussovou funkciou.
Násobenie v spektre a spätná Fourierova transformácia. Na nasledujúcom obrázku vl’avo je vizualizované spektrum po vynásobení ideálnym
filtrom, ktorý použijeme pre spätnú 2D DFT a vpravo vidíme už výsledok
po spätnej 2D DFT filtrovaného spektra. Filtrovaný obraz ideálnym filtrom (vid’ obrázok 1.41) je podl’a očakávania rozmazaný, detaily textúr
na skale boli odfiltrované. Je tiež viditel’ný silne rušivý efekt rozvlnenia.
Naproti tomu obraz filtrovaný Gaussovým LP filtrom (vid’ obrázok 1.43)
je tiež rozmazaný ako sme predpokladali, nadôvažok nie je na ňom viditel’ný žiaden rušivý efekt.
31
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Obrázok
1.40:
Spektrum
filtrované
ideálnym LP filtrom.
Obrázok 1.41: Obraz
po filtrácii ideálnym LP
filtrom.
Obrázok
1.42:
Spektrum
filtrované
Gaussovým LP filtrom.
Obrázok 1.43: Obraz
po filtrácii Gaussovým
LP filtrom.
Hornopriepustná filtrácia. Ďalej si ukážeme filtráciu hornopriepustným filtrom.
Pre tvorbu HP filtra vo frekvenčnej oblasti môžeme použit’ jednoduchý výpočet
f H P f il t er (u, v) = 1, 0 − f LP f il t er (u, v).
Jeho ciel’om je prepustit’ práve tie frekvenčné zložky, ktoré LP filter zadržal a naopak.
32
1.6. Filtrácia obrazu vo frekvenčnej oblasti
Obrázok 1.44: Ideálny
HP filter vo frekvenčnej
oblasti.
Obrázok 1.45: Gaussov
HP filter vo frekvenčnej
oblasti.
Obrázok
1.46:
Spektrum
filtrované
ideálnym HP filtrom.
Obrázok 1.47: Obraz
po filtrácii ideálnym
HP filtrom.
33
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Obrázok
1.48:
Spektrum
filtrované
Gaussovým HP filtrom.
Obrázok 1.49: Obraz
po filtrácii Gaussovým
HP filtrom.
Obraz, ktorý sme získali po filtrácii hornopriepustným filtrom obsahuje iba vysokofrekvenčné zložky obrazu, je zretel’ne vidiet’ textúra na
skale a kontúry vtáka. (Výsledný obraz je zobrazený v absolútnej hodnote
pre lepšiu vizualizáciu výsledného hranového obrazu.) Opät’ pozorujeme
rušivý efekt rozvlnenia v obraz filtrovaný ideálnym filtrom (vid’ detail na
obrázku 1.50) na rozdiel od Gaussovho, kde nevidíme žiaden rušivý efekt.
Efekt rozvlnenia u ideálneho filtra. V odstavci 1.2.4 sme si ukázali,
ze obdĺžniková funkcia má spektrum dané funkciou sinc( ) a naopak. Ideálny filter má chrakter obdĺžnikovej funkcie, jeho reprezentácia v časovej doméne alebo v priestorovej doméne (obraz) je teda práve funkcia
sinc( ). V kapitole 3 za dozvieme, že podl’a konvolučnej teorémy je násobeniu v spektrálnej oblasti ekvivalentná operácia konvolúcie v časovej
alebo priestorovej oblasti.
Obrázok 1.50: Detail z obr. 1.47.
34
Obrázok 1.51: Detail z obr. 1.49.
1.6. Filtrácia obrazu vo frekvenčnej oblasti
Vysvetlenie pre efekt rozvlnenia (ringing efekt) je teda nasledovné:
násobenie ideálnym filtrom v spektre je ekvivalentné konvolúcii obrazu
s funkciou typu sinc( ), ktorá zanechá efekt rozvlnenia. Na obrázkoch 1.50
a 1.51 je v detaile tento efekt dobre pozorovatel’ný.
1.6.1 Filtrácia vybratých frekven čných oblastí
Filtrácia typu dolná alebo horná prieput’ filtruje vysoké, resp. nízke frekvencie z obrazového signálu. Môžeme však filtrovat’ i podl’a iných kritérií. Filtrácia vo frekvenčnej oblasti sa nám ponúka ako výborný nástroj,
pokial’ vieme v spektre loklizovat’ príspevok toho signálu, ktorý chceme
odstránit’.
Uvedieme príklad.
Ako vstupný obraz použijeme jednu z prvých snímok, ktoré boli v digitalizovanej forme prenesené cez Atlantik v 20. rokoch minulého storočia.
(Vid’ obr. 1.52.) Na d’alšom obrázku 1.54 je znázornené spektrum, v ktorom vidíme niekol’ko lokálnych maxím. Tieto selektívne odstránime.
Vybraté lokálne maximá takpovediac „vymažeme“ zo spektra násobením špeciálnym filtrom – viacnásobne použijeme Gaussov filter centrovaný na príslušné maximum. Takto filtrované spektrum vidíme na obrázku 1.55. Po spätnej filtrácii získame obraz znázornený na obrázku 1.56.
Pri pohl’ade na vstupný a výstupný obraz vidíme, že periodické rušenie bolo touto filtráciou do značnej miery odstránené.
Obrázok 1.52: Vstupný obraz.
Obrázok 1.53: Detail.
35
1. S PRACOVANIE OBRAZU VO FREKVEN ČNEJ OBLASTI
Obrázok 1.54: Spektrum vstupného
obrazu.
Obrázok 1.56: Výstupný obraz.
Obrázok 1.55: Selektívne filtrované
spektrum.
Obrázok 1.57: Detail.
V tejto kapitole sme si ukázali základný koncept filtrácie v spektrálnej
oblasti. Na konkrétnom príklade je filtrácia ilustrovaná s použitím najzákladnejších typov filtrov, s ideálnym filtrom a Gaussovým filtrom. Každý
z nich je ukázaný ako LP a HP filter. Taktiež sme ukázali príklad filtrácie
vo frekvečnej oblasti cieleným odfiltrovaním niekol’kých vybratých oblastí v spektre.
V d’alšej kapitole sa budeme venovat’ inému modelu filtrácie – filtrácii
priamo v priestorovej doméne.
36
K APITOLA
2
Spracovanie obrazu
v priestorovej oblasti
Pre lineárnu filtráciu obrazu môžeme použit’ manipuláciu hodnôt obrazovej funkcie priamo v priestorovej doméne. Hovoríme potom o lineárnej
filtrácii v priestorovej oblasti. Základný matematický nástroj pre lineárnu
filtráciu je operácia konvolúcia, ktorej sa budeme venovat’ v d’alších odstavcoch.
2.1
Diskrétna konvolúcia
Definíciu spojitej konvolúcie neuvádzame. (V prípade záujmu odkážeme
čitatel’a na výbornú literatúru [OS75].) Ked’že pracujeme s diskrétnymi
funkciami, ktoré používame pre reprezentáciu číslicového signálu, tak
pre ich spracovanie potrebujeme konvolúciu v diskrétnej forme.
Diskrétnu konvolúciu dvoch kauzálnych diskrétnych funkcií definujeme nasledovne.
Sú dané funkcie f = ( f 0 , . . . , f N−1 )T ∈ CN , h = (h0 , . . . , h M−1 )T ∈ CN potom ich diskrétna konvolúcia je vektor g ∈ CM+N−1 pre členy ktorého
platí
N−1
g (x) =
f (m)h(x − m),
(2.1)
m=0
pre x = 0, . . . , M + N − 2.
Pre spracovanie obrazu je potrebná konvolúcia definovaná pre funkcie dvoch premenných, ktorú si vysvetlíme podrobnejšie v d’alšom odstavci.
38
2.2. Výpočet konvolúcie
2.1.1 Diskrétna 2D konvolúcia
Diskrétnu konvolúciu o dvoch premenných zapíšeme nasledovne
g (x, y) =
M−1
N−1
f (m, n)h(x − m, y − n).
(2.2)
m=0 n=0
Pre skrátený zápis operácie konvolúcie používame znak „hviezdička“
f (x, y) ∗ h(x, y).
(2.3)
Funkcia f (x, y) je funkcia obrazu, ktorý ideme filtrovat’, h(x, y) je tzv. filtračné jadro, nazývané tiež filtračná maska alebo konvolučná maska.
2.1.2 Vlastnosti konvolúcie
Komutatívnost’. Operácia konvolúcia je komutatívna, čo môžeme vyjardrit’ nasledovný vzt’ahom
f (x) ∗ h(x) = h(x) ∗ f (x).
(2.4)
Vzt’ah medzi konvolúciou a koreláciou. Pojem lineárnej filtrácie obrazu v priestore sa v literatúre používa niekedy tiež pre výpočet filtrácie
prostredníctvom korelácie (značená ◦). Matematicky môžeme vzt’ah medzi koreláciou a konvolúciou vyjadrit’ nasledovne
f (x) ∗ h(−x) = f (x) ◦ h(x).
(2.5)
Pri lineárnej filtrácii obrazu to znamená, že použitá filtračná maska
pre výpočet konvolúciou je transponovaná matica k matici, ktorú by sme
použili na rovnakú filtráciu obrazu prostredníctvom korelácie.
2.2
Výpočet konvolúcie
Pre výpočet konvolúcie používame postup výpočtu daný definíciou.
Implementácia operácie konvolúcie, ako kl’účovej funkcie spracovania obrazu, je však už desat’ročia v centre záujmu expertov a dnes máme
k dispozícii vysoko optimalizované implementácie, napr. pre Intel procesory v knižnici Intel Integrated Performance Primitives (IPP), ktorú používajú Matlab, OpenCV a d’alšie softvérové nástroje pre spracovanie obrazu.
Filtračné jadro spravidla definujeme tak, aby jeho vel’kost’ bola nepárna. Napr. 3 × 3, 5 × 5 ... 15 × 15 ... V tomto prípade je stredová pozícia
39
2. S PRACOVANIE OBRAZU V PRIESTOROVEJ OBLASTI
pixela, na ktorú zapíšeme výslednú hodnotu, jednoznačne daná. Ak zvolíme inú pozíciu, tak vstupný a výstupný obraz budú voči sebe, okrem
zmeny danej filtráciou, aj vzájomne posunuté. (Môže íst’ samozrejme aj
o zámer.)
2.2.1 Znázornenie výpo čtu konvolúcie
Príklad. Názorne si ukážeme výpočet jedného prvku konvolvovaného
obrazu (vid’ 2.1). Máme príklad matice obrazu znázornený čiernou a konvolučné jadro vel’kosti 3 × 3 znázornené červenou farbou.
Obrázok 2.1: Príklad výpočtu konvolúcie. f (2,4) = 13.0,3+25.0,5+24.0,3+19.0, 5+
26.1.0 + 20.0,5 + 24.0, 3 + 25.0,5 + 13.0, 3 = 92.7
Samotný postup výpočtu je daný definíciou 2.1. Jednoducho povedané, pre každú posunutú pozíciu konvolučného jadra počítame sumu
súčinov hodnoty konvolučného jadra a príslušného pixelu obrazu.
40
2.3. Najdôležitejšie konvolučné masky
Okraj obrazu. Je zrejmé, že výpočet hodnôt konvolúcie na okraji obrazu musíme riešit’ zvláštnym spôsobom. V praxi sa používa niekol’ko
stratégií.
• Doplnenie chýbajúcich hodnôt pre výpočet konvolúcie nulovými
hodnotami, alebo inou konštantou.
• Zrkadlenie. Chýbajúce hodnoty sa doplnia zrkadlovo rovnaké ku
hodnotám pixelov na kraji obrazu.
• Zmenšenie výstupného obrazu. Tento postup je z programátorského hl’adiska najmenej vhodný, hlavne pri viacnásobnom sekvenčnom použití filtrácie. Vel’kost’ obrazu je potom rôzna v rôznych štádiách spracovania, čo musíme zvlášt’ zohl’adnit’ pri výpočte.
Spravidla použijeme uvedený prvý alebo druhý spôsob, avšak musíme
si byt’ vedomí, že okraje filtrovaného obrazu (podl’a vel’kosti konvolučného jadra) sú pre exaktné vyhodnotenie teoreticky nevhodné. V praxi to
zväčša problém nespôsobuje, ked’že vel’kost’ filtra sa volí pokial’ možno
malá i z dôvodu výpočtovej náročnosti.
Zisk filtra. Pokial’ nie je našim zámerom obraz pri filtrovaní konvolúciou zároveň zosvetlit’ alebo stmavit’, tak zisk filtra (angl. gain) musí byt’
rovný jednej. Filter v tomto prípade navrhneme tak, aby súčet všetkých
hodnôt konvolučného jadra bol rovný jednej.
2.3
Najdôležitejšie konvolučné masky
Filtráciu konvolúciou používame predovšetkým vtedy, ked’ potrebujeme
obraz vyhladit’, rozmazat’ hrany, odstránit’ šum alebo ak chceme získat’
hranový obraz. Ako už vieme, v prvom prípade realizujeme filter dolnopásmová priepust’, v druhom prípade naopak filter hornopásmová priepust’. Dôležitý je samozrejme vhodný návrh konvolučnej masky. Konvolučnú masku si môžeme aj sami navrhnút’ alebo odvodit’, v tejto kapitole d’alej uvedieme príklady najznámejších, často používaných konvolučných masiek.
2.3.1 Vyhladzovacie filtre
Medzi najznámejšie vyhladzovacie filtre patria priemerovací filter a Gaussov filter.
41
2. S PRACOVANIE OBRAZU V PRIESTOROVEJ OBLASTI
Priemerovací filter. Priemerovací filter má členy filtračného jadra definované tak, aby výsledkom konvolúcie bol vždy aritmetický priemer okolia bodu daného vel’kost’ou použitého filtračného jadra.
Príklad filtračného jadra priemerovacieho filtra vel’kosti 7 × 7 je
⎡
1
⎢1
⎢
⎢1
1 ⎢
⎢
⎢1
49 ⎢
⎢1
⎢
⎣1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
Obrázok 2.2: Vstupný obraz – detail
nohy vtáka.
1
1
1
1
1
1
1
1
1
1
1
1
1
1
⎤
1
1⎥
⎥
1⎥
⎥
⎥
1⎥ .
⎥
1⎥
⎥
1⎦
1
(2.6)
Obrázok 2.3: Príklad obrazu filtrovaného priemerovacím filtrom.
Na obrázkoch 2.2 a 2.3 je príklad filtrácie uvedeným priemerovacím
filtrom filtrom vel’kosti 7 × 7.
Gaussov filter. Gaussov filter má filtračné jadro odvodené od Gaussovej
dvojrozmernej funkcie definované nasledovne
1
h(m, n) =
M
m
N
n
e
−(m 2 +n 2 )
2σ2
e
−(m 2 +n 2 )
2σ2
.
(2.7)
Prvý člen v tomto vzt’ahu je váhovací faktor tak, aby zisk celého filtra bol
rovný jednej.
Ukážme si príklad Gaussovho filtra vel’kosti 7 a σ = 3.
42
2.3. Najdôležitejšie konvolučné masky
⎡
0.0113
⎢0.0149
⎢
⎢0.0176
⎢
⎢
h = ⎢0.0186
⎢
⎢0.0176
⎢
⎣0.0149
0.0113
0.0149
0.0197
0.0233
0.0246
0.0233
0.0197
0.0149
0.0176
0.0233
0.0275
0.0290
0.0275
0.0233
0.0176
0.0186
0.0246
0.0290
0.0307
0.0290
0.0246
0.0186
0.0176
0.0233
0.0275
0.0290
0.0275
0.0233
0.0176
0.0149
0.0197
0.0233
0.0246
0.0233
0.0197
0.0149
⎤
0.0113
0.0149 ⎥
⎥
0.0176 ⎥
⎥
⎥
0.0186 ⎥.
⎥
0.0176 ⎥
⎥
0.0149 ⎦
0.0113
Obrázok 2.4: Gaussov filter h vel’kosti 7 × 7, σ = 3.
Obrázok 2.5: Vstupný obraz – detail
nohy vtáka.
Obrázok 2.6: Príklad obrazu filtrovaného Gaussovým filtrom.
Na obrázkoch 2.5 a 2.6 je príklad filtrácie uvedeným Gaussovým filtrom.
2.3.2 Hranové filtre
Ďalším, vel’mi často používaným typom filtra sú hranové filtre.
43
2. S PRACOVANIE OBRAZU V PRIESTOROVEJ OBLASTI
Prewittov filter. Prewittov filter pozostáva z dvoch konvolučných jadier: vertikálneho a horizontálneho. Ich použitím pre konvolúciu získame
zvlášt vertikálny a zvlášt’ horizontálny príspevok k hrane v danom bode.
Tieto dve informácie môžeme použit’ pre výpočet gradientu. Pod gradientom funkcie f (x, y) rozumieme dvojrozmerný vektor, ktorého súradnice sú parciálne diferencie funkcie f podl’a x a y. Môžeme tiež vypočítat’
uhol, ktorý tento vektor zviera, podl’a vzt’ahu 2.15.
Konvolučná maska vertikálneho Prewittovho filtra je daná v tvare
⎡
1
⎣0
−1
1
0
−1
⎤
1
0 ⎦.
−1
(2.8)
Konvolučná maska horizontálneho Prewittovho filtra je daná ako
⎡
1
⎣1
1
0
0
0
⎤
−1
−1⎦ .
−1
(2.9)
Z vypočítaných vektorov môžeme vyjadrit’ v každom pixeli obrazu magnitúdu a fázu.
G=
Gx 2 + G y 2 ,
Θ = arctan G y , Gx .
(2.10)
(2.11)
Zisk filtra je u tohto filtra nulový. Je však dôležité si uvedomit’, že pri programovaní operácie filtrácie s použitím Prewittovho filtra potrebujeme pre
výstupný filtrovaný vertikálny a horizontálny obraz dátový typ, ktorý obsahuje aj záporné čísla (napr. integer alebo float). Vypočítané diferencie môžu byt’ totižto kladné alebo záporné podl’a toho, či odpovedajúca
hrana vo vstupnom obraze je nábežná alebo dobežná. Vizualizované sú
preškálované obrazy, kde nulová hodnota z hranového obrazu bola posunutá na úroveň 127 z rozsahu 0 – 225. (Z tohoto dôvodu sú vizualizované
obrazy šedé.)
44
2.3. Najdôležitejšie konvolučné masky
Obrázok 2.7: Obraz filtrovaný horizontálnym Prewittovým filtrom.
Obrázok 2.8: Obraz filtrovaný vertikálnym Prewittovým filtrom.
Prewittov filter je vel’mi podobný Sobelovmu filtru uvedenému v d’alšom odstavci, vizuálne je rozdiel medzi obrazom filtrovaným Prewittovým alebo Sobelovým filtrom sotva rozpoznatel’ný. Obidva tieto typy filtrov sa používajú pre výpočet gradientu.
Sobelov filter. Sobelov filter patrí medzi najpopulárnejšie hranové fitre.
Konvolučná maska vertikálneho Sobelovho filtra je definovaná v tvare
⎡
1
⎣0
−1
2
0
−2
⎤
1
0 ⎦.
−1
(2.12)
Analogicky môžeme vyjadrit’ konvolučnú masku horizontálneho Sobelovho filtra ako
⎤
⎡
1 0 −1
⎣2 0 −2⎦ .
(2.13)
1 0 −1
Ak chceme získat’ komletný hranový obraz, tak použijeme vasledovný
vzt’ah na výpočet magnitúdy z predchádzajúcej x-ovej a y-novej hodnoty.
G=
Gx 2 + G y 2 ,
Θ = arctan G y , Gx .
(2.14)
(2.15)
Na obrázkoch 2.9 a 2.10 je príklad filtrácie horizontálnym Sobelovým
filtrom a vertikálnym Sobelovým filtrom.
45
2. S PRACOVANIE OBRAZU V PRIESTOROVEJ OBLASTI
Obrázok 2.9: Obraz filtrovaný horizontálnym Sobelovým filtrom.
Obrázok 2.11: Vstupný obraz – detail nohy vtáka.
Obrázok 2.10: Obraz filtrovaný vertikálnym Sobelovým filtrom.
Obrázok 2.12: Magnitúda obrazu filtrovaného Sobelovým filtrom.
Laplacian. Diskrétny Laplaceov operátor je často používaný pri spracovaní obrazu a detekcii pohybu. Diskrétny Laplacian je definovaný ako
suma druhej diferencie v danom pixeli vzhl’adom na okolie pixela. Často
používaná definícia Laplaceovho operátora vel’kosti 3 × 3 je
⎡
0
⎣1
0
46
1
−4
1
⎤
0
1⎦ .
0
(2.16)
2.4. Použitie konvolúcie
Obrázok 2.13: Vstupný obraz – detail nohy vtáka.
Obrázok 2.14: Obraz z obrázku 2.13
filtrovaný Laplaceovým filtrom.
Na obrázku 2.13 je detail obrazu vtáka. Laplaceov operátor, ktorý sme
použili pri filtrácii Laplacianom tohoto obrázku bol definovaný ako
⎡
0, 5
⎣ 0
0, 5
0
−2
0
⎤
0, 5
0 ⎦.
0, 5
(2.17)
Na obrázku 2.14 vidíme hranový obraz po filtrácii Laplacianom.
Obrázok 2.15: Absolútna hodnota hranového obrazu (detail nohy vtáka)
filtrovaného Laplaceovým filtrom.
Na obrázku 2.15 môžeme pozorovat’ dvojité hrany, ktoré sú pôvodne
nábežnou a dobežnou hranou príslušnej kontúry.
2.4
Použitie konvolúcie
Celkovo môžeme konštatovat’, že konvolúcia je vel’mi účinný nástroj pre
spracovanie obrazu. Podl’a ciel’a použitia môže odstraňovat’ alebo zvý47
2. S PRACOVANIE OBRAZU V PRIESTOROVEJ OBLASTI
razňovat’ detaily, vypočítat’ hrany, prípadne počítat’ mieru podobnosti
medzi daným filtrom a obrazom.
2.5
Nelineárna filtrácia
Medzi nelineárne filtre patria predovšetkým zorad’ovacie filtre, kde špeciálnym prípadom je filter maxima, minima alebo medián.
2.5.1 Zorad’ovacií filter
V anglickej literatúre sa označujú názvom order-statistic filter.
Na rozdiel od lineárnej filtrácie nepočítame konvolúciu. Zorad’ovacie filtre nám výpočtovo pripomínajú skôr morfologickú filtráciu. Obraz
postupne prechádzame filtračnou maskou, ktorá obsahuje iba jednotky
a nuly. Ich význam je podobný ako ich poznáme u plochého štrukturálneho elementu – jednotky definujú pozície pixelov, ktoré sa aktívne podiel’ajú na výpočte.
U zorad’ovacieho filtra zoradíme podl’a vel’kosti všetky prvky dané
maskou a vyberieme výstupný prvok, ktorý je v poradí prvý, alebo posledný, alebo stredný – podl’a toho, aký zorad’ovací filter počítame – filter
minima, maxima alebo mediánový filter. Pozíciu výstupného prvku môžeme tiež definovat’ podl’a potreby na l’ubovol’nej inej pozícii v zoradenej
postupnosti.
Mediánový filter. Mediánový filter vyberie zo zoradenej postupnosti danej zorad’ovacím filtrom ten prvok, ktorý je na strednej pozícií. Je výborným nástrojom pre odstránenie šumu z obrazu, predovšetkým impulzového šumu alebo šumu typu sol’ a korenie (salt and pepper).
Obraz rušený šumom typu sol’ a korenie obsahuje jednotlivé pixely
šumu, ktoré sú rozmiestnené rôzne v priestore obrazu a ktoré majú bielu
alebo čiernu farbu. (Šum typu sol’ a korenie môže mat’ i iné dve úrovne
jasu, kombinácia bielej a čiernej je najčastejšia.)
48
2.5. Nelineárna filtrácia
Obrázok 2.16: Vstupný zašumený
obraz.
Obrázok 2.17: Mediánovo filtrovaný
obraz.
Na obrázku 2.16 je nekvalitný vstupný obraz vel’kosti 192 × 228 pixelov, ktorý obsahuje šum typu sol’ a korenie. Na obrázku 2.17 je tento obraz
po filtrácii mediánovým filtrom o vel’kosti 5 × 5.
49
K APITOLA
3
Konvolučná teoréma
V predchádzajúcich kapitolách sme si najskôr objasnili princíp lineárnej
filtrácie obrazu v spektrálnej doméne a potom lineárnej filtrácie v priestorovej doméne. V tejto kapitole, ktorá je síse malá svojím rozsahom strán,
ale vel’mi významná svojim obsahom, si povieme vzájomný súvis uvedených dvoch prístupov.
Konvolučná teoréma dáva do priamej vzájomnej relácie lineárnu filtráciu v spektrálnej oblasti a lineárnu filtráciu v priestorovej oblasti
a to nasledovne.
Konvolučná teoréma. Konvolučná teoréma nám hovorí, že operácia
násobenia v spektrálnej doméne je ekvivalentná operácii konvolúcie
v priestorovej doméne a tiež naopak, operácia konvolúcie v spektrálnej
doméne je ekvivalentná operácii násobeniu v priestorovej doméne.
Matematicky tento vzt’ah ekvivalencie zapíšeme nasledovne.
Máme funkciu f (x,y) a jej Fourierove spektrum F(u,v), d’alej máme funkciu h(x,y) a jej Fourierove spektrum a H(u,v). Potom platí
f (x, y) ∗ h(x, y) ⇔ F (u, v)H (u, v),
(3.1)
f (x, y)h(x, y) ⇔ F (u, v) ∗ H (u, v).
(3.2)
V praxi to znamená, že sa môžeme rozhodnút’ pre jednu alebo druhú
alternatívu lineárnej filtrácie. Podl’a autorov Gonzales a Woods ( [GW08])
je filtrácia vo frekvenčnej oblasti intuitívnejšia. Najdôležitejšie faktory,
50
ktoré môžu ovplyvnit’ naše rozhodnutie je rýchlost’ výpočtu a vel’kost’ filtračného jadra. Pre efektívny výpočet je spravidla výhodnejšie počítat’ filtráciu vo frekvenčnej oblasti prostredníctvom FFT. Ďalší dôležitý fakt je,
že fitrácia vo frekvenčnej oblasti zachováva vel’kost’ obrazu.
Konvolučná teoréma nám tiež umožňuje odvodit’ postup nazývaný
dekonvolúcia.
51
K APITOLA
4
Morfologické operácie
Za svoj názov vd’ačí matematická morfológia pravdepodobne biologickej
morfológii, ktorá sa podl’a encyklopédie Britannica venuje všeobecným
aspektom biologických foriem a usporiadania častí tvarov rastlín a zvierat. Pojmom morfing (morphing) sa označujú animačné techniky počítačovej grafiky, pri ktorých sa zobrazený objekt plynule zmení na iný daný
objekt, ktorý môže byt’ vizuálne i značne odlišný.
4.1
Matematická morfológia
Vo všeobecnosti môžeme o matematickej morfológii v spracovaní obrazu skonštatovat’, že sa zaoberá štúdiom objektov z pohl’adu ich tvaru,
geometrie a topológie, pričom používa kombinácie metód z teórie množín, topológie a diskrétnej matematiky. Matematická morfológia teda poskytuje výkonný prístup k spracovaniu obrazu a d’alších diskrétnych dát.
4.1.1 Morfologické spracovanie obrazu
Morfologické spracovanie obrazu využíva informáciu o susedných pixeloch v topologickom okolí spracovávaného pixela.
Morfologické operácie boli primárne definované a využívané pre binárne obrazy. Nepopieratel’ný význam však majú i morfologické operácie definované pre šedotónové obrazy a môžu byt’ aplikované i pre viackanálové (napr. farebné obrazy). Morfologické operácie, ktoré sú defino52
4.2. Základné pojmy a definície
vané pre dvojdimenzionálne dáta, môžeme tiež rozšírit’ i na trojdimenzionálne dáta.
4.2
Základné pojmy a definície
Najskôr si zavedieme základné pojmy potrebné pre vysvelenie samotných morfologických operácií.
4.2.1 Susednost’, súvislost’
Zavedenie niektorých základných pojmov si vyžaduje definície vybraných
metrík, ktorými meriame vzdialenosti medzi dvomi bodmi obrazu.
Metrika. Pre obrazové body p, q so súradnicami (x1, y1) a (x2, y2) definujeme D ako metriku ak
D(p, q) ≥ 0,
(4.1)
D(p, q) = 0 vtedy a práve iba vtedy ak p = q,
D(p, q) = D(q, p),
(4.2)
D(p, z) ≤ D(p, q) + D(q, z).
(4.3)
Euklidovská vzdialenost’. Euklidovská vzdialenost’ medzi bodmi p a q
v obraze je definovaná vzt’ahom
D E (p, q) =
(x1 − x2)2 + (y1 − y2)2 .
(4.4)
Vzdialenost’ v mestských blokoch „City block distance“. Vzdialenost’
medzi dvomi bodmi v obraze je v tomto prípade daná počtom krokov
(jednotkovej vel’kosti) po pravouhlej diskrétnej mriežke
D 4 (p, q) = |x1 − x2| + |y1 − y2|.
(4.5)
Samotný názov „vzdialenost’ v mestských blokoch“ evokuje predstavu
pohybu v meste.
53
4. M ORFOLOGICKÉ OPERÁCIE
Šachovnicová vzdialenost’ „Chessboard distance“. V prípade, že pravouhlú mriežku rozšírime o diagonálne prepojenia medzi susednými bodmi (vid’ obr. 4.1), tak môžeme definovat’ šachovnicovú vzdialenost’ nasledovne
D 8 (p, q) = max(|x1 − x2|, |y1 − y2|).
(4.6)
4-susednost’ a 8-susednost’. Ďalším dôležitým pojmom je 4-susednost’
a 8-susednost’. 4-susedia daného obrazového elementu sú body s jednotkovou vzdialenost’ou v metrike „vzdialenost’ v mestských blokoch“.
Podobne 8-susedia daného bodu sú body s jednotkovou vzdialenost’ou,
avšak v šachovnicovej vzdialenosti.
4-súvislost’, 4-spojitý komponent, 8-súvislost’, 8-spojitý komponent.
4-spojitý resp. 8-spojitý komponent definujeme nasledovne.
Množina čiernych pixelov F je 4-spojitý resp. 8-spojitý komponent, ak pre
každú dvojicu obrazových bodov p i a p j v F existuje postupnost’ pixelov
p i , ..., p j tak , že
• všetky obrazové body v postupnosti sú v množine F , t. j. sú čierne
na obr. 4.1,
• každé 2 pixely, ktoré sú vedl’a seba v postupnosti, spĺňajú podmienku 4-susednosti, resp. 8-susednosti.
Čiže daná oblast’ je 4-spojitý resp. 8-spojitý komponent, ak medzi jej
l’ubovol’nými dvomi vnútornými bodmi existuje cesta zo spojníc spĺňajúcich podmienku 4-susednosti, resp. 8-susednosti.
Obrázok 4.1: Ukážka mriežky 4-súvislosti a 8-súvislosti.
54
4.2. Základné pojmy a definície
4.2.2 Minkowského suma
Matematickým základom pre binárnu matematickú morfologickú operáciu dilatácie je Minkowského suma.
Minkowského suma bodových množín A a B je bodová množina
!
C=
Ab ,
(4.7)
b∈B
kde
A je množina A posunutá o vektor b, teda množina Ab = a + b | a ∈ A.
"b
označuje zjednotenie (union) množín.
Minkowského sumu množín A a B označujeme
C = A ⊕ B.
(4.8)
4.2.3 Štrukturálny element
V definíciach morfologických operácií je obsiahnutý prvok, ktorý sa nazýva štrukturálny element. V horeuvedenej Minkowského sume je vstupný obraz označený A a štrukturálny element je tu označený ako B. V d’alšom výklade už budeme označovat’ štrukturálny element ako S.
Štrukturálny element je charakteristický svojím tvarom, ktorý je daný
usporiadaním pixelov s hodnotou 1. Typicky sa používajú štrukturálne
elementy štvorcové, elipsové, krížikové alebo l’ubovol’ne definovaného
usporiadania v závislosti od konkrétneho použitia. Dôležitým parametrom je i poloha výsledného pixela. Tento bod je tiež nazývaný počiatok
alebo kotevný bod (origin, anchor).
Štrukturálny element je teda bodová množina – obraz s vel’kost’ou
menšou než vstupný obraz. Jeho typický rozmer býva pomerne malý,
napr. 3 × 3, 5 × 5,..21 × 21 atd’. Rovný (flat) štrukturálny element obsahuje výlučne iba hodnoty 0 a 1, jednotky v ňom definujú okolie (neighborhood) kotevného bodu.
Pre intuitívnu predstavu zjednodušene môžeme konštatovat’, že hodnota 1 označuje vlastne tie pixely v štrukturálnom elemente, ktoré sa „aktívne“ podiel’ajú na stanovení novej hodnoty v počiatku (v kotevnom bode).
4.2.4 Morfologická transformácia
Morfologickú transformáciu môžeme definovat’ ako matematickú reláciu medzi dvomi bodovými množinami, a to množinou obrazu a množinou štrukturálneho elementu.
55
4. M ORFOLOGICKÉ OPERÁCIE
4.3
Základné morfologické operácie
Aplikovanie morfologickej transformácie na obraz F zodpovedá výpočtu
transformácie pri systematickom posune štrukturálneho elementu S po
obraze. Výsledok transformácie v každej polohe zodpovedá danej morfologickej relácii.
Pre výpočet základných morfologických operácií sa teda používa mechanizmus podobný ako pri filtrácii, ked’ každý pixel obrazu je nahradený svojou novou hodnotou vypočítanou daným algoritmom s využitím
hodnôt jeho topologických susedov.
Binárna dilatácia zväčšuje plochu bieleho objektu na čiernom pozadí a binárna erózia naopak zmenšuje plochu bieleho objektu na čiernom pozadí. V prípade čierneho objektu na bielom pozadí by bola situácia analogicky opačná.
Tento výklad vychádza z konvencie, že pixel s hodnotou 1 je biely a pixel s hodnotou 0 je čierny. Predpokladáme tiež, že binárne objekty sú
biele objekty na čiernom pozadí.
Pre intuitívnu predstavu, s určitou dávkou nepresnosti, môžeme povedat’, že väčší štrukturálny element má za následok väčšie zmeny hraničných oblastí, čiže i plocha objektu sa viac zväčší. Podl’a tvaru štrukturálneho elementu môžeme usúdit’, aký tvar budú mat’ detailné zmeny
na okrajoch objektu. Štrukturálny element hranatého tvaru (štvorec, obdĺžnik...) sa prejaví po dilatovaní kontúrami objektu, v ktorých je hranatý
tvar štrukturálneho elementu poznatel’ný. Naopak, u elipsovitého štrukturálneho elementu budeme očakávat’ nové kontúry skôr zaoblené.
Výhodne môžeme tiež využit’ nasledovnú stratégiu výpočtu. Rovnakú
morfologickú operáciu s nezmeneným štrukturálnym elementom opakovane aplikujeme vo viacerých iteráciach za sebou. V softvérových podporách výpočtu morfologických operácií (knižnice pre spracovanie obrazu) spravidla nachádzame tento postup už implementačne pripravený.
Medzi základné morfologické operácie patria
• dilatácia (dilation) 4.4
• erózia (erosion) 4.4.2
a ich základné kombinácie pod názvami
• morfologické otvorenie (opening) 4.5
• morfologické uzavretie (closing) 4.5
56
4.4. Binárna dilatácia a erózia
4.4
Binárna dilatácia a erózia
4.4.1 Dilatácia
Operáciu binárnej dilatácie spracovávaného obrazu F a štrukturálneho
elementu S značíme
F ⊕ S.
(4.9)
Binárna dilatácia vyplýva z uvedenej definície Minkowského sumy zjednotenie (union) posunutých bodových množín F a S. Binárnu dilatáciu
môžeme teda zapísat’ ako
F⊕S =
!
Fs ,
(4.10)
s∈S
kde Fs je množina F posunutá o vektor s, teda množina
Fs = f + s | f ∈ F.
(4.11)
Ako bolo už spomenuté, morfologickým dilatovaním zväčšíme plochu
bielej binárnej oblasti. Použitý štrukturálny element je dôležitý, pretože
determinuje ako presne budú okraje binárnej oblasti menené.
Obrázok 4.2 ilustruje príklad výpočtu výslednej hodnoty dilatácie pre
okolie jedného bodu. Okolie bodu dané štrukturálnym elementom je vypočítané ako zjednotenie (v tomto prípade môžeme hovorit’ o logickom
súčte) tých hodnôt obrazu, ktorým zodpovedajú jednotkové hodnoty pixelov v štrukturálnom elemente. Výsledná hodnota je zapísaná do výstupného obrazu na pozíciu počiatku (typicky stredu) štrukturálneho elementu.
V prípade binárneho obrazu má teda výsledný pixel hodnotu 1, ak
aspoň jedna hodnota spomedzi pixelov obrazu selektovaných korešpondujúcimi jednotkovými hodnotami štrukturálneho elementu je tiež nenulová, čiže jednotková.
57
4. M ORFOLOGICKÉ OPERÁCIE
Obrázok 4.2: Dilatácia – binárny obraz. Vl’avo je vstupný, vpravo výstupný obraz.
Štrukturálny element je znázornený červenou farbou. V tomto prípade je jednotková výsledná hodnota daná logickým súčtom núl s jedinou jednotkovou hodnotou (na pozícii v druhom riadku, tret’om stĺpci).
Nasledujúci obrázok 4.3 ilustruje, ako operácia dilatácie zmenila tvar
bielej oblasti (binárneho objektu). Biele objekty bol zväčšené, tým sa spojili do jedného objektu a čierne „diery“ vnútri objektov boli odstránené.
Obrázok 4.3: Vl’avo je binárny vstupný obraz, vpravo je dilatovaný výstupný obraz. (Použitý bol štrukturálny element je znázornený na obrázku 4.4).
V tomto i nasledujúcich príkladoch bol použitý štrukturálny element
ako je znázornený na obrázku 4.4.
58
4.4. Binárna dilatácia a erózia
Obrázok 4.4: Štrukturálny element použitý v d’alších príkladoch.
4.4.2 Erózia
Operáciu erózie spracovávaného obrazu F a štrukturálneho elementu S
označujeme
F S.
(4.12)
Binárnu eróziu môžeme definovat’ ako prienik všetkých posunov obrazu
F o vektory −s, kde s ∈ S
FS =
#
Fs ,
(4.13)
s∈S
kde
Fs = f − s | f ∈ F.
(4.14)
Postup výpočtu je znázornený na obrázku 4.5. Tu vidíme príklad výpočtu
výslednej hodnoty erózie pre okolie jedného bodu. Pre okolie bodu dané
štrukturálnym elementom je vypočítaný prienik (v tomto prípade môžeme hovorit’ o logickom súčine) zo všetkých hodnôt obrazu, ktoré zodpovedajú jednotkovým hodnotám v štrukturálnom elemente. Výsledná
hodnota je zapísaná do výstupného obrazu na pozíciu počiatku (typicky
stredu) štrukturálneho elementu.
59
4. M ORFOLOGICKÉ OPERÁCIE
Obrázok 4.5: Erózia – binárny obraz. Vl’avo je vstupný, vpravo výstupný obraz.
Štrukturálny element je znázornený červenou farbou. V tomto prípade je jednotková výsledná hodnota daná prienikom (logickým súčinom) na pozíciách, kde
hodnoty v štrukturálnom elemente sú jednotkové.
Obrázok 4.6: Vl’avo je binárny vstupný obraz, vpravo je erodovaný výstupný obraz. (Použitý bol štrukturálny element je znázornený na obrázku 4.4).
Obrázok 4.6 ilustruje stenčenie objektov na obrázku následkom morfologického erodovania. Objekty a časti objektov (napr. stred písmena E),
ktoré sú menšie ako použitý štrukturálny element, boli eróziou odstránené.
60
4.4. Binárna dilatácia a erózia
4.4.3 Vlastnosti dilatácie a erózie
Uved’me si vlastnosti binárnej dilatácie a erózie. Dilatácia, práve tak ako
erózia je
• komutatívna, čiže platí A ⊕ B = B ⊕ A,
• asociatívna, čiže platí A ⊕ (B ⊕ C) = (A ⊕ B) ⊕ C,
• invariantná voči posunutiu, čiže platí A ⊕ (B + x) = (A⊕)B + x.
• Dilatácia a erózia sú vzájomne duálne operácie. Dilatovanie obrazu
je ekvivalentné erodovaniu komplementárneho obrazu a naopak.
Z pohl’adu použitia erózie a dilatácie je nutné si uvedomit’, že
• vel’kost’ štrukurálneho elementu je vhodné volit’ ako nepárne číslo.
Potom je poloha stredu štrukturálneho elemenu jednoznačná. Ak
táto podmienka nie je splnená, môžeme doplnit’ do štrukturálneho
elementu nuly a tým ho zväčšt’ na vel’kost’ danú nepárnym číslom.
• funkcie na výpočet dilatácie musia ošetrit’ výpočet na okraji obrazu, napr. doplnením nulových hodnôt, ked’že pre výpočet sú potrebné i v skutočnosti neexistujúce hodnoty mimo obraz.
4.4.4 Použitie dilatácie a erózie
Dilatáciu binárnych obrazov úspešne využívame v prípadoch, ked’ potrebujeme cielene zväčšit’ binárne oblasti alebo odstránit’ diery v týchto binárnych oblastiach. Podl’a požadovaného účinku a požadovanej morfologickej zmeny tvaru binárnych oblastí v obraze, volíme zodpovedajúcu
vhodnú vel’kost’ a vhodný tvar štrukturálneho elementu. Eróziou zase
naopak môžeme odstránit’ objekty, ktoré sú menšie ako rozmery štrukturálneho elementu. Príklad erózie, kde sú odstránené nežiaduce detaily
je na obrázku 4.7.
4.4.5 Vzájomný vzt’ah medzi eróziou a dilatáciou
Ak použijeme postupne operácie erózie a dilatácie s rovnakým štrukturálnym elementom, tak za určitých okolností sa môže výsledný obraz rovnat’ vstupnému, ale neplatí to všeobecne. Erózia a dilatácia nemusia byt’
vždy vzájomne inverzné!
Ak je napríklad eróziou malý objekt úplne odstránený, tak ho následná
dilatácia už nedokáže zrekonštruovat’. Táto vlastnost’ samozrejme môže
61
4. M ORFOLOGICKÉ OPERÁCIE
Obrázok 4.7: Vl’avo je binárny vstupný obraz, vpravo je erodovaný obraz. Môžeme si všimnút’, že malé biele detaily zo vstupného obrazu erodovaním zmizli
na úkor čiernych oblastí.
niekedy ovplyvnit’ výsledky negatívne, avšak často ju využívame cielene,
napr. práve pre odstránenie malých objektov.
4.5
Morfologické otvorenie a uzavretie
4.5.1 Morfologické otvorenie
Uvedieme definíciu morfologického otvorenia.
Operáciu erózie, nasledovanú dilatovaním erodovaného obrazu s použitím rovnakého štrukturálneho elementu pre obidve operácie, nazývame
morfologické otvorenie. Zapíšeme ako
(F S) ⊕ S.
(4.15)
Príklad morfologického otvorenia je na obrázku 4.8 .
4.5.2 Morfologické uzavretie
Ak sú operácie erózie a dilatácie použité v opačnom poradí, tak hovoríme
o morfologickom uzatvorení. Operácia dilatácie, nasledovaná erodovaním dilatovaného obrazu s použitím rovnakého štrukturálneho elementu
pre obidve operácie, nazývame morfologické uzavretie. Zapíšeme ako
(F ⊕ S) S.
62
(4.16)
4.5. Morfologické otvorenie a uzavretie
Obrázok 4.8: Príklad morfologického otvorenia. Vl’avo je vstupný obraz, vpravo je
výstupný obraz. (Použitý bol štrukturálny element znázornený na obrázku 4.4).
Príklad morfologického uzavretia:
Obrázok 4.9: Príklad morfologického uzatvorenia. Vl’avo je vstupný obraz, vpravo
je výstupný obraz. (Použitý bol štrukturálny element znázornený na obrázku 4.4).
Obidve operácie, morfologické otvorenie i morfologické uzatvorenie,
približne zachovávajú vel’kost’ objektov. Rozdiely pozorujeme predovšetkým ako zmeny v detailoch, ktorých vel’kost’ je porovnatel’ná s použitým
štrukturálnym elementom. Avšak i kontúry vel’kých objektov sa môžu tvarom štrukturálneho elementu zmenit’, napr kruhový štrukturálny elemnent kontúry objektov takpovediac „zaoblí“.
Z príkladu na obrázku 4.8 vidíme, že operácia morfologicé otvorenie
odstránila malé biele objekty v l’avej dolnej časti obrazu. Objekty v pravej
dolnej časti obrazu boli väčšie než použitý štrukturálny element a preto
odstránené neboli. Ďalší jav, ktorý pozorujeme, je odstránenie výčnelku
v strede písmena E.
Naopak, z príkladu na obrázku 4.9 vidíme, že operácia morfologicé
uzatvorenie odstránila malé tmavé oblasti vo vnútri bieleho objektu, v na63
4. M ORFOLOGICKÉ OPERÁCIE
šom prípade vo hviezde, ktoré označujeme ako „diery“ alebo „otvory“
(holes) v objekte. Ďalej vidíme, že objekty, medzi ktorými bola malá medzera (vzhl’adom k použitému štrukturálnemu elementu) sa spojili. Toto
spojenie blízkych objektov pozorujeme medzi vel’kými objektami písmena
E a hviezdy a tiež v dolnej časti obrazu, kde pospájané malé objekty vytvorili jeden objekt krivkovitého tvaru.
4.6
Šedotónová dilatácia a erózia
Koncept binárnej dilatácie a erózie je možno rozšírit’ na šedotónové obrazy. Najskôr uvedieme pôvodnú definíciu [HS87], kde obor funkčných
hodnôt štrukturálneho elementu môže byt’ z oboru celých alebo reálnych čísiel a je funkciou, ktorá nemusí byt’ konštantná na svojom definičnom obore. Takýto štrukturálny element nazývajú autori v článku [VT96]
nerovným štrukturálnym elementom (non-flat structuring element), nájdeme ho i označený ako 3D štrukturálny element pre 2D obrazy. Nesmieme si však tento štrukturálny element zamieňat’ s 3D štrukturálnym elementom pre 3D obrazy!
4.6.1 Nerovný štrukturálny element
Šedotónová dilatácia s použitím nerovného štrukturálneho elementu (po
anglicky non-flat structuring element) je definovaná v bode f, ktorý je zároveň kotevným bodom štrukturálneho elementu S, nasledovne
F ⊕ S = max{F(f − s) + S},
s∈S
(4.17)
kde S je nerovný štrukturálny element. Postup výpočtu je ilustrovaný na
jednodimenzionálnom signále na obrázku 4.10.
K okoliu bodu f, pre ktorý počítame šedotónovú dilatáciu, je najskôr
štrukturálny element pripočítaný a potom je výsledná hodnota daná maximálnou hodnotou týchto súčtov.
Šedotónová erózia s nerovným štrukturálnym elementom. Šedotónová erózia s nerovným štrukturálnym elementom je definovaná ako
F S = min{F(f + s) − S},
s∈S
kde S je nerovný štrukturálny element.
64
(4.18)
4.6. Šedotónová dilatácia a erózia
Obrázok 4.10: Šedotónová dilatácia ilustrovaná na 1-dimenzionálnom signále.
Definícia erózie je podobná definícii dilatácie, ibaže operácia sčítania
je nahradená odčítaním a namiesto maxima vyhl’adávame minimum.
4.6.2 Rovný štrukturálny element
V praxi je bežne používaný prístup k výpočtu šedotónovej dilatácie a erózie, ktorý je založený na zjednodušenej definícii. Používa rovný štrukturálny element (flat structuring element), ktorý obsahuje hodnoty 0 a 1
(podobne ako pre binárne obrazy), a teda definuje okolie (neighborhood)
daného bodu. Výstupná hodnota je potom maximum (u dilatácie) alebo
minimum (u erózie) hodnôt obrazu v definovanom okolí daného bodu.
Šedotónová dilatácia. Šedotónová dilatácia s rovným štrukturálnym elementom je definovaná ako
F ⊕ S = max{F(f − s)},
s∈S
(4.19)
kde S je rovný štrukturálny element.
65
4. M ORFOLOGICKÉ OPERÁCIE
Obrázok 4.11: Ukážka šedotónovej dilatácie s rovným štrukturálnym elementom.
Postup výpočtu ilustrovaný na 2D obraze je na obrázku 4.12.
Obrázok 4.12: Výpočet šedotónovej dilatácie. Rovný štrukturálny element je znázornený červenou farbou.
Jednoducho formulované, hodnota výsledného pixela po dilatovaní
sa rovná maximálnej hodnote zo všetkých pixelov obrazu, ktoré sú selektované korešpondujúcimi jednotkovými hodnotami v štrukturálnom elemente. Ide teda vlastne o ekvivalent zorad’ovacieho filtra (order-statistic
filter) maxima v prípade dilatácie a zorad’ovacieho filtra minima v prípade erózie (vid’ 2.5.1).
66
4.6. Šedotónová dilatácia a erózia
Obrázok 4.13: Príklad šedotónovej dilatácie. Vl’avo je vstupný obraz, vpravo je
výstupný obraz. (Použitý bol štrukturálny element znázornený na obrázku 4.4).
Šedotónovú dilatáciu použijeme napr. vtedy, ked’ potrebujeme odstránit’ lokálne minimá menšie ako štrukturálny element alebo ked’ potrebujeme zväčšit’ svetlé oblasti v obraze. Samozrejme dôkladne musíme
zvážit’ vel’kost’ a tvar štrukturálneho elementu.
Šedotónová erózia s rovným štrukturálnym elementom.
eróziu definujeme vzt’ahom
F S = min{F(f + s)},
s∈S
Šedotónovú
(4.20)
kde S je rovný štrukturálny element (obr. 4.14).
Obrázok 4.14: Výpočet šedotónovej erózie. Rovný štrukturálny element je znázornený červenou farbou.
67
4. M ORFOLOGICKÉ OPERÁCIE
Šedotónová erózia nachádza uplatnenie napr. v prípade, ked’ chceme
odstránit’ malé lokálne minimá, čiže oblasti v obraze svetlej farby, ktorých vel’kost’ je menšia ako vel’kost’ použitého štrukturálneho elementu.
Ako ilustráciu uvádzame príklad na obrázku 4.15.
Obrázok 4.15: Príklad šedotónovej erózie. Vl’avo je vstupný obraz, vpravo je výstupný obraz. (Použitý bol štrukturálny element znázornený na obrázku 4.4).
Pre zaujímavost’ si zdôrazníme rozdiel medzi šedotónovou dilatáciou
a filtráciou konvolúciou. Tento rozdiel je je úplne principiálny, spočíva
v použití rozdielnych matematických operácií. Namiesto súčtu u konvolúcie je u dilatácie výber maxima, namiesto násobenia medzi hodnotami
obrazu a filtračným jadrom pri konvolúcii je operácia súčtu u šedotónovej dilatácie. Rozdiel je i v tom, že filtračné jadro je transponované.
4.7
Morfologický gradient
Pre získanie informácie reprezentujúcej hrany v obraze nám základná teória spracovania obrazu ponúka mnohé prístupy. Jednou z možností je
využitie morfologických operácií.
Odčítaním pôvodného obrazu od morfologicky dilatovaného, prípadne erodovaného obrazu, počítame morfologický gradient. Samozrejme
je potrebné zvážit’ absolútnu hodnotu a vhodné preškálovanie vypočítaného rozdielu.
Ďalšou možnost’ou je vypočítat’ rozdiel medzi erodovaným a dilatovaným obrazom, ktoré sme získali morfologickým spracovaním rovnakého vstupného obrazu. Postup výpočtu morfologického gadientu MG
môžeme zapísat’ ako
MG = (F ⊕ S) − (F S).
68
(4.21)
4.7. Morfologický gradient
Binárny morfologický gradient. Pre extrakciu obrysu objektu (boundary extraction) binárneho obrazu môžeme použit’ operáciu morfologický gradient.
Príklad morfologického gradientu pre binárny obraz je na obrázku
4.16.
Obrázok 4.16: Príklad binárneho morfologického gradientu. Vl’avo je vstupný
obraz, vpravo je výstupný obraz.
Ako vidíme, morfologický gradient nám pre binárne obrazy umožňuje získat’ kontúry binarizovaných oblastí. Morfologický gradient však
môžeme využit’ i pre šedotónový obraz.
Šedotónový morfologický gradient. Príklad morfologického gradientu
pre šedotónový obraz je na nasledujúcom obrázku 4.17.
Obrázok 4.17: Príklad šedotónového morfologického gradientu. Vl’avo je vstupný
obraz, vpravo je výstupný obraz.
Pre uvedený príklad šedotónového morfologického gradientu sme použili štrukturálny element vel’kosti 47×47 kruhového tvaru, pričom vel’kost’ vstupného obrazu bola 610 × 536 pixelov.
69
4. M ORFOLOGICKÉ OPERÁCIE
4.8
Morfologická vrchná a spodná čast’ klobúka
Kombinovaním základných morfologických a aritmetických operácií
vznikajú d’alšie typy morfologických operácií, ako sú napr. morfologická
vrchná a spodná čast’ klobúka. V anglickej literatúre nachádzame tieto
morfologické operácie pod názvami Top-hat a Bottom-hat.
Morfologická operácia vrchná čast’ klobúka (Top-hat). Morfologická
operácia vrchná čast’ klobúka vznikne odčítaním morfologického otvorenia od pôvodného obrazu. Môžeme ju zapísat’ ako
F − ((F S) ⊕ S).
(4.22)
Morfologická operácia spodná čast’ klobúka (Bottom-hat). Duálna
morfologická operácia spodná čast’ klobúka naopak vznikne odčítaním
pôvodného obrazu od morfologického uzavretia pôvodného obrazu. Zapíšeme ju nasledovne.
((F ⊕ S) S) − F.
(4.23)
Príklad použitia morfologickej operácie vrchná čast’ klobúka (Top-hat)
pre šedotónový obraz je na obrázku 4.18. Použitý štrukturálny element je
kruhového tvaru o vel’kosti 47 × 47 a vel’kost’ vstupného obrazu je 584 ×
515 pixelov. Vo výstupnom obraze si všimneme výrazné oblasti, ktoré vo
vstupnom obraze predstavujú svetlý objekt na tmavom pozadí, pričom
jeden rozmer objektu je menší ako vel’kost’ štrukturálneho elementu.
Obrázok 4.18: Príklad operácie vrchná čast’ klobúka. Vl’avo je vstupný obraz,
vpravo je výstupný obraz. Môžeme pozorovat’ zvýraznené oblasti, napr. tam kam
ukazuje červená šípka, ktoré odpovedajú oblastiam s rozmerom menším ako
štrukturálny element, pričom sú tieto oblasti svetlé na tmavom pozadí.
70
4.9. Granulometria
Obrázok 4.19: Príklad operácie spodná čast’ klobúka. Vl’avo je vstupný obraz,
vpravo je výstupný obraz. Podobne ako v predchádzajúcom príklade môžeme
pozorovat’ zvýraznené oblasti, napr. tam kam ukazujú červené šípky, ktoré odpovedajú oblastiam s rozmerom menším ako štrukturálny element. Na rozdiel
od predchádzajúceho prípadu sú tieto oblasti tmavé na svetlom pozadí.
Príklad použitia morfologickej operácie spodná čast’ klobúka (Bottomhat) pre šedotónový obraz vidíme na obrázku 4.19. Použitý štrukturálny
element je rovnaký ako v predchádzajúcom príklade vrchnej časti klobúka, ale na výstupnom obraze pozorujeme opačný jav než vpredchádzajúcom príklade. Dominantné oblasti, pozorovatel’né vo výstupnom
obraze, odpovedajú tým oblastiam vstupného obrazu, ktoré sú tmavé a sú
na svetlom pozadí, pričom jeden rozmer takéhoto objektu je menší ako
vel’kost’ štrukturálneho elementu.
4.9
Granulometria
Morfologické operácie môžeme výhodne použit’ v úlohách, ktoré si kladú
za ciel’ odhadnút’ počet, vel’kost’, prípadne distribúciu určitých častíc
(particles) v obraze.
Postup je jednoduchý. V prípade, že detegované častice sú svetlejšie
než pozadie a sú pravidelných tvarov, tak použijeme operáciu morfologického otvorenia (opening) so štrukturálnym elementom, ktorého vel’kost’ sa bude menit’. (Je vhodné, aby tvar štrukturálneho elementu kopíroval typický tvar detegovaných častíc.) Operáciu otvorenie aplikujeme
opakovane, pričom vel’kost’ štrukturálneho elementu sa každý raz zväčší.
Pri každom kroku vyhodnotíme rozdiel sumy všetkých pixelov (surface
area) v obraze pred a po operácii otvorenia. Získame graf na obrázku 4.22.
71
4. M ORFOLOGICKÉ OPERÁCIE
Obrázok 4.20: Vstupný obraz pre príklad morfologického vyhodnotenia granulometrie.
Obrázok 4.21: Morfologické otvorenie s postupne sa zväčšujúcim štrukturálnym
elementom.
Obrázok 4.22: Závislost’ zmeny sumy hodnoty jasu pred a po operácii morfologického otvorenia pre štrukturálne elementy kruhového tvaru s rôznymi polomermi.
72
4.10. Morfologická operácia Hit-or-Miss
Na x-ovej osi je vynesený polomer štrukturálneho elementu, na yovej osi je príslušný rozdiel súm intenzity obrazu (surface area) pred a po
operácii morfologického otvorenia.
Z grafu vidíme dominantné vrcholy, ktoré zodpovedajú vel’kostiam
častíc, ktoré sú najvýznamnejšie zastúpené.
4.10
Morfologická operácia Hit-or-Miss
„Hit-or-Miss“ morfologická operácia (známa i pod názvami „Hit-or-Miss
Transform“ alebo „Hit-and-Miss Transform“) patrí medzi všeobecne známe binárne morfologické operácie, ktoré môžu byt’ použité na hl’adanie konkrétnych objektov na pozadí. „Hit-or-Miss“ je definovaná pre dva
komplementárne štrukturálne elementy a pracuje s binárnym obrazom
na vstupe i na výstupe.
Dva komplementárne štrukturálne elementy Shm1 a Shm2 môžeme
zapísat’ ako
Shm = (Shm1, Shm2),
(4.24)
kde Shm1 je štrukturálny element asociovaný s detegovaným objektom
a Shm2 je štrukturálny element asociovaný s pozadím.
Morfologická operácia „Hit-or-Miss“ je potom
HM = (F Shm1) ∩ (Fc Shm2),
(4.25)
kde F je pôvodný binárny obraz , Fc je jeho komplementárny obraz.
Morfologická operácia „Hit-or-Miss“ je vhodná na detekciu všetkých
binárnych objektov, ktoré zodpovedjú danému štrukturálnemu elementu
Shm1 („hit“) a zároveň štrukturálny element Shm2 („miss“) definuje ich
nutné pozadie. Inými slovami Shm1 definuje pixely, ktoré musia byt’ jednotkové a zároveň Shm2 definuje pixely okolia, ktoré nesmú byt’ jednotkové, čiže musia byt’ nulové.
Je zrejmé, že základná definícia morfologickej operácie „Hit-or-Miss“
deteguje iba objekty s tvarom presne zodpovedajúcim daným štrukturálnym elementom. Ak ju chceme využit’ i na menej reštriktívnu detekciu,
tak je vhodná implementácia s tzv. kompozitným štrukturálnym elementom (vid’ obrázok 4.23), ktorá akceptuje tri rôzne hodnoty v štrukturálnom elemente
Shm = (Shm1, Shm2, Shm3).
(4.26)
Príklad na obrázku 4.24 ilustruje použitie kompozitného štrukturálneho
elementu pri detekcii objektu, v tomto prípade číslice 6.
73
4. M ORFOLOGICKÉ OPERÁCIE
Obrázok 4.23: Príklad kompozitného štrukturálneho elementu. Pixely zobrazené
bielou farbou zodpovedajú štrukturálnemu elementu Shm1 ( „hit“), pixely znázornené čiernou zodpovedajú štrukturálnemu elementu Shm2 ( „miss“), šedé pixely znamenajú ignorovat’.
Obrázok 4.24: Príklad použitia „Hit-or-Miss“ transformácie s kompozitným
štrukturálnym elementom.
Z uvedeného príkladu je zrejmé, že pomocou „Hit-or-Miss“ transformácie sa nám podarilo detegovat’ číslicu „6“ pre ktorú sme definovali
štrukturálne elementy.
K uvedenej metóde je potrebné ešte podotknút’, že nie je ani škálovo
ani rotačne invariantná.
74
4.11. Vzdialenostná transformácia
4.11
Vzdialenostná transformácia
V anglickej literatúre nájdeme vzdialenostnú transformáciu pod názvom
„distance transform“.
Máme binárny obraz, v ktorom nulové hodnoty označujú pozadie.
Vzdialenostná transformácia nahradí každý nenulový bod obrazu (pixel)
jeho vzdialenost’ou k najbližšiemu pixelu pozadia.
Najčastejšie používaná metrika pre výpočet vzdialenostnej transformácie je Euklidovská metrika.
Príklad vzdialenostnej transformácie je na d’alšom obrázku 4.25.
Obrázok 4.25: Príklad vzdialenostnej transformácie s Euklidovou metrikou.
Vl’avo je vstupný obraz, vpravo je výstupný obraz.
4.12
Kostra
Morfologická operácia kostra (anglicky Skeleton) je definovaná pre binárne obrazy. Samotná definícia kostry vychádza z definície maximálneho kruhu.
• Maximálny kruh B(p, r ) so stredom p a polomerom r , r ≥ 0 je množina bodov, pre vzdialenost’ ktorých od stredu p platí d ≤ r .
• Maximálny kruh B vpísaný do množiny X sa dotýka hranice množiny X v dvoch a viacerých bodoch.
• Kostra je potom zjednotenie stredov maximálnych kruhov.
75
4. M ORFOLOGICKÉ OPERÁCIE
4.12.1 Príklady algoritmických postupov výpo čtu kostry
Výpočet podl’a definície vpisovania maximálnych kruhov.
stup je výpočtovo vel’mi náročný a prakticky sa nepoužíva.
Tento po-
Sekvenčné stenčovanie. Oblast’ sa eroduje vhodným štrukturálnym elementom tak, aby nebola porušená súvislost’ kostry. Príklad kostry počítanej sekvenčným stenčovaním je na obrázku 4.26.
Obrázok 4.26: Príklad výpočtu kostry (skeleton). Vl’avo je vstupný binárny obraz,
vpravo je obraz kostry.
Pomocou vzdialenostnej transformácie. Tento postup patrí pravdepodobne medzi najpoužívanejšie. Umožňuje rýchly výpočet.
4.13
Transformácia rozvodím
Originálny anglický názov je Watershed trasformation. Táto morfologická
operácia je pre šedotónové obrazy. Koncept transformácie rozvodím je
založený na predstave obrazu ako topografického reliéfu, kde vysoké intenzity zodpovedajú pohoriam a nízke zase údoliam. Existujú dva základné algoritmické prístupy – Zhora nadol a Zdola nahor.
Zhora nadol. Pri tomto prístupe je potrebné nájst’ pre každý pixel cestu
vedúcu do minima v oblasti zodpovedajúcej zbernej nádrži. Pixely sa usporiadajú podl’a toho, v ktorom minime sa skončí ich cesta. Každý bod
topologického priestoru, čiže každý pixel v obraze, patrí do jednej z týchto
kategórií:
76
4.13. Transformácia rozvodím
• je regionálnym minimom,
• alebo existuje z tohto bodu práve jedna cesta do regionálneho minima,
• alebo s rovnakou pravdepodobnost’ou existuje cesta do viacerých
miním.
V poslednom prípade je pixel označený ako súčast’ vysegmentovanej
hranice rozvodia.
Zdola nahor. Pri druhom prístupe každé minimum reprezentuje jednu
zbernú nádrž a stratégia spočíva v plnení týchto nádrží smerom nahor. Ak
by pri napĺňaní malo dôjst’ k spojeniu dvoch nádrží, tak sa vytvorí umelá
hranica (watershed), ktorá tomu zabráni. Práve vytvorené hranice sú výstupom segmentácie rozvodím.
Značková segmentácia rozvodím. Pre niektoré aplikácie je vhodné použitie vopred daných značiek pre polohu miním. Tento algoritmický prístup vyžaduje využit’ aj iný zdroj informácie, či už získaný automaticky
alebo manuálne, pre riadenie transformácie rozvodím.
V praxi sa teda stretávame s implementáciami segmentácie rozvodím
s použitím algoritmov, ktoré využívajú značky – semiačka pre definovanie
polohy minima. Na druhej strane sú v praxi používané i implementácie
segmentácie rozvodím, ktoré pracujú bez značiaceho obrazu a výpočet
polohy lokálnych miním je ich súčast’ou.
Obrázok 4.27: Príklad transformácie rozvodím. Vl’avo je vstupný obraz, vpravo
presegmentovaný výstupný obraz.
77
4. M ORFOLOGICKÉ OPERÁCIE
Obrázok 4.28: Príklad transformácie rozvodia. Vl’avo je vstupný obraz z obr. 4.27
vyhladený gaussovým filtrom. Vpravo je výstup transformácie rozvodia vyhladeného vstupu.
Typickým problémom pri použití transformácie rozvodím je presegmentovanie (oversegmentation), ked’ sa uplatnia príliš mnohé lokálne
minimá (často na úrovni šumu v obraze) a výsledná segmentácia rozvodím nesleduje iba dominantné oblasti, ale vygeneruje vel’ké množstvo
malých segmentov.
V prípade, že nechceme presegmentovanie generovat’ zámerne (napr.
pri tvorbe tzv. „superpixelov“), tak použijeme metódy pre vyhladenie lokálnych miním – či už pomocou jednoduchej dolnopriepustnej filtrácie,
ako je demonštrované na príklade 4.28, kde bol obraz vyhladený konvolučne Gaussovským filtrom o vel’kosti 51 × 51, alebo sofistikovanejšími
metódami, ako napr. morfologická rekonštrukcia. (Vid’ d’alej 4.15).
4.13.1 Značková segmentácia rozvodím pre farebný obraz
Meyer navrhol efektívny algoritmus výpočtu značkovej segmentácie rozvodím metódou rastúcich regiónov. Tento algoritmus bol publikovaný
v [Mey92].
• Inicializácia. Značkám (semiačkam) je priradený jednoznačný identifikátor (číslo). Každý región si zachová hodnotu identifikátora tej
značky, ktorá bola jeho zdrojom. Potom je vygenerovaná usporiadaná postupnost’ s takým počtom úrovní priority, kol’ko je úrovní
šedej v obraze. Všetky body susediace so značkou (semiačkom) sú
vložené do tejto usporiadanej postupnosti.
78
4.14. Geodetické metódy
• Rast značiek do regiónov. Ak má bod vo svojom okolí jeden a práve
len jeden identifikátor regiónu, tak je priradený do tohoto regiónu.
Jeho susedia bez identifikátorov, ktorí sú stále ešte nezaradení do
usporiadanej postupnosti, sú vložení do usporiadanej postupnosti
s rovnakým príslušnou prioritou ako vo fáze inicializácie.
• Pokial’ jeden bod susedí s dvomi regiónmi s rôznymi identifikátormi, tento bod sa stane hraničným bodom a dostane špeciálne
označenie charakterizujúce hranice.
Použité metrika podobnosti d medzi bodom p a regiónom r je daná
rozdielom vo farbe nasledovne:
d = max{|p r − r r |, |p g − r g |, |p b − r b |}.
4.14
(4.27)
Geodetické metódy
Geodetické metódy riadia morfologické operácie tak, aby operovali len
na časti obrazu. Ak sa má napríklad rekonštruovat’ objekt a my máme
značku, ktorá nám daný objekt ukazuje, tak je vhodné obmedzit’ rekonštrukciu iba na hranice objektu.
4.14.1 Geodetická vzdialenost’
Ústredným pojmom geodetických metód je geodetická vzdialenost’. Je to
cesta medzi dvoma bodmi, ktorá je obmedzená tým spôsobom, že musí
ležat’ vo vnútri danej množiny.
Obrázok 4.29: Príklad geodetickej vzdialenosti.
4.15
Morfologická rekonštrukcia
Morfologická rekonštrukcia je založená na iteratívnom procese, pri ktorom sa opakuje výpočet geodetickej binárnej dilatácie, alebo sa opakuje
79
4. M ORFOLOGICKÉ OPERÁCIE
výpočet geodetickej binárnej erózie. V prvom prípade hovoríme o rekonštrukcii dilatáciou, v druhom prípade hovoríme o rekonštrukcii eróziou.
4.15.1 Geodetická binárna dilatácia
Okrem spracovávaného obrazu, označovaného tiež ako maskovací obraz
(mask image) F a štrukturálneho elementu S, potrebujeme d’alší, tzv. značiaci obraz (marker image) G. Maskovací obraz je vlastne vstupný spracovávaný obraz.
Vstupom pre prvý krok iteratívneho procesu je značiaci obraz G. Na tento
sa najskôr aplikuje operácia dilatácie s daným štukturálnym elementom
S a následne prienik s maskovacím obrazom F. Výstup týchto operácií
je vstupom pre d’alšiu iteráciu. Postup sa opakuje až po dosiahnutie nemenného stavu v maskovacom obraze. Túto vlastnost’ nazývame idempotencia.
Iteratívny proces geodetickej dilatácie maskovacieho obrazu F podl’a značiaceho obrazu G s použitím štrukturálneho elementu S zapíšeme
nasledovne
D(0)
= F,
G
D(1)
G
(n)
DG
= (F ⊕ S)
#
(4.28)
G,
(n−1)
= D(1)
(F)),
G (DG
(4.29)
(4.30)
(n)
DG
je výstup geodetickej dilatácie po n-tej iterácii podl’a značiaceho
obrazu G.
Obrázok 4.30: Príklad geodetickej dilatácie.
80
4.15. Morfologická rekonštrukcia
Postupnými iteráciami dochádza k vypĺňaniu tých súvislých oblastí,
ktoré boli označené v značiacom obraze. Selektované oblasti, ktoré neboli označené v značiacom obraze sú v priebehu výpočtu vymazané, až
po ukončení výpočtu úplne zmiznú. Je vhodné zvolit’ malý štrukturálny
element, napr vel’kosti 3×3. Väčšie štrukturálne elementy by takpovediac
„preklenuli“ medzeru zodpovedajúcej vel’kosti medzi dvomi samostatnými súvislými oblast’ami. Pokial’ túto vlastnost’ nepoužívame cielene,
napr. na spojenie blízkych súvislých oblastí, tak príliš vel’ký štrukturálny
element môže spôsobit’ nežiadúci efekt.
4.15.2 Geodetická binárna erózia
Podobne ako geodetickú dilatáciu, definujeme i geodetickú eróziu
= F,
D(0)
G
D(1)
G
(n)
DG
= (F S)
!
(4.31)
G,
(n−1)
= D(1)
(F)),
G (DG
(4.32)
(4.33)
(n)
DG
je výstup geodetickej erózie po n-tej iterácii podl’a značiaceho obrazu G.
Geodetická erózia je duálna operácia ku geodetickej dilatácii.
Iteratívny výpočet prebieha rovnako, avšak s tým rozdielom, že operácia dilatácie je nahradená eróziou a namiesto prieniku s maskovacím
obrazom, počítame zjednotenie s maskovacím obrazom. Čiže pri geodetickej erózii je na obraz F postupne aplikovaná erózia, pričom po každej
erózii je na erodovaný obraz ešte aplikujeme zjednotenie s maskou G,
čím sa zabráni prílišnej erózii F pod zvolenú minimálnu hranicu, definovanú maskou.
4.15.3 Morfologická rekonštrukcia a jej použitie
Rekonštrukcia obrazu eróziou F vzhl’adom na značiaci obraz G pomocou erózie je definovaná ako geodetická erózia F vzhl’adom na G až do
okamihu dosiahnutia nemenného stavu. Duálna definícia je pre rekonštrukcia obrazu dilatáciou.
Diery v binárnom obraze môžeme interpretovat’ ako regionálne minimá, ktoré nie sú priamo spojené s okrajom obrazu. Rekonštrukciu obrazu môžeme použit’ na vyplňovanie dier, ked’že odstraňuje všetky minimá, ktoré nie sú spojené s okrajom obrazu F.
81
4. M ORFOLOGICKÉ OPERÁCIE
Opakovanie geodetickej dilatácie umožňuje rekonštrukciu súvislých
regiónov v obraze F, ktoré boli pôvodne označené pomocou značky v značiacom obraze G. Naopak, súvislé regióny v obraze F, ktoré neboli označené v značiacom obraze G, aplikovaním geodetickej dilatácie zmiznú.
4.16
Morfologická šedotónová rekonštrukcia
Metódu pod názvom „Morfologická šedotónová rekonštrukcia“ publikoval Luc Vincent v článku [Vin93a]. Je to vel’mi účinná metóda na spracovanie obrazu s využitím regionálnych maxím.
Najskôr definujeme geodetickú dilatáciu a geodetickú eróziu pre šedotónové obrazy.
4.16.1 Geodetická šedotónová dilatácia a erózia
Definícia šedotónovej geodetickej dilatácie je odvodená od binárnej geodetickej dilatácie (vid’ odstavec 4.15.1) s tým rozdielom, že operácia dilatácie je v tomto prípade šedotónová dilatácia a prienik množín je nahradený výberom minimálnej hodnoty po bodoch medzi množinami. Iterovaním takto definovanej šedotónovej geodetickej dilatácie maskovacieho
obrazu F s použitím značiaceho obrazu G získame šedotónovú morfologickú rekonštrukciu. Zapíšeme ako
D(0)
= F,
G
D(1)
G
(n)
DG
= (F ⊕ S)
$
(4.34)
G,
(n−1)
= D(1)
(DG
(F)),
G
(4.35)
(4.36)
pričom
%
značí výber minimálnej hodnoty po bodoch,
(n)
DG
je výstup šedotónovej geodetickej dilatácie po n-tej iterácii podl’a
značiaceho obrazu G.
D(0)
= F,
G
D(1)
G
(n)
DG
= (F S)
&
(4.37)
G,
(n−1)
= D(1)
(F)),
G (DG
pričom
'
značí výber maximálnej hodnoty po bodoch,
82
(4.38)
(4.39)
4.16. Morfologická šedotónová rekonštrukcia
(n)
DG
je výstup šedotónovej geodetickej erózie po n-tej iterácii podl’a značiaceho obrazu G.
Šedotónovú rekonštrukciu ilustruje nasledovný príklad. Pre vykonanie operácie šedotónovú rekonštrukcie potrebujeme najskôr vytvorit’ značiaci obraz G, ktorý riadi spracovanie. Značiaci obraz G(x,y) musí spĺňat’
podmienku
G(x, y) ≤ F(x, y).
(4.40)
Obrázok 4.31: Morfologická šedotónová rekonštrukcia v 1D.
Na obr. 4.31 je ilustrovaný jednodimenzionálny prípad morfologickej šedotónovej rekonštrukcie. Funkcia F tu reprezentuje vstupné hodnoty (masku) v šedotónovej škále, G reprezentuje značiaci obraz. Morfologická šedotónová rekonštrukcia odstráni regionálne maximá. Ktoré
maximá budú odstránené, aká bude miera ich odstránenia – toto je určované použitým značiacim obrazom G.
4.16.2 Generovanie zna čiaceho obrazu
Spôsob a konkrétny algoritmus generovania značiaceho obrazu je priamo
závislý od aplikácie pre ktorú túto operáciu spracovania chceme použit’.
Uvedieme niektoré najpoužívanejšie prístupy
• Morfologická erózia
• Odčítanie konštantnej hodnoty od vstupného obrazu
• Sofistikované prístupy
Prvé dva menované prístupy zaručujú splnenie podmienky (4.40). Ak vytvárame značiaci obraz iným algoritmom, musíme splnenie tejto podmienky garantovat’.
83
4. M ORFOLOGICKÉ OPERÁCIE
4.16.3 Príklady použitia
Vyhladenie a odstránenie lokálnych maxím z obrazu. Zlepšenie kvality obrazu (image enhancement) odstránením tej časti signálu, ktorá má
pre danú aplikáciu rušivý charakter, je často používaný prístup pri predspracovaní obrazu.
Morfologická šedotónová rekonštrukcia nám umožňuje odstránit’ rušivé lokálne extrémy bez porušenia hrán. Ak chceme odstránit’ lokálne
maximá so známymi požiadavkami na ich maximálnu vel’kost’, prípadne
so známymi požiadavkami na ich tvar, tak je vhodné vytvorit’ značiaci
obraz s použitím morfologickej erózie. Na obrázku 4.32 je ukážka úpravy
mikroskopických obrazov zliatiny Inconel ako bola publikovaná v článku
[BRJ06]. Šedotónová rekonštrukcia bola použitá dvakrát, a to najskôr na
mikroskopický obraz a potom na invertovaný obraz po rekonštrukcii. Značiaci obraz bol generovaný sofistikovaným algoritmom so zámerom definovat’ oblasti, ktoré majú byt’ chránené pred vyhladením, ako sú napríklad hrany regiónov odpovedajúcich zrnám v oceli.
Obrázok 4.32: Príklad vylepšenie kvality obrazu šedotóvovou morfologickou rekonštrukciou. Vl’avo je vstupný obraz, v strede je obraz po morfologickej rekonštrukcii, vpravo ukážka jedného z dvoch použitých značiacich obrazov.
Extrakcia lokálnych maxím. V niektorých aplikáciách je dôležitým krokom extrahovanie lokálnych extrémov. V tomto prípade môžeme získat’
tieto dáta odčítaním výstupného obrazu od vstupného ako je ukázané na
obrázku 4.33.
84
4.17. Príklad použitia morfologických operácií pre segmentáciu superpixelov
Obrázok 4.33: Odčítanie rekonštruovaného obrazu od vstupného.
4.17
Príklad použitia morfologických operácií pre
segmentáciu superpixelov
Superpixely sú segmenty obrazu, ktoré môžu slúžit’ ako základné jednotky d’alšieho spracovania obrazu. Ich ciel’om je znížit’ redundanciu
v obraze a zvýšit’ účinnost’ z hl’adiska d’alšieho spracovania úlohy. Metódy na výpočet superpixelov využívajú rôzne prístupy, ako napr. metódy
posunu stredov (Mean-shift) [CMM02], priestorovo koherentné zhlukovanie s použitím rezov grafov (Graph Cuts) [ZK04], entropickú segmentáciu superpixelov (Entropy Rate Superpixel Segmentation) [Liu+11], jednoduché lineárne iteratívne zhlukovanie (Simple Linear Iterative Clustering (SLIC)), prípadne iteratívne algoritmy ako TurboPixels [Lev+09].
Na obrázku 4.34 je ukážka segmentovania na superpixely.
Postup, ktorý je d’alej popísaný, demonštruje výpočet superpixelov
práve s použitím morfologických operácií, ktoré sme uvádzali v tejto kapitole. Nejedná sa už o jednoduchú morfologickú operáciu, ale sofistikovaný prístup, ktorý kombinuje viaceré morfologické metódy. Výsledkom
je rýchly spôsob segmentácie obrazu do superpixelov pomocou morfologického spracovania vhodný pre aplikácie v reálnom čase alebo takmer v reálnom čase. Algoritmus v tejto forme doteraz nebol publikovaný.
Ďalej ho budeme skrátene nazývat’ MSS (Morphological Superpixel Segmentation). Požiadavky na navrhovanú metódu môžeme deklarovat’ nasledovne
• Výpočet musí byt’ dostatočne rýchly pre využitie v aplikáciách bežiacich v reálnom čase.
85
4. M ORFOLOGICKÉ OPERÁCIE
Obrázok 4.34: Ukážka segmentovania na superpixely.
• Vytvorené superpixely musia mat’ dostatočne malú varianciu v rámci jedného superixela a naopak môžu mat’ vel’kú varianciu medzi
rôznymi superpixelmi.
• Musí byt’ garantovaná priestorová koherencia v obraze.
• Hranice segmentovaných superpixelov musia sledovat’ hranice pravidelných obdĺžnikových oblastí, pokial’ nie je v blízkosti významná
hrana (saliency edge).
• Lokálne priestorové maximá a lokálne minimá v obraze, ktorých
plocha je malá v porovnaní s požadovanou vel’kost’ou segmentovaného superpixela (bez ohl’adu na zodpovedajúcu hodnotu intenzity tohoto lokálneho extrému, budú považované za irelevantné
a nebudú prispievat’ k segmentácii.
Nový prístup na báze morfologického spracovania. Navrhovaný prístup na báze morfologického spracovania pracuje s 8-súvislost’ou, čím
je garantovaná priestorová koherencia. Kl’účová otázka je, ktoré hrany sú
výrazné hrany a majú prispievat’ k tvorbe hrán superpixelov a ktoré sú
nepodstatné, a teda majú byt’ ignorované? Pre riešenie tohoto problému
sú v prvom kroku vyhladené malé lokálne extrémy v obraze a tým odstránené hrany s lokálnou signifikanciou. Algoritmus potom pozostáva
z d’alej uvedených základných krokov.
86
4.17. Príklad použitia morfologických operácií pre segmentáciu superpixelov
• Najprv využijeme morfologickú rekonštrukciu obrazu na odstránenie irelevantných lokálnych extrémov v obraze s ciel’om odstránit’
nepodstatné hrany.
• Potom generujeme značky pre značkovú transformáciu rozvodím
(Watershed trasformation). Za týmto účelom použijeme sofistikovaný postup zaplavenia vo vstupnom obraze vytvorenom ako rozdiel medzi pôvodným obrazom a obrazom filtrovaným Gaussovým
filtrom.
• V d’alšom kroku prebehne výpočet samotnej morfologiskej značkovej transformácie rozvodia.
4.17.1 Vyhladenie morfologickou rekonštrukciou
Použitá metóda bola uvedená v [Vin93a] a je popísaná v kapitole 4.15.
Výber vhodnej metódy generovania značiaceho obrazu silne závisí na
požadovanej aplikácii. V tejto navrhovanej metóde je značiaci obraz generovaný morfologickou eróziou. Parameter s, ktorý udáva vel’kost’ štrukturálneho elementu, môže byt’ priamo odvodený z maximálneho priemeru oblastí lokálnych extrémov, ktoré majú byt’ odstránené. Experimentálne bol stanovený tento parameter na hodnotu s = 7, pričom samotný
výpočet prebehol 6-krát: 3-krát pre jednotlivé R,G,B kanály (odstránenie
lokálnych maxím) and 3-krát pre jednotlivé R,G,B kanály invertovaného
obrazu (odstránenie lokálnych miním). Príklad výstupu morfologickej rekonštrukcie je na nasledujúcom obrázku 4.35.
Obrázok 4.35: Vl’avo je vstupný obraz. Vpravo je obraz vyhladený morfologickou
rekonštrukciou.
87
4. M ORFOLOGICKÉ OPERÁCIE
4.17.2 Generovanie zna čiek – semia čok pre zna čkovú
transformáciu rozvodím
Semiačko je značka počiatku rastúcich regiónov. V anglickej literatúre sa
semiačka označujúako termínom seeds. Superpixely musia na jednej strane rešpektovat’ požiadavku na ich pravidelné rozmiestnenie a zároveň
sledovat’ významné hrany objektov na strane druhej. Jednou z možností
je generovanie značiek v pravidelnej mriežke. Túto štandartnú metódu
zároveň využijeme ako referenčnú metódu pre vyhodnotenie tejto navrhnutej metódy.
Vstupom je vyhladený obraz, ktorý sme získali v predchádzajúcom kroku.
Hranový obraz v d’alšom kroku vytvoríme ako rozdiel obrazu po rozmazaní Gaussovým filtrom a pôvodným obrazom. Výstup d’alej slúži na tvorbu značiek nasledovným postupom
• Najskôr je každé semiačko umiestnené do stredu pravidelne vytvorenej mriežky.
• Metódou rastúcich regiónov s použitím 8-súvislosti v obraze F sú
tieto oblasti riadené parametrom p, ktorý určuje kedy sa zastaví
rast regiónu. Zároveň je rast obmedzený pravidelne vygenerovanou mriežkou. Parameter p je vlastne maximálna tolerovaná diferencia vo farbe medzi pixelom a jeho okolím patriacim do jeho
8-susedného okolia vo funkcii pre výpočet rastúcich regiónov.
Vplyv rôznych hodnôt parametra p je demonštrovaný na nasledujúcich obrázkoch 4.36.
Obrázok 4.36: Vplyv rôznych hodnôt parametra p. Hodnota parametra na obrázkoch zl’ava doprava: 0, 1, 2.
4.17.3 Transformácia rozvodím
V d’alšom kroku bola počítaná transformácia rozvodia pre farebný vstupný obraz tak, ako bola popísaná v odstavci 4.13.1. Sekvencia obrázkov
4.37 demonštruje jednotlivé kroky algoritmu.
88
4.17. Príklad použitia morfologických operácií pre segmentáciu superpixelov
Obrázok 4.37: Zl’ava doprava: vstupný obraz, obraz po morfologickej rekonštrukcii, značky pre transformáciu rozvodia (zelené), hranice superpixelov po transformácii rozvodia, hranice superpixelov znázornené v obraze.
4.17.4 Vyhodnotenie
Vyhodnotenie obnovenia hraníc (Boundary Recall)
Pre vyhodnotenie obnovenia hraníc (Boundary Recall) je potrebná referencia ručne segmentovaných hrán objektov (saliency edges), ktoré majú
byt’ sledované hranicami suprpixelov. Použitý súbor testovacích obrazov
„Berkeley Segmentation Dataset and Benchmark“ [Mar+01] tieto referenčné dáta poskytuje. Pretože aj pri manuálnej segmentácii objektov sa
opakované pokusy neprekrývajú s presnost’ou na jeden pixel, je vhodné
zaviest’ určitú toleranciu i pre vyhodnocovanie. Štandartne sa pri vyhodnocovaní tohoto testovacieho súboru používa tolerančná odchýlka k = 2
pixely.
Potom počítame vyhodnotenie pre obnovennie hranice (Boundary
recall) BR podl’a vzt’ahu
BR =
TP
TP +FN
(4.41)
Pričom hodnoty TP (skratka z angl. true positive) a FN (skratka z angl.
false negative) získame nasledovne.
TP sú tou čast’ou referenčných dát (ground truth), ktoré sa nachádzajú
s uvedenou toleranciou k = 2 pixely v Euklidovskej vzdialenosti od najbližšej hranice vytvorených superpixelov.
FN sú tou čast’ou referenčných dát (ground truth), ktoré nemajú s uvedenou toleranciou k = 2 pixely v Euklidovskej vzdialenosti žiadne hranice
vytvorených superpixelov.
89
4. M ORFOLOGICKÉ OPERÁCIE
Chyba podsegmentovania (Undersegmentation Error)
Chyba podsegmentovania (Undersegmentation Error) je vysvetlená pomocou obrázku 4.38.
Obrázok 4.38: Chyba podsegmentovania. Modrou farbou je znázornený objekt,
červenou farbou sú znázornené hranice superpixelov.
Modrý objekt z referenčného súboru je chybne rozdelený do znázorneného superpixelu, pričom vzniknú dve časti: vnútorná A a vonkajšia
B. Ako chybový údaj je vyhodnotená tá plocha vnútornej alebo vonkajšej časti superpixela, ktorá generuje menšiu chybu. Celkovo sa potom
vyhodnocuje podiel plôch v pomere: súčet chybových plôch ku celkovej
ploche segmentu z referenčného súboru.
4.17.5 Výsledky
Prezentovaná morfologická metóda na výpočet superpixelov (MSS) bola
vyhodnotená s použitím nástroja Superpixel Benchmark Toolbox [NP12],
ktorý umožňue porovnávanie úspešnosti akejkol’vek novej metódy s najvýznamnejšími, doteraz publikovanými, metódami (vid’ rešerš v kapitole
4.17). Metóda bola vyhodnotená s použitím uvedených metrík uvedených v odstavci 4.17.4 a to v závislosti na počte superpixelov v obraze ako
premenlivého parametra.
Na grafoch v obrázku 4.39 sú znázornené výsledky porovnania popísanej metódy (MSS) s metódou SLIC, transformáciou rozvodia s rovnomernou mriežkou (WS – regular grid watershed segmentation) a s jednoduchým generovaním superpixelov v tvare pravidelnej mriežky (BOX).
Z grafov na obrázku 4.39 vidíme, že výsledky pomocou popísanej metódy sú konzistentne lepšie v porovnaní s ostatnými metódami včetne
metódy SLIC, ktorá patrí v súčasnosti medzi najprominentnejšie. Po vyhodnotení časovej výpočtovej náročnosti vidíme, že metóda MSS je tiež
90
4.17. Príklad použitia morfologických operácií pre segmentáciu superpixelov
Obrázok 4.39: Vl’avo sú výsledky vyhodnotenia obnovenia hraníc (Boundary recall). Vpravo je vyhodnotená chyba podsegmentovania (Undersegmentation error).
konzistentne rýchlejšia než metóda SLIC, ktorá patrí v súčasnosti medzi
najrýchlejšie.
Rozlíšenie obrazu
192 × 108
384 × 216
960 × 540
1344 × 756
1920 × 1080
SLIC
MSS
33 ms
127 ms
766 ms
1511 ms
3132 ms
26 ms
33 ms
118 ms
228 ms
470 ms
Tabul’ka 4.1: Priemerný čas potrebný pre výpočet superpixelov (Intel Core i3 processor clocked at 2.27 GHz).
Popísaná metóda demonštruje možnosti uplatnenia morfologických
operácií a predovšetkým ich kombinovanie pre riešenie zložitejších úloh.
91
Zoznam použitej literatúry
[Ber30]
D. Bernoulli. „Fourier Series“. (1830), str. 1–10.
[BRJ06]
W. Benesova, A. Rinnhofer a G. Jakob. „Determining the Average Grain Size of Super-Alloy Micrographs“. IEEE International Conference on Image Processing. IEEE 1-4244-0480-0,
2006, str. 2749–2752.
[CMM02]
D. Comaniciu, P. Meer a S. Member. „Mean shift: A robust
approach toward feature space analysis“. IEEE Transactions
on Pattern Analysis and Machine Intelligence 24 (2002), str. 603–
619.
[CT65]
W. J. Cooley a J. W. Tukey. „An algorithm for the machine
calculation of complex Fourier series“. Math. Comp (1965),
str. 297–301.
[GW01]
R. Gonzalez a R. Woods. Digital Image Processing. Druhé vyd.
Prentice Hall, 2001.
[GW08]
R. C. Gonzalez a R. E. Woods. Digital Image Processing. Tretie vyd. Prentice Hall, 2008.
[Hla12]
V. Hlaváč. „Fourierova transformace v 1D a 2D“. Prednáška
(2012).
[HS05]
V. Hlaváč a M. Sedláček. Zpracování signálů a obrazů, skriptum. Vydavatelství ČVUT, 2005.
92
Zoznam použitej literatúry
[HS87]
R. M. Haralick a S. R. Sternberg. „Image Analysis Morphology“. IEEE transactions on pattern analysis and machine intelligence July (1987), str. 532–550.
[JB89]
L. Jaroslavskij a I. Bajla. Metódy a systémy číslicového spracovania obrazov. Alfa, Bratislava, 1989.
[KR96]
G. Kotuliaková a J. Rozinaj. Číslicové spracovanie signálov. Bratislava: FABER, 1996.
[Lev+09]
A. Levinshtein a kol. „TurboPixels: Fast Superpixels Using Geometric Flows“. IEEE Transactions on Pattern Analysis and Machine Intelligence 31.12 (2009), str. 2290–2297.
[Lih02]
J. Lihov. „Algebra a jej vety II.“ (2002), str. 1–29.
[Liu+11]
M.-Y. Liu a kol. „Entropy rate superpixel segmentation“. Proceedings of the 2011 IEEE Conference on Computer Vision and
Pattern Recognition. CVPR ’11. Washington, DC, USA: IEEE
Computer Society, 2011, str. 2097–2104.
[Mar+01]
D. Martin a kol. „A Database of Human Segmented Natural
Images and its Application to Evaluating Segmentation Algorithms and Measuring Ecological Statistics“. Proc. 8th Int’l
Conf. Computer Vision. Zv. 2. Júl 2001, str. 416–423.
[Mey92]
F. Meyer. „Color image segmentation“. Image Processing and
its Applications, 1992., International Conference on. 1992,
str. 303–306.
[NP12]
P. Neubert a P. Protzel. „Superpixel Benchmark and Comparison“. Proc. of Forum Bildverarbeitung. Regensburg, Germany.
2012.
[NT02]
R. Neumann a G. Teisseron. „Extraction of dominant points
by estimation of the contour fluctuations“. Pattern Recognition 35 (2002), str. 1447–1462.
[Ond+07]
Ondráček O. a kol. Biosignály. Bratislava: Vydavatelstvo STU
v Bratislave, 2007.
[OS75]
A. V. Oppenheim a R. W. Schafer. Digital signal processing.
Prentice-Hall, 1975.
[PPP05]
J. Pavlovičová, M. Partyk a J. Polec. Číslicove spracovanie obrazu. Bratislava, Vydavatelstvo STU v Bratislave, 2005.
[RY00]
K. Rao a P. Yip. The transform and data compression handbook. 2000.
93
[SHB07]
M. Sonka, V. Hlavac a R. Boyle. Image Processing, Analysis,
and Machine Vision. Tretie vyd. Cengage Learning, 2007.
[Vin93a]
L. Vincent. „Morphological grayscale reconstruction in image
analysis: applications and efficient algorithms“. Image Processing, IEEE Transactions on 2.2 (1993), str. 176–201.
[Vin93b]
L. Vincent. „Morphological Grayscale Reconstruction in Image
Analysis: Applications and Efficient Algorithms“. IEEE Transactions on Image Processing, 2.2 (1993), str. 176–201.
[VT96]
M. Van Droogenbroeck a H. Talbot. „Fast computation of morphological operations with arbitrary structuring elements“. Pattern Recognition Letters 17.14 (dec. 1996), str. 1451–1460.
[Vyr06]
R. Výrut. „Minkowského suma“. Geometry and Computer Graphics. Nové Město na Moravě, 2006.
[ZK04]
R. Zabih a V. Kolmogorov. „Spatially Coherent Clustering Using
Graph Cuts“. CVPR (2). 2004, str. 437–444.
Č AS Ť II
P RÍZNAKY
K APITOLA
5
Príznaky v oblasti
počítačového videnia
V tejto časti knihy sa budeme zaoberat’ príznakmi a ich prípravou na proces klasifikácie. Objekt v oblasti počítačového videnia je útvar reprezentovaný oblast’ou v segmentovanom obraze. Príznakom sa rozumie výsledok merania, ktoré kvantifikuje nejakú vlastnost’ objektu. Viacero jednotlivých príznakov sa spája do príznakového vektora (vektora príznakov).
Práca s príznakmi ul’ahčuje následné úlohy klasifikácie, lebo znižuje objem spracovávaných dát. Ak by sme obraz s rozmermi 1920×1080 pixelov
reprezentovali ako jeden vektor intenzít, jeho rozmer by bol 2073600. Ak
by sme tento obraz opísali napríklad 256-triednym histogramom intenzít, znížime objem spracovávaných údajov 8100-krát.
Typy príznakov môžeme určovat’ podl’a niekol’kých kritérií. Na základe úrovne abstrakcie definujeme nasledovné triedy príznakov.
Nízkoúrovňové príznaky opisujú základné vlastnosti objektov, ako tvar,
farbu, textúru, hrany, rohy atd’.
Strednoúrovňové príznaky vzniknú spojením nízkoúrovňových príznakov, ako napríklad kontrast, použitá paleta farieb alebo súpis základných tvarov v obraze. Spojením informácie o farbe objektu, textúre, umiestnení a pod. vieme určit’ sémantické kategórie (voda,
sneh, skala, vegetácia, . . .). Takisto využitím nízkoúrovňových príznakov vieme detegovat’ napríklad l’udské tváre.
Vysokoúrovňové príznaky sú príznaky najvyššej úrovne, ktoré opisujú
sémantiku zobrazenej scény – napríklad osoba sediaca na pláži (obraz obsahuje vodu, piesok, oblohu a osobu v určitej vzájomnej konštelácii).
96
Obrázok 5.1: Príklad segmentácie obrazu. Zl’ava pravidelná segmentácia bez prekryvu, pravidelná segmentácia s prekryvom v strede, nepravidelná segmentácia
s prekryvom v strede a segmentácia podl’a obsahu obrazu.
Nízkoúrovňové príznaky môžeme delit’ na bodové, lokálne a globálne.
Bodové príznaky opisujú každý bod pozíciou, intenzitou alebo farbou.
Globálne príznaky opisujú celý obraz alebo časti (objekty) vzniknuté segmentáciou obrazu. Segmentácia môže byt’ pravidelná s prípadným prekryvom, alebo založená na obsahu obrazu (obr. 5.1). Medzi globálne príznaky patria napríklad dominantná farba, textúra, tvar oblasti atd’., s ktorými sa bližšie oboznámime v kapitolách 6, 7 a 8. Lokálne príznaky, ktorým je venovaná kapitola 9, opisujú body a ich najbližšie okolie.
Ďalej si ukážeme, ako príznaky pripravit’ na proces klasifikácie (kap.
10) a ako určit’ vhodné príznaky (kap. 11 a kap. 12).
Vektor príznakov ako deskriptor objektu by mal spĺňat’ určité podmienky:
• dva rovnaké objekty musia mat’ rovnaké deskriptory a naopak, dva
rovnaké deskriptory musia opisovat’ rovnaké objekty,
• podobné objekty musia byt’ klasifikovatel’né do jednej triedy, ak
majú podobné (blízke) deskriptory,
• príznaky by mali byt’ invariantné. Najmä voči rotácii, posunutiu,
škálovaniu. Invariantnost’ voči afinným a perspektívnym transformáciám je vhodná najmä, ak máme rozpoznat’ objekty snímané
z rôznych zorných uhlov,
• deskriptor by mal byt’ kompaktný. Mal by obsahovat’ najmenšiu
množinu informácií, ktorá je potrebná na identifikáciu daného objektu a jeho odlíšenie od objektov iných tried.
97
K APITOLA
6
Príznaky tvaru
6.1
Binárny obraz
Príznaky tvaru sa najl’ahšie hl’adajú v binárnych obrazoch, ktoré dostaneme po segmentácii obrazu na objekty (obr. 6.1). Jednotlivé vysegmentované oblasti sú oddelené od pozadia, ktoré je reprezentované nulou.
V prípade, že tieto oblasti netvoria jeden objekt, môžeme identifikovat’
jednotlivé objekty pomocou algoritmu 6.1. Tento algoritmus pracuje so
4- alebo 8-susednost’ou (pozri kap. 4.2.1) a podl’a toho určí použitú masku (obr. 6.2). Príklad jednotlivých krokov algoritmu je na obrázku 6.3.
Obrázok 6.1: Segmentácia obrazu na oblasti. V prvom prípade oblasti netvoria
jeden objekt.
98
6.2. Opis tvaru založený na hranici oblasti
(a)
(b)
(c)
Obrázok 6.2: Masky používané v algoritme 6.1. (a) Maska pre 4-susednost’.
(b) Maska pre 8-susednost’. (c) Kolízia pre masku 4- a 8-susednosti.
1. prechod
skenuj obraz, nájdi nenulový bod obrazu P
ak sú susedné pixely určenej masky nulové
bodu P priraď nové označenie
inak
ak všetky nenulové pixely majú rovnaké označenie
bodu P priraď toto označenie
inak
bodu P priraď ľubovoľné označenie
z hodnôt pod maskou
zaznamenaj kolíziu do tabuľky ekvivalencie
2. prechod
skenuj obraz, zjednoť označenie podľa
tabuľky ekvivalencie
Algoritmus 6.1: Identifikácia oblastí v binárnom obraze.
6.2
Opis tvaru založený na hranici oblasti
Oblast’ je definovaná svojím vnútrom a hranicou. Bod oblasti leží na hranici, ak aspoň jeden z jeho susedov nepatrí oblasti. Hranicu väčšinou
hl’adáme algoritmom sledovania hranice, kde po nájdení prvého hraničného bodu postupujeme v smere (alebo proti smeru) hodinových ručičiek a označujeme d’alšie body hranice.
Na to, aby sme určili, či bod je hraničný, musíme vediet’, či je oblast’
4- alebo 8-susedná. Rôzne typy susednosti oblasti vedú k rôznym hraniciam. Susednost’ hranice a oblasti je vždy komplementárna. To znamená,
že hranica 4-susednej oblasti je 8-susedná a naopak, ako vidíme na obrázku 6.4.
99
6. P RÍZNAKY TVARU
(a) Vstup do algoritmu – seg- (b) 1. prechod algoritmu
mentované oblasti.
s vyznačenými kolíziami.
(c) 2. prechod algoritmu.
Obrázok 6.3: Ilustrácia vstupu a výstupov algoritmu 6.1 pri použití masky 6.2(a).
(a) Vysegmentovaná oblast’. (b) 8-susedná hranica 4-su- (c) 4-susedná hranica 8-susednej oblasti.
sednej oblasti.
Obrázok 6.4: Oblast’ a jej hranica pre rôznu susednost’ oblasti.
3
2
0
4
5
1
6
7
(a)
2
0
4
6
(b)
Obrázok 6.5: Kódovanie použité vo Freemanovom kóde. (a) Kódovanie 8-susedného objektu. (b) Kódovanie 4-susedného objektu.
6.2.1 Ret’azcový Freemanov kód
Pre 8-susednú hranicu kódujeme 8-okolie bodu číslami 0, . . . 7 ako na obrázku 6.5. Ret’azcový (Freemanov) kód hranice objektu je potom postupnost’ čísel, ktorá obsahuje informáciu, ktorým smerom hranica z daného
bodu pokračuje. Ret’azcový kód začína vo zvolenom začiatočnom bode.
Príklad ret’azcového kódu objektu na obrázku 6.6 začínajúci v bode P je
221171076555443.
100
6.2. Opis tvaru založený na hranici oblasti
Obrázok 6.6: Freemanov ret’azcový kód hranice z obrázka 6.4(b).
Problémom ret’azcového kódu je vol’ba začiatočného bodu a neinvariantnost’ voči rotácii.
Prvý problém spôsobí, že dva rovnaké objekty budú mat’ rôzne ret’azcové kódy, ak nezvolíme rovnaký začiatočný bod. Riešením je cyklický posun kódu tak, aby vzniklo najmenšie prirodzené číslo, čo v podstate znamená nájdenie referenčného začiatočného bodu hranice. Ked’
sa takto upravené ret’azcové kódy dvoch objektov zhodujú, majú objekty
rovnaký tvar. Pre oblast’ na obrázku 6.6 je referenčným bodom bod Q
a cyklicky posunutý kód je 076555443221171.
Invariantnost’ voči rotácii rieši diferenčný ret’azcový kód, ktorý nekóN
duje smer ako Freemanov kód, ale zmenu smeru. Nech {c i }i=1
je pôvodný
( )N
Freemanov kód oblasti. Diferenčný kód c i i=1 získame nasledovne
c i
*
=
(c i+1 − c i ) mod 8
(c 1 − c N ) mod 8
pre 1 ≤ i < N ,
pre i = N .
(6.1)
Diferenčný ret’azcový kód objektu na obrázku 6.6 začínajúci v bode P
je 070627777007077.
Vhodnost’ použitia Freemanovho alebo diferenčného kódu závisí od
kvality segmentácie.
6.2.2 Obvod
Z Freemanovho kódu l’ahko vypočítame obvod (perimeter) objektu
(6.2)
O = N p + Nn ∗ 2,
pričom N p , resp. Nn je počet párnych resp. nepárnych číslic v kóde. Predpokladáme štvorcový obrazový bod so stranou dĺžky 1.
Takto definovaná dĺžka hranice nie je invariantná voči otočeniu. Horizontálne, vertikálne a diagonálne hrany (so sklonom ±45◦ ) sú odme101
6. P RÍZNAKY TVARU
κ(t)=ρ-1(t)
f(t)
Obrázok 6.7: Krivost’ v bode spojitej parametricky zadanej krivky sa rovná prevrátenej hodnote polomeru vpísanej kružnice v danom bode.
rané presne, ale dĺžka ostatných hrán vykazuje určitú chybu. Táto chyba
je najväčšia pre hrany so sklonom ±22, 5◦ .
Tento problém sa dá riešit’ úpravou váh a miernym zvýšením chyby
dĺžky horizontálnych, vertikálnych a diagonálnych hrán
O = N p ∗ 0, 948 + Nn ∗ 1, 340,
(6.3)
alebo pridaním počtu rohov Nr (miest, kde sa mení kód) do výpočtu
O = N p ∗ 0, 980 + Nn ∗ 1, 406 − Nr ∗ 0, 091.
(6.4)
6.2.3 Krivost’ krivky
Krivost’ v bode spojitej parametricky zadanej krivky sa rovná prevrátenej
hodnote polomeru vpísanej kružnice v danom bode (obr. 6.7). Rovnako
krivost’ vyjadruje zmenu v smere dotyčnice.
Algoritmy na počítanie krivosti kriviek v digitalizovaných obrazoch sú
rôzne. Jednou možnost’ou je určenie uhlovej zmeny pozdĺž hranice oblasti. Krivost’ je potom daná vzt’ahom
κ(t ) = φt +1 − φt −1 ,
(6.5)
kde φt je smer gradientu množiny bodov definujúcich segment krivky.
Smer gradientu určíme pomocou detektora hrán alebo priamo vypočítame pomocou vzt’ahu
+
φt = arctan
kde (x t , y t ) určuje bod na krivke.
102
,
y t −1 − y t +1
,
x t −1 − x t +1
(6.6)
6.2. Opis tvaru založený na hranici oblasti
05
06
07
41
42
43
10
16
17
52
53
54
20
21
27
63
64
65
30
31
32
74
75
76
(a)
05
06
07
12
13
14
56
57
51
20
23
24
67
61
62
30
35
34
71
72
73
40
45
46
(b)
Obrázok 6.8: Príznaky krivosti pre (a) konvexné a (b) konkávne uhly.
Príznaky krivosti
Tieto príznaky sa definujú pre konkávne a konvexné uhly medzi za sebou
nasledujúcimi segmentami hranice. Na obrázku 6.8 sú uvedené možnosti.
Máme teda 16 príznakov (8 pre konvexné a 8 pre konkávne uhly).
Priemerná energia zakrivenia
Tento pojem z teórie elasticity vyjadruje množstvo energie potrebné pri
transformácii uzavretej krivky na kruh s rovnakým obvodom. Počíta sa
ako
EZ =
L
1
κ2 (t ),
L t =1
(6.7)
kde κ(t ) je krivost’ hranice v bode t a L je dĺžka hranice.
103
6. P RÍZNAKY TVARU
140
130
120
110
100
B
A
90
80
C
70
A
60
(a)
50
C
B
100
150
200
250
300
350
(b)
Obrázok 6.9: Signatúra ako vzdialenost’ jednotlivých bodov krivky od t’ažiska.
V útvare (a) sú vyznačené body, ktoré sú zvýraznené aj vo funkcii vzdialenosti
(b).
Obrázok 6.10: Mnohouholník nie je hviezdicovitý, preto niektorým uhlom zodpovedá viacero bodov krivky.
6.2.4 Signatúra
Signatúra je 1D signál opisujúci 2D krivku. Najpoužívanejšou signatúrou
krivky je vzdialenost’ jednotlivých bodov krivky od referenčného bodu
ako funkcia uhla (obrázok 6.9). Týmto referenčným bodom býva napríklad t’ažisko.
Takto definovaná signatúra je korektne zadaná, ak opisujeme hviezdicovitý mnohouholník a referenčný bod umiestnime do jeho jadra. Jadro
mnohouholníka M = V1 . . .V N tvoria body P , pre ktoré všetky úsečky PVi ,
ležia vnútri mnohouholníka M. V prípade, že mnohouholník nie je hviezdicovitý, a teda jeho jadro je prázdne alebo, ak referenčný bod umiestnime mimo jadra, nastáva situácia nakreslená na obrázku 6.10. Aj vtedy
môžeme použit’ signatúru definovanú vzdialenost’ou (maximálnou alebo
minimálnou pre daný uhol), ale výsledná funkcia nebude spojitá.
104
6.3. Opis tvaru založený na oblasti
A
A
B
B
(a)
(b)
Obrázok 6.11: Pri reprezentácii objektu pomocou hranice (a) je vzdialenost’ bodov A a B polovica obvodu. Pri reprezentácii oblast’ou (b) sú body blízko seba.
Medzi signatúry patria napríklad postupnost’ x-ových a y-ových súradníc x(n), y(n), postupnost’ komplexných čísel z(n) = x(n) + i .y(n), ret’azcový kód, krivost’ krivky.
6.2.5 Fourierov opis
Názov Fourierov opis označuje množinu príznakov založených na Fourierovej transformácii (pozri kap. 1.2), ktoré sú jednými z najpopulárnejších spôsobov opisu tvaru. Spoločným prvkom týchto príznakov je, že
skúmaný tvar je reprezentovaný pomocou 1D alebo 2D signatúry (pozri
kap. 6.2.4), na ktorú sa aplikuje Fourierova transformácia. Z tejto sa potom vypočítajú Fourierove deskriptory. Deskriptor môžu tvorit’ priamo
koeficienty DFT, prípadne normalizované koeficienty DFT.
6.3
Opis tvaru založený na oblasti
Na obrázku 6.11 vidíme situáciu, ktorá ilustruje rozdiel medzi reprezentáciou oblasti pomocou hranice a celkovej oblasti (hranica a vnútro). Ak
uvažujeme iba o hranici objektu, body A a B sú od seba vzdialené o polovicu obvodu, ale v rámci oblasti sú tieto body blízko seba. Niektoré z príznakov uvedených v tejto kapitole sa dajú počítat’ z hraničných bodov
(napr. t’ažisko, priemer), ale zvyčajne sa počítajú z celej oblasti. Hl’adanie hranice len kvôli týmto príznakom by bolo krokom navyše.
Medzi jednoduché opisy tvaru patria príznaky odvodené z priemeru
a obsahu, príznaky súvisiace s osami objektu alebo opísané obdĺžniky.
Tieto príznaky môžu jednoducho identifikovat’ chybu produktu na výrobnej linke, ale na komplexnú klasifikáciu objektov nie sú postačujúce,
pretože viaceré objekty rôzneho tvaru môžu mat’ rovnaký priemer a ob105
6. P RÍZNAKY TVARU
Obrázok 6.12: Oba objekty (čierny aj modrý) majú rovnaký obsah.
Obrázok 6.13: Ťažisko objektu.
sah (pozri obr. 6.12). Vhodnejšími príznakmi sú kostra alebo štatistické
momenty.
6.3.1
Ťažisko a k nemu prislúchajúce príznaky
Ťažisko
Ťažisko objektu (nazývané aj centroid) je bod, ktorého súradnice sa vypočítajú ako priemer x-ových a y-ových súradníc pixelov objektu. Súradnice t’ažiska nemusia byt’ nutne celočíselné. Ak potrebujeme identifikovat’ pixel zodpovedajúci geometrickému t’ažisku, musíme jeho súradnice
zaokrúhlit’.
Vzdialenost’ od t’ažiska k hranici
Určité vlastnosti objektov opisujú aj vzdialenosti od t’ažiska k hranici –
minimálna D min , maximálna D max , priemerná D mean , prípadne ich pomery alebo histogram vzdialeností. Tieto príznaky sa dajú použit’ napríklad na rozlíšenie kruhových (D max ≈ D min ) a elipsových útvarov. PoD mi n
D max
max
mery D
D mi n , D mean a D mean sú bez rozmeru (pozri kap. 10.1), takže sú škálovo invariantné. Príznaky zahŕňajúce D mean sú menej náchylné na šum.
106
6.3. Opis tvaru založený na oblasti
Obrázok 6.14: Priemer objektu.
6.3.2 Príznaky odvodené z priemeru a obsahu
Obsah
Obsah objektu vyjadruje počet bodov patriacich objektu
A=
I (x, y),
(6.8)
(x,y )∈I mg
kde I (x, y) = 1, ak bod patrí objektu a I (x, y) = 0, ak bod patrí pozadiu.
V prípade, že máme objekt reprezentovaný pomocou N hraničných
N
bodov {xi , y i }i=1
, vypočítame obsah nasledovne
1 --N−1
(xi+1 + xi )(y i+1 − y i )- ,
A= 2 - i=0
(6.9)
kde (x0 , y 0 ) = (x N , y N ). Iný vzorec na výpočet obsahu je
.
/N
N
/
(y i − ȳ)2 ,
A = 0 (xi − x̄)2 +
i=1
(6.10)
i=1
kde (x̄, ȳ ) sú súradnice t’ažiska.
Pri nekonvexnom objekte a objekte s dierami sa musíme rozhodnút’,
či do obsahu budeme započítavat’ aj diery a zálivy na okrajoch. Tento obsah tvorí rozdiel medzi obsahom konvexného obalu a čistým obsahom
objektu.
Priemer
Priemer objektu (obr. 6.14) je maximálna vzdialenost’ medzi bodmi objektu
P = max d(Q, R).
(6.11)
Q,R∈Ob j
107
6. P RÍZNAKY TVARU
Obrázok 6.15: Komplexnost’ kruhu je 1. Komplexnost’ druhého objektu je vyššia.
Efektívny priemer
Efektívny priemer je priemer kruhu, ktorý má rovnaký obsah A ako skúmaný objekt
1
d =2
A
.
π
(6.12)
Kruhovitost’
Kruhovitost’ (alebo kompaktnost’) udáva, ako vel’mi je objekt podobný
kruhu a je daná pomerom obsahu objektu A a obsahu kruhu A K s rovnakým obvodom O
A
.
(6.13)
C=
AK
Ked’že
AK =
O2
,
4π
(6.14)
tak
4πA
.
(6.15)
O2
Kruhovitost’ je maximálna pre kruh (C = 1) a blíži sa k nule pre dlhé
tenké objekty.
C=
Komplexnost’
Miera komplexnosti objektu je často používaným príznakom, ktorého definícia však nie je jednotná. Viacerí autori používajú prevrátenú hodnotu
kompaktnosti, ktorá stúpa, čím viac sa odlišuje objekt od kruhu (pozri
obr. 6.15). Ďalším používaným príznakom je pomer obsahu a obvodu objektu, prípadne iné vzt’ahy funkcií obsahu a obvodu.
6.3.3 Osi oblasti
Dôležité vlastnosti objektu sa dajú opísat’ príznakmi založenými na vlastných číslach a vektoroch.
108
6.3. Opis tvaru založený na oblasti
(a) Hlavná a vedl’ajšia os
objektu.
(b) Charakteristická elipsa.
Obrázok 6.16: Súvislost’ charakteristickej elipsy s hlavnou a vedl’ajšou osou objektu. Charakteristická elipsa má rovnaký centrálny moment druhého rádu (varianciu) ako opisovaný objekt.
Hlavná a vedl’ajšia os
Smer, v ktorom objekt dosahuje najväčšiu dĺžku, sa nazýva hlavná os. Na
ňu kolmá je vedl’ajšia os (obr. 6.16(a)). Tieto smery sa dajú určit’ vypočítaním vlastných vektorov kovariančnej matice, pričom za prvky náhodného vektora berieme body objektu. Podrobnejšie o výpočte vlastných
vektorov píšeme v kapitole 12.1.1.
Charakteristická elipsa
Charakteristická elipsa má rovnaký centrálny moment druhého rádu (varianciu) ako opisovaný objekt (obr. 6.16(b)).
Z charakteristickej elipsy vieme odvodit’ niekol’ko príznakov, napríklad percento obsahu elipsy pokryté objektom
PO =
A Ob j ek t 2 El i psa
A El i psa
.100 %,
(6.16)
.100 %,
(6.17)
alebo percento nepokrytia objektu elipsou
NO =
A Ob j ek t −El i psa
A Ob j ek t
použitel’né napr. pri detekcii tvárí.
Pomer hlavnej a vedl’ajšej dĺžky
Hlavná a vedl’ajšia dĺžka sú dĺžky objektu v smere hlavnej a vedl’ajšej osi.
Pomer týchto dĺžok je bezrozmerný príznak (zvaný aj elongácia alebo
109
6. P RÍZNAKY TVARU
Obrázok 6.17: Pomer hlavnej a vedl’ajšej dĺžky sa dá využit’ napríklad na klasifikáciu druhov motýl’ov.
(a) MER
(b) AABB
Obrázok 6.18: Opísaný obdĺžnik MER sa nemení s rotáciou objektu. Vel’kost’
osovo zarovnaného obdĺžnika AABB sa mení.
excentricita, po anglicky aspect ratio) opisujúci tvar objektu (pozri obrázok 6.17).
6.3.4 Opísaný obd ĺžnik
Opísaný obdĺžnik je najmenší obdĺžnik, ktorý obsahuje celý objekt. Príznakom je vel’kost’ (šírka a dĺžka) obdĺžnika alebo ich kombinácia. Poznáme dva typy opísaných obdĺžnikov.
MER
Obdĺžnik na obrázku 6.18(a) sa nazýva minimálny opísaný obdĺžnik (minimal enclosing rectangle – MER). Jeho strany sú zarovnané s hlavnou
a vedl’ajšou osou objektu.
AABB
Obdĺžnik na obrázku 6.18(b) má hrany rovnobežné s osami x a y. Nazýva sa osovo zarovnaný opísaný obdĺžnik (axis aligned bounding box –
AABB). Ako vidíme tento príznak nie je invariantný voči rotácii objektu.
110
6.3. Opis tvaru založený na oblasti
Obrázok 6.19: Objekt zložený z 11 súvislých oblastí (jednotlivé písmená a diakritika) so 6 dierami (písmená o, p, g, a). Eulerovo číslo tohto objektu je 5.
Hranatost’
Pomocou MER vieme určit’ hranatost’ objektu, čiže ako vel’mi sa podobá
na svoj minimálny ohraničujúci obdĺžnik. Hodnota hranatosti je daná
pomerom obsahov objektu A a jeho MER A ME R
Hr =
A
A ME R
.
(6.18)
6.3.5 Topologické príznaky
Eulerovo číslo
Eulerovo číslo charakterizuje topológiu objektu, nie jeho tvar. Je dané
rozdielom počtu súvislých oblastí objektu a počtu dier v objekte. Na obrázku 6.19 vidíme objekt zložený z 11 súvislých oblastí (jednotlivé písmená a diakritika) so 6 dierami (písmená o, p, g, a). Eulerovo číslo tohto
objektu je 5.
Deravost’
Diery v objektoch opisuje aj pomer ich obsahu A D k obsahu vyplneného
objektu A V O
Der =
AD
.
AV O
(6.19)
Tento príznak sa dá využit’ pri optickom rozpoznávaní textu.
Konvexnost’
Región je konvexný, ak pre každé dva body regiónu patrí regiónu aj ich
spojnica. Konvexný obal objektu je najmenší konvexný útvar obsahujúci
daný objekt (obr. 6.20).
111
6. P RÍZNAKY TVARU
Obrázok 6.20: Konvexný obal objektu.
Tvar objektu môžeme charakterizovat’ vzt’ahom
Conv 1 =
OC H
,
O
(6.20)
kde Conv 1 charakterizuje „mieru konvexity“ objektu. Čím je objekt „konvexnejší“, tým viac sa jeho obvod O približuje obvodu konvexného obalu
OC H .
Podobným príznakom opisujúcim „mieru konvexity“ je pomer obsahov objektu A a konvexného obalu AC H
Conv 2 =
A
.
AC H
(6.21)
Oba príznaky nadobúdajú hodnoty z intervalu (0, 1⟩. Konvexný útvar má
oba príznaky rovné 1.
6.3.6 Morfologické príznaky
Kostra
Medzi hlavné morfologické príznaky opisujúce tvar objektu patrí kostra
(pozri kap. 4.12). Jej problémom však je, že šum na hranici objektu vel’mi
ovplyvňuje výsledný tvar kostry.
Hrúbka
Kostru môžeme vytvárat’ pomocou vzdialenostnej transformácie alebo
postupnou eróziou objektu. Hrúbka objektu je potom daná počtom erózií potrebných na zmiznutie objektu alebo maximálnou hodnotou vzdialenostnej transformácie.
112
6.4. Šedotónový obraz
Obrázok 6.21: Horizontálna a vertikálna projekcia jednoduchého objektu.
6.4
Šedotónový obraz
So šedotónovým obrazom sme sa zoznámili v kapitole 4.2. Zo šedotónového obrazu vieme získat’ bohatšiu informáciu o tvare objektu ako z binárneho.
6.4.1 Projekcie
Projekcia (alebo profil) je definovaná ako súčet intenzít v danom smere.
Väčšinou sa používajú projekcie v x-ovom a y-ovom smere (obr. 6.21),
z ktorých vieme určit’ šírku a výšku AABB.
Pr o j x (i ) =
Pr o j y ( j ) =
N
I (i , j ),
(6.22)
I (i , j ),
(6.23)
j =1
M
i=1
kde M × N sú rozmery obrazu a I (i , j ) sú intenzity (v binárnom obraze
{0, 1}).
Pomocou projekcií sa dá napríklad určit’ umiestnenie očí vo vysegmentovanej tvári (obr. 6.22(a)), alebo vymedzit’ riadky pri rozpoznávaní
textu (obr. 6.22(b)).
6.4.2 Opisné štatistiky
Histogram
Histogram intenzít bodov obrazu je funkcia, ktorá pre každú úroveň intenzity udáva počet pixelov v obraze s touto intenzitou. Aby sme mohli
113
6. P RÍZNAKY TVARU
(a)
(b)
Obrázok 6.22: Použitie projekcií na (a) určenie umiestnenia očí a úst vo vysegmentovanej tvári a (b) vymedzenia riadkov pri rozpoznávaní textu.
pomocou histogramu porovnávat’ rôzne vel’ké obrazy, používame normalizované hodnoty relatívnych početností hodnôt intenzít v danom obraze
P (i ) = N (i )/N ,
(6.24)
kde N (i ) je počet pixelov s intenzitou i a N je počet všetkých bodov obrazu.
Z tvaru histogramu vieme určit’ napríklad, či je obraz nízko kontrastný
(histogram je „úzky“, t. j. zaberá len malý interval intenzít – obr. 6.23(a))
alebo určit’ objekt v popredí (ak je histogram bimodálny – objekt je tvorený pixelmi s tou istou hodnotou intenzity, pozadie zasa pixelmi s inou
konštantnou intenzitou – obr. 6.23(b)). Ďalšie vlastnosti môžeme opísat’
štatistickými momentami.
Štatistické momenty
Štatistické momenty opisujú tvar objektu. Detailnejšie sú opísané v dodatkoch A.3.1 a A.5.1. Momenty nižších rádov opisujú geometrické vlastnosti objektu – t’ažisko, obsah, zmenu tvaru. Tieto momenty sa počítajú
priamo z objektu, prípadne z jeho hranice. Momenty vyšších rádov sa používajú na opis projekcií objektu (šikmost’ a špicatost’).
Existuje niekol’ko metód ako kombinovat’ momenty, aby sme dostali
príznaky invariantné voči rotácii, posunutiu a škálovaniu. Najznámejšími
sú Huove momenty, ktoré sú kombináciou normalizovaných centrálnych
momentov (pozri kap. A.5.1). Poznáme aj rotačné momenty, ktoré sú definované v polárnych súradniciach a ortogonálne momenty, ktoré miesto
neortogonálnej bázy x p y q používajú ortogonálne Legendreove, Čebyševove alebo Zernikeove polynómy.
114
6.5. MPEG-7
0
128
255
(a) Histogram málo kontrastného obrazu zaberá len malý interval intenzít.
0
128
255
(b) Pomocou bimodálneho histogramu vieme oddelit’ objekt od pozadia.
Obrázok 6.23: Použitie histogramu na určenie vlastností obrazu, alebo objektov
v obraze.
6.4.3 Energia a entropia
Histogram intenzít alebo projekcie môžeme charakterizovat’ aj energiou
E a entropiou H (kap. 11.5.4)
E=
B
(P (i ))2 ,
(6.25)
i=1
H =−
B
P (i ) log2 P (i ).
(6.26)
i=1
6.5
MPEG-7
Norma MPEG-7 definuje niekol’ko príznakov opisujúcich tvar objektu.
Dva opisujú 2D objekty a dva 3D objekty. V tejto kapitole si priblížime
deskriptor kontúry (ContourShape) a deskriptor regiónu (RegionShape)
pre 2D objekty.
6.5.1 Tvar kontúry
Deskriptor tvaru kontúry je založený na reprezentácii kontúry v škálovom priestore krivosti (Curvature Scale Space – CSS). Táto reprezentácia
je vel’mi kompaktná – priemerná vel’kost’ je 14 bytov.
115
6. P RÍZNAKY TVARU
980
970
F
970
E
960
F
960
E
950
950
940
940
A
A
D
930
D
930
920
B
C
B
920
C
910
910
900
K
890
520
540
560
L
580
600
30
A
620
640
660
B
C
900
520
540
D
560
580
F
600
620
640
660
G
25
20
15
K
L
10
5
0
100
200
300
400
500
Obrázok 6.24: Deskriptor tvaru kontúry. V hornom riadku je kontúra v dvoch štádiách vyhladenia s vyznačenými inflexnými bodmi. Zodpovedajúce hodnoty σ sú
v CSS diagrame vyznačené červenou. Vidíme, že body K a L postupným vyhladením zanikli.
Kontúru objektu postupne vyhladzujeme Gaussovym filtrom, skúmame krivost’ výslednej krivky a zaznamenávame inflexné body kontúry do
CSS diagramu. V CSS diagrame sú na horizontálnej osi indexy bodov na
kontúre (1, . . . N ) a na vertikálnej osi jednotlivé hodnoty σ. Výsledný deskriptor tvoria potom lokálne maximá grafu.
So zvyšujúcim sa parametrom σ Gaussovho jadra sa krivka postupne
vyhladzuje a počet inflexných bodov klesá. Na obrázku 6.24 vidíme kontúru v dvoch štádiách vyhladenia s vyznačenými inflexnými bodmi. Vidíme, že body K a L postupným vyhladením zanikli. Zodpovedajúce hodnoty σ sú v CSS diagrame vyznačené červenou.
Nevýhodou tohto deskriptora je, že aj malé „vlnky“ na kontúre, ktoré
l’udský vizuálny systém nevyhodnotí ako podstatné, dokážu vytvorit’ vel’ké maximá v CSS diagrame. Tento problém sa rieši orezaním CSS diagramu.
116
6.5. MPEG-7
6.5.2 Tvar regiónu
Deskriptor RegionShape používa množinu ART (Angular Radial Transform) koeficientov F nm rádu n a m
F nm =
1 2π
0
0
Vm,n (ρ, θ) f (ρ, θ)dρdθ,
(6.27)
kde f (ρ, θ) je obrazová funkcia v polárnych súradniciach a Vm,n (ρ, θ) je
separovatel’ná ART bázová funkcia
Vm,n (ρ, θ) =
1 (j mθ)
e
cos(πnρ).
π
(6.28)
Výsledný deskriptor používa 35 koeficientov F nm (n < 3, m < 12) normalizovaných koeficientom |F 00 | a kvantovaných na 4 bity, spolu teda má
140 bitov.
117
K APITOLA
7
Príznaky farby
Farebný obraz je väčsinou reprezentovaný v trojrozmernom priestore farieb. Existujú rôzne priestory farieb (pozri kap. 20), každý z nich sa používa pri iných úlohách počítačového videnia.
7.1
Dominantná farba
Najjednoduchším opisom farebného obrazu je prevládajúca, dominantná farba. Dominantných farieb môže byt’ viac, ak každá pokrýva dostatočne vel’kú čast’ obrazu. Deskriptorom dominantných farieb je väčšinou
množina dvojíc (farba, percentuálne zastúpenie v obraze).
Problémom je, že nevieme, ako sú rovnako zafarbené body umiestnené v obraze.
7.2
Histogram farieb
Na farebný obraz v priestore RGB sa môžeme pozerat’ ako na 3 šedotónové obrazy. Z týchto potom extrahujeme príznaky opísané v kapitole 6.4
a zorad’ujeme ich za seba.
V prípade histogramu farieb určíme histogramy jednotlivých farebných kanálov P c = [Nc=0 , . . . Nc=255], kde c ∈ {R,G, B} (obr. 7.1). Výsledný
histogram farieb potom bude
P RGB = [P R |PG |P B ].
118
(7.1)
7.2. Histogram farieb
7000
6000
5000
4000
3000
2000
1000
0
0
100
200
300
400
500
600
700
Obrázok 7.1: Obraz a jeho histogram jednotlivých farebných kanálov.
(a) Dva obrazy obsahujúce rôzne farby.
R0
R127
R255
G127
G255
B127
B255
(b) Rovnaký histogram oboch obrazov.
Obrázok 7.2: Ilustrácia problému s histogramom farieb po zložkách. Obrazy obsahjúce rôzne farby môžu mat’ rovnaký histogram.
Nevýhodou tohoto prístupu je, že farebne rôzne obrazy môžu mat’
rovnaký deskriptor. Táto situácia je znázornená na obrázku 7.2, ked’ histogramy červenej, zelenej a modrej zložky obrazu sú rovnaké, ale farby na
obrazoch sú rôzne. Riešením tohto problému je kvantizácia farieb (výber
reprezentatívnych farieb napríklad pomocou metódy K priemerov – pozri
kap. 15.1) a následné určenia histogramu jednotlivých farieb.
Ďalšou nevýhodou histogramu zložiek aj histogramu kvantovaných
farieb je, že nevystihujú priestorové rozloženie farieb v obraze (obr. 7.3).
119
7. P RÍZNAKY FARBY
Obrázok 7.3: Dva obrazy obsahujúce rovnaké farby, ale na rôznych miestach obrazu.
7.2.1 Histogram priestorového rozloženia farieb
Aby sme opísali aj rozloženie farieb v obraze, použijeme histogram priestorového rozloženia farieb, kde pre každú farbu okrem počtu pixelov majúcich túto farbu, zaznamenáme aj priemerné umiestnenie bi = (x̄i , ȳ i )
(priemer x-ovej a y-ovej súradnice bodov s danou farbou) a štandardnú
odchýlku umiestnenia
x̄i =
ȳ i =
1
σi =
1
Ai
1
N .A i
1
M.A i
x,
(7.2)
y,
(7.3)
d(p, bi ),
(7.4)
c(p)=C i
c(p)=C i
c(p)=C i
kde A i je obsah oblasti majúcej farbu C i , p = (x, y) je bod obrazu a M × N
je rozmer obrazu.
Ak je štandardná odchýlka malá, vieme, že farba je sústredená na malú
oblast’ obrazu. Ak je vel’ká, farba je rozmiestnená po celom obraze.
7.2.2
Ďalšie opisy priestorového rozloženia farieb
Ďašími alternatívami sú rozdelenie obrazu na bloky a extrakcia histogramu v týchto blokoch, prípadne quad-tree rozdelenie obrazu, kde každý list stromu má vlastný histogram.
Farebný korelogram
Farebný korelogram je podobný matici opakovaných výskytov (kap. 8.2).
Do matice sa zapisujú počty výskytov dvojíc (ci , c j ) farieb bodov v určenej
120
7.2. Histogram farieb
A
A
A
A
B
C
C
C
A
D
E
E
E
C
C
C
A
E
D
E
F
F
F
F
E
E
G
G
F
H
I
I
G
G
G
G
F
H
H
H
G
G
J
J
H
H
K
K
G
L
J
J
H
H
J
J
G
J
J
M
J
J
J
N
Obrázok 7.4: Štyri kvantované farby a určenie spojitých oblastí A–N.
Tabul’ka 7.1: Počty bodov v oblastiach. Počet väčší ako prah je zvýraznený.
Región A B C D E F G H I J K L M N
Farba
Vel’kost’ 6 1 6 2 7 6 10 8 2 11 2 1 1 1
vzdialenosti k
-(
)Mk (i , j ) = - (p) | f (p) = c i & f (q) = c j &|d(p, q) = k| - ,
(7.5)
kde d je vzdialenost’ bodov.
Vektor farebnej koherencie
Farebnú koherenciu definujeme ako stupeň príslušnosti farebných bodov k spojitej oblasti. Bod, ktorý je svojou farbou osamotený, prípadne
patrí do malého súvislého regiónu, je nekoherentný. Body, ktoré svojou
farbou tvoria dostatočne vel’ké spojité oblasti, sú koherentné.
Výpočet vektora farebnej koherencie začína kvantovaním farieb do
palety niekol’kých reprezentatívnych farieb. Potom sa určia spojité regióny jednotlivých farieb palety (obr. 7.4).
Následne spočítame body v jednotlivých regiónoch (tab. 7.1) a určíme, či je daný región koherentný alebo nie, podl’a zadanej prahovej vel’kosti regiónu. V našom príklade berieme prah 4.
Nakoniec pre každú farbu palety spočítame body v koherentých a nekoherentných regiónoch. Označme αi počet pixelov v koherentných a βi
121
7. P RÍZNAKY FARBY
Tabul’ka 7.2: Počty koherentných a nekoherentných pixelov jednotlivých farieb.
Farba
α
β
15
0
23
0
6
6
10
4
Obrázok 7.5: Príklad neurčitých regiónov. Oblast’ neurčitosti príslušnosti k jednotlivým blokom je modelovaná elipsou.
v nekoherentných regiónoch farby i (tab. 7.2). Potom vektor farebnej koherencie je
(
)
(α1 , β1 ), . . . (αK , βK ) ,
(7.6)
kde K je počet farieb palety. V našom príklade {(15, 0), (23, 0), (6, 6), (10, 4)}.
Farebné momenty neurčitých regiónov
Obraz môžeme rozdelit’ aj na neurčité (fuzzy) bloky, kde príslušnost’ bodu
k bloku nie je daná striktne, ale pomocou funkcie príslušnosti Rr ∈ ⟨0, 1⟩.
Príklad takéhoto rozdelenia je na obrázku 7.5. Oblast’ neurčitosti príslušnosti k jednotlivým blokom je modelovaná elipsou.
Funkcia členstva sa potom použije aj pri extrakcii prvých troch centrálnych momentov pre jednotlivé farebné kanály. Regióny teda opisujú
tri trojice (priemerná farba, variancia a šikmost’) váhované príslušnost’ou
k regiónu.
7.3
MPEG-7
Norma MPEG-7 definuje štyri deskriptory opisujúce farebnú informáciu
v statických obrazoch. Ide o deskriptor dominantnej farby, škálovatel’ný
122
7.3. MPEG-7
Tabul’ka 7.3: Počty tried HSV histogramu
Počet tried
Odtieň
Saturácia
Hodnota
16
4
2
2
32
8
2
2
64
8
2
4
128
8
4
4
256
16
4
4
deskriptor farby, deskriptor rozloženia farieb a deskriptor štruktúry farieb. Farebné priestory, ktoré norma opisuje, sú RGB, HSV, YCrCb a nový
HMMD (hue-min-max-diff ) priestor, pričom hue má rovnaký význam
ako v priestore HSV, max a min sú maximum a minimum R,G, B hodnôt
a diff je rodiel medzi týmito hodnotami.
7.3.1 Deskriptor dominantnej farby
Tento deskriptor opisuje N najdominantnejších reprezentatívnych farieb
v obraze. Pre každú farbu obsahuje jej súradnice vo farebnom priestore
a percentuálne zastúpenie v obraze. Reprezentatívne farby sú určené zhlukovacou metódou (napríklad metódou K priemerov – kap. 15.1).
Okrem týchto základných informácií obsahuje deskriptor aj opis rozloženia farby v obraze, a to konkrétne informácie o variancii každej farby
a priestorovej koherentnosti (ako „vel’mi“ sú spojené body majúce dominantnú farbu). Norma nestanovuje, ako presne túto koherentnost’ počítame. Môžeme použit’ už spomenutý vektor farebnej koherencie.
Deskriptor sa používa najmä pri výbere a prezeraní obrazov z databázy podl’a jednej, či viacerých významných farieb.
7.3.2 Škálovatel’ný deskriptor farby
Tento deskriptor kóduje histogram hodnôt HSV pomocou Haarovej transformácie.
Histogram má 256 tried. Odtieň je kvantovaný do 16, saturácia a hodnota do 4 tried. Hodnoty v histograme sú orezané na 11-bitové čísla. Tieto
sú potom nelineárne namapované na 4-bitové čísla. Toto mapovanie preferuje nízke hodnoty, ktoré sa vyskytujú s vyššou frekvenciou. Táto reprezentácia je stále dost’ priestorovo náročná (1024 bitov/histogram). Aby
sme potrebné miesto zmenšili, je na tento histogram potom aplikovaná
1D Haarova transformácia (HT). Výsledkom je škálovatel’ný deskriptor,
ktorý podl’a počtu použitých koeficientov HT reprezentuje histogramy
s rôznym počtom tried (pozri tabul’ku 7.3).
123
7. P RÍZNAKY FARBY
Obrázok 7.6: Obraz rozdelený do 8 × 8 blokov a priemerná farba v blokoch.
1
2
9
10
18 19
3
4
5
6
7
8
11 12 13 14 15 17
20
21 22 23 16
26 27 28 29 30
25
31 24 33
34 35 36 37 38 39 32
41
42 43 44 45 46 47 40 49
50
51 52 53 54 55 48 58
59 60
61 62 63 56 57 64
Obrázok 7.7: Cik-cak prechod bloku koeficientov v deskriptore rozloženia farieb.
7.3.3 Deskriptor rozloženia farieb
Tento deskriptor sa počíta v priestore YCbCr a používa sa hlavne pri vyhl’adávaní obrazov podl’a náčrtku. Základom je vektor reprezentatívnych
farieb. Obraz sa rozdelí na 8 × 8 blokov a vypočíta sa priemerná farba
týchto blokov (obr. 7.6). Táto informácia je potom transformovaná 8 × 8
diskrétnou kosínusovou transformáciou (pozri kap. 1.5) do 3 × 64 koeficientov DC TY , DC TC b , DC TCr . Výsledný deskriptor dostaneme cik-cak
prechodom bloku koeficientov (obr. 7.7), aby sme koeficienty pre nízke
frekvencie umiestnili vedl’a seba.
7.3.4 Deskriptor štruktúry farieb
Tento deskriptor je generalizáciou histogramu farieb, ktorý obsahuje aj
informáciu o rozložení farieb v obraze. Na opis štruktúry farieb využíva
štrukturálny element rozmeru 8×8 a do histogramu zapisuje počet štrukturálnych elementov, ktoré danú farbu obsahujú.
124
7.3. MPEG-7
Tabul’ka 7.4: Počty tried HSV histogramu v deskriptore štruktúry farieb.
Komponent
Odtieň
Intenzita
Podpriestor
diff
0
1
2
3
4
0
1
2
3
4
Počet kvantovacích úrovní
pre K CSD tried
K =184
120
64
32
1
1
1
1
8
4
4
4
12
12
6
3
12
12
4
2
24
12
4
2
8
8
8
8
4
4
4
2
4
4
4
4
4
4
4
2
2
4
4
2
Obraz je prevedený do HMMD priestoru, a farby sú kvantované do
palety vel’kosti 32, 64, 120 alebo 184. Paletu vytvoríme nasledovne. Celý
priestor HMMD je rozdelený na 5 podpriestorov podl’a hodnôt súradnice
diff. V každom z týchto podpriestorov sú súradnice odtieň a intenzita (definovaná ako (max+min)/2) kvantované podl’a požadovaného počtu farieb v palete tak, ako je uvedené v tabul’ke 7.4.
Štrukturálny element má konštantnú vel’kost’ pre rôzne vel’ké obrazy.
Škálovaný je priestor, ktorý tento element pokrýva (obr. 7.8). Nech W a H
sú širka a výška obrazu, potom E × E je priestor, ktorý štrukturálny element pokrýva, kde
( )
p = max 0; 0, 5log 2 W H − 8 ,
(7.7)
K = 2p ,
(7.8)
E = 8K .
(7.9)
Ked’ vieme, aký priestor štrukturálny element pokrýva, môžeme vypočítat’ histogram. Pre každú pozíciu štrukturálneho elementu zistíme,
ktoré farby obsahuje. Týmto farbám potom zvýšime hodnotu v histograme (obr. 7.9). Výsledný histogram je následne normalizovaný počtom pozícií štrukturálneho elementu a nelinárne kvantovaný do 8 bitov/trieda.
125
7. P RÍZNAKY FARBY
Obrázok 7.8: Vl’avo je štrukturálny element vel’kosti 8 × 8 pre malé obrazy. Pre
väčšie obrazy (vpravo) sa priestor, pokrytý týmto elementom, škáluje.
Farba
P(ci)
c1
+1
c2
+1
c3
+1
c4
Obrázok 7.9: Vytvorenie histogramu. Pre každú pozíciu štrukturálneho elementu
zistíme, ktoré farby obsahuje. Týmto farbám potom zvýšime hodnotu v histograme. Aj ked’ sa farba c3 nachádza v štrukturálnom elemente 2×, histogram sa
zvýši o 1.
126
K APITOLA
8
Príznaky textúry
Textúra je vel’mi t’ažko definovatel’ná vlastnost’ obrazu. Pre nás textúra
bude rozpoznatel’ná charakteristická variácia intenzít v regióne obrazu,
ktorá sa dá opísat’ a dajú sa podl’a nej určit’ hranice tohto regiónu.
Zmena intenzity môže byt’ rýchla, pomalá, môže mat’ prevládajúci
smer, alebo môže byt’ porovnatel’ná vo všetkých smeroch, môže sa pravidelne opakovat’ alebo byt’ nepravidelná atd’. Pravidelnost’ je najpoužívanejšou vlastnost’ou textúr.
Na opis textúr existuje mnoho metód využívajúcich napríklad rôzne
filtre v priestorovej a frekvenčnej oblasti, autoregresívne modely, Mar-
Obrázok 8.1: Príklady rôznych textúr.
128
8.1. Autokorelácia
kovove náhodné polia, Gaborove filtre, koeficienty vlnkovej transformácie, metódy fraktálnej geometrie, priestorové vzt’ahy intenzít, lokálne binárne vzory (local binary patterns – LBP), Haarove koeficienty a iné.
8.1
Autokorelácia
Jedným z prvých prístupov k charakterizácii textúr bola autokorelácia,
ktorá opisuje lokálne zmeny intenzity, ako aj opakovatel’nost’ vzorov. Nie
je však schopná opísat’ mieru zrnitosti. Korelácia súvisí s konvolúciou
(pozri kap. 2.1).
Autokorelácia je korelácia signálu s rovnakým rovnakým signálom
ρ(u, v) =
MN
(M − u)(N − v)
M−u
x=1
N−v
y =1 I (x, y)I (x + u, y + v)
,
M
N
2
x=1 y =1 I (x, y)
kde I (x, y) je textúra rozmerov M × N a (u, v) posun v smere x a y.
8.2
Matica opakovaných výskytov
Nedostatky autokorelácie odstraňuje matica opakovaných výskytov (cooccurence matrix, MOV). Ako už jej názov naznačuje, matica obsahuje
počty výskytov dvojíc intenzít v určenom smere a vzdialenosti.
Matica je štvorcová, počet riadkov a stĺpcov sa rovná počtu úrovní jasu
v obraze
-(
)Md (i , j ) = - (x, y) | f (x, y) = i & f (x + d x , y + d y ) = j - ,
(8.1)
kde d = (d x , d y ) je vektor posunutia. Na obrázku 8.2 je ukážka matice opakovaných výskytov pre jednoduchý príklad textúry. Vektor posunutia je
d = (1, 0).
Pre praktické použitie sa MOV normalizuje počtom výskytov jednotlivých dvojíc a používa sa symetrická MOV daná ako
Mds (i , j ) = Md (i , j ) + M−d (i , j ).
(8.2)
Najčastejšie sa používajú vektory posunutia (1, 0), (1, 1), (0, 1) a (−1, 1).
Z takto vytvorených MOV sa následne extrahujú štatistické príznaky
ako entropia, energia, momenty, inverzné momenty, maximálna hodnota, korelácia, kontrast, homogénnost’ a d’alšie. Niektoré často používané
príznaky sú uvedené v tabul’ke 8.1, kde L je počet úrovní jasu v obraze.
129
8. P RÍZNAKY TEXTÚRY
6
6
0
6
0
6
0
6
0
Obrázok 8.2: Príklad pravidelnej textúry a jej matica opakovaných výskytov pre
vektor posunutia d = (1,0). Červenou je vyznačených 6 výskytov usporiadanej
dvojice (čierna, šedá).
Tabul’ka 8.1: Príznaky počítané z MOV rozmeru L × L.
8.3
Kontrast
C=
1
(L−1)2
Energia
H=
L
i=1
Homogénnost’
S=
L
i=1
L−1 2
k
k=0
i,j ;|i− j |=k
Md (i , j )
L
2
j =1 Md (i , j )
Md (i,j )
L
j =1 1+|i− j |
Diskrétna Fourierova transformácia
Fourierove (kap. 1.2) fázové a amplitúdové spektrá sa dajú využit’ na opis
textúry. Nech F (u, v) je výsledok Fourierovej transformácie skúmanej textúry. Potom
F (u, v) = R(u, v) + i I (u, v),
(8.3)
kde R(u, v) je reálna a I (u, v) imaginárna zložka spektra.
Spektrá využívané pri opise textúr sú uvedené v tabul’ke 8.2.
Tabul’ka 8.2: Fourierove spektrá.
130
3
Amplitúdové spektrum
|F (u, v)| =
R 2 (u, v) + I 2 (u, v)
Fázové spektrum
I (u,v)
φ(u, v) = arctan R(u,v)
Výkonové spektrum
P (u, v) = |F (u, v)|2 = R 2 (u, v) + I 2 (u, v)
8.4. Gaborove filtre
8.4
Gaborove filtre
L’udským vizuálnym systémom sú inšpirované Gaborove filtre. 2D Gaborov filter je Gaussove jadro modulované plošnou sínusovou vlnou
h(x, y, λ, θ, ψ, σx , σ y ) = g (x , y , θ, σx , σ y )e(x , θ, λ, ψ),
(8.4)
kde g (x , y , θ, σx , σ y ) je Gussove jadro
4 5 2
67
2
1
x
y
exp −
+
g (x , y , θ, σx , σ y ) =
,
2πσx σ y
2σ2x 2σ2y
(8.5)
e(x , θ, λ, ψ) je komplexná sínusoida
e(x , θ, λ, ψ) = exp 2πi f x + ψ =
,
+
x
= exp i 2π + ψ =
λ
+
,
+
,
x
x
= cos 2π + ψ + i sin 2π + ψ
λ
λ
(8.6)
a
(x , y ) = (x cos θ + y sin θ, −x sin θ + y cos θ).
(8.7)
Gaborov filter sa dá rozložit’ na reálnu a imaginárnu zložku nasledovne
4 5 2
67
,
+
2
1
y
x
x
hRe (x, y, Ω) =
+
ψ
,
(8.8)
exp −
+
cos
2π
2πσx σ y
λ
2σ2x 2σ2y
4 5 2
67
,
+
2
1
y
x
x
h I m (x, y, Ω) =
+
ψ
.
(8.9)
exp −
+
sin
2π
2πσx σ y
λ
2σ2x 2σ2y
Parametre Ω = {λ, θ, ψ, σx , σ y } sú opísané v tabul’ke 8.3 a graficky znázornené na obrázku 8.3(a).
Tabul’ka 8.3: Parametre Gaborovych filtrov
λ
vlnová dĺžka
θ
orientácia, smer šírenia vlny
ψ
fázový posun harmonickej zložky
σx , σ y
smerodajná odchýlka, určuje elipticitu Gaussovho jadra
131
8. P RÍZNAKY TEXTÚRY
x
y
σy
σx
θ
y
x
(a)
(b)
Obrázok 8.3: Hlavné parametre Gaborovho filtra a banka filtrov tvorená zmenou
parametrov.
Pre klasifikáciu textúr sa používa množina Gaborovych filtrov s rôznymi parametrami, aby sa zachytili rôzne vlastnosti textúr (škála, orientácia). Príklad takejto množiny, ktorá sa nazýva banka filtrov je na obrázku 8.3(b).
Obrázok 8.4 znázorňuje niekol’ko realizácií Gaborovho filtra s rôznymi parametrami Ω a obrázok 8.5 aplikáciu týchto filtrov na originálny
obraz. Príznaky textúry potom získame tak, že na obraz I (x, y) aplikujeme
reálnu a imaginárnu zložku každého z banky filtrov
J Re (x, y, Ω) = I (x, y) ∗ hRe (x, y, Ω),
(8.10)
J I m (x, y, Ω) = I (x, y) ∗ h I m (x, y, Ω).
(8.11)
Energia E a magnitúda M odozvy filtra je daná nasledovne
2
(x, y, Ω) + J I2m (x, y, Ω),
E (x, y, Ω) = J Re
M(x, y, Ω) = E(x, y, Ω).
(8.12)
(8.13)
Priemerná energia celého obrazu
Ē (x, y, Ω) =
1 E (x, y, Ω),
N x y
(8.14)
kde N je počet pixelov obrazu. Príznakový vektor môžu tvorit’ hodnoty
priemerov a štandardných odchýlok magnitúd odoziev jednotlivých filtrov.
132
8.5. MPEG-7
(a) θ = 0.
(b) θ = 2π/5.
(c) θ = 4π/5.
Obrázok 8.4: Niekol’ko realizácí Gaborovho filtra pre rôzne hodnoty θ a vlnové
dĺžky λ = {10,30}.
(b) θ = 0, λ = 10.
(c) θ = 2π/5, λ = 10.
(d) θ = 4π/5, λ =
10.
(e) θ = 0, λ = 30.
(f) θ = 2π/5, λ = 30.
(g) θ = 4π/5, λ =
30.
(a) Vstupný obraz.
Obrázok 8.5: Vstupný obrázok filtrovaný filtrami z obrázka 8.4.
8.5
MPEG-7
Norma MPEG-7 uvádza tri deskriptory textúry na rôzne použitie. Deskriptor na prehl’adávanie textúr charakterizuje hlavné vlastnosti textúr –
smerovost’, regulárnost’ a zrnitost’. Deskriptor homogénnych textúr počíta lokálne štatistiky frekvenčných vlastností textúry a používa sa na vyhl’adávanie podobných textúr. V prípade nehomogénnych textúr môžeme využit’ histogram lokálnych hrán. V nasledujúcich častiach opíšeme
tieto deskriptory detailnejšie.
8.5.1 Prehl’adávanie textúr
Deskriptor na prehl’adávanie textúr je 12-bitový deskriptor, ktorý opisuje
dvomi bitmi regularitu textúry, šiestimi (2 × 3) bitmi smery, ktoré najviac
133
8. P RÍZNAKY TEXTÚRY
Obrázok 8.6: Textúry s rôznou mierou pravidelnosti zoradené od najmenej po
najviac pravidelnú.
Obrázok 8.7: Textúry s rôznou mierou zrnitosti.
vystihujú orientáciu textúry a štyrmi (2 × 2) bitmi škály, ktoré najviac vystihujú hrubost’ (zrnitost’) textúry. Textúry môžu mat’ viacero charakteristických smerov a škál, preto deskriptor opisuje 2 maximálne hodnoty.
Pravidelnost’ textúry je hodnotená číslami {0, 1, 2, 3}, kde 0 značí neregulárnu (náhodnú) textúru. Periodická textúra s pevne definovaným
smerom a zrnitost’ou je hodnotená číslom 3 (obr. 8.6).
Smer (orientácia) a škála textúry sa dajú zistit’ napr. pomocou banky
Gaborovych filtrov (kap. 8.4). Smer opisujú hodnoty {0, . . . 6}, kde 0 znamená, že textúra nemá dominantný smer. Čísla {1, . . . 6} určujú smery od
0◦ po 150◦ v 30◦ krokoch. Ak má textúra len jeden dominantný smer, zapíše sa jeho hodnota do oboch políčok smeru, rovnako ako ked’ má jednu
dominantnú škálu. Škála (zrnitost’) je hodnotená na stupnici {0, 1, 2, 3},
kde 0 hovorí o jemnej textúre a 3 o vel’mi zrnitej textúre. Príklad rôzne
zrnitých textúr je na obrázku 8.7.
8.5.2 Homogénne textúry
Tento deskriptor používa banku 30 Gaborovych filtrov, ktoré pokrývajú
6 orientácií a 5 škál (obr. 8.8). Z odoziev týchto 30 filtrov sa vypočíta energia a jej štandardná odchýlka a d’alej priemer a štandardná odchýlka intenzity obrazu. Deskriptor teda pozostáva zo 62 údajov
(
)
E 1 , Std(E 1 ), . . . E 30 , Std(E 30 ), I¯, Std(I ) .
134
(8.15)
8.5. MPEG-7
x
y
Obrázok 8.8: Banka 30 Gaborovych filtrov pre deskriptor homogénnych textúr.
(a) Štyri typy smerových hrán, jedna izotropná oblast’.
1
-1
1
1
1
-1
-1
-1
√2
0
0 -√2
0
√2
2
-2
-√2
0
-2
2
(b) Filtre zodpovedajúce typom hrán.
Obrázok 8.9: Rôzne typy detegovaných textúr.
8.5.3 Histogram lokálnych hrán
Tento deskriptor zachytáva distribúciu piatich typov hrán v textúre. Štyri
typy sú smerové hrany (horizontálne, vertikálne a 2 diagonálne) a piaty
typ zachytáva izotropné oblasti (obr. 8.9(a)).
Postup vytvárania deskriptora je na obrázku 8.10. Pôvodný obraz sa
rozdelí na 4 × 4 bloky a z každého bloku sa vypočíta histogram lokálnych
hrán. Vel’kost’ výsledného deskriptora je teda 16 blokov × 5-hodnotový
histogram = 80 hodnôt.
Histogram každého bloku sa vypočíta d’alším rozdelením tohoto bloku na daný počet podblokov. Vel’kost’ týchto podblokov sa mení s rozlíšením obrazu, pretože ich počet je konštantný. Každý podblok je následne
aproximovaný 2 × 2 super-pixelovou oblast’ou priemerných intenzít, na
135
8. P RÍZNAKY TEXTÚRY
Obrázok 8.10: Pôvodný obraz sa rozdelí na 4 × 4 bloky a z každého bloku sa vypočíta histogram lokálnych hrán. Histogram každého bloku sa vypočíta d’alším
rozdelením tohoto bloku na daný počet podblokov. Každý podblok je následne
aproximovaný 2 × 2 super-pixelovou oblast’ou priemerných intenzít.
ktorú sú aplikované hranové filtre uvedené na obrázku 8.9(b). Ak je maximálna odozva týchto filtrov väčšia ako stanovený prah, zvýši sa zodpovedajúca trieda histogramu bloku.
136
K APITOLA
9
Lokálne príznaky
Dôležitým krokom pri rozpoznávaní objektov je extrakcia príznakov. V tejto kapitole predstavíme nový typ príznakov – lokálne príznaky. Porovnáme lokálne a globálne príznaky na konkrétnych príkladoch, budeme sa
venovat’ všeobecnému opisu tohto druhu príznakov a zadefinujeme základné časti algoritmu extrakcie lokálnych príznakov. Ďalej opíšeme niektoré konkrétne algoritmy ako napríklad Harrisov detektor rohov, SIFT,
SURF a ORB a porovnávanie príznakových vektorov. Pozrieme sa na tieto
príznaky v kontexte registrácie obrazov a predstavíme si niektoré typické
aplikácie využívajúce lokálne príznaky ako napríklad spájanie panorám,
stereo-rekonštrukcia, alebo vyhl’adávanie obrazov. Na konci kapitoly podrobnejšie rozoberieme konkrétne použitie opísaných metód v prípadovej
štúdii a načrtneme použitie lokálnych príznakov pre 3D dáta.
9.1
Lokálne vs. globálne príznaky
Ako sme už spomínali v predchádzajúcich kapitolách, v počítačovom videní extrahujeme informáciu o obraze pomocou príznakov. Existuje vel’a
rôznych druhov príznakov založených napríklad na farbe, textúre alebo
tvare. Pri rozpoznávaní objektov rozlišujeme vo všeobecnosti dve úlohy:
1. Rozpoznávanie kategórií objektov (napríklad chrobáky, bicykle)
2. Rozpoznávanie konkrétnych objektov (napríklad Jankova plyšová
panda, Manetova mal’ba: Raňajky v tráve)
138
9.1. Lokálne vs. globálne príznaky
Obrázok 9.1: Príklady dvoch úloh rozpoznávania objektov. Vrchný riadok: Rozpoznávanie kategórie objektov, v tomto prípade chrobákov. Spodný riadok: Rozpoznávanie konkrétneho objektu, v tomto prípade Zamkovského chata v Tatranskom národnom parku.
Pre ilustráciu uvádzame príklady obrazov pre obe úlohy na obrázku 9.1.
Pri týchto úlohách môžeme využit’ globálne príznaky, ktoré analyzujú
obraz ako celok a extrahujú jednu hodnotu (alebo vektor hodnôt) pre celú
maticu pixelov obrazu a lokálne príznaky, ktoré najskôr hl’adajú v obraze
zaujímavé body („interesting points“) a extrahujú potom príznaky z okolia týchto bodov. Jeden obraz je teda opísaný takým množstvom hodnôt
(vektorov hodnôt), aký je počet zaujímavých oblastí v obraze. Pre lepšiu ilustráciu rozdielu týchto dvoch typov príznakov uvádzame nasledujúci príklad. Máme databázu obrazov (napr. všetky obrázky v databáze
Flickr 1 ) a chceme v nej vyhl’adat’ obraz. Pri vyhl’adávaní obrazu pre dopyt Západ slnka (pozri obrázok 9.2), využijeme globálne príznaky farby,
lebo takýto obraz vieme asi najlepšie opísat’ pomocou dominantných farieb, typických pre západ slnka, a ich výskytu v celom obraze.
Ked’ sa však pozrieme na vyhl’adávanie dopytu ovečka Tilia (pozri obrázok 9.3), tak tušíme, že prístup z prvého príkladu by v tomto prípade
1 http://www.flickr.com/
139
9. L OKÁLNE PRÍZNAKY
Obrázok 9.2: Príklad vyhl’adaných obrazov pre dopyt „Západ slnka“. Na vyhl’adanie takéhoto typu obrazu použijeme globálne príznaky farby.
Obrázok 9.3: Príklad vyhl’adaných obrazov pre dopyt ovečka Tilia. Na vyhl’adanie
takéhoto typu obrazu použijeme lokálne príznaky, ktoré nám v tomto prípade
lepšie opíšu hl’adaný objekt.
nefungoval, ak by na obraze boli aj iné objekty, resp., keby bol objekt viditel’ný len čiastočne. Ked’ vyhl’adávame konkrétny objekt, chceme, aby
bol identifikovaný aj v prítomnosti iného objektu (objektov), zaradený
do zložitejšej scény, aj natočený, škálovaný, čiastočne prekrytý alebo zobrazený pri inom osvetlení. V tejto chvíli prichádzajú na rad lokálne príznaky, ktoré nám pomôžu vyhl’adávat’ a opisovat’ konkrétne oblasti patriace objektu v obraze.
9.2
Lokálne príznaky
Počet extrahovaných lokálnych príznakov z obrazu závisí od počtu detegovaných zaujímavých bodov. Ak máme napríklad obraz bielej steny,
žiadne lokálne príznaky z neho extrahovat’ nevieme, lebo na obraze nie
sú žiadne lokálne zaujímavé body.
140
9.3. Metódy detekcie a deskripcie lokálnych príznakov
Ako sme už naznačili v predchádzajúcom texte, proces získavania lokálnych príznakov (LP) sa skladá z dvoch častí:
1. Vyhl’adávanie zaujímavých bodov (IP),
2. Opis zaujímavých bodov a ich okolia vo forme príznakov (deskriptor).
Ked’ hovoríme o LP, je dôležité spomenút’, že väčšina týchto metód sa
snaží hl’adat’ a vytvárat’ také opisné vektory zaujímavých bodov, ktoré zostanú rovnaké, aj ked’ bude objekt, ktorý hl’adáme natočený, škálovaný
a podobne. Preto zvyčajne hovoríme o invariantnosti týchto príznakov
vzhl’adom na nejakú transformáciu.
Príznaky môžu byt’ invariantné geometricky a rádiometricky. Rádiometrickou invariantnost’ou myslíme nezávislost’ od osvetlenia scény.
Geometrickou invariantnost’ou myslíme nezávislost’ od rôznych geometrických transformácií. Pri rozpoznávaní objektov môžeme mat’ na mysli
dva druhy transformácií: afinné transformácie a projektívne transformácie. Afinné transformácie zobrazujú priamku na priamku alebo bod a zachovávajú pomery medzi bodmi ležiacimi na priamke. Patria sem všetky
podobnostné transformácie (posunutie, otočenie, škálovanie a zrkadlenie) plus skosenie a projekcia a ich skladanie.
Ak v počítačovom videní uvažujeme planárny objekt zosnímaný dvoma kamerami z dostatočnej vzdialenosti (objekt pokrýva iba malú čast’
obrazu), považujeme transformáciu objektu medzi obrazmi za afinnú. Ak
podmienka dostatočnej vzdialenosti neplatí, považujeme transformáciu
za projektívnu. V oblasti lokálnych príznakov sa budeme najčastejšie zaoberat’ metódami invariantnými voči afinným transformáciám.
V nasledujúcej sekcii sa budeme venovat’ detektorom a deskriptorom lokálnych príznakov, pričom uvedieme aj známe metódy ktoré implementujú oba procesy. Medzi najznámejšie a najpoužívanejšie patria
metódy SIFT a SURF. Nové metódy však neustále pribúdajú, preto sa pokúsime naznačit’ výskum v tejto oblasti.
9.3
Metódy detekcie a deskripcie lokálnych príznakov
Táto sekcia je rozdelená na dve časti. V prvej si predstavíme niektoré
známe detektory lokálnych príznakov. V druhej časti si najskôr predstavíme jeden z prvých (a doteraz používaných) kompletných algoritmov na
získanie lokálnych príznakov SIFT a potom metódu SURF, ktorá predstavuje výrazné urýchlenie metódy SIFT bez straty presnosti. Ďalej predsta141
9. L OKÁLNE PRÍZNAKY
víme metódy na počítanie binárnych deskriptorov ako je BRIEF a napokon metódu ORB. Okrem algoritmov, ktoré budú v tejto časti opísané,
existuje vel’ké množstvo d’alších metód ako sú SUSAN detektor [SB95],
Wangov a Bradyho detektor [WB95], alebo deskriptory DAISY [TLF08],
FREAK [AOV12] a BRISK [LCS11].
9.3.1 Harrisov detektor rohov
Harrisov detektor rohov bol publikovaný v [HS88]. Tento detektor využíva
deriváciu šedotónového obrazu. Pre obrázok I (x, y) sa Harrisov detektor
M(x, y) definuje pomocou matice derivácií I x , I y (resp.diferencií) intenzity obrazu I :
I x2
Ix I y
M(x) = w(x, y)
,
(9.1)
Ix I y
I y2
x,y
kde w(x, y) je funkcia okna, ktorá je daná ako vážená suma (Gaussovým
jadrom), I x , I y sú derivácie v smere osi x a y. Pre detekciu rohov sú dôležité vlastné hodnoty matice M, teda (λ1 , λ2 ), ktoré vyjadrujú varianciu
v dvoch hlavných smeroch.
Ak je variancia v oboch smeroch vel’ká (teda vlastné hodnoty λ1 , λ2
sú dostatočne vel’ké), leží bod na rohu, a ak je vel’ká len jedna z hodnôt,
leží na hrane.
Zjednodušene si môžeme predstavit’, že našou snahou je nájst’ také
(dostatočne malé) oblasti v obraze, ktoré, keby sme vystrihli a priložili
k rovnako vel’kým oblastiam v ich okolí, rozdiel by bol výrazný.
V [HS88] využívajú namiesto vlastných hodnôt mieru:
R(x) = det(M(x)) − k trace(M(x))2 ,
(9.2)
pričom, ak hodnota R pre bod x presiahne zvolený prah, bod je klasifikovaný ako roh, teda detegovaný ako zaujímavý bod. Táto miera bola
zjednodušená a zefektívnená v článku [ST94], kde autori použili:
R(x) = min(λ1 , λ2 ),
(9.3)
Detektor využívajúci túto mieru je známy pod názvom „Good features to
track“, alebo Shi-Tomasi detektor.
9.3.2 FAST
Detektor FAST bol publikovaný v [RD06]. Je prvým detekčným algoritmom, ktorý vychádza z AST („Accelerated Segment Test“ – akcelerovaného segmentového testu). Skratka FAST vlastne znamená príznaky z AST
142
9.3. Metódy detekcie a deskripcie lokálnych príznakov
Obrázok 9.4: Detekcia zaujímavých bodov pomocou metódy FAST. P je skúmaný
bod, v ktorého okolí vo vzdialenosti r = 3 je 11 susediacich bodov (1 – 7, 13 – 16),
ktorých intenzita je vyššia ako P. Bod P je detegovaný ako zaujímavý bod.
(„features from AST“). Algoritmus pre každý bod P obrazu preskúma jeho
okolie vel’kosti Bresenhamovho (rasterizovaného) kruhu s polomerom r .
Ak je v okolí n susediacich pixelov, pre ktoré platí, že ich intenzita je vyššia v porovnaní so skúmaným pixelom o viac ako t , alebo menšia o viac
ako t , potom je skúmaný pixel považovaný za zaujímavý bod. Algoritmus
používa hodnotu polomeru r = 3 a najlepšie výsledky dosahuje pri n = 9.
Na vytvorenie poradia, v ktorom sa budú jednotlivé pixely testovat’, sa
využívajú rozhodovacie stromy skonštruované z trénovacej množiny dát,
v prípade FASTu autori využili „ID3 – Iterative dichotomizer“ (kap. 14.3).
Na obrázku 9.4 môžeme vidiet’ detegciu bodu P s kruhovým okolím polomeru r = 3 a počtom potrebných bodov n = 9. Body okolia 1 – 6 a 14 –
16 majú väčšiu intenzitu ako P , preto môžeme P považovat’ za zaujímavý
bod.
9.3.3 SIFT
SIFT („Scaleable Invariant Feature Transform“) je technika vytvorená Lowem [Low02], ktorá predstavuje škálovo a rotačne invariantný detektor
a deskriptor zaujímavých bodov. V prvom kroku algoritmu SIFT sú detektorom nájdené zaujímavé body v obraze a v druhom kroku je vytvorený
deskriptor pre každý z týchto bodov. Na konkrétne implementácie metód
detektora a deskriptora sa zameriame v nasledujúcich častiach
Detektor: SIFT využíva na vyhl’adávanie zaujímavých bodov tzv. škálový
priestor (alebo škálovú pyramídu), ktorý vytvára s využitím rozdielu
143
9. L OKÁLNE PRÍZNAKY
Obrázok 9.5: Škálovacia pyramída so 4 oktávami a 5 obrazmi v každej oktáve. Obrazy sú v rámci každej oktávy opätovne filtrované Gaussiánom. Nová oktáva obsahuje obrazy s polovičnou šírkou a výškou oproti predchádzajúcej oktáve.
Gaussiánov (Difference of Gaussians – DoG). Obraz je podvzorkovaný do k vel’kostí – „oktáv“. V každej oktáve je vytvorených n d’alších obrazov opätovným filtrovaním pôvodného obrazu Gaussiánom. Príklad 1D Gaussiánu:
g (x) = 1
2πσ
e −x
2
/2σ2
,
(9.4)
kde hodnota σ označuještandardnú odchýlku a jej hodnota pre
všetky vyhladzovania je 2. Teda pri prvom vyhladzovaní v prvej
oktáve dostaneme z pôvodného obrazu
A, obraz B pomocou Gaussiánu so štandardnou odchýlkou σ = 2. Nasledujúci obraz
C dostaneme z B pomocou vyhladenia Gaussiánom so σ = 2, obraz
C by sme z A dostali pomocou vyhladenia Gaussiánom, opät’ so
144
9.3. Metódy detekcie a deskripcie lokálnych príznakov
Obrázok 9.6: Lokálne extrémy boli nájdené porovnávaním pixelu (biely bod)
s okolím 3×3×3 (čierne body), teda 3×3 okolím v aktuálnom, predchádzajúcom
a nasledujúcom obraze.
σ = 2. Škálová pyramída so 4 oktávami a 5 obrazmi v každej oktáve
je zobrazená na obraze 9.5.
V rámci každej oktávy sa potom všetky susedné obrazy odčítajú,
čím vznikne n − 1 obrazov v každej oktáve. Rozdiel Gaussiánov, ako
bol opísaný v tejto časti, sa využíva preto, lebo predstavuje aproximáciu škálovo normalizovaného Laplaciánu z Gaussiánu (pozri
kapitolu o hranových detektoroch). Výhodou použitia Gaussiánu
je jeho separovatel’nost’, teda možnost’ použitia dvoch 1D filtrov
namiesto jedného 2D filtra, pre zníženie komplexnosti výpočtu. Vo
vytvorenom škálovom priestore sa potom hl’adajú lokálne extrémy
v okolí 3 × 3 × 3. Okolie 3 × 3 × 3 znamená, že sa v rámci obrazu,
v ktorom sa skúmaný bod nachádza, hl’adá v okolí 3 × 3, ale taktiež
sa hl’adá aj v okolí 3 × 3 na nasledovnom a predchádzajúcom obrazu v rámci škálového priestoru (pozri obrázok 9.6). Tieto lokálne
extrémy (teda minimá alebo maximá) sú identifikované ako zaujímavé body. Oktáva, v ktorej bol zaujímavý bod nájdený, bude predstavovat’ „škálu“ daného zaujímavého bodu a určí vel’kost’ okolia,
ktoré sa použije pri extrakcii deskriptora.
Deskriptor: Pre každý zaujímavý bod je vypočítaná hodnota deskriptora
z histogramov orientácií pre 16 štvorcových oblastí v jeho okolí (vel’145
9. L OKÁLNE PRÍZNAKY
Obrázok 9.7: Príklad vytvorenia deskriptora z okolia kl’účového bodu pri metóde
SIFT. Na obraze sú použité štyri (2 × 2) regióny namiesto šestnást’(4 × 4). Každú
oblast’ vzorkujeme 16 bodmi, v ktorých sa vypočíta vel’kost’ a orientácia gradientu
(malé šípky v l’avom obraze). Z týchto sa potom vytvoria výsledné histogramy
orientácií (šípky v pravom obraze).
kost’ oblastí je závislá od škály daného zaujímavého bodu). V prvom kroku je dôležité zistit’ dominantnú orientáciu každého kl’účového bodu a potom vytvorit’ deskriptor bodu relatívne k tejto
orientácii. Každú oblast’ potom navzorkujeme 16 bodmi a v každom z nich (A i j ) vypočítame vel’kost’ (Mi j ) a orientáciu Ri j gradientu nasledovne:
Mi j = (A i j − A i+1,j )2 + (A i j − A i,j +1 )2 ,
(9.5)
Ri j = atan2(A i j − A i+1,j , A i,j +1 − A i j ).
(9.6)
kde atan2 je hodnota arcus tangens s oborom hodnôt (−π, π⟩
⎧
y
arctan x
⎪
⎪
⎪
y
⎪
⎪
⎪
arctan x + π
⎪
⎪
⎪
⎨arctan y − π
x
atan2(y, x) =
⎪
+ π2
⎪
⎪
⎪
⎪ π
⎪
−2
⎪
⎪
⎪
⎩
nedef.
x > 0,
y ≥ 0, x < 0,
y < 0, x < 0,
y > 0, x = 0,
(9.7)
y < 0, x = 0,
y = 0, x = 0.
Týmto hodnotám sú priradené váhy pomocou Gaussovho kruhového okna (pozri obrázok 9.7). Z váhovaných hodnôt v 16 bodoch
sú potom vytvorené histogramy orientácií, pričom každý histogram
146
9.3. Metódy detekcie a deskripcie lokálnych príznakov
pokrýva jednu zo šestnástich (4 × 4) oblastí z okolia zaujímavého
bodu. Dĺžka šípky v histograme predstavuje sumu vel’kostí gradientov v blízkosti daného smeru v oblasti. V každom histograme je
8 smerov, čo pri počte 4 × 4 oblastí znamená 128 hodnôt deskriptora pre jeden zaujímavý bod.
9.3.4 SURF
SURF („Speeded Up Robust Features“) je technika, ktorú autori Bay et
al. [Bay+08] považujú za vylepšenie SIFTu a iných podobných techník.
SURF obsahuje podobne ako SIFT detektor na nájdenie a deskriptor na
opísanie zaujímavých bodov.
Detektor: SURF, podobne ako SIFT deteguje zaujímavé body v škálovej
pyramíde, namiesto Gaussiánov však využíva aproximáciu Gaussiánov druhej parciálnej derivácie v smere y a xy pomocou „box
filtrov“. Na vytvorenie škálového priestoru sa pri tejto metóde nevyužíva zmenšovanie obrazu a následná konvolúcia, ale naopak,
konvolúcia pôvodného obrazu s postupne sa zväčšujúcimi filtrami.
Na nájdenie zaujímavých bodov je na obraz aplikované potlačenie
nemaximálnych hodnôt v okolí 3 × 3 × 3 (okolie 3 × 3 × 3 je okolie
spomínané pri technike SIFT).
Deskriptor: Pre vytvorenie deskriptora zaujímavých bodov je potrebné
v prvom kroku zistit’ jeho orientáciu a v druhom kroku vytvorit’
štvorcovú oblast’ zarovnanú podl’a tejto orientácie (z nej sa bude
deskriptor extrahovat’). Pre určenie orientácie zaujímavého bodu
sa najskôr vypočítajú odozvy Haarovho waveletu v x-ovom a yovom smere v kruhovom okolí bodu s priemerom 6s, pričom s
je vel’kost’ aktuálnej škály. Vypočítaným odozvám sú potom priradené váhy pomocou Gaussovho kruhového okna a sú reprezentované ako vektor v priestore. Dominantná orientácia zaujímavého
bodu je najdlhší z vektorov vypočítaných ako suma vertikálnych
a horizontálnych odoziev, získaných pomocou otočného okna ako
suma všetkých odoziev v danej orientácii. V d’alšom kroku je vytvorená v okolí zaujímavého bodu štvorcová oblast’ zarovnaná podl’a
orientácie. Oblast’ je rozdelená na 4 × 4 subregióny, pričom v každom sú vypočítané 4 príznaky na 5 × 5 pravidelne rozmiestnených
bodoch. Príznakmi sú: suma odoziev Haarovho waveletu v horizontálnom a vertikálnom smere a suma absolútnych hodnôt odoziev Haarovho waveletu v horizontálnom a vertikálnom smere. Des147
9. L OKÁLNE PRÍZNAKY
kriptor zaujímavého bodu potom obsahuje 4 hodnoty pre každú zo
16 oblastí (spolu 64 hodnôt).
9.3.5 BRIEF
Deskriptor: BRIEF alebo Binárne robustné invariantné elementárne príznaky (Binary Robust Invariant Elementary Features) je deskripčná metóda, ktorá bola navrhnutá a popísaná v [Cal+10]. BRIEF je
binárny deskriptor, ktorý opisuje záplatu priloženú k obrazu, kde
každý bit zodpovedá jednému výsledku binárneho testu na rozdiel
intenzity. Môžme si to predstavit’ tak, že v okolí nejakého bodu obrázku rozsypeme n zápaliek. Potom sa pozrieme pod koncové a počiatočné body zápaliek a pre každú zápalku porovnáme ich hodnotu. Výsledný deskriptor dĺžky n bude obsahovat’ 1, ak pre danú
zápalku bola hodnota intenzity pod počiatočným bodom vyšia a
0 naopak. Pre záplatu p (pre príklad záplaty pozri obrázok 9.8), je
vektor príznakov dĺžky n bitov definovaný
f n (p) =
2i−1 τ(p; xi , yi ),
(9.8)
1≤i≤n
kde
τ(p; x, y) =
0 ak p(x) ≤ p(y),
1 ak p(x) > p(y),
(9.9)
kde p(x) je intenzita v bode x.
9.3.6 ORB
Detektor: Detektor, ktorý využíva metóda ORB, sa nazýva oFAST a je modifikáciou metódy FAST. Rozdiel spočíva v tom, že detektor oFAST
prahuje rozdiel intenzít medzi centrálnym pixelom a pixelami v jeho kruhovom okolí s priemerom 9 pixelov. Na nájdenie n zaujímavých bodov algoritmus nastaví najskôr nižší prah tak, aby vyhovelo
viac ako n bodov. Následne tieto body utriedi na základe Harrisovej
miery 9.3, predstavenej v [HS88] a vyberie n najlepších bodov.
Deskriptor: Ako deskriptor využíva ORB modifikáciu BRIEFu, nazvanú
rBRIEF, teda BRIEF s rotáciou. Rotácia detegovaného zaujímavého
bodu je extrahovaná s použitím t’ažiska intenzity okolia. Metóda
vychádza z toho, že vektor zo zaujímavého bodu do t’ažiska (t’ažiska intenzity okolia) indukuje rotáciu. Ked’ zvolíme okolie zaují148
9.3. Metódy detekcie a deskripcie lokálnych príznakov
Obrázok 9.8: Príklad záplaty s 32 čiarami, vytvárajúcej deskriptor dĺžky 32 bitov.
mavého bodu ako záplatu s vel’kost’ou r , môžeme vypočítat’ centroid C záplaty ako
+
,
m 10 m 01
C=
,
,
(9.10)
m 00 m 00
kde m pq sú momenty záplaty, pre ktoré platí, že
m pq = x p y q I (x, y).
(9.11)
x,y
Orientácia takejto záplaty je potom
θ = atan2(m 01 , m 10 ).
(9.12)
V časti venovanej BRIEFu sme spomínali binárne testy na rozdiel
intenzít a spôsob, ako sa počítajú. Pre každú množinu príznakov
obsahujúcu N binárnych testov na pozícii xi , yi môžeme definovat’
maticu 2 × N
+
,
x1 . . . xn
S=
.
(9.13)
y1 . . . yn
Pre rBRIEF autori použili orientáciu θ a jej zodpovedajúcu maticu
rotácie Rθ na zostrojenie matice
S θ = Rθ S.
(9.14)
149
9. L OKÁLNE PRÍZNAKY
Vektor príznakov pre metódu rBRIEF sa potom vypočíta takto
g n (p, θ) :=
2i−1 τ(p; xi , yi ).
(9.15)
(xi ,yi )∈S θ
Pridanie rotačnej invariancie však spôsobuje problém so stratou
variancie v rBRIEFe. Na zníženie korelácie medzi jednotlivými binárnymi testami autori navrhli metódu učenia sa na získanie „dobrej“ podmnožiny binárnych testov. Algoritmom je greedy („pažravé“) prehl’adávanie množiny nekorelovaných testov s priemerom
blízko 0,5 vo všetkých možných binárnych testoch na záplate s vel’kost’ou 31 × 31 pixelov.
9.3.7 Porovnávanie deskriptorov
Dôležitým krokom pri využívaní lokálnych príznakov je aj vzájomné porovnávanie extrahovaných deskriptorov zaujímavých bodov medzi obrazmi a objektami. Klasickým prístupom je v tomto smere metóda brute
force, teda porovnávanie každý s každým. Pri tejto metóde deskriptory
porovnávame postupne so všetkými deskriptormi z nejakej databázy, alebo extrahovanými z druhého obrazu a počítame vzdialenosti medzi nimi,
pričom deskriptor s najmenšou vzdialenost’ou je najlepším kandidátom
na zhodu. Ked’že takýto spôsob porovnávania je vd’aka svojej vysokej zložitosti časovo náročný, v praxi sa používajú rôzne vylepšenia s využitím
usporiadania deskriptorov do stromov, alebo s použitím binárneho hashovania.
9.4
Registrácia objektov
Doteraz sme v tejto kapitole hovorili najmä o využití lokálnych príznakov pri detekcii a rozpoznávaní objektov. V počítačovom videní je často
okrem rozpoznania objektov dôležitá aj registrácia. Len pre príklad uvedieme, že registrácia je dôležitým krokom napríklad v rozšírenej realite
(augmented reality), kde slúži na určenie správneho umiestnenia virtuálnych objektov v reálnom prostredí. Podl’a Zitovej [ZF03] poznáme štyri
typy registrácie
1.
2.
3.
4.
150
Multitemporálna registrácia,
Multimodálna registrácia,
Registrácia scény a modelu,
Multipohl’adová registrácia.
9.5. Využitie lokálnych príznakov
Lokálne príznaky sa dajú priamočiaro použit’ pri poslednom type registrácie, pričom pri ostatných typoch je ich použitie závislé od konkrétnych
podmienok. Ak by sme napríklad chceli zarovnávat’ jeden rez z počítačovej tomografie (CT) s rezom z rovnakého miesta z magnetickej rezonancie (MRI) pri spracovaní medicínskych dát (pri multimodálnej analýze),
nebolo by možné použit’ metódy ako SIFT bez väčších modifikácií. Dôvodom je fakt, že dáta zosnímané týmito dvoma metódami zvýrazňujú
úplne iné štruktúry (CT – kosti, MRI – mäkké tkanivá), a preto lokálne
zaujímavé body v týchto obrazoch nekorešpondujú.
Proces registrácie obsahuje okrem detekcie príznakov aj d’alšie kroky.
Celkovo sú fázy registrácie štyri
1.
2.
3.
4.
Detekcia príznakov,
Párovanie príznakov,
Zistenie modelu transformácie,
Prevzorkovanie a transformácia modelu.
Prvé dve fázy sme predstavili v predchádzajúcich častiach tejto kapitoly.
Pre viac informácií o d’alších dvoch fázach pozri [ZF03].
9.5
Využitie lokálnych príznakov
Lokálne príznaky sa, okrem spomínaného rozpoznávania objektov, využívajú aj pre mnohé iné aplikácie z oblastí počítačového videnia, počítačovej grafiky alebo napríklad aj robotiky.
9.5.1 Spájanie panorám
Jednou z prvých aplikácií bolo „zošívanie“ panorám, kde lokálne príznaky slúžia na nájdenie korešpondenčných bodov medzi jednotlivými
snímkami. Nájdenie dvojíc korešpondujúcich bodov je pri zošívaní panorám dôležité kvôli vzájomnej registrácii dvoch snímkov. Niektoré aplikácie na spájanie panorám stále využívajú manuálne alebo poloautomatické zadávanie korešpondujúcich bodov kvôli väčšej robustnosti. Problém hl’adania korešpondujúcich bodov na dvoch fotografiách obsahuje
z transformácií: transláciu, rotáciu a v určitých prípadoch aj škálovanie.
Vol’nými nástrojmi na vytváranie panorám s využitím lokálnych príznakov, sú napríklad Autopano2 alebo Autostich3 .
2 http://autopano.kolor.com/
3 http://cs.bath.ac.uk/brown/autostitch/autostitch.html
151
9. L OKÁLNE PRÍZNAKY
9.5.2 Stereo rekonštrukcia
Ďalším populárnym typom aplikácie lokálnych príznakov je 3D rekonštrukcia. Podobne ako v predchádzajúcom prípade lokálne príznaky slúžia na nájdenie korešpondencií medzi obrazmi, z ktorých chceme rekonštruovat’ scénu (objekt). Tieto obrazy sú typicky nasnímané pomocou
dvoch kamier (stereorekonštrukcia), ktoré sú umiestnené v známej vzájomnej pozícii určenej v procese kalibrácie kamery.
9.5.3 Vlastná kalibrácia kamery
V počítačovom videní zvyčajne aproximujeme reálnu kameru modelom
štrbinovej kamery. Kalibrácia kamery je proces zist’ovania vnútorných
a vonkajších parametrov kamery, ktoré reprezentujú geometriu štrbinovej kamery. Vonkajších parametrov kamery je šest’ a hovoria o polohe
a orientácii kamery v 3D priestore. Sú to 3 parametre rotácie a 3 parametre translácie. Vnútorných parametrov kamery je pät’ a sú nezávislé
od polohy a orientácie kamery v priestore. Metódy kalibrácie rozdel’ujeme na
1. Kalibráciu zo známej scény (použitie kalibračného objektu so známou geometriou, napríklad šachovnice).
2. Kalibráciu z neznámej scény (použitie viacerých snímok).
Pri kalibrácii z neznámej scény, teda autokalibrácii, sa používa niekol’ko
rôznych snímok rovnakej scény namiesto známeho kalibračného objektu.
Z týchto snímok sa extrahujú dvojice korešpondujúcich bodov a z nich sa
vypočíta fundamentálna matica. Fundamentálna matica je matica 3 × 3,
ktorá dáva do súvisu korešpondujúce body v stereo zobrazení. Z fundamentálnej matice sa potom určia vnútorné parametre kamery a relatívna
pozícia kamery (až na projektívnu transformáciu v 3D priestore). Tak ako
v predchádzajúcich aplikáciách, lokálne príznaky nám poslúžia na vyhl’adanie korešpondencií v snímkach. Použitie metódy SIFT na vlastnú
kalibráciu bolo opísané v [LH06]. Pre podrobnejšie informácie o kalibrácii kamery odporúčame [SHB98].
9.5.4 Sledovanie objektov
Podobne sa lokálne príznaky využívajú aj pri sledovaní (tracking) objektov vo videu. Tu sa hl’adajú korešpondencie medzi lokálne zaujímavými
bodmi detegovanými na sledovanom objekte a nasledujúcimi snímkami
152
9.6. Prípad použitia: Klasifikácia malieb
sekvencie. Tieto korešpondencie potom umožňujú sledovat’ pohyb (bodov) objektu medzi snímkami. Špecifické pre tieto tri typy aplikácií je,
že snímky, na ktorých hl’adáme korešpondenciu, sú zväčša nasnímané
v krátkom časovom odstupe (alebo v rovnakom čase pri stereorekonštrukcii), pod rovnakým osvetlením, v rovnakom prostredí a v podobnej škále.
9.5.5 Vyhl’adávanie obrazov
Lokálne príznaky našli využitie aj pri CBIR („Content based image retrieval“) , teda vyhl’adávaní obrazov na základe ich obsahu. Vyhl’adávanie obrazov je neoddelitel’nou súčast’ou vyhl’adávačov od roku 2001, ked’
Google zaviedol Image search. Pôvodne sa obrazy vyhl’adávali iba na základe ich opisu, resp. na základe textu, ktorý sa nachádzal na stránke
v blízkosti obrazu. S príchodom CBIR sa začali obrazy vyhl’adávat’ aj na
základe vizuálneho obsahu, teda na základe výskytu a rozloženia farieb
alebo textúry. V súčasnosti CBIR systémy obsahujú ovel’a sofistikovanejšie možnosti na vyhl’adávanie, ako je napríklad vyhl’adávanie na základe
používatel’om zadanej kontúry, alebo vyhl’adávanie obrazov obsahujúcich používatel’om zadané objekty. V tejto fáze prichádzajú na rad lokálne príznaky, ktoré sa používajú na detekciu hl’adaných objektov.
Predstavili sme niektoré klasické aplikácie pre využitie lokálnych príznakov, existuje však mnoho d’alších možností na využitie tohto typu príznakov, ktoré tu neboli predstavené a nechávame ich na čitatel’ovej fantázii. V nasledujúcej časti pre úplnost’ rozoberieme krok po kroku konkrétny prípad použitia.
9.6
Prípad použitia: Klasifikácia malieb
Opíšeme prípad použitia lokálnych príznakov pre rozpoznávanie malieb
na fotografiách (budeme vychádzat’ z [Hal10]). Predstavme si, že sme sa
práve vrátili z výstavy v galérii a prezeráme si fotografie, ktoré sme tam
vytvorili. Pri prezeraní zistíme, že fotografia mal’by, ktorá sa nám najviac
páčila, a ktorú sme chceli použit’ ako tapetu na počítači sa nám vel’mi nevydarila. Rozhodneme sa teda vyhl’adat’ kvalitnejšiu fotografiu vo virtuálnej galérii na internete. Vo väčšine týchto galérií sa vyhl’adávajú mal’by
len na základe názvu, autora alebo roku vyhotovenia. Čo však robit’, ak
nevieme ani autora ani názov mal’by? Predstavme si na vyhl’adanie názvu
obrazu nasledujúcu funkciu. Táto funkcia má na vstupe fotografiu a na
153
9. L OKÁLNE PRÍZNAKY
výstupe názov mal’by z databázy, ktorá je čo najpodobnejšia zadanej fotografii. Databáza obrazov, nazvime ju databáza originálov, s ktorými je
náš obraz porovnávaný, obsahuje pre každý obraz jeho názov a súbor
hodnôt extrahovaných deskriptorov detegovaných lokálne zaujímavých
bodov (pre príklad dopytových obrazov a obrazov z databázy fotografií
pozri obr. 9.9).
Ak by sme ako metódu na extrakciu lokálnych príznakov použili metódu SIFT, potom by pre každý obraz v databáze existoval súbor vel’kosti
n × 128 celých čísel, pričom n je počet zaujímavých bodov v obraze.
Vo fáze vyhl’adávania by sme najskôr vypočítali lokálne príznaky pre
vstupný (dopytový) obraz a tieto postupne porovnali s lokálnymi príznakmi (uloženými vo forme súborov) všetkých obrazov databázy. Výsledkom každého porovnania súborov je počet zhôd medzi deskriptormi zaujímavých bodov dopytového obrazu a obrazu z databázy. Najlepší kandidát na správnu klasifikáciu (teda názov obrazu) je potom obraz s najväčším počtom zhôd so vstupným obrazom.
Vo všeobecnosti môžeme za základnú metriku pri porovnávaní deskriptorov pri metóde SIFT, resp. pri metódach používajúcich celočíselné
deskriptory, považovat’ Euklidovskú vzdialenost’. Využit’ sa však teoreticky dajú aj iné metriky, ako napríklad Manhattanská vzdialenost’. Pri
metódach, ktoré využívajú binárne deskriptory (BRIEF, ORB), teda opisujú zaujímavé body vektormi obsahujúcimi len 0 a 1, sa za štandardnú
metriku považuje Hammingova vzdialenost’. Pre porovnanie Euklidovská
vzdialenost’ je vyjadrená nasledovne. Majme dva body v Euklidovskom
priestore p = (p 1 , p 2 , ...p n ) a q = (q 1 , q 2 , ...q n ). Potom vzdialenost’ medzi
p a q je
1
n
de (p, q) =
(p i − q i )2 .
(9.16)
i=1
Ked’ však p = (p 1 , p 2 , . . . p n ) a q = (q 1 , q 2 , . . . q n ) sú dva binárne ret’azce,
môžeme ich podobnost’ vyjadrit’ ako Hammingovu vzdialenost’ nasledovne
n
dh (p, q) =
δ(p i , q i )/n,
(9.17)
i=1
kde
δ(p, q) =
0 ak = (p i > 0 ∧ q i > 0) ∨ (p i = 0 ∧ q i = 0),
1 ak = inak.
(9.18)
Výhodou Hammingovej vzdialenosti je jej vel’mi rýchly a efektívny
výpočet. Pri porovnávaní vel’kej databázy príznakov predstavuje výrazné
154
9.6. Prípad použitia: Klasifikácia malieb
(a)
(b)
Obrázok 9.9: Príklad obrazov z databázy originálov (a) a dopytových obrazov (b).
Databáza originálov obsahuje obrazy zosnímané vo vysokom rozlíšení pod konštantným osvetlením a s minimálnym šumom. Dopytové obrazy boli zosnímané
turistami pri návšteve galérie a slúžia ako dopyt pre vyhl’adanie názvu, resp. korešpondujúceho originálu z databázy originálov.
155
9. L OKÁLNE PRÍZNAKY
zrýchlenie oproti použitiu Euklidovskej vzdialenosti. Táto skutočnost’ je
jedným z hlavných dôvodov úspechu nových metód využívajúcich binárne deskriptory.
Na rozhodnutie, či je určená vzdialenost’ deskriptorov dostatočne malá, aby sa dali deskriptori považovat’ za zhodné, sa používa bud’ jednoduché prahovanie, alebo napríklad metóda druhého najbližšieho suseda
(„second nearest neighbour“). Táto metóda najskôr utriedi jednotlivé porovnávané deskriptory podl’a vzdialenosti a za zhodu považuje najbližší
deskriptor vtedy, ak jeho vzdialenost’ je 0,6 krát menšia ako vzdialenost’
druhého najbližšieho deskriptora.
Ak ako názov hl’adaného obrazu zvolíme vždy názov kandidáta z najväčším počtom zhôd bezohl’adu na počet zistených zhôd sa môže stat’, že
aj obraz, ktorý v databáze nemáme, označíme názvom najlepšieho kandidáta. Pri finálnom vyhodnotení sa v týchto prípadoch zvýši počet obrazov zaradených do nesprávnej triedy. Pre zníženie počtu zlých klasifikácií
treba používat’ prah na minimálny počet zhôd pre správnu klasifikáciu.
Ak použijeme prah príliš nízky, môže sa stat’, že množstvo obrazov nepatriacich do žiadnej kategórie bude nesprávne klasifikované ako do kategórie patriace, ako v spomínanom prípade („false positive“). Ked’ však
nastavíme prah príliš vysoko, bude vel’a obrazov z databázy klasifikovaných, ako keby do nej nepatrili („false negative“). Aby sme sa vyhli tejto
situácii, správnu hodnotu prahu môžeme natrénovat’ na malej časti testovacej databázy (kap. 16).
9.7
3D lokálne príznaky
Doteraz sme sa v kapitole venovali len lokálnym príznakom v obrazoch,
teda 2D príznakom. S príchodom cenovo dostupných zariadení, ako napríklad Kinect od Microsoftu, poskytujúcich RGBD dáta(3 farebné kanály
R,G,B a hĺbková informácia), sa objavili aj metódy extrahujúce lokálne
príznaky v RGBD alebo 3D dátach. Pri RGBD dátach sa ako možnost’ priamočiarej extrakcie lokálnych príznakov, namiesto informácie o intenzite,
ponúka využitie hĺbkovej informácie („depth image“). Na prvý pohl’ad je
zrejmé, že tak, ako sme predpokladali zmenu intenzity na hranách v 2D
obraze, môžeme predpokladat’, že na hranách 3D objektov nachádzajúcich sa v scéne bude nastane zmena hĺbkovej informácie.
K informácii z hĺbkovej mapy môžeme pristupovat’ aj inak, prostredníctvom jej projekcie do mračna bodov. Lokálne príznaky sa potom namiesto z 2D dát extrahujú z 3D mračna bodov. V takejto reprezentácii
môžeme jednotlivé mračná bodov z jednej scény navzájom registrovat’
156
9.7. 3D lokálne príznaky
a spájat’. Registrácia mračien bodov sa v štandardne robí v dvoch krokoch. V prvom sa snažíme mračná približne zarovnat’ použitím jednej
transformácie a v druhom kroku použijeme iteratívnu metódu (napríklad
„ICP – Iterative Closest point“ [BM92]) na finálne zarovnanie. V prvom
kroku sa na približné zarovnanie dajú použit’ modifikované metódy na
extrakciu 2D lokálnych príznakov. Po zovšeobecnení môžeme povedat’,
že spájanie mračien bodov je 3D analógia zošívania 2D panorám.
Algoritmy ako SIFT či SURF, pôvodne vyvinuté na 2D dáta, sa uplatnili aj v mračnách bodov alebo iných reprezentáciách 3D objektov, ako sú
napr. volumetrické dáta. Napr. v [Kno+10] autori navrhli a implementovali modifikáciu algoritmu SURF – 3D (SURF pre voxelizované (voxel – 3D
pixel) dáta), ktorý namiesto kruhového okolia bodu, pracuje so sférickým
okolím. Pre prácu s mračnami bodov (spájanie mračien bodov) odporúčame dynamicky sa rozvíjajúcu Open Source knižnicu PCL (Point Cloud
Library)4 .
4 http://pcl.org
157
K APITOLA
10
Predspracovanie príznakov
V predchádzajúcich kapitolách sme videli, že príznakov opisujúcich obraz je mnoho. Čím viac príznakov extrahujeme z obrazu, tým viac informácie o obraze máme, čím zvyšujeme presnost’ následnej klasifikácie.
Zároveň však stúpa zložitost’ extrakcie, zvyšuje sa pravdepodobnost’, že
viaceré príznaky zachytávajú rovnakú informáciu a rastie zložitost’ trénovania klasifikátora. Tomuto javu sa hovorí „prekliatie“ dimenzionality.
Riešením je zníženie počtu príznakov. K znižovaniu môžeme pristúpit’ dvomi základnými spôsobmi. Prvým z nich je výber príznakov (kap.
11), kde z pôvodných príznakov vyberieme podmnožinu, ktorá rovnako
dobre klasifikuje dáta ako pôvodná množina príznakov. Druhým spôsobom je redukcia príznakov (kap. 12), pri ktorej transformujeme pôvodnú
množinu do menejrozmernej množiny.
Predtým, než pristúpime k znižovaniu dimenzie, musíme rozhodnút’,
či príznaky treba predspracovat’, alebo nie. Ciel’om predspracovania príznakov je úprava dát do formátu vhodného pre používaný klasifikátor,
prípadne transformácia dát, ktorá zlepší výsledok klasifikácie.
Podl’a typu dát delíme príznaky na nemetrické a metrické.
Nemetrické sa d’alej delia na kvalitatívne a poradové.
• Kvalitatívne (nominálne) príznaky umožňujú rozlíšit’ klasifikačné triedy, ale neumožňujú ich porovnat’. Takéto dáta nájdeme napríklad pri klasifikácii geometrických útvarov podl’a
tvaru (kruh, štvorec, . . .) alebo fotografií l’udí podl’a pohlavia
(žena, muž).
158
• Poradové (ordinálne) príznaky umožňnujú usporiadanie príznakov podl’a ich hodnoty, ale nehovoria o vzt’ahu týchto hodnôt. Ak napríklad zaznamenáme pre objekty len ich poradie
podl’a obsahu a nie konkrétnu hodnotu obsahu objektov, nevieme povedat’, o kol’ko alebo kol’ko krát je objekt na prvom
mieste väčší ako objekt na druhom mieste.
Metrické príznaky môžu byt’ diskrétne alebo spojité a delia sa na intervalové a pomerové.
• Intervalové (kardinálne) príznaky sú výsledkom merania v určených jednotkách. Dokážeme z nich určit’, o kol’ko je jedna
hodnota vyššia ako druhá. Všetky inštancie jedného príznaku
musia byt’ merané v rovnakých jednotkách. Nemôžeme merat’ obvod jedného objektu v pixeloch a druhého v centimetroch. Ak intervalovú premennú repezentujeme histogramom,
ide už o poradovú premennú.
• Pomerové príznaky sú vyjadrené v škále s absolútnym nulovým bodom. Vieme z nich určit’ kol’kokrát je jedna hodnota
väčšia ako druhá. Pomer je nezávislý na jednotkách merania,
avšak meranie aj vzt’ažná hodnota musia byt’ vyjadrené v rovnakých jednotkách.
Pri spracovaní dát sú častým problémom chýbajúce údaje, ktoré sa
nepodarilo pre niektoré objekty získat’, alebo sa stratili v priebehu spracovania. Tento problém môžeme riešit’ viacerými prístupmi. Príznak, ktorému chýbajú niektoré hodnoty, môžeme pre všetky objekty ignorovat’.
Ak však rôznym objektom chýbajú hodnoty rôznych príznakov, nemusí
byt’ tento prístup vhodný. Chýbajúci údaj potom môžeme nahradit’ priemernou, najčastejšou alebo náhodnou hodnotou. Prípadne môžeme príznaky, ktoré sú riedko obsadené, spojit’ do jednoho. Potom k nemu pristupujeme ako k nominálnemu príznaku.
V nameraných dátach sa môžu vyskytovat’ aj hodnoty, ktoré sa objavujú s vel’mi nízkou pravdepodobnost’ou. Tieto prvky nazývame odl’ahlé
údaje alebo odl’ahlé pozorovania (outliery). Pri normálnom rozdelení je
obvyklé považovat’ za odl’ahlú tú hodnotu, ktorá je vzdialená od strednej
hodnoty viac ako o 2,24 smerodajných odchýlok. Pravdepodobnost’, že
hodnota bude považovaná za odl’ahlú, je 0,025.
K odl’ahlým údajom musíme pristupovat’ premyslene. Ak ich vylúčime z dát, riskujeme stratu užitočnej informácie. Na druhej strane, ak
ich zahrnieme do tréningu klasifikátora, riskujeme kontamináciu údajov a zníženie presnosti klasifikácie. Existujú robustné štatistické metódy,
159
10. P REDSPRACOVANIE PRÍZNAKOV
170
80
165
160
váha (lb)
váha (kg)
75
70
155
150
65
145
60
155
160
165
170
175
výška (cm)
180
185
(a) Zelená vzorka je bližšie k modrej.
140
50
60
70
výška (inch)
80
(b) Zelená vzorka je bližšie k červenej.
Obrázok 10.1: Vplyv výberu jednotiek merania na vzdialenost’ vzoriek.
ktoré berú do úvahy odl’ahlé údaje, ale minimalizujú ich účinok. Príkladom robustnej opisnej štatistiky je modus alebo medián na rozdiel od
priemeru, ktorý robustný nie je.
10.1
Príznaky bez rozmeru
Pri intervalových príznakoch je vzdialenost’ v priestore príznakov ovplyvnená výberom jednotiek. Je rozdiel, či meriame dĺžku v centrimetroch
alebo palcoch, ako vidno na obrázku 10.1. V niektorých riešených problémoch môže byt’ výhodné príznaky najprv normalizovat’, čím získame pomerovú škálu (bezrozmerné príznaky). Normalizácia však môže zmenšit’
mieru separácie tried. Treba zistit’, či sú normalizované príznaky vhodnejšie a rozhodnút’ sa kvalifikovane.
Bezrozmerný príznak je určený pomer príznaku a určitej referenčnej
hodnoty. Referenčná hodnota môže byt’ najväčšia/najmenšia hodnota
v množine, prípadne iná významná hodnota vzt’ahujúca sa k množine
dát (napr. fyzikálne konštanty, jednotky SI, . . .).
10.2
Škálovanie
Bezrozmerné príznaky dostaneme aj škálovaním. Poznáme niekol’ko základných škálovacích metód.
160
10.2. Škálovanie
Lineárne škálovanie na jednotkový interval
Pri škálovaní na jednotkový interval sa maximálna hodnota dát U zobrazí
na jednotku a minimálna hodnota L na nulu
x̃ =
x −L
U −L
(10.1)
Lineárne škálovanie na jednotkovú dlžku vektora
Viacrozmerné príznaky môžeme normalizovat’ na jednotkové vektory
x̃i =
xi
.
x
(10.2)
Lineárne škálovanie na nulový priemer a jednotkovú varianciu
Pri normalizácii môžeme využit’ aj štatistické vlastnosti príznakov tak, že
novovzniknuté dáta budú mat’ nulový priemer a jednotkovú varianciu
x̃i =
xi − μ̂
,
σ̂
(10.3)
kde μ̂ je výberový priemer a σ̂ výberová štandardná odchýlka.
Pravidlo 3σ
Využitím pravidla 3σ môžeme dáta z normálneho rozdelenia škálovat’
tak, aby 99 % dát ležalo v intervale ⟨0, 1⟩
x̃i =
x i −μ
3σ
2
+1
.
(10.4)
161
K APITOLA
11
Výber príznakov
Pri výbere príznakov ponecháme v príznakovom vektore, ktorý bude vstupovat’ do klasifikácie, len relevantné príznaky, ktoré zachytávajú najviac
informácie o objektoch. K identifikácii relevantných príznakov pristupujeme dvomi spôsobmi, ktoré sa líšia tým, či na výber používame konkrétny klasifikátor, alebo nie.
11.1
Filter a obálka
Filter (obr. 11.1) pri výbere príznakov nepoužíva klasifikátor, ale určuje
všeobecnú vhodnost’ príznakov na základe štatistických, geometrických
alebo informačno-teoretických mier.
Nie
Celá množina
príznakov
Výber
príznakov
Podmnožina
Hodnotenie
Hodnotiace
miery
Trénovacie
dáta
Áno
Hodnotenie
kvality
Testovacie
dáta
Dobré
alebo
Stop?
Testovanie
Klasifikácia
Klasifikátor
Najlepšia podmnožina
Trénovacie
dáta
Obrázok 11.1: Postup výberu príznakov pri použití filtra.
162
11.2. Dopredný výber
Nie
Celá množina
príznakov
Výber
príznakov
Podmnožina
Klasifikátor
Účelová
funkcia
Dobrá?
Trénovacie
dáta
Áno
Hodnotenie
kvality
Testovanie
Testovacie
dáta
Klasifikácia
Klasifikátor
Najlepšia podmnožina
Trénovacie
dáta
Obrázok 11.2: Postup výberu príznakov pri použití obálky.
Na druhej strane obálka (wrapper, obr. 11.2) zist’uje vhodnost’ príznakov na základe výsledkov daného klasifikátora. Príznaky s lepšími výsledkami potom tvoria vybranú podmnožinu.
V oboch prípadoch môžeme hodnotit’ jednotlivé príznaky samostatne, alebo hodnotit’ celé podmnožiny príznakov.
Hodnotenie jednotlivých príznakov je efektívne, l’ahko implementovatel’né, ale nemusí odhalit’ nadbytočnost’ niektorých príznakov, prípadne koreláciu medzi príznakmi. Taktiež je problémom určit’ správne počet príznakov, ktoré budú vybraté do výslednej podmnožiny.
Hodnotenie podmnožín je náročnejšie. Pri D príznakoch máme 2D
podmnožín, ktoré treba ohodnotit’.
Najjednoduchší výber príznakov je dopredná alebo spätná metóda.
Rôzne kombinácie dopredného a spätného výberu, metódy exponenciálneho prehl’adávania (vetvenie a orezávanie, lúčové hl’adanie atd’.) alebo
randomizované algoritmy (simulované žíhanie, genetické algoritmy atd’.)
patria už medzi sofistikovanejšie prístupy.
11.2
Dopredný výber
Ak chceme z D príznakov vybrat’ K (K < D), pri jednokrokovom prístupe
ohodnotíme všetky príznaky zvolenou mierou a priamo vyberieme K najlepších. Tento prístup málokedy funguje, pretože neberie do úvahy vzt’ahy medzi príznakmi. Môže nastat’ situácia, ked’ príznaky, ktoré boli samostatne ohodnotené ako najlepší a najhorší, spolu najlepšie klasifikujú
dáta. Túto možnost’ jednokrokový prístup neodhalí.
Pri iteratívnom prístupe začíname s prázdnou množinou vybraných
príznakov X̃ . V každom kroku vyberieme príznak, ktorý najviac obohatí
163
11. V ÝBER PRÍZNAKOV
množinu X̃ a tento do množiny pridáme. Postup opakujeme, kým nedosiahneme K príznakov (pozri algoritmus 11.1). Nevýhodou tohto prístupu je, že niektoré príznaky sa môžu stat’ nadbytočnými postupom času
(po pridaní iných), ale už ich nevieme odstránit’.
začni prázdnou množinou X̃ = opakuj
pre každý príznak xi ∈ X \ X̃
prerátaj skóre X̃ ∪ {xi }
vyber príznak s najvyšším skóre
kým nevyberieš K príznakov
Algoritmus 11.1: Iteratívny dopredný výber príznakov.
11.3
Spätný výber
Pri spätnom výbere naraz alebo postupne odstraňujeme príznaky. Pri jednokrokovom prístupe ohodnotíme všetky príznaky zvolenou mierou a odstránime D − K najhorších.
Pri iteratívnom prístupe začíname s množinou X̃ obsahujúcou všetky
príznaky. Postupne z nej odoberáme príznaky, ktorých odstránenie maximalizuje ohodnotenie zvyšných príznakov. Postup opakujeme, kým nedosiahneme K príznakov (pozri algoritmus 11.2). Nevýhodou je, že už
odstránené príznaky nemôžeme opätovne pridat’, aj keby ich pridanie
klasifikáciu zlepšilo.
začni celou množinou príznakov X̃ = X
opakuj
pre každý príznak xi ∈ X̃
prerátaj skóre X̃ \ {xi }
odstráň príznak, ktorý maximalizuje skóre
kým neodstrániš D-K príznakov
Algoritmus 11.2: Iteratívny spätný výber príznakov.
164
11.4. Kombinovaný výber
11.4
Kombinovaný výber
Plus L mínus R výber je generalizáciou dopredného a spätného výberu.
Odstraňuje ich nevýhody tým, že zavádza čiastočný backtracking. Problémom zostáva určenie vhodných hodnôt L a R. Pri tejto metóde opakovane pridávame L a odoberáme R príznakov v stanovenom poradí (pozri
algoritmus 11.3).
– L>R: začni prázdnou množinou
opakuj
iteratívne pridaj L príznakov
iteratívne odober R príznakov
kým nemáš K príznakov
– L<R: začni celou množinou príznakov
opakuj
iteratívne odober R príznakov
iteratívne pridaj L príznakov
kým nemáš K príznakov
Algoritmus 11.3: Kombinovaný výber príznakov.
11.5
Ohodnotenie príznakov
Vhodnost’ príznakov záleží na zvolenej miere podobnosti príznakov.
Pri filtri sa používa konzistencia príznakov, medzitriedna vzdialenost’,
štatistická závislost’ alebo informačno-teoretické miery. Pri jednokrokovom výbere sa používajú univariátne metódy, ohodnocujúce vždy jeden
príznak. Pri iteratívnom postupe používame multivariátne metódy, kde
ohodnocujeme množinu príznakov.
Pri obálke sa vyhodnocuje dosiahnutá chyba klasifikátora.
11.5.1 Štatistická závislost’
Mierou štatistickej závislosti je korelačný koeficient. Základná myšlienka
takéhoto hodnotenia príznakov je, že príznak (alebo množina príznakov)
vhodný na klasifikáciu je silno korelovaný s predikovanou triedou a zároveň nekorelovaný s inými príznakmi.
165
11. V ÝBER PRÍZNAKOV
(a) ρ = −1
(b) ρ ∈ (−1,0)
(c) ρ = 0
(d) ρ ∈ (0,1)
(e) ρ = 1
Obrázok 11.3: Hodnoty korelačného koeficientu ρ blízke ±1 značia lineárnu závislost’.
Pearsonov (lineárny) korelačný koeficient dvoch premenných X a Y
je
ρ X ,Y =
Cov(X , Y ) E [(X − μ X )(Y − μY )]
=
,
σ X σY
σ X σY
(11.1)
kde Cov(X , Y ) je kovariancia premenných (pozri dodatok A.5.3). Tento
koeficient nadobúda hodnoty ⟨−1, 1⟩, pričom ρ X ,Y = ±1, ak premenné
sú lineárne závislé a ρ X ,Y = 0, ak sú nekorelované (obr. 11.3).
Nulový korelačný koeficient neznamená nezávislost’ dát. Platí to len
v prípade dát s Gaussovym rozdelením.
Silná závislost’ poukazuje na zbytočnost’ niektorých dát.
Nízka korelácia neznamená absenciu vzt’ahu medzi dátami. Medzi
dátami môže existovat’ nelineárny vzt’ah.
Korelácia však neznamená kauzalitu. Kladná korelácia znamená, že
dané dva javy sa vyskytujú často spolu, ale neznamená, že by jeden jav
bol príčinou druhého. Príčinou oboch môže byt’ iný (aj nepozorovaný)
jav.
Multivariátny prístup je nasledovný. Majme množinu X̃ obsahujúcu
vzorky reprezentované k vybranými príznakmi, ktoré chceme ohodnotit’.
Nech r x y je priemer korelačných koeficientov medzi týmito k príznakmi
a klasifikačnou triedou a r xx je priemer korelačných koeficientov všetkých dvojíc príznakov v X̃ . Potom ohodnotenie množiny X̃ pomocou korelačných koeficientov je dané nasledovne
kr x y
J X̃ = 3
.
k + k(k − 1)r xx
(11.2)
11.5.2 Konzistencia
Nekonzistencia nastáva, ak vzorky s rovnakými príznakmi v podmnožine
patria rôznym triedam. Mieru konzistencie môžeme vyjadrit’ pomocou
166
11.5. Ohodnotenie príznakov
maximálneho počtu nekonzistentných vzoriek patriacich jednej klasifikačnej triede.
Nech v množine X̃ vzoriek reprezentovaných K vybranými príznakmi
existuje M rovnakých vzoriek x. Označme m i počet týchto vzoriek patriacich do triedy ωi . Potom platí, že Ci=1 m i = M, kde C je počet klasifikačných tried. Označme
N J (x) = M − max m i ,
(11.3)
i
potom miera konzistencie množiny X̃ je
J X̃ = 1 −
x∈Uni que ( X̃ ) N J (x)
N
,
(11.4)
kde Unique X̃ je množina všetkých vzájomne rôznych vzoriek z X̃ .
11.5.3 Medzitriedna vzdialenost’
Príznak i budeme preferovat’ pred príznakom j , ak lepšie separuje klasifikačné triedy, t. j. ak ich vzdialenost’ je väčšia pri použití príznaku i .
Množinu príznakov ohodnotíme nasledovne. Označme d X̃ (x, y) zvolenú metriku (Euklidovská, City Block – Manhattan, Chessboard . . . pozri
kapitolu 4.2.1). Potom v danej metrike je vzdialenost’ dvoch tried pri použití K príznakov
D X̃ (ωi , ω j ) =
1
d (x, y).
|ωi ||ω j | x∈ωi y∈ω j X̃
(11.5)
Potom množinu X̃ ohodnotíme ako
C
C
P (ωi )
P (ω j )D X̃ (ωi , ω j ).
J X̃ =
i=1
(11.6)
j =i+1
11.5.4 Informa čno-teoretické miery
Príznak i je vhodnejší na klasifikáciu než príznak j , ak je väčší jeho informačný zisk. Na určenie informačného zisku musíme zadefinovat’ potrebné pojmy z teórie informácií.
Entropia
V teórii informácií entropia určuje mieru neurčitosti daného javu. Kol’ko
informácie získame, ked’ sa dozvieme, akú hodnotu y nadobudla náhod167
11. V ÝBER PRÍZNAKOV
ná premenná Y ? Miera takejto informácie zodpovedá „stupňu prekvapenia“. Ked’ sa dozvieme, že premenná Y nadobudla vysoko nepravdepodobnú hodnotu, dostaneme viac informácie, ako ked’ sa dozvieme, že
nadobudla vel’mi pravdepodobnú hodnotu. Matematicky to môžeme vyjadrit’ ako
h(y) = − log2 p(y),
(11.7)
kde p(y) = P (Y = y). Záporné znamienko zabezpečuje nezápornú hodnotu informácie.
Ak teraz chceme zistit’, kol’ko informácie je celkovo v náhodnej premennej, vypočítame to spriemerovaním informácie všetkých hodnôt, ktoré môže náhodná premenná nadobudnút’. Informačná (Shannonova) entropia diskrétnej náhodnej premennej Y , ktorá nadobúda hodnoty Y =
{y} s pravdepodobnost’ou P (Y = y) = p(y) je daná vzt’ahom
H (Y ) = −
p(y) log2 p(y).
(11.8)
y ∈Y
Príklad 11.1: Určime entropiu binárnej náhodnej premennej Y , pričom p(1) = P (y = 1) = p a p(0) = P (y = 0) = 1 − p.
Entropia tejto premennej je
H (Y ) = −(p(1) log2 p(1) + p(0) log2 p(0)) =
= −p log2 p − (1 − p) log2 (1 − p).
(11.9)
Hodnota entropie je závislá od hodnoty p. Pre p = 1 je entropia nulová, čo
zodpovedá faktu, že premenná Y nadobúda hodnotu 1 s pravdepodobnost’ou 100 % (žiadna neurčitost’). Rovnako pre p = 0, kde Y nadobúda
hodnotu 0. Pre ostatné hodnoty p je entropia nenulová a maximálna je
pre p = 0, 5, ako vidno na obrázku 11.4. Tento výsledok opät’ korešponduje s faktom, že neurčitost’ hodnoty, ktorú premenná Y nadobudne, je
najvyššia, ak hodnoty 1 a 0 majú rovnakú pravdepodobnost’ výskytu.
Podmienená entropia
Špecifická podmienená entropia H (Y |X = x) je entropia príznaku (javu)
Y počítaná z tých vzoriek, v ktorých príznak X dosahuje hodnotu x
H (Y |X = x) = −
P (Y = y|X = x) log2 P (Y = y|X = x).
(11.10)
y ∈Y
Potom podmienená entropia H (Y |X ) je priemernou špecifickou podmienenou entropiou Y
H (Y |X ) =
P (X = x)H (Y |X = x).
(11.11)
x∈X
168
11.5. Ohodnotenie príznakov
1
0.8
0.6
H
0.4
0.2
0
0
0.2
0.4
p
0.6
0.8
1
Obrázok 11.4: Entropia ako funkcia pravdepodobnosti pre náhodnú premennú
s dvomi možnými hodnotami 1 a 0. Entropia je maximálna, ked’ premenná dosiahne hodnoty 1 a 0 s rovnakou pravdepodobnost’ou p = 0,5.
Vzájomná informácia
Vzájomná informácia (v literatúre nazývaná aj informačný zisk) udáva,
ako sa zníži neurčitost’ premennej Y , ak poznáme premennú X
I (Y ; X ) = H (Y ) − H (Y |X ).
(11.12)
Pre vzájomnú informáciu platí
I (Y ; X ) = H (Y ) − H (Y |X ) =
= H (X ) − H (X |Y ) = I (X ; Y ).
(11.13)
Vzájomná informácia pomáha odhalit’ aj nelineárne vzt’ahy medzi
premennými. Ak Y a X sú nezávislé, tak I (Y ; X ) = 0, lebo H (Y |X ) = H (Y ).
Pri hodnotení množiny príznakov X̃ , použijeme multivariátnu vzájomnú informáciu I (Y ; X̃ )
J X̃ = I (Y ; X̃ ) = H (Y ) − H (Y | X̃ ).
11.5.5 Hodnotiace miery
Hodnotiace miery používané pre metódu obálky merajú tzv. prediktívnu
schopnost’ množiny príznakov. Účelovou funkciou, ktorú vyhodnocujeme pre kôzne klasifikátory, je väčšinou odhad chyby klasifikácie (detailne
opísaný v kapitole 16), niekedy môže zahŕňat’ aj cenu natrénovania klasifikátora.
169
K APITOLA
12
Redukcia príznakov
Pri redukcii transformujeme pôvodnú množinu vektorov príznakov do
menej-dimenzionálnej. Pri transformácii sa stráca pôvodný význam príznakov (dĺžka hrany, obsah objektu atd’.), na druhej strane premietnutie
do menej dimenzionálneho priestoru môže zvýšit’ separovatel’nost’ tried,
a tak zlepšit’ klasifikáciu.
Vektory príznakov môžeme transformovat’ bez znalosti klasifikačnej
triedy tak, že minimalizujeme stratu informácie pri transformácii. Jednou z takýchto metód je metóda hlavných komponentov.
V prípade, že poznáme klasifikačnú triedu, hl’adáme také premietanie, ktoré maximalizuje medzitriednu vzdialenost’. Medzi tieto metódy
patrí Fisherova lineárna diskriminačná analýza.
12.1
Metóda hlavných komponentov
Metóda hlavných komponentov (principal component analysis – PCA)
otočí súradnicovú sústavu tak, aby prvá os bola v smere najväčšej variability a d’alšie boli na ňu kolmé v smeroch najväčšej zvyšnej variability.
V nasledujúcom texte budeme pod vektorom rozumiet’ stĺpcový vektor.
Majme N D-rozmerných vektorov príznakov x1 , . . . xN . Postupne nájdeme ortonormálne vektory {b1 , . . . bD }, t. j. také, že bTi b j = δi j , kde δi j je
Kroneckerova δ.
Priemetom vektora xi do smeru b1 je xi1
= bT1 xi .
170
12.1. Metóda hlavných komponentov
Priemerom všetkých vektorov premietnutých do smeru b1 je x̄1 = bT1 x̄,
N
kde x̄ = N1 i=1
xi a varianciou premietnutých vektorov je
V ar 1 =
=
N
N
1 1 (xi1
− x̄1 )2 =
(bT xi − bT1 x̄)2 =
N i=1
N i=1 1
N
1 (bT (xi − x̄))2 = bT1 Σb1 ,
N i=1 1
(12.1)
kde Σ je kovariančná matica pôvodných príznakov.
Chceme teda nájst’ taký vektor b1 , aby sme maximalizovali varianciu
V ar 1 . Jedná sa o maximalizačnú úlohu s obmedzením – vektor b1 je jednotkový, preto použijeme Lagrangeovu metódu neurčitých koeficientov.
Majme maximalizačnú úlohu
max bT1 Σb1 ,
b1
aby bT1 b1 = 1.
Nech λ je Lagrangeov neučitý koeficient, potom maximalizujeme funkciu
L = bT1 Σb1 − λ(bT1 b1 − 1).
(12.2)
∂L
= 2Σb1 − 2λb1 ≡ 0
∂b1
(12.3)
Položením
dostaneme Σb1 = λb1 , a to znamená, že b1 je vlastným vektorom a λ
vlastným číslom matice Σ. Pretože platí bT1 Σb1 = λbT1 b1 = λ, potom λ
musí byt’ najväčšie vlastné číslo, aby výraz bT1 Σb1 bol maximálny. Vlastný
vektor b1 prislúchajúci najväčšiemu vlastnému číslu sa nazýva prvý hlavný komponent.
Vektor b2 nájdeme obdobne. Tentoraz budeme maximalizovat’ varianciu V ar 2 = bT2 Σb2 . Jedná sa o maximalizačnú úlohu s obmedzením –
vektor b2 je jednotkový a kolmý na vektor b1 , preto opät’ použijeme Lagrangeovu metódu neurčitých koeficientov.
Majme maximalizačnú úlohu
max bT2 Σb2 ,
b2
(12.4)
aby bT2 b2 = 1,
(12.5)
bT1 b2
(12.6)
= 0.
171
12. R EDUKCIA PRÍZNAKOV
Nech λ a μ sú Lagrangeove neučité koeficienty, potom maximalizujeme funkciu
L = bT2 Σb2 − λ(bT2 b2 − 1) − μbT1 b2 .
(12.7)
∂L
= 2Σb2 − 2λb2 − μb1 ≡ 0
∂b2
(12.8)
Položením
a po úprave dostaneme Σb2 = λb2 , teda b2 je tiež vlastným vektorom
matice Σ. Ked’že b1 prislúcha najväčšiemu vlastnému číslu, aby sme maximalizovali V ar 2 , b2 musí prislúchat’ druhému najväčšiemu vlastnému
číslu. Vektor b2 sa nazýva druhý hlavný komponent.
Týmto postupom dostaneme, že j -ty hlavný komponent b j je vlastný
vektor prislúchajúci v poradí j -temu najväčšiemu nenulovému vlastnému číslu. Vektory prislúchajúce nulovým vlastným číslam nie sú jednoznačne určené.
Poznáme teda smery otočených bázových vektorov {b1 , . . . bD } a chceme zistit’, kde má ležat’ nový počiatok súradnicovej sústavy, aby suma
štvorcov vzdialeností medzi pôvodnými a premietnutými vektormi bola
minimálna.
Nech je počiatočným bodom nejaký bod p, potom súradnice (v pôvodnom priestore) premietnutého vektora xi sú yi = p+ N
j =1 y i j b j . Suma
štvorcov vzdialeností (pri predpoklade ortonormality) je
E=
N
||xi − yi ||2 =
i=1
=
N
N
||xi − (p +
i=1
||xi − p||2 − 2
i=1
N
N j =1 i=1
N
j =1
y i j b j )||2 =
y i j bTj (xi − p) +
N
N j =1 i=1
y i2j .
(12.9)
L’ahko zistíme, že podmienkami minimalizácie sú y i j = bTj (xi − x̄) a p = x̄.
12.1.1 Použitie PCA
Pri použití PCA postupujeme nasledovne:
1. Najprv originálne vektory príznakov {x1 , . . . xN } vycentrujeme, t. j.
odčítame od nich priemer x̄ a posunieme počiatok súradnicovej
sústavy do bodu x̄ (dvojrozmerný prípad je ukázaný na obrázku
12.1). Kovariančná matica Σ je rovnaká pre centrované aj pôvodné
príznaky, preto môžeme používat’ PCA na centrované príznaky.
172
12.1. Metóda hlavných komponentov
10
6
8
4
6
2
4
0
2
−2
0
−4
−2
−6
−4
−2
0
2
4
6
−6
−8
8
(a) Originálne dáta.
−6
−4
−2
0
2
4
6
8
(b) Transformované dáta.
Obrázok 12.1: Transformácia dát pomocou PCA.
2. Následne vypočítame maticu Σ
Σ=
N
1 1
(xi − x̄)(xi − x̄)T = XXT ,
N i=1
N
(12.10)
kde [X]D×N = [x1 − x̄, . . . xN − x̄].
3. Vypočítame vlastné vektory matice Σ
Σb j = λ j b j .
(12.11)
4. a nakoniec vypočítame súradnice premietnutých vektorov
xi =
D
j =1
bTj (xi − x̄) = BT (xi − x̄) = BT X,
(12.12)
kde B = [b1 , . . . bD ].
V praxi sa často stretávame s prípadmi, že počet vektorov príznakov
je ovel’a menší než dimenzia týchto vektorov N < D. Hodnost’ matice X
je r = rank(X) = rank(Σ) ≤ N a najviac r vlastných hodnôt je nenulových.
Vtedy je neefektívne počítat’ vlastné čísla D × D matice Σ = N1 XXT , ked’
typické algoritmy majú výpočtovú zložitost’ O(D 3 ).
Nech X je D × N matica centrovaných príznakov, potom platí
Σb j = λ j b j ,
1
XXT b j = λ j b j ,
N
1 T T
X XX b j = λ j XT b j ,
N
1 T
X Xp j = λ j p j ,
N
(12.13)
173
12. R EDUKCIA PRÍZNAKOV
kde p j = XT b j je vlastný vektor N × N matice N1 XT X. Vypočítame teda
vlastné vektory p j so zložitost’ou O(N 3 ) a z nich určíme vektory b j :
1 T
X Xp j = λ j p j ,
N
1
XXT Xp j = λ j Xp j ,
N
ΣXp j = λ j Xp j ,
(12.14)
kde Xp j je vlastný vektor matice Σ prislúchajúci vlastnému číslu λ j , a teda
b j ∝ Xp j a zostáva nám učit’ normalizačnú konštantu, aby ||b j || = 1 za
predpokladu, že ||p j || = 1
bj = 1
N λj
Xp j .
(12.15)
12.1.2 Ako môže PCA znížit’ dimenziu?
Predpokladajme, že Σ má plnú hodnost’ a všetky vlastné vektory sú jednoznačne určené. Potom vezmeme len prvých K vlastných vektorov. Zostáva otázkou, aké K zvolit’. Existuje niekol’ko metód, ktoré určujú vhodné K . Predpokladajme, že λ j sú usporiadané zostupne.
Scree graf
Podiel variability zachytenej v j -tom hlavnom komponente je
λj
D
j =1 λ j
.
(12.16)
Ked’ tieto podiely nanesieme na y-ovú os grafu, pričom x-ová os zodpovedá zostupne usporiadaným vlastným číslam, ide o tzv. „scree“ graf
(obr. 12.2), kde optimálne K je určené bodom zlomu.
Kumulatívny pomer zachytenej variability
Môžeme použit’ aj kumulatívny pomer zachytenej variability
K
j =1 λ j
D
j =1 λ j
.
(12.17)
Poväčšine sa K volí také, aby tento pomer bol väčší ako 0,9 alebo 0,95.
174
podiel zachytenej
variability
12.1. Metóda hlavných komponentov
bod zlomu
1
2
3
4
5
6
7
poradie vlastných čísiel
Obrázok 12.2: Scree graf. Vidíme, že v bode zlomu, od štvrtého najväčšieho vlastného čísla začínajú vlastné čísla zachycujúce málo variability. Optimálny počet
vlastných čísiel je 3.
Kaiserovo kritérium
Ďalšou možnost’ou je Kaiserovo kritérium, ktoré volí také K , že hodnota
λK +1 je menšia ako priemer hodnôt λ
D
1 λj .
D j =1
λK +1 <
(12.18)
Andersonov test
Anderson zaviedol testovanie hypotézy, že posledných D − K vlastných
čísel je rovnakých
H0 : λK +1 = λK +2 = . . . = λD ,
(12.19)
H1 : neplatí H0 .
(12.20)
Testovacia štatistika je
V = n(D − K ) ln
a
,
c
(12.21)
kde
a=
D
j =K +1 λ j
(12.22)
D −K
a
5
c=
D
9
j =K +1
6
λj
1
D−K
.
(12.23)
Táto veličina má χ2 rozdelenie s 0, 5(D − K + 2)(D − K − 1) stupňami vol’nosti.
175
12. R EDUKCIA PRÍZNAKOV
10
8
FLDA hlavný smer
6
4
2
PCA hlavný smer
0
−2
−4
−6
−10
−8
−6
−4
−2
0
2
4
6
8
10
Obrázok 12.3: Dáta dvoch klasifikačných tried s vyznačenými hlavnými smermi
určenými metódami PCA a FLDA.
12.1.3 Vzt’ah medzi PCA a SVD
Na výpočet vlastných vektorov matice Σ môžeme použit’ aj singulárny
rozklad matice (singular value decomposition – SVD, pozri dodatok B.1).
Ak k matici centrovaných príznakov X = [x1 − x̄, . . . xN − x̄] zostrojíme
maticu Y = 1 XT , potom YT Y = N1 XXT = Σ.
N
Teda ak pre SVD matice Y platí
Y = USVT ,
(12.24)
tak V sú vlastné vektory matice YT Y = Σ a S má na diagonále odmocninu
vlastných čísel matice Σ.
Takto môžeme použit’ SVD namiesto PCA a nemusíme vyčíslovat’ maticu Σ.
12.2
Fisherova lineárna disriminačná analýza
PCA a SVD nemusia byt’ vždy vhodnými metódami na znižovanie dimenzie, ak potrebujeme príznaky klasifikovat’ do tried. Patria medzi neriadené metódy, lebo o dátach nemáme informáciu, do ktorej klasifikačnej
triedy patria, snažíme sa len odhalit’ smery najväčšej variability v dátach.
Metódy, ktoré využívajú informáciu o klasifikačných triedach, nazývame riadené. Medzi riadené metódy patrí aj Fisherova lineárna disriminačná analýza (FLDA). Príklad rozdielu medzi PCA a FLDA transformáciou dát je na obrázku 12.3.
176
12.2. Fisherova lineárna disriminačná analýza
Metóda FLDA maximalizuje medzitriednu variabilitu a zároveň minimalizuje vnútrotriednu variabilitu premietnutých príznakov. Teda príznaky z jednej triedu budú premietnuté blízko pri sebe a príznaky z rôznych tried čo najd’alej od seba.
Majme N D-rozmerných vektorov príznakov x1 , . . . xN , ktoré patria do
( )C
C klasifikačných tried ω j j =1 , pričom triede ω j patrí N j príznakov.
Priemer vektorov patriacich triede ω j je
1 1 x=
x.
x̄ j = - -ω j - x∈ω
N j x∈ω j
j
(12.25)
Variabilita v jednotlivých triedach je
(x − x̄ j )(x − x̄ j )T .
Sj =
(12.26)
x∈ω j
Celkový priemer všetkých príznakov je
x̄ =
N
1 xi .
N i=1
(12.27)
Celková variabilita v dátach je
S=
N
(xi − x̄)(xi − x̄)T .
(12.28)
i=1
Táto variabilita sa dá zapísat’ ako súčet medzitriednej (SM ) a vnútrotriednej variability (SV ):
S = SM + SV ,
(12.29)
N j (x̄ j − x̄)(x̄ j − x̄)T ,
(12.30)
kde
SM =
SV =
C
j =1
C j =1 x∈ω j
(x − x̄ j )(x − x̄ j )T =
C
j =1
Sj .
(12.31)
Povedzme, že chceme nájst’ taký smer w, ktorý by nám pomohol klasifikovat’ príznaky do jednotlivých tried.
Priemetom vektora xi do smeru w je xi = wT xi .
Priemerom vektorov patriacich triede ω j premietnutých do smeru w
je x̄ j = wT x̄ j .
177
12. R EDUKCIA PRÍZNAKOV
O variabilitách premietnutých príznakov platí:
Q = QM + QV ,
(12.32)
kde
Q=
N
(wT xi − wT x̄)(wT xi − wT x̄)T = wT Sw,
(12.33)
N j (wT x̄ j − wT x̄)(wT x̄ j − wT x̄)T = wT SM w,
(12.34)
i=1
QM =
QV =
C
j =1
C j =1 x∈ω j
(wT x − wT x̄ j )(wT x − wT x̄ j )T = wT SV w.
(12.35)
Fisherova lineárna disriminačná analýza hl’adá vektor w, ktorý maximalizuje hodnotu
J (w) =
wT SM w
,
wT SV w
(12.36)
kde Fisherovo kritérium J je skalár pre konkrétny vektor w.
To znamená, že w maximalizuje medzitriednu a zároveň minimalizuje vnútrotriednu variabilitu premietnutých príznakov.
Položením
dJ
= (wT SM w)2SV w − (wT SV w)2SM w ≡ 0
dw
(12.37)
dostaneme SM w = J SV w. Ked’ predpokladáme, že SV je regulárna, potom
SV−1 SM w = J w, a teda J je vlastné číslo a w je vlastný vektor matice SV−1 SM .
Vidíme, že J maximalizujeme tak, že za w vezmeme vlastný vektor zodpovedajúci najväčšiemu vlastnému číslu.
V prípade C klasikačných tried môžeme určit’ C − 1 projekčných vektorov w j , ktoré usporiadame do projekčnej matice W = [w1 |w2 | . . . |wC −1 ].
Projekciou príznaku xi je potom yi = WT xi .
Fisherove kritérium je v tomto prípade
J (w) =
|WT SM W|
|WT SV W|
,
(12.38)
kde J je skalár pre konkrétnu maticu W. WT SM W a WT SV W sú matice
rozmerov (C − 1) × (C − 1), preto použijeme determinant, aby sme dostali
podiel skalárov.
178
12.2. Fisherova lineárna disriminačná analýza
Riešením FLDA sú také vektory w j , ktoré sú zovšeobecnenými1 vlastnými vektormi prislúchajúcimi zovšeobecneným vlastným číslam matíc
SM a SV , a teda spĺňajú
(SM − SV λ)w = 0.
(12.39)
Zovšeobecnené vlastné čísla a vektory matíc SM a SV môžeme vypočítat’ ako vlastné čísla a vektory matice SV−1 SM , ktorá však nie je symetrická,
preto je táto úloha náročná. Alebo môžeme použit’ nasledovný spôsob.
Maticu SV , ktorá je štvorcová a symetrická rozložíme na SV = UΦUT ,
( )D
kde Φ = diag( ϕi i=1 ) má na diagonále vlastné čísla a U sú ortonormálne
vlastné vektory matice SV . Zadefinujme matice
:(
)D ;
SV1/2 =UΦ1/2 UT , kde Φ1/2 = diag ϕ1/2
,
i
i=1
:(
;
)
D
,
SV−1/2 =UΦ−1/2 UT , kde Φ−1/2 = diag ϕ−1/2
i
i=1
(12.40)
(12.41)
pre ktoré platí SV = SV1/2 SV1/2 , SV−1 = SV−1/2 SV−1/2 a SV−1/2 SV1/2 = I. Preto
SM w − SV λw = 0,
SM (SV−1/2 SV1/2 )w − λSV (SV−1/2 SV1/2 )w = 0
SV−1/2 SM SV−1/2 c − λc = 0,
(12.42)
|
SV−1/2 ,
(12.43)
(12.44)
kde c = SV1/2 w. Matica SV−1/2 SM SV−1/2 je symetrická, preto nájdenie vlastných čísel je jednoduchší problém.
1 Pre štvorcové matice A a B je zovšeobecnený vlastný vektor c prislúchajúci zovšeobenenému vlastnému číslu λ definovaný ako nenulové riešenie rovnice (A − Bλ)c = 0.
179
Zoznam použitej literatúry
[AMK00]
S. Abbasi, F. Mokhtarian a J. Kittler. „Enhancing CSS-based
shape retrieval for objects with shallow concavities“. Image
and Vision Computing 18.3 (2000), str. 199–211.
[AOV12]
A. Alahi, R. Ortiz a P. Vandergheynst. „FREAK: Fast retina keypoint“. Computer Vision and Pattern Recognition (CVPR),
2012 IEEE Conference on. IEEE. 2012, str. 510–517.
[Ban+09]
H. Bang a kol. „Robust object recognition using a color cooccurrence histogram and the spatial relations of image patches“. Artificial Life and Robotics 13.2 (2009), str. 488–492.
[Bay+08]
H. Bay a kol. „Speeded-Up Robust Features (SURF)“. Computer Vision and Image Understanding 110.3 (2008), str. 346–
359.
[BH83]
J. F. Boyce a W. J. Hossack. „Moment Invariants for Pattern
Recognition“. Pattern Recogn. Lett. 1.5-6 (júl 1983), str. 451–
456.
[Bis06]
C. M. Bishop. Pattern Recognition and Machine Learning. Secaucus, NJ, USA: Springer-Verlag New York, Inc., 2006.
[BM92]
P. Besl a N. McKay. „A Method for Registration of 3-D Shapes“. IEEE Transactions on Pattern Analysis and Machine Intelligence 14 (1992), str. 239–256.
180
Zoznam použitej literatúry
[Cal+10]
M. Calonder a kol. „BRIEF: Binary Robust Independent Elementary Features“. Computer Vision ? ECCV 2010. Ed. K. Daniilidis, P. Maragos a N. Paragios. Zv. 6314. Lecture Notes in
Computer Science. Springer Berlin / Heidelberg, 2010, str. 778–
792.
[CBL09]
S. A. Chatzichristofis, Y. S. Boutalis a M. Lux. „Img(Rummager):
An Interactive Content Based Image Retrieval System“. Similarity Search and Applications, International Workshop on
(2009), str. 151–153.
[CC00]
L. d. F. Costa a R. Cesar. Shape Analysis and Classification:
Theory and Practice. Boca Raton, FL, USA: CRC Press, Inc.,
2000.
[CD99]
M. Comer a E. Delp. „Segmentation of textured images using
a multiresolution Gaussian autoregressive model“. Image Processing, IEEE Transactions on 8.3 (1999), str. 408–420.
[Cin+99]
L. Cinque a kol. „Color-based image retrieval using spatialchromatic histograms“. Multimedia Computing and Systems,
1999. IEEE International Conference on. Zv. 2. 1999, 969–973
vol.2.
[CJ83]
G. R. Cross a A. K. Jain. „Markov Random Field Texture Models“. Pattern Analysis and Machine Intelligence, IEEE Transactions on PAMI-5.1 (1983), str. 25–39.
[CM09]
J. Chamorro-Martinez a P. Martinez-Jimenez. „A comparative study of texture coarseness measures“. Image Processing
(ICIP), 2009 16th IEEE International Conference on. 2009,
str. 1337–1340.
[Dav04]
E. R. Davies. Machine Vision: Theory, Algorithms, Practicalities. 3rd. Elsevier, 2004.
[DHS01]
R. O. Duda, P. E. Hart a D. G. Stork. Pattern Classification (2nd
Edition). Wiley-Interscience, 2001.
[EH11]
B. S. Everitt a T. Hothorn. An Introduction to Applied Multivariate Analysis with R. New York: Springer-Verlag, 2011.
[FSZ09]
J. Flusser, T. Suk a B. Zitová. Moments and Moment Invariants
in Pattern Recognition. Wiley & sons, 2009.
[GSP06]
M. Gavrielides, E. Sikudova a I. Pitas. „Color-based descriptors for image fingerprinting“. Multimedia, IEEE Transactions on 8.4 (2006), str. 740–748.
181
Z OZNAM POUŽITEJ LITERATÚRY
182
[Hal10]
Z. Haladová. „Rozpoznávanie a klasifikácia maliarskych plátien na fotografiách turistov“. Diplomová práca. Bratislava:
Univerzita Komenského, 2010.
[HGS08]
T. Hurtut, Y. Gousseau a F. Schmitt. „Adaptive image retrieval
based on the spatial organization of colors“. Computer Vision
and Image Understanding 112.2 (2008), str. 101–113.
[HH87]
P. Hebák a J. Hustopecký. Vícerozměrné statistické metody s
aplikacemi. SNTL/Alfa, 1987.
[HS88]
C. Harris a M. Stephens. „A combined corner and edge detector“. In Proc. of Fourth Alvey Vision Conference. 1988, str. 147–
151.
[HSD73]
R. Haralick, K. Shanmugam a I. Dinstein. „Textural Features
for Image Classification“. Systems, Man and Cybernetics, IEEE
Transactions on SMC-3.6 (1973), str. 610–621.
[Hu62]
M. K. Hu. „Visual pattern recognition by moment invariants“.
Information Theory, IRE Transactions on 8.2 (1962), str. 179–
187.
[Hua+97]
J. Huang a kol. „Image indexing using color correlograms“.
Computer Vision and Pattern Recognition, 1997. Proceedings.,
1997 IEEE Computer Society Conference on. 1997, str. 762–768.
[JF90]
A. Jain a F. Farrokhnia. „Unsupervised texture segmentation
using Gabor filters“. Systems, Man and Cybernetics, 1990. Conference Proceedings., IEEE International Conference on. 1990,
str. 14–19.
[KBG10]
S. Kiranyaz, M. Birinci a M. Gabbouj. „Perceptual Color Descriptor Based on Spatial Distribution: A Top-down Approach“.
Image Vision Comput. 28.8 (aug. 2010), str. 1309–1326.
[KCC89]
J. M. Keller, S. Chen a R. M. Crownover. „Texture description
and segmentation through fractal geometry“. Computer Vision, Graphics, and Image Processing 45.2 (1989), str. 150–166.
[Kno+10]
J. Knopp a kol. „Hough Transform and 3D SURF for Robust
Three Dimensional Classification“. Computer Vision – ECCV
2010. Ed. K. Daniilidis, P. Maragos a N. Paragios. Zv. 6316.
Lecture Notes in Computer Science. Springer Berlin / Heidelberg, 2010, str. 589–602.
[LC05]
K. L. Lee a L. H. Chen. „An efficient computation method
for the texture browsing descriptor of MPEG-7.“ Image Vision
Comput. 23.5 (2005), str. 479–489.
Zoznam použitej literatúry
[LCS11]
S. Leutenegger, M. Chli a R. Y. Siegwart. „BRISK: Binary robust invariant scalable keypoints“. Computer Vision (ICCV),
2011 IEEE International Conference on. IEEE. 2011, str. 2548–
2555.
[LH06]
J. Liu a R. Hubbold. „Automatic Camera Calibration and Scene
Reconstruction with Scale-Invariant Features“. Advances in
Visual Computing. Ed. G. Bebis a kol. Zv. 4291. Lecture Notes in Computer Science. Springer Berlin / Heidelberg, 2006,
str. 558–568.
[Low02]
D. G. Lowe. „Distinctive Image Features from Scale-Invariant
Keypoints“. International Journal of Computer Vision 60.2
(2002), str. 91–110.
[LP89]
F. Lamoš a R. Potocký. Pravdepodobnost’ a matematická štatistika; Štatistické analýzy. Alfa, 1989.
[NA08]
M. Nixon a A. Aguado. Feature extraction and image processing. Academic Press. Academic, 2008.
[PC96]
R. Porter a N. Canagarajah. „A robust automatic clustering
scheme for image segmentation using wavelets“. Image Processing, IEEE Transactions on 5.4 (1996), str. 662–665.
[PJW00]
D. K. Park, Y. S. Jeon a C. S. Won. „Efficient Use of Local Edge
Histogram Descriptor“. Proceedings of the 2000 ACM Workshops on Multimedia. MULTIMEDIA ’00. Los Angeles, California, USA: ACM, 2000, str. 51–54.
[PR79]
D. Proffitt a D. Rosen. „Metrication errors and coding efficiency of chain-encoding schemes for the representation of
lines and edges“. Computer Graphics and Image Processing
10.4 (1979), str. 318–332.
[PR92]
J. Prokop a A. P. Reeves. „A survey of moment-based techniques for unoccluded object representation and recognition“.
CVGIP: Graphical Models and Image Processing. 1992, str. 438–
460.
[Pra01]
W. K. Pratt. Digital Image Processing: PIKS Inside. New York,
NY, USA: John Wiley & Sons, Inc., 2001.
[PZ96]
G. Pass a R. Zabih. „Histogram Refinement for Content-Based
Image Retrieval“. IEEE Workshop on Applications of Computer Vision. 1996, str. 96–102.
183
Z OZNAM POUŽITEJ LITERATÚRY
184
[RD06]
E. Rosten a T. Drummond. „Machine learning for high-speed
corner detection“. European Conference on Computer Vision.
Zv. 1. Máj 2006, str. 430–443.
[RM08]
T. Raykov a G. Marcoulides. An Introduction to Applied Multivariate Analysis. Taylor & Francis, 2008.
[RSZ99]
A. Rao, R. Srihari a Z. Zhang. „Spatial color histograms for
content-based image retrieval“. Tools with Artificial Intelligence, 1999. Proceedings. 11th IEEE International Conference
on. 1999, str. 183–186.
[SB95]
S. M. Smith a J. M. Brady. „SUSAN - A New Approach to Low
Level Image Processing“. International Journal of Computer
Vision 23 (1995), str. 45–78.
[SD96]
M. A. Stricker a A. Dimai. „Color indexing with weak spatial
constraints“. Storage and Retrieval for Image and Video Databases (SPIE). Zv. 2670. 1996, str. 29–40.
[Sha+09]
H. Shao a kol. „Application Research of Homogeneous Texture Descriptor in Content-Based Image Retrieval“. Information Engineering and Computer Science, 2009. ICIECS 2009.
International Conference on. 2009, str. 1–4.
[SHB98]
M. Sonka, V. Hlavac a R. Boyle. Image Processing: Analysis and
Machine Vision. Druhé vyd. CL-Engineering, 30.1998.
[ST94]
J. Shi a C. Tomasi. „Good features to track“. Computer Vision
and Pattern Recognition, 1994. Proceedings CVPR ’94., 1994
IEEE Computer Society Conference on. Jún 1994, str. 593–600.
[Tea80]
M. R. Teague. „Optical calculation of irradiance moments“.
Appl. Opt. 19.8 (apr. 1980), str. 1353–1356.
[TK10]
S. Theodoridis a K. Koutroumbas. Pattern Recognition. Štvrté
vyd. Academic Press, 2010.
[TLF08]
E. Tola, V. Lepetit a P. Fua. „A Fast Local Descriptor for Dense
Matching“. Conference on Computer Vision and Pattern Recognition. 2008.
[VS82]
A. Vossepoel a A. Smeulders. „Vector code probability and
metrication error in the representation of straight lines of finite length“. Computer Graphics and Image Processing 20.4
(1982), str. 347–364.
[WB95]
H. Wang a M. Brady. „Real-time corner detection algorithm
for motion estimation“. Image and Vision Computing 13.9
(1995), str. 695–703.
[Wu+00]
P. Wu a kol. „A texture descriptor for browsing and similarity
retrieval“. Signal Processing: Image Communication 16.1–2
(2000), str. 33–43.
[Wu+99]
P. Wu a kol. „A texture descriptor for image retrieval and browsing“. Content-Based Access of Image and Video Libraries,
1999. (CBAIVL ’99) Proceedings. IEEE Workshop on. 1999, str. 3–
7.
[YWB74]
I. T. Young, J. E. Walker a J. E. Bowie. „An Analysis Technique for Biological Shape“. Information and Control 25 (1974),
str. 357–370.
[ZF03]
B. Zitová a J. Flusser. „Image registration methods: a survey“.
Image and Vision Computing 21 (2003), str. 977–1000.
[ZL04]
D. Zhang a G. Lu. „Review of shape representation and description techniques“. Pattern Recognition 37 (2004), str. 1–19.
[ZZ05]
H. Zhang a D. Zhao. „Spatial Histogram Features for Face Detection in Color Images“. Advances in Multimedia Information Processing - PCM 2004. Ed. K. Aizawa, Y. Nakamura a S.
Satoh. Zv. 3331. Lecture Notes in Computer Science. Springer
Berlin Heidelberg, 2005, str. 377–384.
Č AS Ť III
K LASIFIKÁCIA
K APITOLA
13
Klasifikácia príznakov
S klasifikáciou sa stretávane každodenne bez toho, aby sme si to uvedomili. Napríklad v obchodnom dome je tovar umiestnený do jednotlivých
oddelení na základe určitých klasifikačných kritérií. V oddelení odevov
nájdeme napríklad nohavice a košele, v odelení zeleniny rajčiny a šalát,
v oddelení ovocia pomaranče a jablká. Táto klasifikácia je robená na základe typu/druhu tovaru. Ak by však tento obchodný dom zaviedol iné
klasifikačné kritériá, napríklad za jediný príznak tovaru by zvolil jeho farbu a otvoril by oddelenie zelených tovarov, našli by sme tu spolu jablká,
šalát aj košele.
Vidíme teda, že alternatívne kritériá výberu príznakov vedú k rôznemu výsledku klasifikácie. Klasifikácia je komplexný proces, ktorého súčast’ou je výber príznakov, mier, kritérií, parametrov atd’. a nie iba slepé
použitie niektorého klasifikátora na všetky dostupné príznaky.
V počítačovom videní klasifikácia znamená porozumenie, z akých typov objektov pochádzajú príznaky, čiže určenie triedy objektu na základe
príznakov získaných z objektu. Regresná úloha je podobná klasifikačnej
s hlavným rozdielom, že ciel’ová premenná je číselná. Regresný model
môže predpovedat’ napr. rýchlost’ vetra v závislosti od teploty, tlaku a vlhkosti alebo cenu bytu v závislosti od plochy, lokality, vybavenia a pod.
Pri klasifikácii podl’a určitého pravidla vieme zaradit’ vektor x opisujúci objekt O do jednej z možných klasifikačných tried. Toto pravidlo
rozdel’uje priestor na oblasti, kde všetky vektory v danej oblasti opisujú
objekty z jednej klasifikačnej triedy. Tieto oblasti sa nazývajú rozhodova188
ω2
ω1
ω3
ω1
ω2
Obrázok 13.1: Rozhodovacie oblasti tried ω1 a ω2 nie sú spojité, rozhodovacia
oblast’ triedy ω3 je spojitá.
cie oblasti. Rozhodovacia oblast’ môže, ale nemusí byt’ súvislá (obrázok
13.1). Hranice medzi oblast’ami sa nazývajú rozhodovacie hranice.
Podl’a toho, aké informácie klasifikátory používajú, môžeme ich rozdelit’ nasledovne
Príznakové metódy využívajú na klasifikáciu príznaky extrahované z objektov. Medzi tieto metódy patria
• Štatistické metódy, ktorých ciel’om je minimalizácia počtu nesprávne klasifikovaných objektov na základe ich štatistických
vlastností. Ak pre triedu ωi platí P (x, ωi ) > P (x, ω j =i ), zarad’ujú vektor x opisujúci objekt O do triedy ωi . Bližšie sú opísané v kapitole 14.1.
• Ďalšia množina metód využíva vzdialenosti medzi príznakmi.
Sem patria napríklad techniky najbližších susedov (kap. 14.2),
diskriminačná analýza (kap. 14.4), mechanizmy podporných
vektorov (kap. 14.5), metóda K priemerov (kap. 15.1) alebo hierarchické zhlukovanie (kap. 15.2).
• Medzi biologicky inšpirované metódy patria neurónové siete
(kap. 14.6) alebo samoorganizujúce mapy (kap. 15.3).
• Metódou, ktorá využíva pravidlá a dokáže klasifikovat’ aj nemetrické príznaky, sú rozhodovacie stromy (kap. 14.3).
Syntaktické metódy identifikujú štruktúru objektov. Na opis objektu využívajú elementárne (d’alej nedelitel’né) prvky objektu zvané primitíva a relácie medzi nimi. Takéto relačné štruktúry možno znázornit’ pomocou grafov. Základná myšlienka spočíva v tom, že takýto opis objektu tvorí slovo jazyka nad nejakou abecedou. Úlohou
189
13. K LASIFIKÁCIA PRÍZNAKOV
klasifikácie je rozhodnút’ pomocou určenia gramatiky, ktorá slovo
vygenerovala, do ktorého jazyka skúmané slovo patrí.
Hybridné metódy sú kombináciou predchádzajúcich metód, ked’ príznakovými metódami identifikujeme primitíva na vytvorenie syntaktického opisu objektu. Mnohé reálne problémy sa riešia hybridným prístupom.
Existuje aj iné roztriedenie klasifikačných metód na riadené a neriadené.
Neriadené metódy. Rozhodovacie oblasti môžeme určovat’ čisto na základe podobnosti údajov x, bez toho aby sme vedeli, do ktorej triedy
opisované objekty skutočne patria. Všetky premenné v modeli sú
rovnocenné, žiadna z nich neriadi proces učenia. Takto skonštruované klasifikátory sa nazývajú neriadené a proces ich učenia sa je
učením bez učitel’a. Do tejto skupiny patria metóda K priemerov
(kap. 15.1), hierarchické zhlukovanie (kap. 15.2), Kohonenove siete
(samoorganizujúce mapy) (kap. 15.3). . .
Riadené metódy. Ak existuje jedna ciel’ová premenná, ktorá riadi proces
učenia tak, aby ostatné premenné (prediktory) čo najlepšie predpovedali hodnotu ciel’ovej premennej, hovoríme o riadených klasifikátoroch a o učení sa s učitel’om. Medzi riadené klasifikátory
patria: Bayesovské modely (kap. 14.1), techniky najbližších susedov
(kap. 14.2), rozhodovacie stromy (kap. 14.3), diskriminačná analýza
(kap. 14.4), mechanizmy podporných vektorov (kap. 14.5), neurónové siete (kap. 14.6). . .
Pri klasifikácii musíme vyhodnocovat’ aj dosiahnutú chybu. V prípade
dvoch možných klasifikačných tried, chybná klasifikácia nastane, ak vektor x opisujúci objekt O patrí regiónu R 1 (klasifikačná trieda ω1 ), ale objekt patrí klasifikačnej triede ω2 a naopak. Matematicky to môžeme zapísat’ ako
P (chyba) = P (x ∈ R 1 , ω2 ) + P (x ∈ R 2 , ω1 )
=
P (x, ω2 )dx +
P (x, ω1 )dx.
R1
R2
(13.1)
Ak sú hodnoty P (x, ωk ) porovnatel’né (čo je ekvivalentné s podmienkou P (ωk |x) 1), zvyšuje sa neistota pri zaradení objektu do tried. V takom prípade je v niektorých klasifikátoroch zaradená možnost’ odmietnutia klasifikácie. Napríklad pri rozpoznávaní číslic bude 11 klasifikačných rozhodnutí ω0 , ω1 , . . . ω9 , ωNezaradené . Nezaradené objekty budú tie,
190
pre ktoré platí ∀ωk : P (ωk |x) ≤ φ. Nastavením prahu φ vieme ovplyvnit’
počet nezaradených objektov. Ak nastavíme φ = 1, všetky objektu budú
nezaradené a ak pri K klasifikačných triedach nastavíme φ < 1/K , všetky
objekty budú zaradené.
V prípadoch, ked’ je nesprávna klasifikácia rôznych objektov penalizovaná rôzne, nestačí minimalizovat’ počet nesprávne klasifikovných objektov. V medicínskej diagnostike je nesprávne zaradenie zdravého pacienta medzi chorých pri nasadení liečby s malými vedl’ajšími účinkami
menej nebezpečné ako neliečenie vážne chorého pacienta. Čiže cena nesprávneho zaradenia do triedy ωChorý je nižšia ako cena nesprávneho zaradenia do triedy ωZdravý . Tomuto problému aj iným metódam ohodnotenia kvality klasifikácie sa budeme venovat’ v kapitole 16.
191
K APITOLA
14
Riadené klasifikátory
14.1
Bayesovská teória rozhodovania
Ak poznáme rozloženie pravdepodobnosti, z ktorého príznaky pochádzajú, alebo ak ho vieme odhadnút’, môžeme na klasifikáciu príznakov
použit’ Bayesovský prístup. Výhodou tohto prístupu je, že vieme identfikovat’ prvky, ktoré sa vyskytujú s vel’mi nízkou pravdepodobnost’ou (odl’ahlé hodnoty).
Bayesovský klasifikátor klasifikuje objekt do triedy ωi , do ktorej s najväčšou pravdepodobnost’ou patrí vzhl’adom na príznaky x. Na to, aby
sme túto (aposterioriórnu) pravdepodobnost’ P (ωi |x) vedeli spočítat’, potrebujeme poznat’
• podmienené rozdelenie pravdepodobnosti P (x|ωi ) pre každú klasifikačnú triedu ωi ,
• apriórnu pravdepodobnost’ P (ωi ) pre každú klasifikačnú triedu ωi
(pred pozorovaním vektora x),
• nepodmienené rozdelenie pravdepodobnosti P (x) – určuje pravdepodobnost’ vektora x bez ohl’adu na triedu.
Tieto pravdepodobnosti môžeme určit’ zo vzájomnej pravdepodobnosti
P (x, ωi ).
Naivný Bayesovský klasifikátor vychádza z predpokladu, že efekt, ktorý má hodnota (každého) príznaku na danú triedu, nie je ovplyvnený
hodnotami ostatných príznakov.
192
14.1. Bayesovská teória rozhodovania
P(x,ω1)
R1
P(x,ω1)
P(x,ω2)
R2
R1
(a) L’ubovol’ný prah – väčšia dosiahnutá
chyba.
P(x,ω2)
R2
(b) Optimálny prah – Bayesov klasifikátor.
Obrázok 14.1: Porovnanie dosiahnutej chyby pri l’ubovol’nom a optimálnom
prahu. Rozdiel oproti opimálnemu prahu je vyznačený tmavšou výplňou.
Na výpočet aposterioriórnych pravdepodobností každej triedy použijeme Bayesovo pravidlo (pozri kapitolu A.1.1)
P (ωi |x) =
P (x|ωi )P (ωi )
.
P (x)
(14.1)
Bayesov klasifikátor potom priradí vzorku x do triedy ωi , ak pre každé
j = i platí
P (x|ωi )P (ωi ) P (x|ω j )P (ω j )
≥
.
P (x)
P (x)
(14.2)
Hodnota P (x) = Kj=1 P (x|ωi )P (ω j ) sa vyskytuje na oboch stranách
nerovnice, preto vzorka x patrí do triedy ωi ∗ , ktorej rozhodovacia funkcia
di (x) = P (x|ωi )P (ωi )
(14.3)
dosiahne najvyššiu hodnotu
i ∗ = argmax di (x).
i
(14.4)
14.1.1 Optimalita Bayesovho klasifikátora
Pri klasifikácii do dvoch rovnako pravdepodobných tried (P (ω1 ) = P (ω2 ))
sa dá dosiahnutá chyba klasifikácie vyjadrit’ ako
P (chyba) =
P (x, ω2 )dx +
P (x, ω1 )dx,
(14.5)
R1
R2
kde R i je rozhodovacia oblast’ triedy ωi . Na obrázku 14.1(a) vidíme príklad rozhodovacích oblastí. Chyba, ktorú tento klasifikátor dosiahol, je
193
14. R IADENÉ KLASIFIKÁTORY
5
5
5
4
4
4
3
3
3
2
2
2
1
1
0
0
0
−1
−1
−1
−2
−2
−2
−3
−3
−4
−5
1
−3
−4
−2
0
2
4
6
−5
8
−4
−4
−2
0
2
4
6
−5
8
(a) Rovnaké diagonálne (b) Rovnaké diagonálne
matice – rovnaké variancie, matice – rôzne variancie,
nulová kovariancia.
nulová kovariancia.
5
5
4
4
3
3
2
2
1
−2
0
2
4
6
8
(c) Rovnaké matice – rôzne
kovariancie, nenulová kovariancia.
1
0
0
−1
−1
−2
−2
−3
−3
−4
−5
−4
−4
−2
0
2
4
6
8
(d) Rôzne diagonálne matice – rôzne variancie, nulová kovariancia.
−5
−2
0
2
4
6
8
(e) Rôzne matice – rôzne
variancie, nenulová kovariancia.
Obrázok 14.2: Rozhodovacie hranice troch klasifikačných tried pre rôzne typy
kovariančných matíc. V prípade (a), (b) a (c) sú kovariančné matice v triedach
rovnaké a rozhodovacie hranice sú lineárne. V prípade (d) a (e) sú kovariančné
matice v triedach rôzne a rozhodovacie hranice sú nelineárne. V týchto dvoch
prípadoch vidíme aj pohl’ad na väčšiu oblast’, z ktorej výrez pochádza.
zjednotením červenej a modrej oblasti. Červená vznikne nesprávnou klasifikáciou objektom triedy ω2 do triedy ω1 , modrá pri klasifikácii objektov
triedy ω1 do triedy ω2 . Dosiahnutú chybu minimalizujeme, ked’ objekty,
pre ktoré P (x, ω1 ) > P (x, ω2 ) zaradíme do triedy ω1 a naopak (obr. 14.1(a)).
Vieme, že P (x, ωi ) = P (ωi |x)P (x) = P (x|ωi )P (ωi ). Preto do triedy ω1 zaradíme objekty, pre ktoré P (x|ω1 ) > P (x|ω2 ), čo pri predpoklade rovnakej
pravdepodobnosti tried zodpovedá Bayesovmu rozhodovaciemu kritériu
(14.4).
14.1.2 Rozhodovacie hranice
Tvar rozhodovacej hranice v Bayesovskom rozhodovaní záleží na hodnotách kovariančnej matice (obr. 14.2). V prípade rovnakých kovariančných
matíc tried sú rozhodovacie hranice lineárne, pri rôznych kovariančných
194
14.2. Techniky najbližších susedov
(a)
(b)
Obrázok 14.3: Príklad klasifikácie neznámej vzorky metódou najbližších susedov
v závislosti na K. (a) Pre K = 3 parí neznámy objekt do červenej triedy a (b) pre
K = 7 do modrej triedy.
maticiach to už neplatí. Obrázok 14.2 obsahuje príklady rôznych typov
kovariančných matíc a im zodpovedajúcich rozhodovacích hraníc.
14.2
Techniky najbližších susedov
Tieto techniky sa nazývajú podl’a toho, že klasifikáciu vzorky ovplyvňujú
len jej najbližší susedia. Na obrázku 14.3 vidíme vzorky patriace do dvoch
klasifikačných tried a neznámu vzorku, ktorú chceme klasifikovat’. V prípade, že o klasifikácii rozhodujú traja najbližší susedia, tak neznáma vzorka patrí do červenej triedy.
Pseudokód metódy najbližších susedov je opísaný algoritmom 14.1.
Vidíme, že postup je vel’mi jednoduchý, má však vel’kú nevýhodu, že pri
klasifikácii potrebuje mat’ k dispozícii všetky trénovacie dáta a pre každú
neznámu vzorku musíme spočítat’ vzdialenosti ku všetkým trénovacím
dátam.
Nájdi K najbližších susedov vzorky
Klasifikuj vzorku do triedy,
do ktorej patrí väčšina z K susedov
Algoritmus 14.1: Algoritmus klasifikácie metódou najbližších susedov.
Pri metóde najbližších susedov treba rozhodnút’, ako budeme určovat’ „blízkost’“ dát, čiže akú metriku použijeme. Toto rozhodnutie urobíme na základe vlastností trénovacích dát. Na obrázku 14.4(a) vidíme,
že pri husto vzorkovaných dátach môžeme použit’ Euklidovskú metriku
195
14. R IADENÉ KLASIFIKÁTORY
(a)
(b)
(c)
Obrázok 14.4: Príklad vhodnosti metrík pre metódu K najbližších susedov. (a) Pri
dostatočne hustom vzorkovaní trénovacích dát je vhodná Euklidovská metrika.
(b) Pri redšom vzorkovaní už táto metrika nie je vhodná. (c) Pre takto rozložené
dáta sa javí lepšia Mahalanobisova metrika.
a vzorka bude klasifikovaná správne. Toto ale neplatí v prípade riedko
vzorkovaných dát na obrázku 14.4(b). V tomto prípade by bolo vhodnejšie zvolit’ metriku, ktorá preferuje vzdialenost’ v y-ovom smere pred
vzdialenost’ou v x-ovom smere. Mohli by sme použit’ napríklad Mahalanobisovu metriku ako na obrázku 14.4(c).
Druhá premenná, ktorú treba určit’, je počet susedov K , ktorí určujú
klasifikačnú triedu. Na obrázku 14.3 vidíme, že pri K = 3 neznáma vzorka
patrí do červenej triedy a pri K = 7 do modrej triedy.
Pre K = 1 dostávame Voronoiov diagram a hl’adáme, do ktorej Voronoiovej bunky vzorka patrí (obrázok 14.5).
Ked’ sa K zvyšuje, rastie rád Voronoiovho diagramu, hranica oblastí sa
vyhladzuje (obrázok 16.1), môže rást’ chyba pri tréningu a klesat’ chyba
pri testovaní. Optimálnu hodnotu K zistíme pomocou vzájomnej validácie (pozri kap. 16).
14.3
Rozhodovacie stromy
Klasifikátory väčšinou určujú príslušnost’ na základe vzdialenosti príznakov. Ak sa však medzi príznakmi vyskytujú nominálne dáta, pojem vzdialenosti stráca zmysel. Príkladom môže byt’ klasifikácia jedla podl’a chuti
(sladká, slaná, horká . . .). V takomto prípade je vhodné použit’ na klasifikáciu rozhodovacie stromy. Rozhodnutie o zaradení triedy a postup, ako
sme k nemu dospeli, sú usporiadané do stromovej štruktúry, kde uzly
196
14.3. Rozhodovacie stromy
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Obrázok 14.5: Metóda K najbližších susedov pre K = 1 vytvorí Voronoiov diagram. Pri klasifikácii hl’adáme, do ktorej Voronoiovej bunky vzorka patrí.
opisujú testy hodnôt jednotlivých príznakov. Z uzlov vychádza tol’ko vetiev, kol’ko rôznych hodnôt test nadobúda, väčšinou sa pracuje s binárnymi stromami. Listy stromu zodpovedajú klasifikačným triedam (obr.
14.6).
Podl’a počtu nominálnych hodnôt, ktoré môžu príznaky nadobúdat’,
vytvárame binárne alebo n-árne stromy. Binárne stromy môžeme vyrobit’ aj z príznakov s viacerými hodnotami tak, že sa v uzle budeme postupne pýtat’ na konkrétne hodnoty (obr. 14.6b)).
Pri vytváraní binárneho rozhodovacieho stromu musíme určit’ nasledovné body.
Rozhodovacie porovnanie treba určit’ v každom uzle. Porovnanie zist’uje, aký je vzt’ah hodnoty určeného príznaku k zvolenej prahovej
hodnote (napr. p j ≤ 7, chut’ = sladká). Každý uzol t skúma dáta
podmnožiny X t trénovacej množiny a rozdel’uje ju na dve podmnožiny X t A , X t N . Podmnožina X t A obsahuje dáta, pri ktorých bolo
porovnanie splnené (odpoved’ na porovnanie je „Áno“), druhá podmnožina obsahuje zvyšné dáta (odpoved’ „Nie“). Koreň stromu skúma celú množinu trénovacích dát. V každom uzle platí
#
X t A X t N = 0,
!
Xt A XtN = Xt .
Rozdel’ujúce kritérium sa stanovuje v rámci stromu a určuje prahovú
hodnotu a príznak, ktoré budú vystupovat’ v rozhodovacom porovnaní.
Ukončujúce kritérium riadi rast stromu.
Pravidlá určujú klasifikačnú triedu v listoch.
197
14. R IADENÉ KLASIFIKÁTORY
a
d
?
?
c
b
e
f
?
g
h
(a) Strom s viacnásobným vetvením.
b
b,d
?
a,b
?
e
d
?
c
f
?
g
g,h
?
h
(b) Binárny strom.
Obrázok 14.6: Príklady rozhodovacích stromov.
Algoritmus 14.2 zobrazuje proces vytvárania jednoduchého binárneho
rozhodovacieho stromu, bez orezávania. Orezávaním stromov sa zaoberá
kapitola 14.3.3.
PROC RozhStrom (X)
vytvor strom T s jediným vrcholom V
IF je splnené ukončovacie kritérium THEN
označ V ako list a zaraď do určenej triedy
ELSE
nájdi príznak P a prahovú hodnotu H pomocou
rozdeľujúceho kritéria
vyhodnoť rozhodovacie porovnanie
urči množiny XtA , XtN
TA=RozhStrom(XtA)
TN=RozhStrom(XtN)
spoj uzol V s TA hranou označenou A
spoj uzol V s TN hranou označenou N
END IF
RETURN T
Algoritmus 14.2: Základný algoritmus tvorby rozhodovacieho stromu.
Pôvodná myšlienka rozhodovacích stromov pochádza od psychológov Hunta, Marina a Stonea, ktorí v 60. rokoch 20. storočia modelovali
koncept l’udského učenia sa. Ich CLS (Concept Learning System) bol binárny rozhodovací strom, ktorý bol navrhnutý tak, aby minimalizoval cenu klasifikácie objektu skladajúcu sa z ceny určenia klasifikačnej triedy
a ceny chybnej klasifikácie.
198
14.3. Rozhodovacie stromy
ID3 (Iterative Dichotomiser 3) je iteratívny algoritmus vyvinutý z CLS.
Z náhodne vybranej podmnožiny trénovacích dáta (nazývanej okno) sa
vytvorí rozhodovací strom a otestuje sa na zvyšných dátach. V prípade,
že všetky dáta sú klasifikované správne, proces končí. Ak sú niektoré dáta
klasifikované nesprávne, pridajú sa do okna a vytvorí sa nový rozhodovací strom. Takto sa dá nájst’ strom klasifikujúci všetky trénovacie dáta
správne v priebehu niekol’kých iterácií pre množiny do 30 000 objektov
opísaných 50-miestnym vektorom príznakov.
ACLS je generalizáciou ID3. Príznaky môžu nadobúdat’ neobmedzené
celočíselné hodnoty. To umožnilo použitie tohto algoritmu v reálnych
problémoch ako je rozpoznávanie obrazov.
C4.5 algoritmus vylepšil ID3 niekol’kými vlastnost’ami. Vie narábat’
so spojitými aj diskrétnymi dátami, dokáže ošetrit’ chýbajúce dáta, vie
váhovat’ jednotlivé príznaky a používa spätné orezanie stromu. Jeho d’alším vylepšením je C5.0.
CART (Classification and Regression Trees) konštruuje binárny strom.
Uzly sa delia na základe tzv. rozdvojovacieho (twoing) kritéria a strom
je následne orezaný. Algoritmus generuje aj regresné stromy, kde v listoch nie je klasifikačná trieda, ale reálne číslo. Pri regresných stromoch
sa v uzloch minimalizuje stredná kvadratická chyba.
14.3.1 Rozdel’ujúce kritérium
Rozdel’ujúce kritérium ohodnocuje príznaky a do uzlov sa priradí test na
najdôležitejší príznak. Dôležitost’ príznaku môžeme merat’ „nedokonalost’ou rozdelenia“, ktorú vyjadríme hodnotou vzájomnej informácie, entropie atd’. Dokonalé rozdelenie v uzle nastane, ak všetky objekty v jednej
vetve patria do tej istej klasifikačnej triedy.
Každé z kritérií je vhodné pre iný druh problémov. Viacerí autori však
argumentujú, že vol’ba rozdel’ujúceho kritéria v mnohých prípadoch nie
je podstatná a má len malý vplyv na kvalitu výslednej klasifikácie.
Entropia
Delenie za základe minimálnej entropie (kap. 11.5.4) sa používa v algoritme ID3.
Giniho index
Giniho index použitý v algoritme CART udáva ako často bude náhodne
vybraný objekt nesprávne klasifikovaný, ak bude náhodne klasifikovaný
199
14. R IADENÉ KLASIFIKÁTORY
podl’a rozdelenia tried v množine. Majme m klasifikačných tried. Nech je
v uzle U relatívna početnost’ objektov jednotlivých tried
pi =
|{x | x ∈ ωi }|
.
|U |
(14.6)
Potom
GI =
m
p i (1 − p i ) = 1 −
i=1
m
i=1
p i2 ,
(14.7)
kde p i zodpovedá pravdepodobnosti výberu objektu z triedy i a (1 − p i )
pravdepodobnosti nesprávnej klasifikácie tohto objektu. Ak sú všetky dáta v jednej triede, Giniho index dosahuje minimálnu hodnotu 0.
Kolmogorovove–Smirnovove kritérium
Kolmogorovove–Smirnovove (KS) kritérium hodnotí maximálny rozdiel
distribučných funkcií. Pre triedy ωi a ω j s kumulatívnymi distribučnými
funkciami F i (x) a F j (x) je KS kritérium je dané nasledovne
K S(ωi , ω j ) = max |F i (x) − F j (x)|.
x
(14.8)
Viacnásobný test
Do testov môže vstupovat’ viacero príznakov spoločne. Väčšina viacnásobných testov je lineárnou kombináciou príznakov. Na nájdenie najlepšej kombinácie sa používa pažravý algoritmus, lineárne programovanie
alebo lineárna diskriminačná analýza.
Použitie viacnásobného testu znižuje hĺbku rozhodovacieho stromu
a vyhladzuje rozhodovacie hranice, ako vidno na obrázku 14.7.
14.3.2 Ukončujúce kritérium
Medzi bežné ukončovacie kritériá patria:
• Všetky objekty v skúmanej množine patria do jednej klasifikačnej
triedy.
• Strom dosiahol maximálnu stanovenú hĺbku.
• Počet objektov klasifikovaných v danom uzle je menší ako stanovený prah.
• Ohodnotenie najlepšieho príznaku je nižšie ako stanovený prah.
200
14.3. Rozhodovacie stromy
x2 < t1
t3
x1 < t2
t1
t5
x1 < t4
x2 < t5
t2
x2 < t3
t4
(a) Postupné vyhodnotenie jednoduchých testov.
x2=ax1+b
x2-ax1<b
(b) Jeden viacnásobný test.
Obrázok 14.7: Viacnásobný test zmenšuje hĺbku rozhodovacieho stromu.
14.3.3 Orezávanie rozhodovacích stromov
Vylepšením základného algoritmu 14.2 je tzv. orezávanie rozhodovacieho
stromu, ktoré zahŕňa odstránenie listov alebo celých podstromov. Ak odstránenie prinesie zvýšenie kvality klasifikácie, zvolené uzly sa odstránia
a ich rodič sa zmení na list, do ktorého sa priradí klasifikačná trieda podl’a
najpravdepodobnejšieho objektu z trénovacej množiny objektov, ktoré
po tento list spadajú.
Stromy môžeme orezávat’ už počas vytvárania, alebo orezávame hotový strom. Orezanie počas generovania rozhodovacieho stromu je zahrnuté v ukončovacom kritériu „Ohodnotenie najlepšieho príznaku je nižšie ako stanovený prah“. Toto kritérium zastaví vetvenie stromu, aj ked’
dáta v podstrome nepatria len do jednej triedy. Môže však nastat’ situácia, že delenie o úroveň nižšie by malo pozitívny vplyv na kvalitu klasifikácie.
201
14. R IADENÉ KLASIFIKÁTORY
Pri orezávaní hotových stromov sa dáta rozdelia na trénovaciu a testovaciu (validačnú) množinu. Pomocou trénovacej množiny sa vytvorí
strom a validačná množina sa použije na hodnotenie kvality klasifikácie.
Orezávanie uzlov
Použitím validačnej množiny sa vyráta chyba klasifikácie stromu. Každý
uzol sa berie ako možný kandidát na odstránenie. Pre každý uzol sa zráta,
ako sa zmení chyba klasifikácie, keby sa tento uzol odstránil (anglický
názov metódy je reduced-error prunning). Odstránia sa jednotlivé uzly,
pri ktorých sa chyba klasifkácie zníži. Ak takéto uzly neexistujú, odstránia sa uzly, pri ktorých sa chyba nemení. Ak by odstránenie l’ubovol’ného
uzlu prinieslo zvýšenie chyby klasifikácie, všetky uzly zostávajú v strome
a proces orezávania sa skončí. Inak sa prepočíta chyba klasifikácie v novovzniknutom orezanom strome a proces sa opakuje.
Orezávanie podstromov
Táto metóda orezávania (po anglicky cost-complexity prunning) ohodnocuje zmenu kvality klasifikácie pri odstránení celého podstromu a jeho
náhrade listovým uzlom. Ak sa chyba po náhrade listovým uzlom zmenší,
daný podstrom je možné odrezat’.
V prvej fáze orezávania sa vygenerujú stromy T0 , . . . T N , kde T0 je originálny strom a T N je strom tvorený len koreňom. V druhej fáze sa vypočíta
validačná chyba pre všetky vytvorené stromy T0 , . . . T N . Strom s najnižšou
chybou je potom výsledný klasifikačný strom.
Postupnost’ stromov T0 , . . . T N sa vytvára orezávaním podstromov, ktoré vykazujú najnižšiu chybu (cost-complexity, CC ) pri odstránení. Majme
strom T , ktorý klasifikuje dáta s chybou Er r (T ). CC stromu T je
CC (T ) = Er r (T ) + αL(T ),
(14.9)
kde L(T ) je počet listov stromu T . Ak odstránime zo stromu T podstrom
S, tento novovytvorený strom TS bude mat’
CC (TS ) = Er r (TS ) + αL(TS ),
(14.10)
pričom L(TS ) = L(T ) − L(S) + 1. Tieto dva stromy budú mat’ rovnakú CC ,
ak
α=
Er r (TS ) − Er r (T )
.
L(S) − 1
(14.11)
Strom Ti+1 je tvorený zo stromu Ti nahradením podstromu, ktorý minimalizuje hodnotu α.
202
14.4. Diskriminačná analýza
14.3.4 Výhody a nevýhody rozhodovacích stromov
Medzi hlavné výhody rozhodovacích stromov patrí ich jednoduchá interpretácia, aj pre laických používatel’ov rôznych klasifikátorov. Ďalej je
to možnost’ klasifikácie numerických a aj kategorických dát a nízka výpočtová náročnost’. Na druhej strane, vytvorenie optimálneho rozhodovacieho stromu je NP úplný problém a používané heuristiky nezaručujú
optimalitu vytvoreného stromu. Rozhodovacie stromy sú vhodné v problémoch, kde existuje niekol’ko vel’mi relevantných príznakov, inak môže
vzniknút’ privel’mi komplexné stromy obsahujúce viaceré kópie určitých
podstromov.
14.4
Diskriminačná analýza
Jednou z úloh diskriminačnej analýzy (DA) je určit’, ktoré príznaky sú dôležité pri klasifikácii objektov do jednotlivých tried (pozri kapitolu 12).
Ďalšou úlohou DA je na základe trénovacej množiny vytvorit’ pravidlá, ktoré každý nový objekt zaradia do jednej zo skupín tak, aby chyba
klasifikácie bola čo najmenšia. Táto DA môže byt’ lineárna alebo kvadratická.
V tejto kapitole predpokladáme, že klasifikačné triedy sú lineárne separovatel’né, t. j. existuje nadrovina rozdel’ujúca priestor tak, že vektory
rôznych tried ležia v rôznych polpriestoroch.
14.4.1 Lineárne diskrimina čné funkcie
Výhodou lineárnych diskriminačných funkcií (lineárnych klasifikátorov)
je ich jednoduchost’ a nízka výpočtová náročnost’. Budeme sa zaoberat’
funkciami, ktoré sú lineárnou kombináciou zložiek x, čo sa dá napísat’
ako
f (x) = wT x + b,
(14.12)
kde w je váhový vektor a b je prah (alebo posunutie).
Pri technikách najbližších susedov sú všetky body trénovacej množiny potrebné na určenie triedy každého nového bodu. Pri lineárnom
klasifikátore nie je trénovacia množina po určení (natrénovaní) vektora
w nad’alej potrebná.
203
14. R IADENÉ KLASIFIKÁTORY
x3
x
r
F
xp
ω1
ω2
w
-b
║w║
x2
f(x)=0
x1
Obrázok 14.8: Nadrovina F určená parametrami w a b. Vzdialenost’ bodu x od
nadroviny je r .
14.4.2 Klasifikácia do dvoch tried
Majme vektory príznakov patriace dvom rôznym klasifikačným triedam
ω1 a ω2 . Rovnica nadroviny je
wT x + b = 0.
(14.13)
Hodnota f (x) = wT x + b je nulová pre body ležiace na rozdel’ujúcej nadrovine, záporná resp. kladná pre body ležiace mimo nadroviny.
Úlohou lineárneho klasifikátora je nájst’ taký váhový vektor w (normálový vektor nadroviny) a prah b, aby platilo:
f (x) ≥ 0 pre x ∈ ω1 ,
(14.14)
f (x) < 0 pre x ∈ ω2 .
(14.15)
f (x)
Tvrdenie 1. Hodnota w určuje geometrickú vzdialenost’ bodu x od nadroviny F určenej parametrami w a b (pozri obrázok 14.8).
Dôkaz. Nech xp je kolmý priemet x do F . Potom x sa dá vyjadrit’ ako
x = xp + r
w
,
w
(14.16)
kde |r | je vzdialenost’ od priemetu. Hodnota r je kladná, ak x leží v rovnakom polpriestore ako vektor w. Vieme, že f (xp ) = 0 (bod xp leží na F ).
204
14.4. Diskriminačná analýza
Potom
f (x) = wT x + b
= wT (xp + r
w
)+b
w
wT w
w
2
w
= f (xp ) + r
w
= r w ,
= wT xp + b + r
(14.17)
a teda
r=
f (x)
.
w
(14.18)
Podobne vieme ukázat’, že b je vzdialenost’ F od počiatku súradnicovaj sústavy.
14.4.3 Určenie váh
Aby sme jednoduchšie zistili váhy a prah, zapíšeme lineárny klasifikátor
ako
f (x) = uT y,
(14.19)
T
T
kde u = b, wT a y = 1, xT .
Pri určovaní váhového vektora u zo vzt’ahu (14.19), nedelíme problém
na samostané hl’adanie vektora w a prahu b.
Takýto prechod do D + 1 rozmerného priestoru (nazvime ho y-priestor) zachováva vzdialenosti pôvodných vektorov x aj u nových vektorov y.
Rozdel’ujúca nadrovina F̂ definovaná ako uT y = 0 prechádza počiatkom
súradnicovej sústavy y-priestoru, hoci v pôvodnom priestore nadrovina
f (x)
F mohla byt’ umiestnená l’ubovol’ne. Vzdialenost’ vektora y od F̂ je u .
Táto vzdialenost’ je menšia alebo rovná vzdialenosti vektora x od F , lebo
u ≥ w.
Majme N vzoriek y1 , . . . yN patriacich dvom rôznym klasifikačným
triedam ω1 a ω2 . Vzorku yi zaradíme do triedy ω1 , ak uT yi > 0 a do triedy
205
14. R IADENÉ KLASIFIKÁTORY
oblasť
riešení
y2
oblasť
riešení
u
z2
u
y1
nadrovina
z1
nadrovina
(a) Vektory yi
(b) Vektory zi
Obrázok 14.9: Vektory yi po normalizácii podl’a vzt’ahu (14.20). Všetky dáta ležia
v jednom podpriestore určenom nadrovinou.
ω2 , ak uT yi < 0. Ak by sme zaviedli nasledovnú normalizáciu
*
yi pre y ∈ ω1 ,
zi =
−yi pre y ∈ ω2 ,
(14.20)
tak hodnota uT zi > 0 pre všetky zi (pozri obrázok 14.9).
Naším problémom je teda nájst’ váhový vektor u, aby platilo uT zi > 0
pre všetky zi . Existuje niekol’ko metód ako tento vektor určit’. Zavedieme
skalárnu účelovú funkciu O(u), ktorej hodnota je minimálna, ked’ u je
riešením nášho problému. Nájdenie takého u sa rieši gradientnou metódou.
Gradientná metóda je iteratívna. Začíname s náhodne zvoleným vektorom u1 , vypočítame gradient ∇O v bode u1 a aktualizujeme hodnotu u
tak, že vyberieme vektor z okolia u1 v smere najväčšej negatívnej zmeny
gradientu
ui+1 = ui − η(i )∇O -u ,
(14.21)
i
kde η(i ) je (pozitívna) rýchlost’ učenia v kroku i , ktorá určuje vel’kost’
kroku. Výber vhodných vel’kostí je dôležitý, lebo ak zvolíme nízku hodnotu, konvergencia je pomalá a ak zvolíme príliš vysokú hodnotu, proces
môže správne riešenie „preskočit’“ a divergovat’. Ak prepokladáme, že
účelová funkcia je diferencovatel’ná, môžeme pomocou Taylorovho rozvoja určit’ rýchlost’ učenia nasledovne. Funkcia O(a) je v okolí bodu ui
aproximovaná
1
O(a) ≈ O(ui ) + ∇O T (a − ui ) + (a − ui )T H(a − ui ),
2
(14.22)
kde H je matica druhých pariálnych derivácií funkcie O (Hesseho matica). H a ∇O sú vyhodnotené v bode ui (rovnako v d’alšom texte). Pre
206
14.4. Diskriminačná analýza
a = ui+1 dostávame
1
O(ui+1 ) ≈ O(ui ) − η(i )∇O2 + η2 (i )∇O T H∇O.
2
(14.23)
L’ahko ukážeme, že hodnota (14.23) je minimalizovaná pre
η(i ) =
∇O2
∇O T H∇O
.
(14.24)
Druhou možnost’ou na hl’adanie riešenia u je použitie Newtonovho
algoritmu, pričom namiesto vzt’ahu 14.21 použijeme na zmenu hodnoty
ui vzt’ah
ui+1 = ui − H−1 ∇O.
(14.25)
14.4.4 Vol’ba ú čelovej funkcie
Pozrime sa teraz na výber účelovej funkcie. Naším ciel’om je minimalizácia počtu nesprávne klasifikovaných vzoriek. Takáto funkcia je po častiach konštantná, preto nie je vhodná na použitie v gradientnej metóde.
Lepšou vol’bou je po častiach lineárna perceptrónová funkcia
OP =
(−uT z),
(14.26)
z∈Z
kde Z je množina nesprávne klasifikovaných vzoriek. V prípade, ked’ je
táto množina prázdna, definujeme O P ≡ 0. Vieme, že pre nesprávne klasifikované vzorky platí uT z ≤ 0, a preto O P nadobúda nezáporné hodnoty.
Nulovú hodnotu nadobúda pre váhové vektory, ktoré sú riešením nášho
problému, ked’ nemáme nesprávne klasifikované vzorky.
Pre funkciu definovnú vzt’ahom 14.26 platí
∇O P =
(−z)
(14.27)
z∈Z
a vzt’ah (14.21) nadobudne tvar
ui+1 = ui + η(i )
z,
(14.28)
z∈Z i
kde Z i je množina nesprávne klasifikovaných vzoriek v kroku i . Tomuto
prístupu sa hovorí dávkový, pretože vyhodnocuje všetky neklasifikované
vzorky naraz.
Jednoduchším riešením je vyhodnocovat’ vzorky po jednej, ako je to
uvedené v algoritme 14.3.
207
14. R IADENÉ KLASIFIKÁTORY
inicializuj u0 = 1, i=0, k=0
opakuj
ak zk je nesprávne klasifikovaný
ui+1 = ui + zk
i=i+1
koniec ak
k=(k+1) mod N
kým existuje nejaký nesprávne klasifikovaný vektor z j
Algoritmus 14.3: Algoritmus hl’adania váhového vektora.
oblasť
riešení
z2
oblasť
riešení
z2
z1
z1
(a) Oblast’ riešení bez okraja pre
perceptrónovú funkciu (14.29).
(b) Vplyv normalizačného člena v perceptrónovej funkcii (14.30).
Obrázok 14.10: Oblast’ riešení perceptrónovej funkcie.
Podobnou účelovou funkciou je kvadratická funkcia
OQ =
(uT z)2 ,
(14.29)
z∈Z i
ktorá má na rozdiel od O P spojitý gradient. Problémom tejto funkcie je,
že je možno až príliš hladká a gradientná metóda môže konvergovat’ na
hranici oblasti riešení (pre a = 0). Oblast’ riešení je znázornená na obrázku 14.10(a).
Druhým problémom je, že dlhšie vektory vzoriek z vplývajú na hodnotu OQ viac, ako kratšie.
Oba tieto problémy rieši funkcia obsahujúca normalizačný člen z2
a člen určujúci okraj v oblasti riešení
OR =
208
1 (uT z − )2
.
2 z∈Z i
z2
(14.30)
14.4. Diskriminačná analýza
Vplyv týchto členov na oblast’ riešení je znázornený na obrázku 14.10(b).
V tomto prípade Z i je množina vzoriek, pre ktoré platí uT z ≤ . Gradient
tejto funkcie je
∇O R =
uT z − z.
2
z∈Z i z
(14.31)
Pri použití účelovej funkcie (14.30) nastáva nesprávna klasifikácia, ak
uT z ≤ . Algoritmus 14.3 sa preto zmení na algoritmus 14.4.
inicializuj u0 = 0, i=0, k=0
opakuj
k=(k+1) mod N
ak uT zk ≤ z = zk
T
z
ui+1 = ui + η(i ) −u
z
z2
i=i+1
koniec ak
kým uT z j > pre všetky z j
Algoritmus 14.4: Algoritmus hl’adania váhového vektora s okrajom.
14.4.5 Klasifikácia do K tried
Pri klasifikácii do viacerých tried môžeme postupovat’ dvomi spôsobmi.
1. Pre každú klasifikačnú triedu vytvoríme rozhodovaciu funkciu, ktorá oddelí vzorky tejto triedy od vzoriek ostatných tried. V tomto prípade máme K rozhodovacích funkcií.
2. Pre každú dvojicu rôznych klasifikačných tried vytvoríme rozhodovaciu funkciu oddel’ujúcu vzorky týchto dvoch tried bez ohl’adu na
vzorky ostatných tried. V tomto prípade máme K (K − 1)/2 rozhodovacích funkcií.
Oba tieto prístupy môžu viest’ k situácii, kde čast’ priestoru príznakov nie
je zaradená do žiadnej klasifikačnej triedy (pozri obrázok 14.11).
Tento problém vyrieši vytvorenie množiny K rozhodovacích funkcií
(
)K
f k (x) k=1 a zaradenie vzorky x do tej klasifikačnej triedy, ktorej hodnota
po dosadení je najväčšia
x ∈ ωi ⇔ ∀ j =i f i (x) > f j (x).
(14.32)
209
14. R IADENÉ KLASIFIKÁTORY
F13
F3...
F1...
F12
ω2
F23
ω2
F2...
ω3
ω1
F4...
ω4
F24
ω3
ω1
neurčená
oblasť
ω4
F34
F14
(a)
(b)
Obrázok 14.11: Klasifikácia do viacerých tried (a) oddelením jednej triedy od ostatných a (b) oddelením dvojíc tried.
Takto vytvorený klasifikátor sa nazýva lineárny stroj. Tento stroj delí priestor na K konvexných regiónov. Ak sa dva regióny R i a R j dotýkajú, potom hranica medzi týmito regiónmi leží na nadrovine Fi j danej rovnicou
f i (x) = f j (x), a teda platí
wi T x + b i = wj T x + b j ,
T
(wi − wj ) x + b i − b j = 0.
(14.33)
(14.34)
Podl’a (14.18) je vzdialenost’ vzorky x od Fi j daná
f i (x) − f j (x)
<
< .
<wi − wj <
(14.35)
Vidíme, že v prípade lineárneho stroja nie sú dôležité samostatné váhové
vektory, ale ich rozdiel. Pre K klasifikačných tried existuje K (K −1)/2 nadrovín Fi j , ale nie všetky regióny musia byt’ susedné, preto hraníc medzi
regiónmi je väčšinou menej (pozri obrázok 14.12).
V prípade lineárneho stroja, ak by bola každá trieda reprezentovaná
jednou vzorkou, klasifikácia je rovnaká ako pri technike jedného najbližšieho suseda (pozri kap. 14.2, obrázok 14.5).
14.5
Mechanizmy podporných vektorov
Lineárny klasifikátor z predchádzajúcej kapitoly vyberie niektorý z váhových vektorov ležiacich v oblasti riešení. Výsledkom môže byt’ rozdel’ujúca nadrovina, ktorá síce dobre klasifikuje trénovacie dáta, ale pri testovacích dátach dosahuje vel’kú chybu (pozri obr. 14.13). Čiatočným rieše210
14.5. Mechanizmy podporných vektorov
F25
F12
ω2
F23
ω5
ω1
ω3
F13
F34
F14
ω4
F35
F45
Obrázok 14.12: Lineárny stroj pre 5 klasifikačných tried.
(a) Nadrovina príliš blízko (b) Nadrovina
príliš (c) Nadrovina dostatočne
trénovacích dát.
blízko trénovacích dát.
d’aleko od trénovacích dát.
Obrázok 14.13: Nadrovina určená perceptrónom môže byt’ príliš blízko trénovacím dátam.
ním je použie účelovej funkcie O R , avšak optimálna hodnota parametra
nie je určená.
Tento problém riešia mechanizmy podporných vektorov (support vector machines - SVM). SVM určujú rozdel’ujúcu nadrovinu tak, aby testovacie dáta mali čo najväčšiu vol’nost’. Snažia sa nájst’ nadrovinu čo najviac vzdialenú od trénovacích vzoriek (pozri obr. 14.13(c)). Podpornými
vektormi sú potom tie vzorky každej triedy, ktoré sú najbližšie k rozdel’ujúcej nadrovine. Vzdialenost’ medzi podpornými vektormi rôznych tried
sa nazýva rozpätie (margin, pozri obr. 14.14). Našou úlohou je nájst’ takú
nadrovinu reprezentovanú váhovým vektorom, ktorá túto vzdialenost’
maximalizuje. Rovnica nadroviny má tvar (14.13). Bez ujmy na všeobecnosti môžeme predpokladat’, že pre podporné vektory platí wT x+b = ±1
(podl’a príslušnosti k triede ω1 , resp. ω2 ). Potom podl’a vzt’ahu (14.18) je
211
14. R IADENÉ KLASIFIKÁTORY
nadrovina
podporný vektor
podporný vektor
podporný vektor
rozpätie
Obrázok 14.14: Podpornými vektormi sú tie vzorky každej triedy, ktoré sú najbližšie k rozdel’ujúcej nadrovine. Vzdialenost’ medzi podpornými vektormi rôznych
tried sa nazýva rozpätie (margin).
vel’kost’ rozpätia rovná
2
.
w
(14.36)
Naša optimalizačná úloha je teda
w∗ = argmax
2
.
w
(14.37)
To je ekvivalentné k minimalizačnej úlohe
(w∗ , b ∗ ) = argmin
1
w2 ,
2
(14.38)
aby
wT xi + b ≥ 1 pre x ∈ ω1 ,
T
w xi + b ≤ −1 pre x ∈ ω2 .
(14.39)
(14.40)
Podmienky (14.39) a (14.40) môžeme vyjadrit’ jednou podmienkou
(wT xi + b)k i ≥ 1,
(14.41)
kde
*
ki =
1
−1
pre x ∈ ω1 ,
pre x ∈ ω2 .
(14.42)
Minimalizačnú úlohu (14.38) vyriešime pomocou Lagrangeovej metódy
212
14.5. Mechanizmy podporných vektorov
neurčitých koeficientov
L(w, b, αi ) =
=
N
1
w2 −
αi ((wT xi + b)k i − 1)
2
i=1
N
N
1
w2 −
αi (wT xi + b)k i +
αi ,
2
i=1
i=1
(14.43)
aby
αi ≥ 0.
(14.44)
Riešenie hl’adáme pomocou derivácií Lagrangiánu
N
∂L
= w−
αi k i xi ≡ 0
∂w
i=1
(14.45)
N
∂L
= − αi k i ≡ 0
∂b
i=1
(14.46)
(wT xi + b)k i − 1 ≥ 0
(14.47)
αi ≥ 0
(14.48)
αi ((w xi + b)k i − 1) = 0
(14.49)
T
Podmienky (14.45) – (14.49) sa nazývajú Kuhn-Tuckerove (KT) podmienky.
Z (14.45) vidíme, že váhový vektor vypočítame ako
w=
N
αi k i xi .
(14.50)
i=1
Ďalej zo vzt’ahov (14.47) – (14.49) vyplýva
αi = 0 ⇔(wT xi + b)k i − 1) > 1,
T
αi > 0 ⇔(w xi + b)k i − 1) = 1,
(14.51)
(14.52)
čiže pre body ležiace vnútri oblasti ω1 alebo ω2 sú Lagrangeove multiplikátory nulové (vzt’ah (14.51)) a pre body ležiace na okraji oblasti (podporné vektory) sú multiplikátory nenulové (vzt’ah (14.52)). Táto situácia
je znázornená na obrázku 14.15. Preto váhový vektor ovplyvňujú len podporné vektory xi ∈ SV
w=
xi ∈SV
αi k i xi .
(14.53)
213
14. R IADENÉ KLASIFIKÁTORY
α=0
α>0
α=0
α=0
α=0
α=0
α>0
α>0
α=0
α=0
α=0
α=0
Obrázok 14.15: Lagrangeove multiplikátory sú nenulové pre podporné vektory.
Aby sme našli hodnoty αi , vyriešime duálny problém. Do rovnice (14.43)
dosadíme vzt’ah (14.45) a s využitím vzt’ahu (14.46) dostaneme duálnu
maximalizačnú úlohu k minimalizačnej úlohe (14.38).
5
6
N N
1
T
α = argmax
αi −
αi α j k i k j xi x j ,
2 i=1 j =1
i=1
∗
N
(14.54)
aby
N
αi k i = 0,
(14.55)
i=1
αi ≥ 0.
(14.56)
Ku klasifikácii potom pristupujeme nsledovne
1. Úlohu (14.54) vyriešime metódami kvadratického programovania.
2. Určíme množinu podporných vektorov xi ∈ SV , pre ktoré αi > 0.
3. Pomocou vzt’ahu (14.47) určíme hodnotu
5
6
1
T
αi k i xi x j .
kj −
b=
|SV | x j ∈SV
xi ∈SV
(14.57)
4. Dosadením (14.53) do (14.12) zistíme hodnotu klasifikačnej funkcie
f (x) =
xi ∈SV
αi k i xTi x + b.
(14.58)
V nasledovnej kapitole sa pozrieme, ako pristupovat’ k neseparovatel’ným dátam.
214
14.5. Mechanizmy podporných vektorov
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(a) Dáta separovatel’né, ak pripustíme (b) Dáta neseparovatel’né ani pri nenulomalú nenulovú chybu.
vej tolerancii.
Obrázok 14.16: Dva typy lineárne neseparovatel’ných dát.
14.5.1 Neseparovatel’né dáta
Neseparovatel’nost’ dát môže mat’ viac príčin. V prípade, že rozdelenie
pravdepodobnoti dát v jednotlivých triedach sa prekrýva, dáta nie sú lineárne separovatel’né s nulovou chybou (obrázok 14.16(a)). Ak zoslabíme
podmienku nulovej tolerancie chyby, môže použit’ modifikovaný SVM
klasifikátor s vol’ným rozpätím.
Druhým typom dát sú dáta, ktoré nie sú lineárne separovatel’né ani
pri nenulovej tolerancii chyby (obrázok 14.16(b)). Tento problém rieši nelineárny SVM klasifikátor.
SVM s vol’ným rozpätím
Podmienku nulovej chyby zoslabíme zavedením druhotných premenných ξi , ktoré určujú vol’nost’ chybnej klasifikácie. S týmito premennými
sa minimalizačná úloha (14.38) zmení na
(w∗ , b ∗ , ξ∗i ) = argmin
N
1
w2 + C
ξi ,
2
i=1
(14.59)
aby
(wT xi + b)k i ≥ 1 − ξi ,
(14.60)
kde konštanta C určuje penalizáciu za chybnú klasifikáciu a ovplyvňuje
vel’kost’ rozpätia.
Pri riešení tohto problému opät’ prejdeme cez Lagrangián k duálnemu
problému (14.54). Táto duálna úloha sa nemení, mení sa len podmienka
(14.56) na
0 ≤ αi ≤ C .
(14.61)
Vhodnú hodnotu C nájdeme vzájomnou validáciou (pozri kap. 16).
215
14. R IADENÉ KLASIFIKÁTORY
Obrázok 14.17: Dáta na obrázku vl’avo nie sú v 2D priestore lineárne separovatel’né. Po prechode do 3D priestoru už lineárne separovatel’né sú, ako vidno na
obrázku vpravo.
Nelineárny SVM
Druhou možnost’ou riešenia pre lineárne neseparovatel’né dáta je prejst’
do viacrozmerného priestoru. Na obrázku 14.17 vl’avo vidíme príklad dát,
ktoré sú separovatel’né, ale nie lineárne. Ak by sme tieto dáta previedli do
trojrozmerného priestoru predpisom
⎛
⎞
+
,
x12
x1
⎠,
φ:
→ ⎝ x22
(14.62)
x2
2x1 x2
dáta by boli separovatel’né. Táto situácia je znázornená na obrázku 14.17
vpravo.
Duálna maximalizačná úloha (14.54) pre transformované dáta je nasledovná
5
6
N
N N
1
∗
T
α = argmax
αi −
αi α j k i k j φ(xi ) φ(x j ) ,
(14.63)
2 i=1 j =1
i=1
aby
N
αi k i = 0,
(14.64)
i=1
αi ≥ 0.
(14.65)
Po vyriešení tejto úlohy určíme pomocou vzt’ahu (14.47) hodnotu
6
5
1
T
b=
αi k i φ(xi ) φ(x j ) .
(14.66)
kj −
|SV | x j ∈SV
xi ∈SV
216
14.5. Mechanizmy podporných vektorov
Hodnota klasifikačnej funkcie je
αi k i φ(xi )T φ(x) + b.
f (x) =
(14.67)
xi ∈SV
Vidíme, že vo všetkých vzt’ahoch vystupuje vektor φ(xi ) vždy len v skalárnom súčine s iným transformovaným vektorom. Táto skutočnost’ sa
dá využit’ tak, že nemusíme určit’ ako presne vyzerá transformácia φ, ale
stačí určit’ ako vyzerá skalárny súčin v transformovanom priestore
K (x, y) = φ(x)T φ(y).
Úloha (14.63) sa zmení na
5
6
N
N N
1
∗
αi −
αi α j k i k j K (xi , x j ) .
α = argmax
2 i=1 j =1
i=1
(14.68)
(14.69)
Hodnotu b vypočítame ako
6
5
1
αi k i K (xi , x j )
b=
kj −
|SV | x j ∈SV
xi ∈SV
a hodnotu klasifikačnej funkcie ako
αi k i K (xi , x) + b.
f (x) =
(14.70)
(14.71)
xi ∈SV
Takže namiesto transformácie každého príznakového vektora do viacrozmerného priestoru počítame hodnotu funkcie K ( ) pôvodných vektorov.
Tento výpočtový trik sa nazýva kernelový trik a funkcia K ( ) je kernelová
funkcia alebo jadro.
Príklad 14.1: Určime funkciu K ( ) pre transformačnú funkciu zo vzt’ahu (14.62).
K (x, y) = (x12 , x22 ,
⎞
y 12
2
⎠=
2x1 x2 ). ⎝ y 2
2y 1 y 2
⎛
= x12 y 12 + x22 y 22 + 2x1 y 1 x2 y 2 =
2
= (x1 y 1 + x2 y 2 ) =
T
= (x y)
2
(14.72)
(14.73)
(14.74)
(14.75)
217
14. R IADENÉ KLASIFIKÁTORY
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
−1
−1
−0.8
−0.6
(a) Polynomiálne jadro.
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
(b) Gausovské jadro.
Obrázok 14.18: Klasifikácia lineárne neseparovatel’ných dát pomocou nelineárnych SVM s rôznymi jadrami.
Na to, aby funkcia K ( ) bola platnou kernelovou funkciou, musí existovat’ funkcia φ( ) taká, aby platil vzt’ah (14.68). Podl’a Mercerovej podmienky, každá symetrická, kladne semidefinitná funkcia je platnou kernelovou funkciou. Funkcia je symetrická, ak
K (xi , x j ) = K (x j , xi )
(14.76)
∀a ∈ RN , aT Ka ≥ 0,
(14.77)
a kladne semidefinitná ak
kde KN×N je Grammova matica s prvkami k i j = K (xi , x j ).
Medzi najpoužívanejšie jadrá patria polynomiálne jadrá
K (x, y) = (a + xT y)p
(14.78)
a Gaussovské jadrá
K (x, y) = e
−
x−y2
2σ2
.
(14.79)
Obrázok 14.18 ukazuje použitie týchto jadier na klasifikáciu lineárne neseparovatel’ných dát.
14.6
Neurónové siete
Neurónové siete (artificial neural networks – ANN) sú siete pospájaných
uzlov (neurónov), medzi ktorými sa presúva informácia. Každý uzol vyšle d’alej informáciu na základe vstupu, ktorý dostane. Postup je opísaný
algoritmom 14.5.
218
14.6. Neurónové siete
pre uzol U
výstupy z uzlov predchádzajúcej vrstvy tvoria
vstupy do uzla U
tieto vstupy sa prenásobia váhami a spočítajú
na túto sumu sa aplikuje nelineárna aktivačná
funkcia φ
tento výstup sa pošle dalej
Algoritmus 14.5: Postup prenosu informácie medzi uzlami v neurónovej
sieti.
(a)
(b)
Obrázok 14.19: Rôzne typy neurónových sietí. (a) Dopredná siet’. (b) Spätná siet’
(Hopfieldova).
Existuje viacero druhov neurónových sietí. Ak informácia v sieti postupuje len jedným smerom od vstupov k výstupom, siet’ tvorí orientovaný acyklický graf. Túto siet’ nazývame dopredná (obr. 14.19(a)). V tejto
kapitole sa budeme hlbšie zaoberat’ len základným typom doprednej siete – viacvrstvovým perceptrónom.
Každá siet’, ktorá netvorí acyklický graf, sa nazýva spätná. Príkladom
takejto siete je Hopfieldova siet’ (obr. 14.19(b)), ktorá tvorí kompletný graf
a váhy sú symetrické w(i → j ) = w( j → i ).
Medzi neurónové siete patria aj neriadené metódy. Z nich sa budeme
v kapitole 15.3 zaoberat’ Kohonenovou siet’ou.
14.6.1 Aktiva čné funkcie
Existuje niekol’ko často používaných aktivačných funkcií. Môže to byt’
napríklad prahová funkcia, ktorá mapuje kladné vstupy na hodnotu jedna
219
14. R IADENÉ KLASIFIKÁTORY
1
1
0.5
0.5
0
0
1
2
1/2
1/3
1/4
−0.5
−1
−6
−4
−2
0
2
4
1
2
1/2
1/3
1/4
−0.5
6
−1
−6
−4
−2
0
2
4
6
(a) Logistická funkcia pre rôzne hodnoty (b) Hyperbolický tangens pre rôzne hodparametra α.
noty parametra β.
Obrázok 14.20: Používané aktivačné S-funkcie.
a záporné na hodnotu nula alebo mínus jedna
*
φ(x) =
1
0
ak x ≥ 0,
inak.
(14.80)
Táto funkcia však nie je diferencovatel’ná, čo potom robí problém pri trénovaní siete (viac v kapitole 14.6.3).
Lepšou vol’bou aktivačnej funkcie je logistická funkcia (pre α = 1 nazývaná sigmoida)
φ(α, x) =
1
,
1 + e −αx
(14.81)
alebo hyperbolický tangens
φ(β, x) = tanh(βx) =
e βx − e −βx
e βx + e −βx
.
(14.82)
Obe tieto funkcie majú graf pripomímajúci tvar S, budeme ich preto nazývat’ S-funkcie. Presný tvar závisí od parametrov α a β (obr. 14.20).
V problémoch rozpoznávania sa väčšinou v skrytých vrstvách používajú S-funkcie a vo výstupnej vrstve lineárna aktivačná funkcia. Nelineárna funkcia v skrytých vrstvách umožňuje sieti zachytit’ nelineárne
vzt’ahy medzi vstupom a výstupom siete.
14.6.2 Viacvrstvový perceptrón
Základným typom neurónovej siete je dopredná siet’ nazývaná aj viacvrstvový perceptrón (multilayer perceptron – MLP). Táto neurónová siet’
má niekol’ko vrstiev – vstupnú, výstupnú a nula alebo viac skrytých vrstiev. Schematické znázornenie jednotlivých vrstiev neurónovej siete je na
220
14.6. Neurónové siete
Obrázok 14.21: Príklad jednovrstvovej a viacvrstvovej siete.
obrázku 14.21. Vstupnú vrstvu tvoria priamo dáta z vektorov príznakov.
Z výstupnej vrstvy vychádzajú údaje, na základe ktorých sú vstupné dáta
klasifikované.
14.6.3 Učenie neurónovej siete
Podstatou učenia neurónovej siete je určenie váhovej matice (váhových
vektorov v jednotlivých vrstvách). Hodnoty váhovej matice, ktoré minimalizujú zvolené optimalizačné kritérium, určujeme pomocou gradientovej metódy. Gradientová metóda hl’adá minimum funkcie pomocou
derivácie. Jednoduchý gradientný algoritmus pre neurónové siete je spätné šírenie (propagácia) chyby.
Učenie začína inicializáciou náhodnej váhovej matice. Vektory príznakov z trénovacej množiny postupne prichádzajú na vstup a „prebublajú“ siet’ou na koniec. Výstupný vektor sa potom porovná požadovanou
klasifikáciou a určí sa hodnota kritéria E . Následne sa chyba spätne šíri
a upravujú sa hodnoty váhovej matice.
Na určenie jednotlivých váh použijeme gradientnú metódu (pozri aj
vzt’ah (14.21))
W ← W + ΔW,
(14.83)
ΔW = −η ∇E -W .
(14.84)
kde
Označme w i(k)
váhu od i -teho neurónu v (k-1)-vej vrstve do j -teho
j
neurónu v k-tej vrstve (pozri obrázok 14.22).
221
14. R IADENÉ KLASIFIKÁTORY
1
1
0
1
i
yi(k-1)
wij(k)
w0j(k)
Σ
vi(k)
yj(k)
Φ
N(k)
N(k-1)
Obrázok 14.22: Presun medzi vrstvami siete. Výstupy z vrstvy k − 1 prenásobené
váhou vstupujú do neurónov vrstvy k, kde sa spočítajú a na tento súčet sa aplikuje
aktivačná funkcia.
Potom pre konkrétnu váhu w i j
Δw i(k)
= −η
j
∂E
∂w i(k)
j
.
(14.85)
Ďalej označme y (k)
výstup j -teho neurónu v k-tej vrstve. Potom vstup
j
do tohto neurónu tvorí
=
v (k)
j
(k−1)
N
i=1
w i(k)
y (k−1) + w 0(k)
,
j i
j
(14.86)
kde N (k−1) je počet neurónov v (k-1)-vej vrstve a w 0(k)
je prah. Na tento
j
vstup aplikujeme aktivačnú funkciu φ, a teda výstupom tohto neurónu je
:
;
(k)
(k)
=
φ
y (k)
v
.
(14.87)
j
j
Vzt’ah (14.85) môžeme pomocou derivácie zloženej funkcie teraz napísat’ ako
Δw i(k)
j
= −η
∂E
∂v (k)
j
∂v (k)
∂w i(k)
j
j
.
(14.88)
Pre poslednú parciálnu deriváciu vo vzt’ahu (14.88) platí
∂v (k)
j
∂w i(k)
j
222
= y i(k−1) .
(14.89)
14.6. Neurónové siete
Označme
δ(k)
j
=−
∂E
∂v (k)
j
=
∂E
∂y (k)
j
∂y (k)
∂v (k)
j
j
,
(14.90)
potom
Δw i(k)
= η δ(k)
y i(k−1) .
j
j
(14.91)
Problémom zostáva vyčíslit’ δ(k)
. Rozoberieme si situáciu pre viacj
vrstvové siete. V takomto prípade musíme rozlišovat’ medzi šírením chyby
vo výstupnej vrstve a v skrytých vrstvách.
Šírenie chyby vo výstupnej vrstve
Vyčíslime jednotlivé parciálne derivácie vo vzt’ahu (14.90). Pre výstupnú
vrstvu k = m platí, že
=−
δ(m)
j
∂E
∂v (m)
j
=
∂E
∂y (m)
j
∂y (m)
∂v (m)
j
j
.
(14.92)
Potom
∂y (m)
j
∂v (m)
j
= φ (v (m)
).
j
(14.93)
Vo výstupnej vrstve je chyba neurónu daná chybou, akú jeho výstup
nadobúda voči očakávanému výstupu. Často požívaným optimalizačným
kritériom je stredná kvadratická chyba (MSE)
E(W) =
M
1
(y (m) − o j )2 ,
2 j =1 j
(14.94)
kde pre daný vstup a váhy W, o j je očakávaný výstup neurónovej siete
v uzle j a M je počet neurónov vo výstupnej vrstve. Potom
∂E
∂y (m)
j
= y (m)
−oj ,
j
(14.95)
čiže
δ(m)
= (o j − y (m)
)φ (v (m)
).
j
j
j
(14.96)
223
14. R IADENÉ KLASIFIKÁTORY
1
1
wij(k)
i
1
wjh(k+1)
j
δh
N(k)
N(k-1)
h
(k+1)
N(k+1)
Obrázok 14.23: Šírenie chyby spätne medzi vrstvami.
Šírenie chyby v skrytých vrstvách
Pre k-tu vrstvu platí
∂y (k)
j
∂v (k)
j
= φ (v (k)
).
j
(14.97)
Chyba j -teho neurónu v k-tej skrytej vrstve sa propaguje zo všetkých
neurónov (k+1)-vej vrstvy (obr. 14.23). Preto s využitím vzt’ahov (14.90)
a (14.86)
∂E
∂y (k)
j
=
(k+1)
N
∂E
∂v h(k+1)
h=1
∂v h(k+1)
∂y (k)
j
=−
(k+1)
N
h=1
=
δ(k+1)
w (k+1)
.
h
jh
(14.98)
Z toho vyplýva, že
= φ (v (k)
)
δ(k)
j
j
(k+1)
N
h=1
δ(k+1)
w (k+1)
.
h
jh
(14.99)
14.6.4 Rýchlost’ u čenia sa neurónovej siete
Na rýchlosti učenia sa závisí, či siet’ pri trénovaní dosiahne globálne minimum chybovej funkcie. Obrázok 14.24 ilustruje rôzne prípady vol’by
rýchlosti učenia sa. Chybová funkcia je znázornená čiernou a krok učenia sa červenou farbou. Vel’mi nízka rýchlost’ učenia sa (obr. 14.24(a))
224
14.6. Neurónové siete
(a) Nízka rýchlost’ učenia sa.
(b) Optimálna rýchlost’ učenia sa.
(c) Vysoká rýchlost’ učenia sa.
(d) Vel’mi vysoká rýchlost’ učenia sa.
Obrázok 14.24: Rýchlost’ učenia sa neurónovej siete. Chybová funkcia je znázornená čiernou a krok (rýchlost’) učenia sa červenou farbou. Pri nízkej rýchlosti
môže riešenie uviaznut’ v lokálnom minime. Pri optimálnej rýchlosti dosihneme
globálne minimum. Privysokej rýchlosti tiež, ale riešenie môže predtým oscilovat’. Pri vel’mi vysokej rýchlosti učenia sa môže riešenie divergovat’.
znamená pomalý tréning, ktorý môže skončit’ v lokálnom minime, z ktorého sa už nedostane. Pri optimálnej rýchlosti (obr. 14.24(b)) je tréning
síce tiež pomalý, ale dosiahne globálne optimum. Vysoká rýchlost učenia
sa (obr. 14.24(c) a 14.24(d)) zabezpečí rýchlejší tréning, ale môže proces
hl’adania môže oscilovat’ a pri vel’mi vysokých rýchlostiach až divergovat’.
Vel’mi často sa používa premenlivá rýchlost’ učenia sa daná heuristikou, že váhy ANN majú byt’ malé. Na začiatku procesu nastavíme rýchlost’ učenia sa na určitú hodnotu a vypočítame nové váhy. Určíme chybu,
akú siet’ dosiahne pri týchto nových váhach.
Ak nová chyba prevýši starú o stanovený prah, ideme zlým smerom.
Preto sa nové váhy zahodia a rýchlost’ učenia sa sa zníži.
Malé zvýšenie chyby povolíme kvôli možnosti dostat’ sa z lokálneho
minima. V prípade, že nová chyba je vyššia ako stará o menej než stanovený prah, váhy sa upravia.
Ak by nová chyba bola nižšia než stará, tak smerujeme k minimu, môžeme upravit’ váhy a zvýšit’ rýchlost’ učenia sa.
225
14. R IADENÉ KLASIFIKÁTORY
(a) Trénovacie dáta.
(b) Testovacie dáta.
Obrázok 14.25: Ukážka preučeného klasifikátora. Chyba dosiahnutá na trénovacích dátach je síce nízka, ale chyba na testovacích dátach je vel’mi vysoká.
14.6.5 Ukončenie u čenia sa neurónovej siete
Jednou z možností kedy ukončit’ tréning je nastavit’ maximálny počet
iterácií. Tento prístup neberie vôbec do úvahy, ako sa vyvíja dosiahnutá
chyba siete, a preto môže skončit’ d’aleko od optimálneho výsledku.
Zdalo by sa, že ideálnym kritériom zastavenia je, ked’ dosiahneme
globálne minimum chybovej funkcie. Problémom je vel’mi dlhý čas tréningu, pričom dosiahnutie globálneho optima nie je zaručené. Ked’ z požiadavky globálneho minima zl’avíme, zastavíme učenie, ked’ chyba klesne pod stanovený prah. Čo to ale znamená z hl’adiska kvality klasifikátora?
Kvalitu klasifikátora hodnotíme podl’a toho, ako dobre klasifikuje neznáme dáta. Nízka chyba dosiahnutá pri tréningu nezaručuje správnu
klasifikáciu neznámych dát. Klasifikátor sa totiž môže dostat’ do stavu
preučenia. Prípadne, ked’ trénovacia množina nezodpovedala rozdeleniu reálnych dát, niektoré vzt’ahy medzi dátami sa klasifikátor nemusel
„naučit’“.
226
14.6. Neurónové siete
3
10
2
Chyba
10
testovacie dáta
1
10
trénovacie dáta
0
10
0
2
4
6
8
10
Trénovacie epochy
Obrázok 14.26: Chyba pri učení ANN dosiahnutá na trénovacích a testovacích
dátach. Vidíme, že koniec trénovania by mal nastat’ v epoche 7, ked’ chyba na
testovacích dátach začala narastat’.
Problém preučenia ilustrujeme na obrázku 14.25. Vl’avo vidíme množinu trénovacích dát, a výsledný klasifikátor, ktorý sa snažil minimalizovat’ dosiahnutú chybu. Na pravom obrázku sú rozhodovacie hranice preučeného klasifikátora aplikované na testovacie dáta. Vidíme, že chyba,
ktorú tento klasifikátor na týchto dátach dosiahne je vel’mi vel’ká.
Riešením tohto problému je rozdelit’ množinu dát na trénovaciu a testovaciu a počas tréningu vyhodnocovat’ chybu na oboch množinách. Typický priebeh týchto chýb je znázornený na obrázku 14.26. Na začiatku
tréningu chyba oboch množín klesá až do okamihu, ked’ klasifikátor vstúpi do stavu preučenia. Tréning ukončíme, ked’ sa chyba v testovacej množine začne zvyšovat.
Spôsobom, ako rozdelit’ množinu na trénovaciu a testovaciu čast’, sa
venujeme v kapitole 16.
227
K APITOLA
15
Neriadené klasifikátory
Neriadené metódy klasifikácie používame, ked’ k vstupným dátam neexistuje informácia o tom, do ktorej klasifikačnej triedy patria. Tieto metódy sa snažia odhalit’ vnútornú štruktúru dát a rozdelit’ dáta do zhlukov
zodpovedajúcich jednotlivým klasifikačným triedam. V oblasti počítačového videnia sa používajú v klasifikácii objektov pri hl’adaní reprezentatívnych vektorov tried, pri kvatovaní farieb na určenie palety alebo pri
segmentácii obrazu na oddelenie objektov. Zhlukovacie metódy sa dajú
podl’a typu výsledného rozdelenia priestoru rozdelit’ nasledovne.
Nehierarchické metódy sú najpoužívanejšími metódami, ktoré vytvárajú rozdelenie priestoru na konečný počet zhlukov. Zhluky sa tvoria na základe určených metrík (vzdialenost’, podobnost’, . . .) a postupne sa iteratívne zlepšujú, kým nie je dosiahnutá stabilita zhlukov. Príkladom je metóda K priemerov (kap. 15.1).
Hierarchické metódy vytvoria hierarchickú stromovú štruktúru rozdelení priestoru. Používajú sa prístupy zhora nadol (rozdel’ujúci prístup – zhluky sa postupne delia) a zdola nahor (aglomeratívny prístup – zhluky sa postupne spojujú). Hierarchické metódy sú bližšie
opísané v kapitole 15.2.
15.1
Metóda K priemerov
Najpoužívanejšou a najjednoduchšou metódou hl’adania zhlukov v dátach patrí metóda K priemerov. Jej základnou myšlienkou je určenie zhlu228
15.1. Metóda K priemerov
(a) Inicializácia prie- (b) Priradenie vekto- (c) Určenie nových (d) Priradenie vektomerov.
rov k priemerom.
priemerov.
rov k priemerom.
Obrázok 15.1: Prvé 4 kroky algoritmu K priemerov (alg. 15.1).
kov a ich priemerov. Počet zhlukov K je daný vopred. Je to iteratívna metóda, kde zhluky a ich priemery sa postupne upravujú (algoritmus 15.1).
Inicializácia priemerov
Iterovanie, kým nenastane konvergencia
1. Priradenie vektorov k jednotlivým priemerom
2. Určenie nových priemerov
Algoritmus 15.1: Základný algoritmus metódy K priemerov.
(0)
(0)
Prvým krokom je inicializácia priemerov µ (0)
1 , µ2 , . . . µK . V klasickom
algoritme sa zoberie prvých K vektorov xi , alebo sa priemery určia náhodne (rovnomerne z oboru hodnôt dát).
V iteratívnej časti algoritmu striedame dva kroky. Najprv sa priradia
vektory do zhlukov určených priemermi. Vektor xi priradíme do zhluku
)
C k(t ) s priemerom µ(t
, ak pre všetky j ∈ {1, . . . K }
k
)
≤ xi − µ(tj ) .
xi − µ(t
k
(15.1)
Po priradení všetkých vektorov vypočítame nové priemery
+1)
=
µ(t
k
1
|C k(t ) | x∈C (t)
k
x.
(15.2)
Ilustrácia inicializácie a prvých troch krokov algoritmu je na obrázku
15.1.
Algoritmus K priemerov konverguje k lokálnemu optimu, globálne
optimum nie je zaručené. Účelová funkcia je
O=
K x − µk .
(15.3)
k=1 x∈C k
229
15. N ERIADENÉ KLASIFIKÁTORY
Na dosiahnutie globálneho minima účelovej funkcie návod neexistuje.
Klasifikácia záleží na počte zhlukov K a na inicializácii priemerov. Na
určenie „správneho“ počtu zhlukov môžeme použit’ vzájomnú validáciu (kap. 16). Na určenie počiatočných priemerov existujú rôzne heuristiky, ktoré využívajú znalosti o dátach (napríklad rozdelenie pravdepodobnosti).
15.1.1 Metóda C priemerov
Vylepšením metódy K priemerov je použitie neurčitých (fuzzy) zhlukov.
Základný algoritmus je rovnaký ako pri metóde K priemerov (alg. 15.1),
avšak vektor xi nie je striktne priradený zhluku C k , ale pomocou funkcie
členstva Rk (xi ) ∈ ⟨0, 1⟩ je určená pravdepodobnost’ priradenia vektora xi
do zhluku C k . Platí, že
K
Rk (xi ) = 1.
(15.4)
k=1
Účelová funkcia v tomto prípade je
O=
K Rk (x)x − µk .
(15.5)
k=1 x∈C k
Pri iterovaní algoritmu sa vektorom zmení funkcia členstva
⎛
⎞ 2 ⎞−1
⎛
m−1
(t )
C
−
µ
x
i
⎜
⎟
k
⎠
Rk(t +1) (xi ) = ⎝ ⎝
⎠ ,
(t )
j =1 xi − µ j (15.6)
kde m ∈ ⟨1, ∞) je parameter určujúci váhu, akou vektory prispievajú k určeniu členstva a priemeru. V literatúre sa uvádza ⟨1, 1; 5⟩ ako vhodný interval na výber m. V prípade, že vektor xi koliduje s priemerom μ j , tak
Rk(t +1) (xi ) =
*
1 ak k = j ,
0 inak.
(15.7)
Následne sa vypočítajú nové priemery
N
i=1
+1)
= :
µ(t
k
230
:
Rk(t +1) (xi )
;m
(t +1)
N
(xi )
i=1 R k
xi
;m .
(15.8)
15.2. Hierarchické zhlukovanie
A
B C D
A
B C D
Obrázok 15.2: Postupnost’ vytvárania zhlukov vyjadrená dendrogramom.
15.2
Hierarchické zhlukovanie
Hierarchické zhlukovacie metódy sa delia podl’a prístupu na
Aglomeratívne: Pri tomto type zhlukovania začíname s počtom zhlukov
rovným počtu dát. Každý vektor príznakov tvorí zhluk. Postupne
spájame najbližšie zhluky a tým vytvárame stromovú štruktúru zvanú dendrogram (obr. 15.2). Na konci postupu je jediný zhluk, obsahujúci všetky vektory príznakov. V d’alšom texte opíšeme metódy
spájania zhlukov.
Rozdel’ujúce: Tento prístup je opačný – začíname s jediným zhlukom
a postupne ho delíme. Nevýhodou tohto prístupu je, že hl’adanie
optimálneho rozdelenia množiny na dve podmnožiny má vysokú
zložitost’ (treba preskúmat’ 2n−1 − 1 možností, kde n je mohutnost’
množiny). Preto sa tieto metódy využívajú len pre malé množiny
dát.
Nevýhodou oboch prístupov je, že v každom kroku hl’adajú lokálne optimálne rozdelenie. V d’alších krokoch sa zhluky nedajú preskupit’, aj keby
to rozdelenie v tomto kroku zlepšilo.
Pri aglomeratívnom prístupe musíme v každom kroku určit’ dva najpodobnejšie zhluky. Po každom vytvorení nového zhluku musíme prepočítat’ podobnost’ s ostatnými zhlukmi, ktorých vzájomné podobnosti zostávajú nezmenené. Podobnost’ sa určuje vzdialenost’ou medzi zhlukmi.
Vzdialenost’ môže byt’ definovaná rôzne. Nech S(C i ,C j ) je podobnost’
zhlukov a d( ) zvolená metrika (Euklidovská, Hammingova, Manhattan,
. . .). Potom najpoužívanejšie metódy na určenie podobnosti sú
Centroidná: Podobnost’ je definovaná vzdialenost’ou priemerov zhlukov
S(C i ,C j ) = d(µi , µ j ).
(15.9)
231
15. N ERIADENÉ KLASIFIKÁTORY
A
B C D
Obrázok 15.3: Pri metóde maximálnej vzdialenosti bude pre body z obrázka 15.2
v druhom kroku vytvorený „nepravý“ zhluk. Vidíme, že body B, C a D tvoria prirodzený zhluk, avšak metóda maximálnej vzdialenosti vytvorí zhluk naznačený
červenou farbou.
Obrázok 15.4: Metóda minimálnej vzdialenosti identifikuje zhluky, ktoré kompletné linkovanie ani cetroidná metóda neodhalia.
Maximálna: Spočítajú sa vzájomné vzdialenosti všetkých prvkov zhlukov a vyberie sa najväčšia
S(C i ,C j ) =
max d(x, y).
x∈C i ,y∈C j
(15.10)
Nazýva sa aj metóda najvzdialenějšieho suseda (úplné linkovanie).
Vytvára skoro sférické zhluky približne rovnakej vel’kosti. Zabraňuje vzniku zret’azených zhlukov. Výskyt odl’ahlých hodnôt môže
viest’ k vzniku „nepravých“ zhlukov (obr. 15.3).
Minimálna: Podobná metóda ako predchádzajúca, ale vyberie sa najmenšia vzdialenost’
S(C i ,C j ) =
min
x∈C i ,y∈C j
d(x, y).
(15.11)
Je to metóda najbližšieho suseda (jednoduché linkovanie). Nevýhodou je, že sa môžu zret’azit’ zhluky, ktoré sú na vzdialenejších
koncoch výrazne nepodobné. Na druhej strane dokáže identifikovat’ zhluky, ktoré kompletné linkovanie ani cetroidná metóda neodhalia (obr. 15.4).
Priemerná: V tomto prípade sa spočíta nevážený priemer vzdialeností
S(C i ,C j ) =
232
1
d(x, y).
|C i ||C j | x∈C i ,y∈C j
(15.12)
15.3. Samoorganizujúce sa mapy
B
A
A
B
C
C
D
(a) Pri metóde minimálnej
vzdialenosti budú v druhom kroku spojené zhluky
A+B a C+D.
D
(b) Pri metóde maximálnej
vzdialenosti budú v druhom kroku spojené zhluky
A+C a B+D.
Obrázok 15.5: Porovnanie zhlukov pri metóde minimálnej a maximálnej vzdialenosti.
O(t1)
O(t2)
O(t3)
O(t3) O(t2) O(t1)
Obrázok 15.6: Usporiadanie neurónov SOM do mriežky alebo lineárne.
Táto metóda nie je príliš citlivá na odchýlky. Odl’ahlé hodnoty nemajú výrazný vplyv na výsledné rozdelenie priestoru. Existuje aj
metóda využívajúca vážený priemer, kde sa vel’kost’ (mohutnost’)
zhluku berie ako váha.
Použitie rôznych metód vedie k rôznym výsledným rozdeleniam. Na
obrázku 15.5 je porovnanie rozdelení pre minimálnu a maximálnu metódu.
15.3
Samoorganizujúce sa mapy
Samoorganizujúce sa mapy (SOM, alebo Kohonenove siete) sú typom neriadených neurálnych sietí, v ktorých sú neuróny v určitom topologickom vzt’ahu. Pri ANN (kap. 14.6) sú neuróny vo vrstvách nezávislé a váhy
sa upravujú bez ohl’adu na susedné neuróny.
SOM sú jednovrstvové siete, kde sú neuróny umiestnené v mriežke
(väčšinou 1D alebo 2D, pozri obr. 15.6). Každý neurón teda obsahuje in233
15. N ERIADENÉ KLASIFIKÁTORY
(a)
(b)
Obrázok 15.7: Dva priestory SOM. V priestore váh (a) môžu byt’ na začiatku trénovania siete váhy topologicky blízkych susedov d’aleko od seba. Farebné spojnice ilustrujú polohu uzlov jedného riadka mriežky SOM v priestore váh (b).
formáciu o svojom topologickom okolí. Vstupné dáta sú porovnávané
s váhovým vektorom každého neurónu a siet’ je trénovaná algoritmom
„vít’az berie všetko“.
Inicializácia
Učenie siete:
1. Vstup vektora príznakov
2. Určenie víťazného neurónu
3. Víťaz berie všetko
Algoritmus 15.2: Základný algoritmus učenia sa SOM.
Základný postup pri učení SOM je opísaný v algoritme 15.2. Prvým
krokom je inicializácia váhových vektorov. Tieto inicializujeme náhodnými hodnotami z daného intervalu (podl’a riešeného problému). Váhové vektory majú rovnaký rozmer ako vektory príznakov. Pri SOM musíme rozlišovat’ medzi topologickým vzt’ahom dvoch neurónov v mriežke
a vzt’ahom ich váhových vektorov v Euklidovskom priestore (obr. 15.7),
a to hlavne pri 2D vektore príznakov.
Vo fáze učenia sa siete prichádzajú na vstup jednotlivé vektory príznakov x a určí sa vít’azný neurón i ∗ , ktorého váhový vektor je v zmysle
Euklidovskej vzdialenosti najbližšie x
i ∗ = argmin x − wi .
i
(15.13)
Ďalším krokom je úprava váhového vektora vít’azného neurónu, ako
aj neurónov v jeho topologickom okolí (obr. 15.8). Tieto váhové vektory
234
15.3. Samoorganizujúce sa mapy
vstup
víťaz
Obrázok 15.8: Úprava váhového vektora vít’azného neurónu a neurónov v jeho
topologickom okolí.
sa posunú smerom k x podl’a vzt’ahu
wi (t + 1) = wi (t ) + α(t )O(i , i ∗, t )x − wi (t ),
(15.14)
kde O(i , i ∗ , t ) je funkcia určujúca okolie vít’azného neurónu a α(t ) ∈ (0, 1)
je rýchlost’ učenia. Funkcia okolia aj rýchlost’ učenia sa s časom zmenšujú, čím zaručia ukončenie učenia. Na začiatku procesu sa rýchlo mení
dostatočne vel’ké okolie vít’azného neurónu. Tu sa náhodne inicializované váhové vektory dostanú do približne výsledného usporiadania a potom s postupne zmenšujúcim sa okolím a pomalšou zmenou vektorov sa
dolad’ujú presné hodnoty. V učení teda rozpoznávame fázu usporiadavania a fázu dolad’ovania.
Okolie môže byt’ pravouhlé (ak sú neuróny usporiadané v pravouhlej
mriežke), definované funkciou
*
1 ak wi ∗ (t ) − wi (t ) ≤ σ(t ),
O(i , i ∗ , t ) =
(15.15)
0 inak
alebo gaussovské, definované ako
O(i , i ∗ , t ) = exp
+
wi ∗ (t ) − wi (t )
σ(t )
,2
,
(15.16)
pričom hodnota parametra σ(t ) klesá so zvyšujúcim sa t , a tým sa okolie
v čase zmenšuje. Pri pravouhlom okolí sa všetky body okolia menia s rovnakou váhou, pri gaussovskom sú body na okraji okolia menej významne
posunuté.
Príklad trénovania siete je na obrázku 15.9. Mriežka je štvorcová s rozmermi 10 × 10. Vstupnými vektormi sú rovnomerne rozdelené náhodné
čísla z oblasti ⟨−1, 1⟩ × ⟨−1, 1⟩. V prvej etape sú váhy náhodne inicializované na hodnoty v oblasti ⟨−0, 5; 0, 5⟩ × ⟨−0, 5; 0, 5⟩. V d’alších etapách sa
235
15. N ERIADENÉ KLASIFIKÁTORY
(a) Náhodné čísla
z oblasti ⟨−0,5;0,5⟩ ×
⟨−0,5;0,5⟩.
(b) Váhy po 100 iteráciách.
(c) Váhy po 200 iteráciách.
(d) Váhy po 600 iteráciách.
(e) Váhy po 3000 iteráciách.
(f) Váhy po 7000 iteráciách.
Obrázok 15.9: Tréning SOM na rovnomerne rozdelených dátach. (a) Inicializácia.
(b), (c) a (d) Fáza usporiadavania. (e) a (f ) Fáza dolad’ovania.
1
1
0.9
.9
0.8
.8
0.7
.7
0.6
.6
0.5
.5
0.4
.4
0.3
.3
0.2
.2
0.1
0
.1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(a) Inicializácia pravidelnej mriežky.
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(b) Usporiadanie po 250 iteráciách.
Obrázok 15.10: SOM tréning pre nerovnomerne rozložené dáta. Body mriežky
(váhové vektory) sa presúvajú smerom k zhlukom dát.
váhové vektory usporiadavajú (etapy 200 – 600), potom nastáva fáza dolad’ovania. Vidíme, že váhové vektory sa upravia tak, aby odhalili štruktúru
trénovacích dát.
V prípade nerovnomerne rozdelených vstupných dát sa váhové vektory presunú smerom do jednotlivých zhlukov dát, ako vidno na obrázku
15.10.
236
K APITOLA
16
Hodnotenie kvality
klasifikácie
Aby sme vedeli určit’ kvalitu klasifikácie, musíme definovat’ a vediet’, ako
sa klasifikátor správa pri dátach, s ktorými sa doteraz nestretol. Chybou
je ked’ má klasifikátor 100% účinnost’ na dátach, na ktorých bol natrénovaný a na neznámych dátach zlyhá. Takémuto stavu sa hovorí preučenie.
Klasifikátor sa naučil „naspamät’“ určitú množinu dát. Preto pri určovaní
kvality klasifikátora používame dve množiny dát – trénovacie a testovacie
dáta. Trénovacie dáta sa používajú na učenie (trénovanie) klasifikátora.
Testovacie dáta na určenie chybovosti (error rate) už natrénovaného klasifikátora.
Aby sme mohli určit’ chybu, musíme aj pri testovacích dátach poznat’
triedu, do ktorej dáta patria. Preto trénovaciu aj testovaciu množinu dát
vyrobíme z pôvodnej množiny dát (s určenou klasifikačnou triedou).
Problém môže nastat’, ak máme napríklad málo dát, alebo sa pri rozdelení dostanú do trénovacej množiny dáta jedného typu a do testovacej dáta druhého. Preto existujú metódy ako vybrat’ vzorky do testovacej
množiny. Medzi ne patria napríklad metódy vzájomnej validácie alebo
bootstrap.
Okrem odhadu chyby klasifikátora sa metódy vzájomnej validácie používajú aj na určenie optimálnych parametrov klasifikátorov. Pri použití
jednotlivých možných hodnôt skúmaného parametra odhadneme chybu
výsledného parametra metódou vzájomnej validácie a následne vyberieme tú hodnotu parametra, ktorá dáva najmenšiu odhadnutú chybu.
Príkladom môže byt’ určenie vstupnej hodnoty K v metóde K najbližších
susedov (obr. 16.1), alebo v metóde K priemerov.
238
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
0
1
(a) K = 1, tréning, dosiahnutá chyba 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(b) K = 1, testovanie, dosiahnutá chyba
0,1667
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(c) K = 7, tréning, dosiahnutá chyba 0,0565
0
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(d) K = 7, testovanie, dosiahnutá chyba
0,1637
0.1
0
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(e) K = 15, tréning, dosiahnutá chyba
0,0565
0
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(f) K = 15, testovanie, dosiahnutá chyba
0,1488
0.1
0
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(g) K = 51, tréning, dosiahnutá chyba
0,0734
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(h) K = 51, testovanie, dosiahnutá chyba
0,1339
Obrázok 16.1: Dosiahnutá chyba pri trénovaní a testovaní metódy K najbližších
susedov.
239
16. H ODNOTENIE KVALITY KLASIFIKÁCIE
dáta s určenou klasifikačnou triedou
Obrázok 16.2: Náhodné prevzorkovanie pre K = 4. Červeno označené vzorky boli
vybrané do testovacej množiny.
16.1
Vzájomná validácia
Pri vzájomnej validácii sa rozdelenie pôvodnej množiny na trénovaciu
a testovaciu vykoná K -krát za sebou. Pre každé rozdelenie sa zistí dosiahnutá chyba E i . Odhadnutá chyba E klasifikátora je potom priemerom
jednotlivých zistených chýb
E=
K
1 Ei .
K i=1
(16.1)
Medzi metódy vzájomnej validácie patria náhodné prevzorkovanie,
K-násobná vzájomná validácia, vrstvená K-násobná vzájomná validácia
a vzájomná validácia s vynechaním jednej vzorky.
16.1.1 Náhodné prevzorkovanie
Ako názov metódy napovedá, dáta sa z pôvodnej množiny do testovacej vyberajú náhodne, bez vrátenia naspät’. Pri každom z K výberov (t’ahov) sa vytvorí testovacia množina M vzoriek, ktorá v jednotlivých výberoch môže obsahovat’ aj rovnaké vzorky a niektoré vzorky sa do testovacej množiny vôbec nedostanú. Táto situácia je znázornená na obrázku
(16.2).
16.1.2 K-násobná vzájomná validácia
Aby sme zabránili opakovaniu sa vzoriek v jednotlivých testovacích množinách, rozdelíme pôvodnú množinu na K rovnako vel’kých podmožín.
Každá z týchto podmožín je raz použitá ako testovacia množina. V tomto
240
16.2. Bootstrap
dáta s určenou klasifikačnou triedou
(a) Dáta vyberáme zaradom.
dáta s určenou klasifikačnou triedou
(b) Dáta vyberáme tak, aby zopovedali
rozdeleniu pravdepodobnosti.
Obrázok 16.3: Obyčajná a vrstvená 4-násobná vzájomná validácia. Červeno
označené vzorky boli vybrané do testovacej množiny.
prípade je každá vzorka použitá na trénovanie aj testovanie, ako vidíme
na obrázku 16.3(a).
16.1.3 Vrstvená K-násobná vzájomná validácia
Aby sme zabezpečili, že trénovacie a testovacie množiny sú vyvážené,
rozdelíme množinu dát X tak, aby podmnožiny zachovávali distribúciu
jednotlivých tried. Podiel (pravdepodobnost’) vzoriek jednotlivých tried
je rovnaký v pôvodnej množine X aj v každej z jej podmnožín X 1 , . . . X K
tak, ako je znázornené na obrázku 16.3(b).
16.1.4 Vzájomná validácia s vynechaním jednej vzorky
Ak máme k dispozícii málo dát, snažíme sa trénovat’ klasifikátor na čo
najväčšej množine, aby zachytil všetky vzt’ahy medzi dátami. V tomto
prípade testujeme na jedinej vzorke. Táto situácia zodpovedá K-násobnej
vzájomnej validácii, kde K je rovné počtu vzoriek.
16.2
Bootstrap
Aj pri metóde bootstrap delíme množinu dát K krát a počítame priemernú dosiahnutú chybu. Rozdiel je v tom, že pri tejto metóde sa v jednom výber môže v trénovacej množine jedna vzorka vyskytovat’ viackrát.
Do trénovacej množiny vyberáme vzorky náhodne s opakovaním. V každom výbere je vel’kost’ trénovacej množiny rovná vel’kosti pôvodnej mno241
16. H ODNOTENIE KVALITY KLASIFIKÁCIE
dáta
Obrázok 16.4: Možná realizácia výberu vzoriek do trénovacej a testovacej množiny metódou bootstrap. Vzorky, ktoré sa nedostanú do ténovacej množiny tvoria
testovaciu množinu.
žiny. Vzorky, ktoré sa nedostanú do trénovacej množiny sa použijú na testovanie. Vel’kost’ testovacej množiny sa tak v jednotlivých výberoch mení.
Príklad možnej realizácie metódy je na obrázku 16.4.
Pri tejto metóde sa pravdepodobnost’, že vzorka skončí v testovacej
množine, rovná 0,368. Pozrime sa na jednu konkrétnu vzorku. Pravdepodobnost’, že ju nevyberieme do trénovacej množiny je 1 − 1/N . Ked’že
výber opakujeme N -krát, pravdepodobnost’, že vzorku nevyberieme ani
raz je
+
,
1 N
1−
≈ e −1 = 0, 368.
N
(16.2)
Klasifikátor teda trénujeme na 63,2 % dát. Preto sa tejto metóde hovorí aj
0,632 bootstrap.
16.3
Chybová funkcia klasifikátora
Chyby klasifikátora sa delia na dva typy. Povedzme, že sa v obraze snažíme detegovat’ konkrétny objekt. Ak sa tento objekt v obraze vyskytuje
a náš klasifikátor ho deteguje, dosiahne správne pozitívny výsledok (true
positive – TP). Ak by ho nedetegoval, dopustí sa chyby typu II a jeho výsledok je nesprávne negatívny (false negative – FN). V prípade, že objekt
sa v obraze nevyskytuje a klasifikátor ho deteguje, nastáva chyba typu I
a výsledok je nesprávne pozitívny (false positive – FP). V prípade, že klasifikátor určí, že objekt nie je prítomný, dostávane správne negatívny vý242
16.3. Chybová funkcia klasifikátora
sledok (true negative – TN). Tabul’ka 16.1 dáva názorný prehl’ad možných
výsledkov klasifikátora.
Tabul’ka 16.1: Typy a identifikácia možných výsledkov klasifikátora.
Skutočnost’
objekt sa
Rozhodnutie – objekt sa
vyskytuje
nevyskytuje
Správna klasifikácia
Chyba typu II
Správne pozitívny výsl.
Nesprávne negatívny výsl.
Chyba typu I
Správna klasifikácia
Nesprávne pozitívny výsl.
Správne negatívny výsl.
vyskytuje
nevyskytuje
Niektoré chyby klasifikácie môžu byt’ závažnejšie (majú horšie následky) – napríklad neodhalenie smrtel’nej choroby v medicíne, ktorá by
sa dala l’ahko liečit’ liekmi, ktoré nemajú vedl’ajšie účinky. Teda neklasifikovanie choroby v prípade chorého človeka má horšie následky ako
nasadenie liekov u zdravého človeka. Číselne môžeme „stratu“ v prípade
správnej klasifikácie vyjadrit’ nulou a v prípade nesprávnej klasifikácie
nejakou nenulovou hodnotou. Toto ohodnotenie sa nazýva funkcia straty
L(s, a) : S × A → R+
0,
(16.3)
kde S je priestor stavov (skutočných klasifikačných tried) a A je priestor
akcií (výstupov klasifikátora). Najčastejšie používanou funkciou straty je
0-1 funkcia L(s, a) = 1 − δsa , kde δsa je Kroneckerova delta (tab. 16.2(a)).
V niektorých aplikáciách (detekcia spamu, medicína atd’.) sa používa nesymetrická funkcia straty (tab. 16.2(b)).
Tabul’ka 16.2: Ohodnotenie chýb klasifikátora.
Skutočnost’
zdravý
chorý
Rozhodnutie
zdravý chorý
0
1
1000
0
(a) Rôzne hodnotené chyby.
Skutočnost’
nie tvár
tvár
Rozhodnutie
nie tvár tvár
0
1
1
0
(b) Rovnako hodnotené chyby.
Pomocou funkcie straty L( ) môžeme vyjadrit’ očakávanú podmienenú stratu pri klasifikácii vzorky x patriacej triede ω nasledovne
Rω (x) =
L(ω, ψ)P (ψ|x).
(16.4)
ψ∈A
243
16. H ODNOTENIE KVALITY KLASIFIKÁCIE
Tabul’ka 16.3: Príklad matice zámen pre klasifikáciu číslic.
číslica
1
2
3
4
5
6
7
8
9
0
1
87
0
0
0
0
0
0
0
0
0
2
0
88
0
0
0
0
1
0
0
0
3
0
1
75
0
0
0
0
15
4
0
4
0
0
1
79
0
0
0
0
0
1
klasifikácia
5
6
7
1
0
0
0
0
0
0
0
0
0
0
0
79
6
0
8
80
1
0
0
83
0
1
0
0
0
0
0
1
0
8
0
0
10
0
0
0
0
65
10
0
9
0
1
4
0
0
0
0
7
71
0
0
0
1
0
0
4
2
0
0
0
90
R
0
1
3
0
1
0
0
0
1
1
Celková očakávaná podmienená strata pri použití tohto klasifikátora je
R=
Rω (x)dx =
L(ω, ψ)P (ψ|x)dx,
(16.5)
ω∈S R ω
ω∈S ψ∈A R ω
kde R ω je rozhodovacia oblast’ triedy ω.
16.4
Metódy porovnávania klasifikátorov
Okrem vyčíslenia očakávanej straty môžeme klasifikátory porovnávat’ na
základe iných vlastností. Jednou z nich je matica zámen (alebo kontingenčná tabul’ka). Z matice zámen môžeme pre binárne klasifikátory (klasifikujú do dvoch tried) vypočítat’ niekol’ko koeficientov kvality klasifikácie.
16.4.1 Matica zámen
Matica zámen je kontingnečnou tabul’kou, do ktorej zapisujeme počty
vzoriek klasifikované do jednotlivých tried. Príkladom matice zámen pri
klasifikácii číslic je tabul’ka 16.3. V tejto matici je špeciálny stĺpec označený R, ktorý dovol’uje klasifikátoru „nevyjadrit’ sa“ (reject option), ak
hodnota klasifikačného kritéria nepresiahla stanovaný prah klasifikácie
pre žiadnu triedu.
Z tejto matice môžeme vidiet’, že klasifikátor nie je úplne dobre natrénovaný, lebo si zamieňa číslice 3, 8 a 9 a tiež 5 a 6. Mohlo by sa zdat’,
244
16.4. Metódy porovnávania klasifikátorov
1
1 98.86
2
3
4
5
6
7
8
9
0
R
0
0
0
1.136
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4.444 1.111
0
0
2.198
0
0
0
0
0
100
90
2
0
95.65 1.087
1.087 1.087 1.087
3
0
0
4
0
0
0
100
5
0
0
0
0
87.78 6.667
6
0
0
0
0
8.791 87.91 1.099
7
0
1.19
0
0
0
0
98.81
8
0
0
17.05
0
0
1.136
0
73.86 7.955
0
0
9
0
0
4.651
0
0
0
0
11.63 82.56
0
1.163
0
0
0
0
1.075
0
1.075
0
80
80.65 1.075
10.75 4.301
0
3.226
0
0
70
60
50
40
30
20
10
0
0
96.77 1.075
0
Obrázok 16.5: Vizualizácia percentuálnych podielov matice zámen z tabul’ky
16.3.
že klasifikátor rozpoznáva rovnako dobre číslice 4 a 5, lebo majú na diagonále rovnaký počet vzoriek. Problémom tejto matice však je, že počet
vzoriek v jednotlivých triedach nie je konštatný. V takomto prípade sa
niekedy do matice zámeny dáva miesto absolútnych počtov klasifikovaných vzoriek, ich percentuálny podiel v jednotlivých triedach. Mnohorozmerné matice zámen sa lepšie vizualizujú pomocou teplotných máp,
ako vidno na obrázku 16.5.
Pre binárne klasifikátory, ktoré klasifikujú dáta do dvoch tried, zodpovedajú údaje v matici zámen jednotlivým typom klasifikácie TP, TN,
FP, FN.
16.4.2 Koeficienty kvality klasifikácie
Z hodnôt TP, TN, FP, FN môžeme vypočítat’ nasledovné koeficienty kvality klasifikácie.
Citlivost’ testu
Citlivost’ klasifikátora je daná pomerom správne pozitívnych výsledkov
k počtu hl’adaných objektov skutočne sa vyskytujúcich v dátach
TPR =
TP
.
TP + FN
(16.6)
245
16. H ODNOTENIE KVALITY KLASIFIKÁCIE
Táto hodnota je ovplyvňovaná hodnotou FN. Čím vyšší počet nesprávne negatívnych výsledkov, tým nižšia citlivost’ klasifikátora. Znamená to,
že klasifikátor nevie odhalit’ všetky výskyty objektu. Ideálny klasifikátor
nemá nesprávne negatívne výsledky a dosahuje 100% citlivost’.
Citlivost’ sa nazýva aj senzitivita, miera skutočnej pozitivity (true positive rate – TPR) a v oblasti získavania informácií úplnost’ alebo záchyt
(recall).
Výlučnost’ testu
Výlučnost’ klasifikátora sa meria pomerom skutočne negatívnych výsledkov k počtu vzoriek neobsahujúcich hl’adaný objekt
TNR =
TN
.
TN + FP
(16.7)
Je to miera ako dobre dokáže klasifikátor určit’ negatívne vzorky. Čím
viac nesprávne pozitívnych, tým nižšia hodnota TNR. Vysoká výlučnost’
sa vyžaduje napríklad pri testovaní výrobkov na výrobnej linke, kde sa
výrobky, ktoré neprejdú testom, zahadzujú. Pri nízkej výlučnosti je medzi
zahodenými vel’ké množstvo fungujúcich výrobkov. Ideálny klasifikátor
má 100% výlučnost’.
Výlučnost’ sa nazýva aj špecificita alebo miera skutočnej negativity
(true negative rate – TNR).
S výlučnost’ou klasifikátora súvisí aj miera nesprávnej pozitivity
FPR =
FP
= 1 − TNR.
FP + TN
(16.8)
Prediktívna hodnota
V medicíne sa používa prediktívna hodnota testu, čo je vlastne posteriórna pravdepodobnost’. Pozitívna prediktívna hodnota (PPH) testu je
pravdepodobnost’, že pacient skutočne má danú chorobu, ked’ test vyšiel pozitívne. Čím menej je nesprávne pozitívnych výsledkov, tým viac
sa hodnota PPH blíži k jednotke
PPH =
TP
.
TP + FP
(16.9)
PPH sa v oblasti získavania informácií nazýva presnost’ (precision).
Negatívna prediktívna hodnota testu určuje pravdepodobnost’, že pacient je skutočne zdravý, ak test vyšiel negatívne. Čím menej nesprávne
246
16.4. Metódy porovnávania klasifikátorov
negatívnych výsledkov, tým vyššia hodnota NPH
NPH =
TN
.
TN + FN
(16.10)
Prediktívna hodnota závisí od rozdelenia pravdepodobnosti choroby
v skúmanej populácii (apriórna pravdepodobnost’).
Účinnost’
Počet správnych výsledkov klasifikácie (pozitívnych alebo negatívnych)
v pomere k počtu všetkých skúmaných vzoriek nazývame účinnost’. Čím
menej nesprávnych výsledkov, tým vyššia účinnost’
Eff =
TP + TN
.
TP + FP + TN + FN
(16.11)
Účinnost’ voláme aj efektívnost’ alebo správnost’ (accuracy).
F1 skóre
V oblasti získavania informácií sa na hodnotenie kvality dolovacích metód používa vážený harmonický priemer úplnosti a presnosti nazývaný
F skóre
Fβ =
(1 + β2 )(PPH.TPR)
.
β2 PPH + TPR
(16.12)
Najčastejšie sa používa F1 skóre, kde váha presnosti a úplnosti je rovnaká
(β = 1)
F1 =
2PPH.TPR
.
PPH + TPR
(16.13)
16.4.3 ROC krivky
Pôvodne z oblasti rádiológie sa do oblasti klasifikácie dostal pojem ROC
krivka. ROC je z anglického Receiver Operating Characteristics – hodnota
opisujúca prevádzkovú charakteristiku príjímača (radaru).
ROC krivka opisuje vzt’ah citlivosti a miery nesprávnej pozitivity, kde
na x-ovej osi je FPR a na y-ovej TPR. ROC krivka je vhodná pri binárnych klasifikátoroch, ktoré klasifikačné kritérium vyhodnocujú voči nejakému prahu, prípadne obsahujú nejaký premenný parameter, ktorého
optimálna hodnota sa dá určit’ práve z analýzy ROC krivky.
247
16. H ODNOTENIE KVALITY KLASIFIKÁCIE
P(x,ω1)
P(x,ω2)
TN
TP
FP FN
Robjekt
Rpozadie
Obrázok 16.6: Rozdelenie pravdepodobnosti s vyznačeným klasifikačným prahom a určenými hodnotami TP, TN, FP, FN.
Vytvorenie ROC krivky
Ako príklad si uved’me klasifikátor, ktorý zaradí vzorku do klasifikačnej
triedy na základe hodnoty jediného príznaku. Ak x < h, tak vzorka patrí
do triedy ω1 , inak do ω2 . Parametrom tohto klasifikátora je hodnota prahu
h. Nech trieda ω1 reprezentuje objekt a trieda ω2 pozadie obrazu. Potom
obrázok 16.6 ilustruje hodnoty TP, TN, FP, FN pri danom rozdelení pravdepodobnosti.
Ked’ meníme prah h, menia sa hodnoty FPR a TPR. Pre každú hodnotu prahu zanesieme bod (FPR, TPR) do grafu, ako je vidno na obrázku
16.7. Pri h = 0 sú všetky vzorky klasifikované ako pozadie (negatívne).
To znamená, že FP = 0 a aj TP = 0 a teda aj FPR = 0 a TPR = 0 (bod A
na obrázku). Postupným zvyšovaním prahu sa zvyšuje hodnota TPR, pričom FPR môže byt’ nulová, prípadne skoro nulová (bod B na obrázku).
Pri určitej hodnote prahu sa začne zvyšovat’ aj hodnota FPR (bod C na
obrázku). V bode D na obrázku je prah Bayesovho klasifikátora (porovnaj s obrázkom 14.1(b)). Od bodu E je hodnota FPR približne 100 %, čiže
všetky objekty máme správne klasifikované. Posledným bodom ROC krivky je bod (100 %,100 %), ked’ všetky vzorky sú klasifikované ako objekt.
V praxi nemôžeme vyhodnotit’ všetky možné hodnoty parametra klasifikátora (napríklad, ked’ zmena parametra vyžaduje nové trénovanie klasifikátora) a výsledná krivka je schodovitá. Preto sa ROC krivka generuje
pomocou vzájomnej validácie, ked’ v niekol’kých behoch vygenerujeme
ROC krivky a spriemerujeme ich. Prípadne použijeme rôzne štatistické
metódy odhadov rozdelenia pravdepodobnosti, z ktorých potom vygenerujeme ROC krivku.
248
16.4. Metódy porovnávania klasifikátorov
100%
D
E
F
G
P(x,ω1)
P(x,ω2)
C
TPR
B
A
A
0%
FPR
B
C D
E
F G
100%
Obrázok 16.7: Body ROC krivky zodpovedajú rôznym hodnotám klasifikačného
prahu.
Výber parametra klasifikátora pomocou ROC krivky
Oblast’ medzi bodom A a C na obrázku 16.7 je oblast’ prísneho klasifikátora, kde vel’mi málo vzoriek objektov je klasifikovaných ako objekt. Na
druhej strane v tejto oblasti nemáme skoro žiadne nesprávne pozitívne
klasifikácie.
Oblast’ medzi bodmi E a G je oblast’ nedbanlivého klasifikátora, kde
všetky vzorky objektov klasifikujeme správne, ale za cenu vel’mi vysokých
hodnôt FP.
Oblast’ optimálneho klasifikátora leží medzi bodmi C a E.
Parameter výsledného klasifikátora potom môžme vybrat’ podl’a toho,
čo je ciel’om klasifikácie. Ak je náš klasifikátor jedným z prvých v rade za
sebou idúcich klasifikátorov, môžeme ho skonštruovat’ ako nedbalý, niekde v okolí bodu E, pričom sa spol’ahneme na to, že nasledujúce klasifikátory postupne znížia FPR.
Ako najlepší sa často vyberá klasifikátor, ktorý leží na ROC krivke čo
najbližšie k l’avému hornému rohu, a teda maximalizuje citlivost’ a zároveň výlučnost’. Ďaším používaným bodom je bod s rovnakou hodnotou
citlivosti a výlučnosti. Tento leží na prieniku ROC krivky s druhou diagonálou.
Priebeh ROC krivky
Tvar ROC krivky závisí od toho, ako dobre sa dajú odseparovat’ vzorky
jednotlivých tried. Na obrázku 16.8 sú uvedené tri základné typy ROC kriviek. V prvej situácii vieme nájst’ ideálny prah, ked’ klasifikátor správne
identifikuje všetky vzorky objektu aj pozadia. Táto situácia je v reálnych
aplikáciách vel’mi zriedkavá. Príkladom typickej ROC krivky je krivka pre
249
16. H ODNOTENIE KVALITY KLASIFIKÁCIE
100%
P(x,ω1)
P(x,ω2)
TPR
0%
100%
FPR
Obrázok 16.8: Tvar ROC krivky zodpovedá rozdeleniu pravdepodobnosti.
100%
A
C
B
TPR
0%
FPR
100%
Obrázok 16.9: Porovnanie troch klasifikátorov pomocou ROC kriviek.
rozdelenie v strede, kedy sa pri klasifikácii snažíme minimalizovat’ dosiahnutú chybu. V najhoršom prípade, ked’ rozdelenia pravdepodobnosti obidvoch tried splývajú, ROC krivka splýva s diagonálou a kvalita klasifikácie
je rovnaká, ako keby sme si hádzali mincou.1
Porovnanie kvality klasifikátora pomocou ROC kriviek
Na obrázku 16.9 je porovnanie výsledkov rôznych klasifiátorov. Problémom je určit’, ktorý z klasifikátorov je lepší. Vidíme, že klasifikátor C dosahuje horšie výsledky než klasifikátory A a B. Medzi týmito dvomi však
nie je jeden jednoznačne lepší. Pri nízkych hodnotách FPR sa javí ako
lepší klasifikátor B, ale klasifikátor a dosiahne vyššiu citlivost’, pre vyššie
hodnoty FPR. Jednou z možností, ako určit’, ktorý z A a B je lepší, je spočítat’ obsah plochy pod krivkou.
1 Ak by ROC krivka nášho klasifikátora ležala v šedej oblasti, smutne sklopíme hlavu
a ideme vrátit’ titul.
250
16.4. Metódy porovnávania klasifikátorov
100%
ROC(t0)
TPR
0%
t0
FPR
100%
Obrázok 16.10: Obsah oblasti pod ROC krivkou obmedzená maximálne tolerovanou hodnotou FPR = t0 .
AUC hodnota
Integrál ROC krivky vyjadruje plochu pod ROC krivkou. Tomu zodpovedá
aj anglické označenie AUC (area under the curve). Hodnota AUC sa pohybuje v intervale ⟨0, 5; 1⟩, pričom hodnotu 1 dosahuje ideálny klasifikátor
a 0,5 náhodný. Kvalita klasifikátora sa pomocou hodnoty AUC dá vyjadrit’
pomocou stupnice v tabul’kách 16.4. Závisí od typu riešeného problému,
ktorú tabul’ku použijeme.
Tabul’ka 16.4: Dve používané tabul’ky AUC hodnôt.
Rozpätie
0,5 – 0,6
0,6 – 0,7
0,7 – 0,8
0,8 – 0,9
0,9 – 1,0
Stupnica
zlyhávajúci
slabý
priemerný
dobrý
vynikajúci
Rozpätie
0,5 – 0,75
0,75 – 0,92
0,92 – 0,97
0,97 – 1,0
Stupnica
priemerný
dobrý
vel’mi dobrý
vynikajúci
V niektorých aplikáciách nemá zmysel uvažovat’ parametre klasifikátora, pri ktorých sa dosahuje vysoká hodnota FPR. V tomto prípade sa
nepočíta integrál na celom obore ⟨0, 1⟩, ale len po nejakú maximálne tolerovanú hodnota FPR = t0 , ako je znázornené na obrázku 16.10.
251
16. H ODNOTENIE KVALITY KLASIFIKÁCIE
Štatistické porovnanie
Štatisticky sa rozdielnost’ dvoch klasifikátorov pomocou hornoty AUC dá
porovnat’ použitím nasledovnej testovacej štatistiky
CR =
AUC 1 − AUC 2
,
Std(AUC 1 − AUC 2 )
(16.14)
ktorá má (0, 1) normálne rozdelenie. Hypotéza H0 je, že rozdiel medzi
hodnotami AUC je nulový.
16.4.4 McNemarov test
Majme klasifikátory K1 a K2, ktorých kvalitu chceme porovnat’. Na výpočet testovacej štatistiky McNemarovho testu pre oba klasifikátory určíme
nasledovné hodnoty
•
•
•
•
n00 : počet vzoriek správne klasifikovaných oboma klasifikátormi,
n01 : počet vzoriek správne klasifikovaných K1 ale nesprávne K2,
n10 : počet vzoriek nesprávne klasifikovaných K1 ale správne K2,
n11 : počet vzoriek nesprávne klasifikovaných oboma klasifikátormi.
Následne vypočítame testovaciu štatistiku
M=
(|n01 − n10 | − 1)2
,
n01 + n10
(16.15)
ktorá má χ2 rozdelenie s jedným stupňom volnosti. To znamená, že ak
M > 3, 84, potom s 95% spol’ahlivost’ou môžeme zamietnut’ nulovú hypotézu, že oba klasifikátory majú rovnakú chybovost’.
252
Zoznam použitej literatúry
[Ami02]
Y. Amit. 2D object detection and recognition: models, algorithms, and networks. The MIT Press,Cambridge, Massachusetts, 2002.
[Bis06]
C. M. Bishop. Pattern Recognition and Machine Learning. Secaucus, NJ, USA: Springer-Verlag New York, Inc., 2006.
[Bra97]
A. P. Bradley. „The use of the area under the ROC curve in the
evaluation of machine learning algorithms“. Pattern Recognition 30 (1997), str. 1145–1159.
[CC00]
L. d. F. Costa a R. Cesar. Shape Analysis and Classification:
Theory and Practice. Boca Raton, FL, USA: CRC Press, Inc.,
2000.
[CDB86]
R. L. Cannon, J. V. Dave a J. Bezdek. „Efficient Implementation of the Fuzzy c-Means Clustering Algorithms“. Pattern
Analysis and Machine Intelligence, IEEE Transactions on 8.2
(1986), str. 248–255.
[DG06]
J. Davis a M. Goadrich. „The Relationship Between PrecisionRecall and ROC Curves“. Proceedings of the 23rd International Conference on Machine Learning. ICML ’06. Pittsburgh,
Pennsylvania: ACM, 2006, str. 233–240.
[DK09]
F. De la Torre a T. Kanade. „Discriminative Cluster Analysis“.
Theory and Novel Applications of Machine Learning. Ed. M.
Er a Y. Zhou. In-teh, Croatia, 2009.
254
Zoznam použitej literatúry
[DZ00]
B. Dawant a A. Zijdenbos. „Image segmentation“. Handbook
of Medical Imaging. Ed. J. M. Fitzpatrick a M. Sonka. Zv. 2.
SPIE Press, Bellingham, WA, 2000. Kap. 2.
[Far97]
I. Farkaš. „Samoorganizujúce sa mapy“. Úvod do teórie neurónových sietí. Ed. V. Kvasnička a kol. IRIS, Bratislava, 1997,
str. 142–189.
[Faw06]
T. Fawcett. „An Introduction to ROC Analysis“. Pattern Recogn. Lett. 27.8 (jún 2006), str. 861–874.
[FP02]
D. A. Forsyth a J. Ponce. Computer Vision: A Modern Approach. Prentice Hall Professional Technical Reference, 2002.
[FP91]
D. Fisher a M. Pazzani. „Computational Models of Concept
Induction“. Concept Formation: Experience and Knowledge
in Unsupervised Learning. Ed. D. Fisher, M. Pazzani a P. Langley. San Mateo, CA: Morgan Kaufmann, 1991, str. 3–44.
[Kru+13]
R. Kruse a kol. Computational Intelligence – A Methodological
Introduction. Texts in Computer Science. Springer, 2013.
[MH84]
B. J. McNeil a J. A. Hanley. „Statistical Approaches to the Analysis of ROC curves“. Medical Decision Making 4.2 (1984),
str. 136–149.
[MM01]
W. Martinez a A. Martinez. Computational Statistics Handbook with MATLAB. Chapman & Hall/CRC Computer Science
& Data Analysis. Taylor & Francis, 2001.
[MR10]
O. Maimon a L. Rokach, ed. Data Mining and Knowledge Discovery Handbook. Druhé vyd. Springer, 2010.
[NA08]
M. Nixon a A. Aguado. Feature extraction and image processing. Academic Press. Academic, 2008.
[Náv+02]
P. Návrat a kol. Umelá inteligencia. Vydavatel’stvo STU, Bratislava, 2002.
[Ora+13]
M. Oravec a kol. Metódy strojového učenia na extrakciu príznakov a rozpoznávanie vzorov. Zv. II. FELIA s.r.o., 2013.
[PWG02]
S. W. Perry, H. S. Wong a L. Guan. Adaptive Image Processing: A Computational Intelligence Perspective. Boca Raton,
FL, USA: CRC Press, Inc., 2002.
[Qui86]
J. R. Quinlan. „Induction of Decision Trees“. Mach. Learn. 1.1
(mar. 1986), str. 81–106.
[SA96]
P. Sinčák a G. Andrejková. Neurónové siete (Inžiniersky prístup). Zv. I. ELFA Press, Košice, 1996.
255
[SS01]
L. G. Shapiro a G. C. Stockman. Computer Vision. Prentice
Hall, 2001.
[Sze10]
R. Szeliski. Computer Vision: Algorithms and Applications. Springer London, 2010.
[TK10]
S. Theodoridis a K. Koutroumbas. Pattern Recognition. Štvrté
vyd. Academic Press, 2010.
Č AS Ť IV
FARBA A VIZUÁLNE VNÍMANIE
K APITOLA
17
Svetlo a farba
Osvetlenie je dôležitou a nepostrádatel’nou zložkou životného prostredia. Slúži materiálnym aj kultúrnym potrebám, jeho úroveň je významným ukazovatel’om úrovne spoločnosti [CIE13].
rastúca energia
rastúca vlnová dĺžka
0,0001nm 0,01nm
100m
10nm
0,01cm
1μm
1cm
1m
gama Röntgenové UV
Infračervené mikrovlnné
rádiové vlny
radar
žiarenie žiarenie
žiarenie
žiarenie
žiarenie
viditeľné svetlo
400
500
600
700
vlnová dĺžka (nanometre)
Obrázok 17.1: Elektromagnetické vlny. Viditel’né spektrum spolu s menami neviditel’ných vĺn.
Podl’a Maxwellovej teórie elektromagnetických vĺn má svetlo charakter elektromagnetického vlnenia s rozličnými dĺžkami. Fakt, že dokážeme
vnímat’ farby, spôsobuje schopnost’ oka reagovat’ na elektromagnetické
vlny určitej dĺžky. Len vel’mi úzka čast’ elektromagnetického spektra (vi258
ditel’ná čast’ spektra) sa nazýva svetlo. Nachádza sa v rozsahu vlnových
dĺžok medzi 360 nm a 780 nm. Viditel’né farby v tomto rozsahu sa nazývajú spektrálne, čisté farby. Teda čisté farby zodpovedajú jednotlivým
vlnovým dĺžkam.
Presnejšie povedané tento rozsah vlnových dĺžok je viditel’ným svetlom pre človeka. Niektoré druhy živočíchov vnímajú iné rozsahy. Napríklad včely ho majú posunutý smerom ku kratším vlnovým dĺžkam, a teda
môžu „vidiet’“ ultrafialové žiarenie. Naopak niektoré plazy vnímajú ako
viditel’né aj to, čo je pre človeka už neviditel’né infračervené žiarenie.
Rozsah vnímaných vlnových dĺžok je daný predovšetkým tým, že v oblasti
viditel’ného svetla je maximum elektromagnetického žiarenia dopadajúceho na zemský povrch zo Slnka. Na obrázku 17.1 je zobrazený interval
farieb zodpovedajúci rôznym vlnovým dĺžkam spolu s menami neviditel’ných vĺn.
Svetelné vlnenie je priečne vlnenie, pri ktorom intenzita elektrického
a intenzita magnetického pol’a H
sú kolmé na smer postupu vlpol’a E
aH
sú na seba kolmé. Elektromagnetická vlna
nenia a zároveň vektory E
je znázornená na obrázku 17.2. Svetelné vlnenie má periodickú povahu
a môžeme ho rozložit’ na zložky so sínusovým priebehom monochromatického žiarenia. Monochromatické žiarenie sa prejavuje vždy jednou
určitou farbou, preto sa nazýva aj jednofarebné svetlo alebo spektrálna
farba. Spektrálna krivka je graf intenzity v závislosti od vlnovej dĺžky.
E
S
H
Obrázok 17.2: Elektromagnetická vlna.
Elektromagnetické vlnenie, a teda aj svetlo, charakterizujú tri základné vlastnosti:
• amplitúda (svietivost’),
• frekvencia (alebo farba),
• polarizácia (uhol vlnenia).
259
17. S VETLO A FARBA
Svetelné vlnenie môžeme charakterizovat’ vlnovými dĺžkami λ alebo
frekvenciami f . Vzt’ah medzi nimi je daný ako pomer
λ=
v
,
f
(17.1)
kde v je fázová rýchlost’. Elektromagnetické vlny sa šíria dokonca aj vo
vákuu. Vtedy je vzt’ah medzi frekvenciou a vlnovou dĺžkou (λ) elektromagnetického žiarenia
f λ=c ,
(17.2)
kde c je rýchlost’ svetla vo vákuu.
Energia E vlny súvisí s jej frekvenciou podl’a vzt’ahu
E =hf ,
(17.3)
kde h je Planckova konštanta, nazvaná podl’a nemeckého fyzika Maxa
Plancka.
Existujú optické javy, ktoré sa nedajú opísat’ pomocou Maxwellovej
elektromagnetickej teórie. Možno ich však vysvetlit’ pomocou kvantového modelu svetla. Podl’a kvantovej teórie sa svetlo skladá z mnohých
diskrétnych svetelných kvánt – fotónov. Energia fotónu sa vyjadruje v jednotkách elektrovolt (eV). Fotón ako častica elektromagnetického pol’a je
daná okrem energie aj svojou hmotnost’ou a hybnost’ou. Pokojová hmotnost’ fotónu je nulová, inak by sa nemohol pohybovat’ rýchlost’ou svetla.
Kvôli dualite častice a vlnenia má svetlo vlastnosti aj vlnové aj časticové.
17.1
Veličiny opisujúce svetlo
Elektromagnetické vlnenie je nositel’om energie. Dôležitým faktorom popri vel’kosti hustoty energie žiarenia je aj jej priestorové rozloženie. Vlnenie sa môže líšit’ tiež svojím spektrálnym zložením. Aby bolo možné
elektromagnetické žiarenie využit’, je potrebné jeho energetické charakteristiky poznat’ a vediet’ ich merat’. Týmto meraním sa zaoberá rádiometria.
Vlastnosti svetla, bez ohl’adu na detektor a jeho vlastnosti, opisujú
rádiometrické veličiny. Ak chceme merat’ vlastnosti svetla podl’a jeho
účinku na l’udské oko, používame fotometrické veličiny.
260
17.1. Veličiny opisujúce svetlo
17.1.1 Rádiometrické veli činy
Rádiometrické veličiny sa niekedy nazývajú aj energetické, preto sa na ich
označenie používa index e. V nasledujúcom texte si uvedieme základné
rádiometrické veličiny.
Žiarivý tok
Žiarivý tok Φe je energia vyžiarená telesom za jednotku času (resp. výkon
vyžiarený, absorbovaný, alebo prenášaný vlnením)
Φe =
dE
,
dt
jednotka W.
Intenzita vyžarovania
Intenzita vyžarovania Me je energia vyžiarená jednotkovou plochou za
jednotku času
M=
dΦe
,
dS
jednotka W.m −2 .
Žiarivost’
Žiarivost’ I e je energia vyžiarená bodovým zdrojom v danom smere do
malého priestorového uhla
Ie =
dΦe
,
dΩ
jednotka W.sr −1 ,
kde sr je označenie pre steradián, jednotku priestorového uhla.
Doteraz definované veličiny opisujú žiarenie ako celok, bez ohl’adu
na to, aké vlnové dĺžky sú v ňom obsiahnuté.
Spektrálna hustota žiarivého toku
Spektrálna hustota žiarivého toku Φeλ je energia vyžiarená za jednotku
času, ktorá pripadá na interval vlnových dĺžok dλ
Φeλ =
dΦe
.
dλ
261
17. S VETLO A FARBA
Celkový žiarivý tok
Celkový žiarivý tok získame integrovaním cez celý interval vlnových dĺžok
(λ1 , λ2 ), v ktorom zdroj emituje žiarenie
Φe =
λ2
λ1
Φeλ dλ.
17.1.2 Fotometrické veli činy
Všetky fotometrické veličiny a jednotky sa definovali na základe fyzikálnych veličín a jednotiek prostredníctvom kriviek spektrálnej citlivosti
l’udského oka V(λ) pre denné (fotopické) a V’(λ) pre nočné (skotopické)
videnie (vid’ kapitolu 18).
Svietivost’
Fotometrická veličina charakterizujúca bodový zdroj je svietivost’. Je to
veličina, ktorá vyjadruje schopnost’ približne bodového zdroja vyvolat’
v danom smere zrakový vnem. Jej jednotkou je kandela (cd), ktorá patrí
medzi základné jednotky sústavy SI a od nej sa odvodzujú jednotky ostatných fotometrických veličín. Je analógiou k žiarivosti a zapisuje sa
I=
dΦ
,
dΩ
jednotka cd (kandela).
Svetelný tok
Odvodené fotometrické jednotky sú lúmen a lux. Lúmen (lm) je jednotkou svetelného toku. Ked’ bodový zdroj svetla vysiela svetelné žiarenie
v smere určenom uhlom α do malého priestorového uhla, v ktorého vrchole sa nachádza, hovoríme o svetelnom toku
dΦ = I α dΩ,
jednotka cd.sr, tj. lúmen (lm).
Osvetlenie
Ak bodový zdroj so svietivost’ou I vysiela svetelný tok dΦ do malého priestorového uhla dΩ, pri kolmom dopade na malú plochu dS spôsobuje na
nej osvetlenie
E=
dΦ
,
dS
Jednotkou osvetlenia je lux.
262
jednotka lm.m−2 , tj. lux.
17.2. Funkcie spektrálnej hustoty
Jas
Plošné svetelné zdroje charakterizuje jas L. Jas vyjadrujeme ako podiel
svietivosti plošného elementu v danom smere k priemetu plošného elementu do roviny kolmej na uvažovaný smer.
17.2
Funkcie spektrálnej hustoty
V 17. storočí urobil Isaac Newton radikálny objav, ked’ rozložil biele svetlo na spojité spektrum farieb pri prechode svetla cez sklenený hranol
(vid’ obrázok 17.3) a vyvrátil tak predchádzajúcu teóriu, že farby vznikajú
zmiešavaním svetla a tmy (temnoty).
biele
o
svetl
Obrázok 17.3: Rozklad bieleho svetla na spektrum farieb po prechode cez sklenený hranol.
V súčasnosti pod pojmom spektrum rozumieme rozklad žiarenia podl’a vlnových dĺžok alebo frekvencií. Spektrum môže byt’ spojité alebo nespojité v závislosti od skupenstva látkových objektov vysielajúcich žiarenie. Nespojité spektrum sa ešte rozdel’uje na čiarové a pásové spektrum.
Spektrum charakterizujeme pomocou pomerného spektrálneho zloženia žiarenia, ktoré zobrazuje závislost’ pomernej spektrálnej hustoty
žiarivého toku od vlnovej dĺžky.
Svetlo vyžarované zo zdroja vo väčšine prípadov obsahuje žiarenie
viacerých vlnových dĺžok. Spektrálna krivka intenzity žiarenia pre takéto
zdroje svetla je znázornená na obr. 17.4. Energia svetla sa vypočíta ako
plocha pod spektrálnou krivkou.
17.3
Geometrické vlastnosti svetla
Základným pojmom geometrickej optiky je svetelný lúč. Svetelný lúč dopadajúci na povrch látky sa čiastočne odrazí, čiastočne prejde látkou
a čiastočne ho látka pohltí. Dopadajúci lúč sa odrazí podl’a zákonov odrazu.
263
17. S VETLO A FARBA
500nm
400nm
600nm
700nm
Obrázok 17.4: Spektrálna krivka intenzity žiarenia pre svetlo s viacerými vlnovými dĺžkami.
Svetlo riadia tieto zákony geometrickej optiky
1. Zákon priamočiareho šírenia svetla: V homogénnom prostredí sa
svetlo pohybuje po priamkach (svetelné lúče).
2. Zákon odrazu: Odrazený lúč leží v rovine dopadu určenej normálovým vektorom dopadu v danom bode dopadu a uhol medzi normálou a oboma lúčmi je komplementárny.
3. Zákon lomu (Snell–Descartes): Lúč prechádzajúci z jedného prostredia do druhého mení na rozhraní týchto prostredí svoj smer.
n1
n2
r1
α1 α1
α2
r1
r2
Obrázok 17.5: Čiastočný odraz a lom svetelného lúča dopadajúceho na rozhranie
dvoch priesvitných materiálov.
Podl’a zákona lomu, ak r 1 je lúč dopadajúci na rozhranie dvoch priesvitných materiálov s indexami lomu n1 a n2 (vid’ obr. 17.5), a r 2 je lomený
264
17.4. Žiarenie čierneho telesa
lúč, potom r 1 , r 2 a normála na rozhranie sú koplanárne a pre uhly α1 a α2
medzi normálou a dvomi lúčmi platí vzt’ah
n1 . sin α1 = n2 . sin α2 .
(17.4)
Proces formovania obrazu pozostáva z troch častí: osvetlenie, odrazivost’ materiálu a pozorovanie. Materiály v scéne interagujú s prichádzajúcim svetlom a spôsobujú jeho reflexiu, odraz. Farba objektu je daná
spektrom dopadajúceho svetla a svetlom absorbovaným a/alebo odrazeným (vlastnost’ami objektu). V prípade matných materiálov použijeme
Lambertov model odrazu. Hovoríme, že intenzita odrazeného svetla od
povrchu je nezávislá od uhla pozorovania.
17.4
Žiarenie čierneho telesa
Každé teleso s teplotou vyššou ako je absolútna nula (0 K tj. –273,15 ◦ C)
vyžaruje do okolia elektromagnetické žiarenie. Vlnová dĺžka, na ktorej
toto teleso najviac vyžaruje, závisí od jeho teploty. Čím väčšia je teplota
telesa, tým kratšiu vlnovú dĺžku má žiarenie, ktoré vysiela do priestoru.
Táto vlnová dĺžka sa dá jednoducho vypočítat’ podl’a Wienovho zákona
posunu, ktorý hovorí, že vlnová dĺžka λmax , na ktorú pripadá maximum
vyžarovania čierneho telesa, je nepriamo úmerná termodynamickej teplote T
b
λmax = ,
T
kde b = 2, 898.10−3 m K je konštanta a T je teplota povrchu telesa v Kelvinoch.
Schopnost’ telesa vysielat’ elektromagnetické žiarenie úzko súvisí s jeho schopnost’ou pohlcovat’ žiarenie, pretože teleso pri konštantnej teplote je v termodynamickej rovnováhe so svojím okolím, teda získava pohlcovaním energie od okolia rovnaké množstvo energie, ako do okolia
odovzdáva.
Príklad: Železnú tyč v tme pri izbovej teplote okolo 20 ◦ C (293 K) neuvidíme. Do okolia vyžaruje elektromagnetické žiarenie s vlnovou
dĺžkou okolo 10 μm, čo je vlnová dĺžka neviditel’ného, infračerveného žiarenia. Ked’ ju však začneme zahrievat’, začne sa jej teplota
zvyšovat’ a s ňou sa bude skracovat’ vlnová dĺžka žiarenia, ktorá pri
určitej teplote začne patrit’ do viditel’nej časti spektra, na ktorú sú
citlivé naše oči. Rozžeravenú tyč začne byt’ vidno a nadobudne červenú farbu.
265
17. S VETLO A FARBA
Ako sme už spomenuli vyššie, väčšina telies, ktoré poznáme, čast’ žiarenia na ne dopadajúceho odrazí, čast’ pohltí, a čast’ žiarenia nimi prejde.
Aby bolo možné jednoducho pracovat’ so žiarením telies, bol zavedený
fyzikálny model – absolútne čierne teleso. Je to idealizované teleso, ktoré
žiadne žiarenie neodrazí ani cezeň žiadne neprejde, ale dokonale pohltí
všetku energiu svetla, ktoré naň dopadá a tú vyšle v podobe tepelného
žiarenia. V praxi sa ako čierne teleso správa napríklad dutina so začiernenými vnútornými stenami a malým otvorom, z ktorého žiarenie vystupuje.
Ako sa mení teplota, odtieň farby žiarenia sleduje čiaru teplotných
žiaričov, tzv. Planckovu krivku (Planckian locus). Planckova krivka opisuje spektrálne rozdelenie intenzity žiarenia čierneho telesa pri vyznačených teplotách. Túto závislost’ popísal v roku 1900 Max Planck (1858 –
1947), ktorý získal za myšlienku existencie kvánt energií v roku 1918 Nobelovu cenu za fyziku.
S rastúcou teplotou sa vlnová dĺžka maximálneho vyžarovania skracuje a tiež sa zväčšuje množstvo vyžarovanej energie. To znamená, že ak
sa povie, že nejaké žiarenie zodpovedá žiareniu čierneho telesa s teplotou x Kelvinov, tak spektrálna krivka tohto žiarenia bude Planckova krivka
príslušnej vlnovej dĺžky.
Opísali sme parameter farby svetla zodpovedajúci vyžarovaniu čierneho telesa, a to parameter teploty. Môžeme teda hovorit’ o farebnej teplote svetelného zdroja. Je to teplota čierneho telesa, ktorého farba žiarenia sa naň najviac podobá. Svetlo určitej farebnej teploty má farbu tepelného žiarenia vydávaného čiernym telesom, zahriatym na túto teplotu. Vel’a prirodzených zdrojov svetla môže byt’ aproximovaných žiarením ideálneho čierneho telesa.
266
K APITOLA
18
L’udský vizuálny systém
Zrak je pre človeka zo všetkých zmyslov považovaný za najdôležitejší. Pomocou zraku vníma človek asi 80 % všetkých informácií zo svojho okolia.
Zmyslovým orgánom zraku je oko, ktorým človek vníma vizuálne obrazy
okolitého sveta.
Fakt, že dokážeme vnímat’ farby, spôsobuje schopnost’ oka reagovat’
na elektromagnetické vlny určitej dĺžky. Svetlo, teda elektromagnetické
žiarenie z okolitého sveta, sa cez našu optickú sústavu „oko“ prenáša
na receptorové bunky (tyčinky a čapíky) na sietnici, kde vyvolávajú chemickú reakciu. Tieto potom prenášajú vyvolané vzruchy pomocou nervových vlákien do mozgu, ktorý ich spracuje na vnímaný obraz.
V rôznych častiach oka nastáva pohlcovanie rôznych vlnových dĺžok
žiarenia. Tento fakt sa dá využit’ napríklad pri operáciách oka, ale predovšetkým chráni oko pred poškodením. Žiarenie je pohlcované pomocou rozkladu proteínov a iných látok, čím sa spotrebováva energia. Vyššie
dávky nevhodného žiarenia spôsobujú slzenie, zvýšenie teploty a tlaku
v oku, zápaly a podobne.
• 100 – 315 nm – absorbuje sa prevažne v rohovke, zvyšok sa rozptýli
v sklovci,
• 315 – 400 nm – absorbuje sa prevažne v šošovke za pomoci premeny proteínov,
• 400 – 780 nm – viditel’né svetlo je oko schopné v priebehu 0,25 sekundy zredukovat’ pomocou zreničky na znesitel’né množstvo, ale
na kratších vlnových dĺžkach už nedokáže tak rýchle zareagovat’,
268
18.1. Štruktúra oka
• 780 – 1400 nm – prechádza cez šošovku a dopadá na sietnicu, kde
môže spôsobit’ aj vážne poškodenie.
• viac ako 1400 nm – je absorbované v rohovke. Spôsobuje silné slzenie a zvyšovanie teploty a tlaku sklovca.
18.1
Štruktúra oka
Svetlo vstupuje do oka cez šošovku (lens). Zmenou tvaru šošovky sa mení
ohnisková vzdialenost’, zabezpečuje sa ostré premietnutie obrazu na sietnicu. Toto prispôsobenie šošovky sa nazýva akomodácia.
Pred šošovkou sa nachádza kruhovitý sval nazývaný dúhovka (iris).
Najdôležitejšou úlohou dúhovky je regulácia množstva svetla vstupujúceho do oka. Dúhovka má centrálny okrúhly pohyblivý otvor – zreničku
(pupil), ktorá sa môže zužovat’ alebo rozširovat’. Vo vnútri oka sa nachádza svetlocitlivá membrána – sietnica (retina). Sietnica je vlastným orgánom zraku a tvorí vnútornú vrstvu oka. Pokrýva celú dutinovú stranu
očnej gule. Zachytáva obraz a zrakovým nervom ho posiela do zrakových
centier v mozgu. Je tvorená z dvoch druhov svetlocitlivých receptorov (fotoreceptorov) – čapíkov (cones) a tyčiniek (rods). Štruktúra oka je znázornená na obrázku 18.1.
sietnica
zrenička
šošovka
žltá škvrna
sklovec
rohovka
dúhovka
zrakový nerv
Obrázok 18.1: Priečny rez okom zobrazujúci jeho štruktúru.
V strede sietnice, približne oproti zreničke oka, leží žltá škvrna kruhovitého až eliptického tvaru o priemere asi 3 mm. V jej strede je preliačina, ktorá sa nazýva fovea centralis. Väčšina čapíkov je sústredených
vo vnútri tejto malej oblasti. Toto miesto leží vo vrchole optickej osi oka
a predstavuje miesto najostrejšieho videnia, pretože sa do neho premieta
269
18. L’ UDSKÝ VIZUÁLNY SYSTÉM
Počet receptorov
na štvorcový milimeter
180 000
Slepá škvrna
160 000
140 000
Tyčinky
Tyčinky
120 000
100 000
80 000
60 000
40 000
20 000
Čapíky
Čapíky
0
80 60 50 40 30 20 10
0
10
20 30 40 50 60 70 80
Uhol (stupne)
Obrázok 18.2: Distribúcia tyčiniek a čapíkov v sietnici. Čapíky sú väčšinou sústredené v centre sietnice, v žltej škvrne. Priestorové rozlišovanie je preto výrazne
slabšie na perifériách.
centrálny lúč. V oblasti žltej škvrny sú nakopené len čapíky, ktoré tu majú
najväčšiu hustotu. Tyčinky sa nachádzajú zväčša na periférii sietnice. Distribúcia tyčiniek a čapíkov v sietnici je znázornená na obrázku 18.2.
Tyčinky a čapíky
Na sietnici je neuniformné rozloženie čapíkov a tyčiniek. Vo fovei pri maximálnej hustote čapíkov je ich 150 tis. – 200 tis./mm2 .
Tyčinky obsahujú látku citlivú na achromatické svetlo, nazývanú rodopsin. Na základe fotochemických reakcií očného rhodopsinu je vnímaná intenzita svetla. Čapíky obsahujú obdobnú látku iodopsin, ktorý
je zložený z viacerých látok citlivých na svetlo modrej, zelenej a červenej
farby. Tieto organické farbivá senzibilizujú čapíky a tyčinky.
Čapíky slúžia na farebné videnie v jasných svetelných podmienkach,
pri svetlosti > 1cd/m2 , ked’ sú dobre viditel’né a rozpoznatel’né farby –
denné videnie (photopic vision). Tyčinky neumožňujú farebné videnie,
sú použité pri vel’mi slabom svetle, približne pri svetlosti < 0, 01cd/m2 ,
ked’ sú viditel’né iba šedotónové obrysy objektov – nočné videnie (scotopic vision). Tyčinky sú približne 25-krát citlivejšie než čapíky. Na súmračnom videní (mesopic vision) sa podiel’ajú čiastočne tyčinky aj čapíky, aktivuje sa pri 0, 01 − 1cd/m 2 , ked’ farby nie sú jasne viditel’né.
270
18.2. Procesy prebiehajúce na sietnici
18.2
Procesy prebiehajúce na sietnici
Počas histórie skúmania farebného videnia sa formovali dve základné
teórie a to trichromatická teória a teória oponentných procesov, obe
ešte pred objavením svetlocitlivých buniek v oku.
Trichromatická teória sa spája s menami Th. Younga a H. Helmholtza.
Nezávisle na sebe dospeli k záveru, že všetky farby spektra môžeme vytvorit’ zmiešaním troch základných monochromatických farieb. Young za
tieto tri základné farby považoval červenú, žltú a modrú, Helmholtz zase
červenú, zelenú a fialovú.
Filozofickým pozadím oponentnej teórie je koncept J. W. Goetheho.
Goethe si všimol, že niektoré farby sa k sebe vel’mi dobre hodia a niektoré
sa spolu takmer nikdy nevyskytujú. Goetheho teória je filozofickým podkladom fyziologických výskumov, ktoré neskôr zrealizoval Ewald Hering
a vytvoril teóriu oponentných farieb.
V l’udskom oku sú skutočne práve tri typy farebných receptorov, na
ktorých prebiehajú mechanizmy na báze trichromatizmu, no spracovanie informácie z nich, prebiehajúce v hlbších štruktúrach sietnice a mozgovej kôre, má charakter oponentných procesov.
18.2.1 Trichromatické procesy
L’udský vizuálny systém je založený na troch typoch čapíkov uložených
na sietnici oka. Prvý typ čapíkov reaguje na červenú čast’ farebného spektra a teda na dlhé vlny. Druhý typ reaguje na zelenú čast’ spektra s vlnami
strednej dĺžky. A tretí typ reaguje na modrú čast’ farebného spektra, kde
sa nachádzajú krátke vlny. Maximálna odozva prvého typu čapíkov je pri
vlnovej dĺžke 559 nm, druhého typu pri 531 nm a tretieho typu 419 nm.
Na základe niektorých zistení môžu mat’ niektoré ženy tetrachromatický
vizuálny systém – štyri typy čapíkov. Pomer počtu čapíkov citlivých na
dlhé L , stredné M a krátke S vlny je L : M : S = 60 : 30 : 5. Tento pomer sa
mení v závislosti od človeka, pomer L : M môže byt’ u l’udí s normálnym
videním od 2,7 : 1 až po 16,5 : 1.
Vnem z modrého kanálu ovplyvňuje aj tvorbu melatonínu a teda biologické hodiny: spánok/bdenie. Dynamický rozsah l’udského vizuálneho
systému pokrýva rozsah intenzity svetla približne 1012 . Rozlišujeme adaptáciu na svetlo a na tmu. Adaptáciu na svetlo môžeme merat’ v sekundách, avšak adaptácia na tmu trvá minúty. Pri chromatickej adaptácii sa
samostatne prispôsobujú jednotlivé primárne farebné kanály (L, M, S).
Svetlocitlivé receptory
(
) merajú množstvo svetla vstupujúceho do retiny.
Nech S i (λ), i ∈ r, g , b je krivka odozvy jednotlivých typov čapíkov citli271
18. L’ UDSKÝ VIZUÁLNY SYSTÉM
vých na červenú, zelenú a modrú čast’ spektra. E (λ) je (irradiance) svetelné žiarenie s vlnovou dĺžkou λ dopadajúce na receptor. Potom celkové
množstvo merané jedným receptorom môžeme vypočítat’
Q i = S i (λ) E (λ) dλ.
(18.1)
Pri pozorovaní matného povrchu je žiarivost’ E, dopadajúca na receptor, vypočítaná ako produkt medzi odrazenou energiou objektu R a množstva energie L dopadajúceho na objekt
E (λ) = R (λ) L (λ) ,
takže celkovú energiu môžeme prepísat’ ako
Q i = S i (λ) R (λ) L (λ) dλ.
(18.2)
(18.3)
18.2.2 Oponentné procesy v sietnici
Trichomatická teória farebného videnia nie je schopná vysvetlit’ fenomén
oponentných farieb. Táto skutočnost’ viedla Ewalda Heringa k navrhnutiu oponentného princípu kódovania farieb. Oponentné procesy prebiehajú v sietnici.
Sietnica (obr. 18.3) je komplikovaný viacúrovňový orgán. V zadnej časti
sietnice sú uložené čapíky a tyčinky. Gangliové bunky (ganglion retinal
cells) sa nachádzajú v prednej časti sietnice a v strednej časti medzi týmito dvomi úrovňami sú bipolárne bunky (bipolar cells). V tejto štruktúre sa nachádzajú aj horizontálne a amakrinné bunky, ktoré slúžia na
horizontálnu výmenu informácií. Zaujímavé je, že prichádzajúce svetlo
musí najprv prejst’ cez úrovne v opačnom poradí, aby dosiahlo úroveň
kde sa nachádzajú fotoreceptory.
Odozva vychádzajúca z fotosenzitívnych receptorov je kombinovaná
v gangliových bunkách sietnice, kde sa formujú tri oponentské kanály
(obr. 18.4). Jeden achromatický čierno-biely a dva chromatické červenozelený a žlto-modrý. Z gangliovej bunky sa pošle pulzový signál cez optický nerv do vizuálnej časti mozgovej kôry, kde je spracované samotné vnímanie farieb.
V retine je 100 až 126 miliónov fotoreceptorov, z toho približne 95
až 120 miliónov tyčiniek a 5 až 6 miliónov čapíkov. Ked’že na prenos informácie existuje len asi 1 milión gangliových buniek, je zrejmé, že táto
musí byt’ nejakým spôsobom komprimovaná. Ak by bol každý fotoreceptor spojený s individuálnou bunkou, neurónové vlákno by muselo mat’
272
18.2. Procesy prebiehajúce na sietnici
tyčinky
a čapíky
horizontálne
bunky
bipolárne
bunky
amakrinné
bunky
gangliové
bunky
svetlo
Obrázok 18.3: Štruktúra sietnice pozostávajúca z troch úrovní. Svetlo musí prejst’
najprv pomedzi gangliové a bipolárne bunky, aby sa dostalo k fotosenzitívnym
čapíkom a tyčinkám. Informácia potom prechádza v opačnom poradí naspät’ do
gangliových buniek a odtial’ cez optický nerv do mozgu. Informácia sa vymieňa
aj postranne cez horizontálne a amakrinné bunky.
L M S
L M S
L M S
+
-
+
-
achromatický
kanál
chromatické
kanály
Obrázok 18.4: Tri oponentské procesy pozostávajúce z jedeného achromatického
kanála a dvoch chromatických. Chromatické kanály kombinujú červeno-zelenú
a žlto-modrý informáciu.
vel’kú hrúbku. A teda je zrejmé, že predtým, ako sa zraková informácia
z jednotlivých čapíkov pošle do mozgu, dochádza už v sietnici na gagliových bunkách k jej vel’kému predspracovaniu. V mieste, kde optický
nerv opúšt’a oko, sa nenachádzajú žiadne fotoreceptory. Toto miesto sa
nazýva slepá škvrna.
273
18. L’ UDSKÝ VIZUÁLNY SYSTÉM
18.2.3 Gangliové bunky a receptívne polia
Bipolárne bunky prenášajú signály od receptorových buniek ku gangliovým bunkám. Axóny (nervové výbežky) gangliových buniek formujú očný nerv. Jedna gangliová bunka je spojená s viacerými fotoreceptormi cez
bipolárne bunky. Gangliové bunky prijímajú vstup okrem bipolárnych aj
z amakrinných buniek.
Všetky receptory, ktoré ovplyvňujú výstup jednej gangliovej bunky,
patria oblasti, ktorá sa nazýva receptívne pole gangliovej bunky. Receptívne polia susedných sietnicových gangliových buniek sa výrazne prekrývajú.
Väčšina gangliových buniek má približne kruhové receptívne pole. To
znamená, že malý kruh buniek na sietnici vysiela svoje signály do jednej
gangliovej bunky. Tento kruh sa ešte delí na vnútorný (centrum) a vonkajší (okolie). Gangliové bunky vedia rozlíšit’, či svetlo dopadá do centra alebo do okolia a podl’a toho reagujú. Ked’ svetlo dopadá do centra
projekčného pol’a bunky, jedna skupina gangliových buniek sa aktivizuje,
tieto sa nazývajú bunky s aktivizovaným centrom (on-center cells). Ked’
svetlo dopadá na plochu ich okolia, sú inhibované. Bunky s neaktívnym
centrom (off-center cells) sú inhibované, ked’ svetlo dopadá na ich centrum. Avšak, ked’ na centrum svetlo prestane dopadat’, na chvíl’u sa aktivizujú. Aktívne sú vtedy, ked’ svetlo dopadá na ich okolie [Dob05].
-
-
+ - ++ -
-
-
-
-
+ - ++ -
-
-
-
-
+ - ++ -
-
-
+
+
+
-
-
+ - ++ -
-
-
- --
+
+
+
+
+
+
+
- -+
+
+
+
+
+
- -+
+
+
+
+
+
- -+
+
Obrázok 18.5: Receptívne polia sietnicových gangliových oponentných buniek
s aktívnym a s neaktívnym centrom. Štyri červeno-zelené a štyri žlto-modré typy
oponentských buniek.
Ako možno vidiet’ na obrázku 18.5 receptívne polia buniek môžu byt’
červeno-zelené alebo žlto-modré.
Z predchádzajúceho výplýva, že vnem „červeno-zelenej“ farby neexistuje, pretože ak je bunka excitovaná červeným svetlom, zapne sa červený kanál a zároveň na druhom čapíku je signál zo zeleného kanála in274
18.3. Vizuálny kortex
hibovaný. Obidva kanály nepracujú synchrónne ale skôr antagonisticky,
bud’ vnímame predmet červený, alebo zelený.
Takisto existencia buniek citlivých na modrú a žltú umožňuje vysvetlit’, prečo nikdy nevidíme farbu, ktorá by bola žltkasto modrá. Bud’ totiž
vidíme modrú, alebo vidíme žltú.
18.3
Vizuálny kortex
Spracovanie vizuálnej informácie sa deje v mozgovej kôre (cortex). Tvar
objektu, jeho farba, smer pohybu sa spracováva v rôznych častiach vizuálnej časti mozgovej kôry. Tieto informácie sa delia na dve cesty – „čo“
a „kde“. Tvar a farba sa spracováva pomocou „čo“ cesty a priestorová informácia sa spracováva pomocou „kde“ cesty, ktorá taktiež rieši pohyb.
Toto delenie sa začína už v sietnici.
Ďalšie delenie sietnicových gangliových buniek je na M bunky (magno – vel’ké) a P bunky (parvo – malé). Vel’ké bunky sú citlivé na vel’ké
objekty a vedia sledovat’ rýchle zmeny v podnetoch. Nesú najmä informáciu o hrubých črtách predmetov a pohybe. Malých buniek je viac,
majú menšie receptívne polia, nesú najmä informáciu o farbe a detailoch. V obidvoch skupinách sa vyskytujú ako off-center, tak on-center
bunky [Dob05]. Asi 80 % sietnicových gangliových buniek sú P bunky.
Reagujú na vysoké frekvencie a sú citlivé na rôzne vlnové dĺžky. Asi 10 %
buniek je M buniek. Tie reagujú na nízke frekvencie a nie sú citlivé na vlnové dĺžky. Zvyšných 10 % buniek je tvorených asi ôsmimi d’alšími typmi
buniek [Ebn07].
Zaujímavost’: Treba si uvedomit’, že obraz na našej sietnici sa neustále
mení, pretože naše oči neustále vykonávajú sakády, tj. malé pohyby, ktorými sa zameriavajú stále na inú čast’ okolia. Ak by sme sa
pozerali bez pohybu očí stále na jedno a to isté miesto, bunky, ktoré
sú zodpovedné za prenos zrakovej informácie, by sa unavili, a obraz
by sa nám pomaly vytratil. Tieto bunky potrebujú zmenu, aby boli
aktívne. Vyskúšajte si napríklad uprene sa pozerat’ na bodku na čistom liste papiera. Ak sa pozeráte skutočne sústredene, po čase vám
bodka zmizne [Dob05].
Zraková kôra sa delí na viacero oblastí. Okrem primárnej zrakovej oblasti označovanej ako V1, rozoznávame ešte d’alšie dôležité oblasti ako
V2, V3, V4 a V5 (MT), ktoré prispievajú k d’alšiemu spracovaniu zrakovej
informácie.
275
18. L’ UDSKÝ VIZUÁLNY SYSTÉM
Informáciu o pohybe prenáša najmä aktivita M-buniek. Prechádza
oblast’ou V2 do oblasti MT a d’alej do parietálnej kôry. Informáciu o tvare
nesie najmä aktivita buniek P. Z oblasti V2 prechádza do oblasti V4 a d’alej
do temporálnej kôry.
Zo sietnice je informácia o farbe (z troch typov čapíkov, z ktorých je
každý citlivý na iné vlnové dĺžky; typ S na krátke, M na stredné a L na
dlhé) vedená do kôry P-bunkami, o ktorých sme hovorili vyššie. Avšak
tieto bunky zároveň vedú aj informáciu o jase, respektíve kontraste. Farba
sa v P-bunkách spracováva podobným princípom, na akom fungujú „oncenter“ a „off-center“ neuróny. Jeden typ P-buniek mieša signály z L a M
čapíkov, druhý zasa signály z S čapíkov oproti kombinácii signálu z L a M
čapíkov.
Vznik obrazov na sietnici sprevádza jav iradiácie. Predmety, ktoré majú vyšší jas ako okolie, sa zdajú byt’ o niečo väčšie ako rovnako vel’ké predmety nižšieho jasu.
18.4
Poruchy farbocitu
Pri vnímaní farieb môžu nastat’ rôzne poruchy. Porucha farbocitu môže
byt’ vrodená alebo získaná. Existujú tri druhy vrodených porúch.
Prvým typom je dichromázia, pri ktorej jeden druh čapíkov chýba.
Podl’a toho, ktorý, rozlišujeme
Protanope – chýbajú čapíky citlivé na červenú farbu,
Deuteranope – chýbajú čapíky citlivé na zelenú farbu,
Tritanope – chýbajú čapíky citlivé na modrú farbu.
L’udia trpiaci na protanopiu alebo deuteranopiu nerozlišujú červenú
a zelenú farbu. Touto poruchou farbocitu je postihnutých približne 8 %
mužov a 0,5 % žien.
Ďalším typom poruchy farbocitu je anomálna trichromázia. Pri tejto
poruche je znížená citlivost’ jedného typu čapíkov, čo spôsobuje posun
farebného spektra a človek má posunuté vnímanie farieb.
Tretím typom je monochromázia, pri ktorej človek nerozlišuje farby
vôbec.
Existujú však aj poruchy vnímania farieb, tvarov a pohybu spôsobené
poškodením častí mozgu, kde sa táto informácia spracováva. Takou je napríklad achromatopsia, ked’ človek nerozoznáva farby z dôvodu poškodenia mozgu v oblasti V4. Poškodenie určitých častí oblasti V1 a V2 spôsobuje chromatopsiu, kedy človek nie je schopný vidiet’ tvary a formy,
276
18.4. Poruchy farbocitu
ale farbu rozoznáva. Alebo akinetopsia spôsobená poškodením oblasti
V5, ktorá spracováva informácie o pohybe a stereoskopickej hĺbke a pri
ktorej človek nie je schopný vidiet’ objekty, ktoré sú v pohybe.
277
K APITOLA
19
Kolorimetria
Za posledných tristo rokov poznáme viacero pokusov definovat’ farebné
modely. Tie väčšinou vychádzali z aktuálnych vedomostí o farebnom vnímaní človeka. V mnohých prípadoch práve farebné modely mali vysvetlit’, ako vnímanie farieb funguje. V roku 1801 Thomas Young prišiel s teóriou, že iba tri primárne farby sú postačujúce na vytvorenie všetkých farieb. Táto teória bola potvrdená v roku 1960, ked’ boli objavené tri typy
fotoreceptorov v sietnici.
Na začiatku 20. storočia bola vytvorená medzinárodná vedecko-technická organizácia zameraná na študijné riešenie základných otázok rozvoja svetelnej techniky - Medzinárodná komisia pre osvetl’ovanie (Commission Internationale de l’Eclairage – CIE). Aktuálne združuje viac ako
40 krajín sveta.
Numerickým opisom l’udského vnímania farieb sa v súčasnosti zaoberá kolorimetria. Dnešný kolorimetrický aparát vychádza väčšinou
z uznesení CIE. Medzi jej najvýznamnejšie odporučenia patria:
• definícia parametrov štandardného pozorovatel’a,
• definícia štandardných iluminantov,
• definícia priestorov farieb a
• diferenčné formuly farby.
Až v roku 1931 bol na základe biologických aspektov vnímania farieb,
navrhnutý prvý matematicky presný farebný model – CIE XYZ.
278
19.1. Grassmanov experiment
Od roku 1993 nadväzuje na prácu CIE Medzinárodné konzorcium pre
farbu (International Color Consortium, ICC), a to metodikou farebného
manažmentu (color management).
19.1
Grassmanov experiment
V roku 1853 Hermann G. Grassmann urobil nasledujúci experiment. Pozorovatel’ovi ukázal dva panely, jeden osvetlený nejakou farbou a druhý
tromi primárnymi svetelnými zdrojmi červenou (R), zelenou (G) a modrou (B). Pozorovatel’ mal za úlohu menit’ intenzity troch primárnych zdrojov svetla tak, aby farba vzniknutá ich zmiešaním bola okom nerozoznatel’ná od danej farby. Experiment je znázornený na obrázku 19.1.
Obrázok 19.1: Grassmanov experiment porovnávania farieb. Pozorovatel’ sleduje
cez malý otvor panel rozdelný na dve časti, kde dolná čast’ je osvetlená testovanou farbou a horná čast’ primárnymi svetel’nými zdrojmi, ktoré sú zmiešavané
aditívne.
Tento experiment predpokladá metamerizmus farieb, čo znamená,
že rovnaký farebný podnet môže vzniknút’ pôsobením farebných podnetov rôzneho spektrálneho zloženia. Takéto podnety potom nazývame,
metamerné farebné podnety.
V uskutočnenom experimente zistili, že nie pre všetky zvolené farby
vieme nájst’ vhodné intenzity primárnych zdrojov tak, aby sme úspešne
našli „rovnaký“ farebný pár. Preto presunuli červenú farbu na panel spolu
s hl’adanou farbou. A tak bolo zistené, že pre určitú čast’ vlnových dĺžok
viditel’ného spektra je hodnota koeficientov záporná, obzvlášt’ pre červenú farbu.
Podobné experimenty sa neskôr stali základom kolorimetrie.
279
19. KOLORIMETRIA
19.2
Grassmanov zákon aditívneho miešania farieb
Grassman na základe experimentu formuloval princíp aditívneho miešania farieb (additive mixture):
„Celková intenzita výsledného zmiešaného svetla sa rovná sume
intenzít jednotlivých zmiešavaných svetiel.“ [Gra53]
L’ubovol’nú farbu môžeme vyjadrit’ ako lineárnu kombináciu troch
farieb, pričom žiadna z týchto farieb nesmie byt’ lineárnou kombináciou
zostávajúcich dvoch. Toto sa nazýva 1. Grassmanov zákon miešania farieb (Grassman’s assumption of additivity, alebo aj Grassman’s Law).
Grassmannov predpoklad aditivity je základom systému kolometrie.
Napriek tomu, že v posledných desat’ročiach bolo opakovane zistené zlyhanie aditivity [VV11; Oic07; WS00; SB59], jeho platnost’ je vo všeobecnosti axiomaticky akceptovaná. Cena za zmenu celého CMS (color management system) by bola príliš vysoká.
19.3
Kolorimetrický priestor
Farba Q môže byt’ namiešaná pomocou RQ jednotiek červenej, GQ jednotiek zelenej a BQ jednotiek modrej farby.
Q = RQ .R + GQ .G + BQ .B,
(19.1)
kde Q je daný farebný podnet (color stimulus), R, G, B sú primárne farebné podnety (primary stimuli of unit amounts) a RQ , GQ , BQ trichromatické zložky (tristimulus values). Táto rovnica sa nazýva kolorimetrická rovnica.
Každý farebný podnet môžeme teda reprezentovat’ vektorom v 3-dimenzionálnom priestore nazývanom kolorimetrický priestor (tristimulus space). Osi v tomto priestore sú tvorené farebnými podnetmi R, G a B.
Kolorimetrický priestor (R, G, B) spolu s farebným podnetom Q je znázornený na obrázku 19.2.
Vyjadrenie v 3D priestore nie je v praxi vždy vyhovujúce. Lepšie sa
Q reprezentuje v 2D priestore. Takáto reprezentácia môže byt’ napríklad
pomocou jednotkovej roviny kde R + G + B = 1. Ak hodnoty R, G, B nor280
19.3. Kolorimetrický priestor
malizujeme dostaneme chromatické súradnice
R
,
R +G +B
G
,
g=
R +G +B
B
.
b=
R +G +B
r=
(19.2)
Takáto jednotková rovina tvorí trojuholník – diagram chromatickosti,
ktorý nazývame aj Maxwellov farebný trojuholník (Maxwell color triangle).
GQ
Q
G=1
R+G+B=1
R
R=1
RQ
O
B
B=1
B
Obrázok 19.2: (R, G, B) – kolorimetrický priestor. Primárne podnety R, G, B sú
reprezentované ako vektory jednotkovej dĺžky so spoločným začiatkom v bode O.
Farebný podnet Q je reprezentovaný ako trichromatický vektor Q s komponentami dĺžky RQ , G Q , BQ . Trichromatický vektor pretína jednotkovú rovinu (R + G
+ B = 1) v bode Q. Jednotková rovina obsahuje (r, g, b) – chromatický diagram,
v ktorom Q reprezentuje chromatický bod Q [WS00].
Ak testovaný farebný podnet je monochromatický, výsledkom je množina spektrálnych trichromatických zložiek (spectral tristimulus values).
Výpočet (19.1) môžeme urobit’ postupne pre všetky spektrálne monochromatické podnety s vlnovou dĺžkou λ. Potom môžeme zapísat’
Q(λ) = R(λ).R + G(λ).G + B(λ).B,
(19.3)
kde R(λ), G(λ) a B(λ) je množina spektrálnych trichromatických zložiek
nameraná vzhl’adom na primárne farebné podnety R, G and B.
281
19. KOLORIMETRIA
Nech Q dostaneme aditívnym miešaním monochromatických podnetov Q(λ) v rozsahu farebného spektra 380 – 780 nm s delením stupnice
vlnových dĺžok na 1 nm, potom
Q=
780
Q(λ).
(19.4)
λ=380
Obzvlášt’ dôležitá je množina spektrálnych trichromatických zložiek
získaná pre všetky monochromatické podnety Q(λ) daného farebného
stimulu Q, ktoré majú jednotkovú spektrálnu hustotu žiarenia, v každej
vlnovej dĺžke λ v celom viditel’nom spektre. Takýto podnet sa nazýva podnet s izoenergetickým spektrom a označuje sa E. Trichromatické zložky
takejto kolorimetrickej sústavy sa vyjadrujú trichromatickými členitel’mi. Kolorimetrická rovnica pre farebný podnet izoenergetického spektra
E (λ) je nasledová
E (λ) = r¯(λ)R + ḡ (λ)G + b̄(λ)B,
(19.5)
kde r¯(λ), ḡ (λ), b̄(λ) je množina trichromatických členitel’ov nameraná
vzhl’adom na primárne merné podnety R(λ), G(λ), B(λ) a zápis pomocou
malého písmenka s čiarkou nad písmenom je štandardné označenie pre
vyjadrenie pre špeciálny prípad izoenergetického spektra. Súhrn trichromatických členitel’ov pre všetky vlnové dĺžky vytvára spektrálne krivky
trichromatických členitel’ov (color matching functions – CMF).
Z obrázka 19.3 je zrejmé, že pre niektoré hodnoty λ potrebujeme záporné množstvo červeného farebného podnetu R. Pre hodnotu λ = 475
sú kolorimetrické hodnoty farebných podnetov r (λ) = −0, 045, g (λ) =
0, 032 a b(λ) = 0, 186. Takže môžeme zapísat’
E λ = −0, 045R + 0, 032G + 0, 186B.
(19.6)
Záporné množstvo červeného farebného podnetu R znamená, že pri
porovnávaní farieb potrebujeme pridat’ 0,045R k E λ , aby sme ju „desaturovali“.
Trichromatické zložky každého podnetu Q(λ) vzhl’adom na primárne
farebné podnety R(λ), G(λ) a B(λ) sa dajú získat’ zo spektrálnych kriviek
trichromatických členitel’ov nasledovne:
R(λ) = r¯(λ)Q(λ),
G(λ) = ḡ (λ)Q(λ),
B(λ) = b̄(λ)Q(λ).
(19.7)
282
19.3. Kolorimetrický priestor
0,4
()
()
()
0,2
0,1
0,0
480
580
680
780
λ/nm
-0,1
Obrázok 19.3: Spektrálne krivky trichromatických členitel’ov r¯(λ), ḡ (λ), b̄(λ) monochromatického podnetu E (λ) v systéme reálnych primárnych podnetov R, G,
B s vlnovými dĺžkami λR = 700, λG = 546,1 a λB = 435,8.
Následne z (19.3), (19.4) a (19.7)dostaneme
6
6
5
6
5
5
780
780
780
b̄(λ)Q(λ) B
r¯(λ)Q(λ) R +
ḡ (λ)Q(λ) G +
Q=
λ=380
λ=380
λ=380
(19.8)
Z rovnice vyplýva, že ak máme danú krivku pomerného spektrálneho zloženia (spectral power distribution function – SPD) nejakého podnetu Q a množinu spektrálnych kriviek trichromatických členitel’ov nameranú vzhl’adom na primárne podnety R, G a B, trichromatické zložky
podnetu Q vzhl’adom na R, G a B môžeme vypočítat’ ako jednotlivé sumy
každej zložky v celom rozsahu vlnových dĺžok.
Dva podnety Q 1 a Q 2 s rôznymi SPD vyvolajú rovnaký farebný podnet,
tj. sú metamérmi, ak platia nasledujúce rovnice
780
λ=380
780
r¯(λ)Q 1 (λ)
ḡ (λ)Q 1 (λ)
=
=
λ=380
780
λ=380
780
λ=380
780
r̄ (λ)Q 2 (λ),
ḡ (λ)Q 2 (λ),
λ=380
b̄(λ)Q 1 (λ)
=
780
b̄(λ)Q 2 (λ).
λ=380
(19.9)
283
19. KOLORIMETRIA
Ak aplikujeme rovnice (19.2) na spektálne trichromatické hodnoty,
dostaneme chromatické súradnice
r (λ)
=
g (λ)
=
b(λ)
=
r¯(λ)
r¯(λ) + ḡ (λ) + b̄(λ)
ḡ (λ)
r¯(λ) + ḡ (λ) + b̄(λ)
b̄(λ)
r¯(λ) + ḡ (λ) + b̄(λ)
,
,
,
(19.10)
kde r (λ) + g (λ) + b(λ) = 1.
2,0
1,5
1,0
0,5
-1,0
-0,5
0,0
0,5
1,0
-0,5
Obrázok 19.4: Chromatický diagram v systéme chromatických súradníc r, g, s vyznačenými vlnovými dĺžkami λR = 700, λG = 546,1 a λB = 435,8 primárnych
podnetov R, G, B.
Na obrázku 19.4 je znázornený rg-diagram chromatickosti. Tvorí ho
pravouhlý trojuholník a spektrálna krivka (locus) monochromatických
podnetov od 380 nm do 780 nm. Priamka spájajúca dva konce tejto krivky
sa nazýva priamka sýtych purpurov (purple line). Chromatické body R,
284
19.4. Štandardný kolorimetrický pozorovatel’
G, B monochromatických primárnych podnetov R, G, B sú reprezentované vrcholmi trojuholníka. Chromatický bod E podnetu s izoenergetickým spektrom E sa nachádza v strede trojuholníka so súradnicami r E =
g E = 1/3.
Trichromatické zložky podnetu Q so spojitým pomerným spektrálnym zložením žiarenia (radiant power distribution) P λ môžeme zapísat’
v tvare
R
=
G
=
B
=
780
λ=380
780
λ=380
P λ r¯(λ)dλ,
P λ ḡ (λ)dλ,
780
λ=380
P λ b̄(λ)dλ.
(19.11)
19.4
Štandardný kolorimetrický pozorovatel’
Ako je zrejmé z predchádzajúcej kapitoly, medzi l’ud’mi s normálnym farebným videním sú stále významné individuálne rozdiely, preto je potrebné definovat’ nejaký štandard.
CIE ustanovila dvoch štandardných kolorimetrických pozorovatel’ov.
Štandardný kolorimetrický pozorovatel’ je množina spektrálnych kriviek
trichromatických členitel’ov, ktoré reprezentujú vlastnosti trichromatických členitel’ov l’udskej populácie s normálnym farebným videním.
19.4.1 CIE 1931 štandardný kolorimetrický pozorovatel’
Na základe experimentov Guilda a Wrighta [FBH97] definovala v roku
1931 Medzinárodná komisia pre osvetl’ovanie krivky trichromatických členitel’ov r¯(λ), ḡ (λ), a b̄(λ), pre vlnové dĺžky od λ = 380 po 780 nm, s delením stupnice vlnových dĺžok λ = 5 nm a tak ustanovila CIE 1931 štandardného kolorimetrického pozorovatel’a (standard colorimetric observer). Tieto krivky platia pre pozorovanie malých farebných plôch s pozorovacím uhlom 2◦ . Za základ kolorimetrickej sústavy RGB prijala trojicu
merných podnetov s vlnovými dĺžkami 700 nm, 546,1 nm a 435,8 nm.
Táto sústava je prispôsobená tak, aby chromatické súradnice podnetu
s izoenergetickým spektrom boli rovnaké. Činitele jasu v tomto systéme
sú v pomere 1 : 4,5907 : 0,0601, čo zodpovedá vyžiarenej energii v pomere
72,0962 : 1,3791 : 1. Kolorimetrickú sústavu RGB môžeme charakterizo285
19. KOLORIMETRIA
2,0
1,8
1,6
()
()
()
1,4
1,2
1,0
0,8
0,6
0,4
0,2
0,0
380
430
480
530
580
630
680
730
780
λ/nm
Obrázok 19.5: Spektrálne krivky trichromatických členitel’ov x̄(λ), ȳ(λ), z̄(λ)
podl’a CIE 1931 štandardného kolorimetrického pozorovatel’a pre monochromatický podnet E (λ) v systéme imaginárnych primárnych podnetov X, Y, Z.
vat’ hodnotami trichromatických členitel’ov r̄ (λ), ḡ (λ) a b̄(λ), ktoré platia
pre normálneho kolorimetrického pozorovatel’a.
V roku 1971 odporučila CIE hodnoty štandardného kolorimetrického
pozorovatel’a pre rozšírený interval 360nm – 830nm a s delením stupnice
vlnových dĺžok λ = 1nm.
19.4.2 CIE 1964 doplnkový štandardný kolorimetrický
pozorovatel’
V praxi sa môžeme stretnút’ s prípadom, že viditel’né žiarenie, ktoré vyvolá farebný podnet, vniká do oka pod väčším uhlom ako 2◦ . Preto bol
v roku 1964 ustanovený CIE 1964 doplnkový štandardný kolorimetrický
pozorovatel’ (supplementary standard colorimetric observer) pre vel’ké pozorovacie pole s uhlom 10◦ a trojica merných podnetov s vlnovými dĺžkami R = 645,2 G = 526,3 B = 444,4 nm.
Podrobný opis vývoja a vlastnosti CIE štandardného kolorimetrického
pozorovatel’a je v časti 3.3.3 knihy Colour Science autorov Wyszecki a Stiles [WS00].
Najnovšie špecifikácie pre spektrálne krivky trichromatických členitel’ov sú publikované na webstránke CIE1 .
1 http://www.cie.co.at
286
19.5. Kolorimetrická sústava CIE XYZ
19.5
Kolorimetrická sústava CIE XYZ
Aby všetky viditel’né farby mohli byt’ definované iba pomocou koeficientov s nezápornými hodnotami, pôvodné spektrálne krivky trichromatických členitel’ov boli modifikované na celo-pozitívny systém. V roku 1931
CIE zaviedla tri imaginárne farebné podnety (imaginary primary stimuli) X, Y a Z a systém CIE XYZ (1931) sa stal základom kolorimetrie. Tieto
podnety nie sú fyzicky realizovatel’né, existujú iba ako matematická konštrukcia. Výsledné krivky reprezentujúce kolorimetrické členitele priemerného pozorovatel’a nameraná s ohl’adom na imaginárne podnety X,
Y, Z sú označené x̄(λ), ȳ(λ), and z̄(λ) (obr. 19.5). Kolorimetrická sústava
CIE XYZ bola navrhnutá tak, aby členitel’ ȳ(λ) mal rovnaký priebeh ako
krivka citlivosti l’udského oka pri dennom videní.
Projekciou 3-D farebného priestoru do roviny X + Y + Z = 1 dostaneme (x, y)-chromatický diagram (obr. 19.6). Projekcia je definovaná ako
x
=
y
=
z
=
X
,
X +Y + Z
Y
,
X +Y + Z
Z
= 1 − x − y.
X +Y + Z
(19.12)
Farba v tomto priestore je určená dvomi súradnicami x, y. Tretia súradnica, z, môže byt’ tiež definovaná, ale vd’aka transformácii je redundantná.
Nové primárne podnety X, Y, Z ležia zvonku mimo domény vektorov
reprezentujúcich reálne podnety. Ich reprezentatívne body v diagrame
chromatickosti nie sú zahrnuté medzi reálnymi podnetmi. Ležia zvonka
chromatického regiónu ohraničeného spektrálnou krivkou a čiarou sýtych purpurov, ktorá spája dva konce spektrálnej krivky. Trojuholník vytvorený z bodov XYZ úplne ohraničuje spektrálnu krivku a čiaru purpurov. Toto zaistí, že chromatické súradnice xyz a korešpondujúce trichromatické hodnoty XYZ akéhokol’vek farebného podnetu nebudú negatívne.
Rovina XZ zobrazuje v kolorimetrickom priestore XYZ farebné podnety s nulovým jasom. Pretína diagram chromatickosti v priamke, ktorá
sa nazýva alychna. V kolorimetrickej sústave CIE XYZ 1931 diagram chromatickosti nie je rovinou rovnakých jasov.
Hodnoty trichromatických členitel’ov, ktoré platia pre štandardného
kolorimetrického pozorovatel’a, sú použité na stanovenie trichromatických zložiek podnetu so známym spektrálnym zložením žiarenia. Pri ur287
19. KOLORIMETRIA
1.0
0.9
(Y)
520
0.8
540
510
0.7
560
0.6
500
580
0.5
y
0.4
0.3
600
620
490
700
0.2
0.1
0.0
480
460
(Z) 0.1
(X)
380
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
x
Obrázok 19.6: CIE 1931 chromatický diagram so súradnicovým systémom xy
a vyznačenými bodmi kadiel’ prechádzajú osi súradnicového systému XYZ. Diagram je ohraničený spektrálnou krivkou s označeniami vlnových dĺžok v nanometroch.
čovaní trichromatických zložiek X, Y, Z rozlišujeme výpočet pre farebný
podnet svetelného zdroja a pre farebný podnet objektu.
Nech Q je farebný podnet svetelného zdroja s krivkou pomerného
spektrálneho zloženia Q(λ), potom vzt’ahy pre stanovenie trichromatických zložiek X, Y, Z pre podnet Q sú:
X
Y
=
=
k
k
780
λ=380
780
Q(λ)x̄(λ) λ,
Q(λ) ȳ(λ) λ,
λ=380
Z
=
k
780
Q(λ)z̄(λ) λ,
λ=380
(19.13)
288
19.6. CIE diagram chromatickosti
kde k je normalizačný faktor zvyčajne nastavený na 683 lm/W, preto hodnota Y môže byt’ použitá priamo na určenie jasu L (luminance).
V prípade, ked’ je žiarenie odrazené od objektu je Q(λ) súčinom spektra iluminanta S(λ) a spektrálneho činitel’a β(λ). Spektrálny činitel’ β(λ)
ovplyvňuje výsledné spektrum v dôsledku odrazu alebo prechodu svetla
telesom. Vzt’ahy pre stanovenie trichromatických zložiek X, Y, Z pre farebný podnet objektu dostaneme
X
Y
=
=
k
k
780
λ=380
780
S(λ)β(λ)x̄(λ) λ,
S(λ)β(λ) ȳ(λ) λ,
λ=380
Z
=
k
780
S(λ)β(λ)z̄(λ) λ.
λ=380
(19.14)
CIE vytvorila tento priestor farieb na základe imaginárnych farebných
podnetov, a preto nie je žiadne zariadenie schopné zobrazit’ tieto farby.
Využíva sa zväčša na účely konverzie farieb medzi dvomi rôznymi priestormi. Farebné podnety XYZ reprezentujú abstraktné farby.
CIE 1931 RGB and CIE 1931 XYZ sú prvé matematicky definované
priestory farieb.
Môžeme pracovat’ aj s alternatívnym priestorom daným zložkami x,
y, Y a označovaným ako CIE xyY. Chromatické súradnice x, y špecifikujú
odtieň farby a saturáciu a Y zložka reprezentuje jas. Tento priestor je často
používaný v praxi na určenie farieb.
19.6
CIE diagram chromatickosti
CIE diagram chromatickosti je diagram v tvare podkovy, po obvode ohraničený krivkou reprezentujúcou čisté monochromatické farby od 380 nm
do 780 nm. Priamka spájajúca dva konce tejto krivky sa nazýva priamka
sýtych purpurov (purple line). Bielu farbu dostaneme zložením všetkých
farieb a nachádza sa v t’ažisku. Na obrázku 19.7 je zobrazený reprezentant bielej farby CIE štandardný iluminant D 65 . V diagrame chromatickosti sa nachádzajú iba farby s maximálnym jasom. Preto napríklad, hnedá farba nie je v CIE diagrame, avšak je to oranžovo-červená so zníženým
jasom.
V CIE diagrame určujeme chromatickost’ farby pomocou dominantnej vlnovej dĺžky (farebný tón/odtieň) a čistoty farby (sýtost’ farby). Sý289
19. KOLORIMETRIA
tost’ farby, čiže jej saturácia, sa zvyšuje od stredu oblasti bielych farieb
smerom k okraju diagramu. Na okraji sa nachádza spektrálna krivka s čistými farbami. Farebný odtieň sa mení pohybom po krivke. Chromatický
bod E podnetu s izoenergetickým spektrom E sa nachádza v strede so súradnicami xE = y E = 1/3.
0.9
520
0.8
-λd(S2)
540
510
0.7
560
0.6
λd(S1)
500
580
0.5
y
S1
0.4
0.3
600
D65
490
S3
620
S4
S2
700
0.2
0.1
0.0
480
λc(S1)
0.1
P(S2)
380
0.2
0.3
0.4
x
0.5
0.6
0.7
0.8
Obrázok 19.7: CIE 1931 chromatický diagram zobrazujúci vlastnosti dominantných a doplnkových vlnových dĺžok. Dominantná vlnová dĺžka farebného podnetu S 1 , určená vzhl’adom k CIE štandardnému iluminantu D 65 je λd (S 1 ). K nej
doplnková vlnová dĺžka je λc (S 1 ). Farebný podnet S 2 nemá dominantnú vlnovú
dĺžku, je určený doplnkovou vlnovou dĺžkou −λd (S 2 ). Farby S 3 a S 2 nazývame
komplementárne.
Dominantná a doplnková vlnová dĺžka
Dominantná vlnová dĺžka (dominant wavelength) farebného podnetu
je vlnová dĺžka monochromatického spektrálneho podnetu, ktorý ked’
zmiešame s nejakým achromatickým podnetom v správnom pomere, zís290
19.6. CIE diagram chromatickosti
kame požadovaný farebný podnet. V CIE diagrame nájdeme dominantnú
vlnovú dĺžku, ak urobíme spojnicu od bieleho svetla cez uvažovaný farebný podnet. Achromatické podnety sa väčšinou udávajú ako CIE štandardný iluminant A alebo D65, ktoré majú neutrálnu farbu a chýba im
odtieň farby. Farebný podnet S 1 zobrazený na obrázku 19.7 má dominantnú vlnovú dĺžku, určenú vzhl’adom k CIE štandardnému iluminantu
D 65 , λd (S 1 ).
Nie všetky farebné podnety majú dominantnú vlnovú dĺžku. Pre purpurové farby ju nemožno určit’, pre tieto farby definujeme doplnkovú vlnovú dĺžku (complementary wavelength). Ak túto zmiešame s uvažovaným farebným podnetom v správnom pomere, dostaneme achromatické
svetlo. Táto vlnová dĺžka sa zapisuje so záporným znamienkom. Farebný
podnet S 2 na obrázku 19.7 nemá dominantnú vlnovú dĺžku. Môžeme ho
však definovat’, vzhl’adom k CIE štandardnému iluminantu D 65 , pomocou doplnkovej vlnovej dĺžky –λd (S 2 ).
Čistota farby
Čistota farby je definovaná v diagrame chromatickosti ako pomer vzdialeností, ktorý udáva posun chromatického bodu daného podnetu od
achromatického bodu smerom k spektrálnej krivke alebo k priamke sýtych purpurov. Čistota farby súvisí so saturáciou farby vnímanou za určitých pozorovacích podmienok. Pre bod chromatický S 1 na obrázku 19.7
určíme čistotu farby ako pomer |D 65 S 1 | : |D 65 λd (S 1 )|. Pre určenie čistoty
farby bodu S 2 však potrebujeme najprv nájst’ bod P (S 2 ), ktorý leží na
priesečníku priamky sýtych purpurov a spojnice bodov S 2 a D 65 . Čistota
farby bodu S 2 je potom pomer vzdialeností |D 65 S 2 | a |D 65 P (S 2 )|.
Komplementárne farby
Páry farieb, ktoré ak zmiešame v správnom pomere dávajú achromatické
svetlo, sa nazývajú komplementárne farby. Na obrázku 19.7 sú komplementárne farby S 3 a S 4 . Významné sú monochromatické komplementárne farby. Komplementárne sú aj farby dané vlnovými dĺžkami λd (S 1 )
a λc (S 1 ). Pre farby s vlnovými dĺžkami od 493,3 nm po 566,5 nm neexistujú monochromatické komplementárne farby, ich komplementárne farby ležia v oblasti purpurových farieb. Bod na spektrálnej krivke označený
ako –λd (S 2 ) má komplementárnu farbu P (S 2 ) ležiacu na priamke purpurov. Achromatické svetlo je väčšinou definované pomocou CIE štandardných iluminantov, ktoré sa nachádzajú približne na Planckovej krivke.
291
19. KOLORIMETRIA
0.9
520
0.8
540
510
0.7
560
0.6
A
500
0.5
y
580
P3
0.4
0.3
620
D65
490
700
P2
0.2
0.1
600
B
P1
480
0.0
380
0.1
0.2
0.3
0.4
x
0.5
0.6
0.7
0.8
Obrázok 19.8: CIE 1931 chromatický diagram zobrazujúci pákové pravidlo. Farebné podnety na úsečke AB získame aditívnym zložením farieb A a B. Farebné
podnety vnútri trojuholníka P 1 P 2 P 3 získame kombináciou základných farieb P 1 ,
P2 a P3 .
Štandardné biele svetlo (iluminant C) sa nachádza blízko bodu x = y =
z = 1/3.
Pákové pravidlo
Ak máme v diagrame chromatickosti dva body A a B, potom všetky body
úsečky AB, tj. farebné prechody z farby A do B získame aditívnym zložením týchto dvoch farieb (obr. 19.8). Toto nazývame pákové pravidlo.
Podobne aj v prípade trojuholníka P 1 P 2 P 3 , kde vnútorné body trojuholníka získame kombináciou základných farieb P 1 , P 2 a P 3 . Pri pohl’ade na
CIE diagram vidno, že nevieme zostrojit’ trojuholník, ktorý by pokrýval
celú plochu. Z toho vyplýva, že nie je možné nájst’ také 3 základné farby,
ktoré by určovali všetky farby. Farebný rozsah, ktorý dostaneme zložením zvolených základných farieb sa nazýva gamut farieb. Farebný gamut
292
19.7. MacAdamove elipsy
môže byt’ udaný rôznymi polygónmi umiestnenými v diagrame chromatickosti.
19.7
MacAdamove elipsy
0.9
850
0.6
840
810
0.7
820
0.2
0.8
800
860
y
0.4
0.3
200
250
490
700
0.5
0.1
0.0
460
360
0.1
0.5
0.3
0.4
x
0.8
0.2
0.7
0.6
Obrázok 19.9: MacAdamove elipsy zobrazené v CIE 1931 chromatickom diagrame, 10 krát zväčšené oproti svojej skutočnej vel’kosti.
Chromatický diagram je značne nelineárny. Vzdialenosti v CIE diagrame chromatickosti nezodpovedajú vnímanému rozdielu medzi farbami. Ak zmiešame farby s rovnakou úrovňou jasu v rovnakom pomere,
výsledná farba nebude vždy ležat’ presne v strede medzi týmito dvomi
farbami. V 40. rokoch 20. storočia sa David MacAdam zaoberal vizuálnou
citilivost’ou na rozdiel farieb a jeho závery dnes poznáme pod názvom
MacAdamove elipsy. MacAdamove elipsy sú regióny v diagrame chromatickosti, ktoré obsahujú farby l’udským okom nerozlíšitel’né. Teda na
293
19. KOLORIMETRIA
kontúre elipsy sa nachádzajú sotva rozlíšitel’né farby (just noticeable differences).
MacAdamove elipsy sú získané štatistickými meraniami vizuálnych
vlastností vzorky populácie. Tvar a vel’kost’ elíps závisí od umiestnenia
v CIE diagrame. Na obrázku 19.9 je zobrazených všetkých 25 MacAdamových elíps v pomere 10 : 1 v porovnaní so skutočnými vel’kost’ami. Vizuálna citlivost’ na malé rozdiely vo farbe je dôležitý faktor na určenie presnosti pri porovnávaní farieb najmä v priemysle. Na základe práce MacAdama boli vytvorené nové farebné priestory s ciel’om dosiahnut’ perceptuálnu jednotnost’. Najvýznačnejšie sú CIELUV a CIELAB, ktoré sú opísané v častiach 20.1.4 a 20.1.5. Aj ked’ oproti CIE 1931 boli dosiahnuté vylepšenia, MacAdamove elipsy sú takmer kruhové, žiaden z týchto priestorov nie je úplne bez distorzie.
19.8
Štandardné iluminanty
Pri určovaní farby objektov je dôležité svetlo, ktoré tento objekt osvetl’uje. Aby sme mohli farbu presne merat’, potrebujeme poznat’ spektrálne
zloženie tohto svetla. Medzinárodná komisia pre osvetl’ovanie definovala
množinu štandardných iluminantov používaných v kolorimetrii.
Pod pojmom iluminant rozumieme prirodzený svetelný zdroj, ktorý
je určený pomerným spektrálnym zložením žiarenia dopadajúceho na
objekt, ktorý je pozorovaný pozorovatel’om.
CIE štandardný iluminant A
CIE štandardný iluminant A (obr. 19.10) reprezentuje žiarovkové svetlo
s farebnou teplotou 2856 K. Bol definovaný CIE v roku 1931.
CIE iluminanty B a C
V roku 1931 spolu so štadardným iluminantom A boli definované aj iluminanty B a C (obr. 19.10).
Iluminant B reprezentuje priame slnečné svetlo s korelovanou farebnou teplotou 4874 K.
Iluminant C reprezentuje priemerné denné svetlo s korelovanou farebnou teplotou 6774 K.
Obidva sú však považované za nevhodné pre reprezentovanie prirodzeného denného svetla kvôli ich nepresnosti v oblasti ultrafialového
spektra. V súčasnosti sa nepoužívajú a podl’a odporúčania CIE z roku
2004 [CIE04], iluminant C nie je štandardom CIE.
294
19.8. Štandardné iluminanty
300
250
Štandardný iluminant A
Iluminant B
200
Iluminant C
150
100
50
0
300
350
400
450
500
550
600
650
700
750
λ/nm
Obrázok 19.10: Relatívne spektrálne krivky CIE iluminantov A, B a C.
CIE iluminanty D
Iluminanty D tvoria hlavnú skupinu iluminantov zodpovedajúcich rôznym typom denného svetla (priame slnečné svetlo, slnečné svetlo s rôznymi stupňami oblačnosti, svetlo za jasného dňa, zatiahnutá obloha) (obr.
19.11).
CIE štandardný iluminant D65 reprezentuje denné svetlo v nulovej
nadmorskej výške s farbou teploty približne 6504K. Bol odporučený CIE
v roku 1964 ako hlavný iluminant pre aproximáciu priemerného denného
svetla pre kolorimetriu. CIE ho odporúča použit’ vždy, ked’ je to možné.
V prípade ak sa použit’ nedá, treba brat’ do úvahy D50 (5000 K), D55
(5503 K) alebo D75 (7504 K).
D50 svetlo na obzore (Horizon Light)
D55 ranné/poobedňajšie svetlo (Mid-morning / Mid-afternoon Daylight)
D65 svetlo na poludnie (Noon Daylight)
D75 svetlo zo severnej oblohy na severnej pologuli (North Sky Daylight)
CIE iluminant E
Iluminant E je teoretický iluminant s izoenergetickým spektrom, čiže jeho pomerné spektrálne zloženie je uniformné cez viditel’né spektrum.
295
19. KOLORIMETRIA
140
120
100
80
60
Iluminant D65
Iluminant D50
Iluminant D55
Iluminant D75
40
20
0
300
350
400
450
500
550
600
650
700
750
λ/nm
Obrázok 19.11: Relatívne spektrálne krivky CIE iluminantov skupiny D.
Iluminant E nezodpovedá žiareniu čierneho telesa, a preto sa nevyjadruje vo farebnej teplote.
CIE iluminanty F
Iluminanty F je séria zodpovedajúca rôznym fluorescenčným lampám
s označeniami F1 až F12.
19.8.1 Štandardné zdroje svetla
CIE rozlišuje medzi iluminantami a zdrojmi svetla. Kým iluminant je daný
špecifickým spektrálnym zložením žiarenia dopadajúceho na pozorovaný
objekt, pod zdrojom svetla rozumieme fyzické zariadenie vyžarujúce
svetlo, ako lampa alebo slnko. Iluminanty sú dôležité pre kolorimetrické
výpočty, a preto potrebujeme mat’ aj ich fyzikálne realizácie.
Iluminant nie je vždy presne realizovaný svetelným zdrojom. CIE odporúča nasledovné štandardné zdroje pre aproximaciu iluminantov.
Štandardný zdroj A
Štandardný zdroj A je plynom plnená žiarovka s volfrámovým vláknom
(500 W) s farebnou teplotou 2854 K.
296
19.8. Štandardné iluminanty
Štandardné zdroje D, simulátory denného svetla
Pre iluminanty skupiny D CIE neodporúča žiadne umelé svetelné zdroje,
kvôli ich zložitému spektrálnemu zloženiu. CIE však odporúča simulátory denného svetla pre účely kolorimetrie. Kvalita simulátora môže byt’
meraná pomocou CIE indexu metamerizmu. Podl’a knihy [WS00] je vhodným simulátorom iluminantu D65 napríklad xenónová výbojka s filtrom
(filtered high-presure xenon arc lamp – Xe5).
Štandardné zdroje F
V prípade, že treba vybrat’ iba zopár typických fluorescenčných lámp, CIE
odporúča používat’ prioritne iluminanty F2, F7 a F11.
CIE v technickej správe CIE15:2004, uvádza aj novú množinu fluorescenčných lámp s označením FL3.1 – FL3.15, kde FL3.15 je odporučená
ako simulátor iluminantu D65.
297
K APITOLA
20
Modely a priestory farieb
20.1
Homogénne priestory farieb
V priestore XYZ aj v CIE diagrame nezodpovedajú lineárne vzdialenosti
na rôznych miestach priestoru subjektívne vnímaným rozdielom vo farbe
a naopak. Takáto nehomogénnost’ je problémom pre aplikácie, kde je potrebné merat’ rozdiel farieb. Vývoj formuly pre výpočet rozdielu dvoch
farieb (color difference formulae), ktorá bola nevyhnutná najmä pre priemysel, bol problematický. Nájst’ veličinu, ktorá by uspokojivo opísala rozdiel vnímaný pozorovatel’om medzi dvoma danými farebnými podnetmi,
spočíva v schopnosti pozorovatel’a posúdit’ relatívnu vel’kost’ farebného
rozdielu týchto dvoch farebných podnetov. Hodnotenie pozorovatel’a sa
mení v závislosti od pozorovacích podmienok. Preto boli pre rôzne experimentálne podmienky vyvinuté rôzne formuly.
Boli snahy vyvinút’ farebný priestor, ktorý bude vnemovo rovnomerný, čo znamená, že rozdiel farieb medzi dvoma bodmi (dvomi farbami)
jednotkovej vzdialenosti v takomto priestore je rovnako vnímaný pre všetky farby.
Tieto vlastnosti sa nepodarilo dosiahnut’ v žiadnom z fyzicky a technicky orientovaných priestorov. Treba si ale uvedomit’, že neexistuje farebný priestor, ktorý by nebol skreslený. Preto, ak hovoríme o „homogénnom“ priestore, myslíme „viac-menej“ homogénny priestor. Homgénne
priestory farieb sú zaujímavé v rôznych oblastiach počítačového videnia,
obzvlášt’, ak porovnávame podobné farby. Tieto modely sú nezávislé od
298
20.1. Homogénne priestory farieb
zariadenia. Avšak transformácie do iných priestorov farieb sú výpočtovo
vel’mi náročné. Toto môže byt’ problémom najmä vtedy, ked’ spracovávame video v reálnom čase.
Homogénne priestory farieb majú využitie najmä v tých aplikáciách
počítačového videnia, v ktorých sa snažíme priblížit’ k l’udskému spôsobu vnímania farieb, ako je výber obrazov z databázy (image retrieval),
alebo ohodnotenie kvality obrazu (image quality assessment). Nie je výhodné použit’ ich tam, kde nie je priame spojenie medzi l’udským vizuálnym systémom ako v prípade sterea, alebo sledovania pohybu (motion
tracking) kvôli vel’kej časovej náročnosti pri nelineárnych transformáciách z RGB.
Bolo vyvinutých viacero homogénnych priestorov farieb, v ktorých sa
chceli ich autori priblížit’ k homogénnosti. Prvý pokus urobil v roku 1935
D. B. Judd. V nasledujúcom texte uvedieme tie priestory, ktoré boli prijaté
komisiou CIE. Najvýznamnejšie z nich sú priestory CIELAB a CIELUV. Farebný priestor CIELAB sa používa pri opise farieb matných materiálov
a povrchov, kým CIELUV je obvykle vhodný pre opis farby svetla.
20.1.1 CIE 1960 Yuv
V roku 1937 navrhol David MacAdam farebný priestor Yuv, ktorý CIE prijala v roku 1960 ako štandardný homogénny farebný diagram. V literatúre
sa môžeme stretnút’ s označeniami CIEYUV (1960), CIE–uv (1960) alebo
CIE UCS 1960 (uniform chromaticity-scale) diagram. Nové súradnice u a
v sú dosiahnuté pomocou lineárnej transformácie
2x
,
6y − x + 1, 5
3y
,
v=
6y − x + 1, 5
u=
(20.1)
kde x, y sú z priestoru Yxy. Transformácia 20.1 má zabezpečit’, že v novovzniknutom chromatickom diagrame bude vektor jednotkovej vel’kosti
vnímaný pre všetky farby rovnako. Rozdielová nerovnomernost’ je značne,
ale nie dostatočne, redukovaná. Tretia súradnica je redundantná.
20.1.2 CIE 1964 U*V*W*
Günther Wyszecki na základe CIE 1960 UCS vytvoril farebný priestor CIE
1964 (U ∗V ∗W ∗ ), tiež označovaný skratkou CIEUVW, v ktorom bola nelinearita oproti CIE 1960 UCS lepšie redukovaná. Neskôr ho nahradil CIE
299
20. M ODELY A PRIESTORY FARIEB
1976 L*u*v*. Wyszeckeho priestor je definovaný nasledovne
U∗
=
13W ∗ (u − u0 ),
∗
=
13W ∗ (v − v 0 ),
W∗
=
25Y (1/3) − 17,
V
(1 ≤ Y ≤ 100),
(20.2)
kde u, v sa rovná
4x
4X
=
,
X + 15Y + 3Z −2x + 12y + 3
6Y
6y
v=
=
,
X + 15Y + 3Z −2x + 12y + 3
u=
a u0 , v 0 sú hodnoty premenných u, v, pre achromatickú farbu umiestnenú v začiatku (U ∗ , V ∗ ) – systému. Pre farby objektov je postačujúce, ak
výber u0 , v 0 zodpovedá iluminantu. X , Y , Z sú trichromatické zložky a x,
y sú chromatické súradnice.
20.1.3 CIE 1976 Yu’v’
Na základe neskorších výskumov CIE v roku 1976 modifikovala UCS 1960.
Išlo o lineárnu transformáciu priestoru Yuv, kde Y a u zostáva nezmenené a v súradnica je 1,5 násobkom v. V CIE 1976 UCS je rozdielová nelinearita v porovnaní s UCS 1960 mierne redukovaná, ale stále nie dost’.
Hodnoty u , v môžu byt’ definované pomocou trichromatických zložiek
X , Y , Z alebo pomocou chromatických súradníc x, y nasledovne
u
v
4x
4X
=
,
X + 15Y + 3Z −2x + 12y + 3
9y
9Y
=
.
= 1, 5v =
X + 15Y + 3Z −2x + 12y + 3
=u =
(20.3)
20.1.4 CIE 1976 L*u*v*
CIE 1976 L ∗ u ∗ v ∗ je prvý takmer homogénny priestor farieb odporučený
CIE, určený pre farebné svetelné zdroje. Je vylepšenou verziou CIE 1964
U ∗V ∗W ∗ . Je to nelineárny farebný priestor, ale konverzie sú vratné. De300
20.1. Homogénne priestory farieb
finovaný je nasledovne
L∗
=
∗
=
v∗
=
u
⎧
: ;1/3
⎪
⎨ 116 YY
− 16,
n
: ;
⎪
⎩ 903, 3 Y ,
Yn
∗
ak
Y
Yn
> 0, 008856,
ak
Y
Yn
≤ 0, 008856,
13L (u − un ),
13L ∗ (v − v n ),
(20.4)
kde hodnoty u , v sú definované podl’a 20.3 a hodnoty un , v n dostaneme, ak do 20.3 dosadíme za X, Y, Z trichromatické hodnoty X n , Yn ,
Z n , opisujúce biely referenčný bod. Obvykle sú dané spektrálnym zložením žiarenia jedného zo štandardných CIE iluminantov D65 alebo A.
Pri týchto podmienkach sú X n , Yn , Z n trichromatické zložky štandardného iluminanta s Yn rovným 100. Krivka pre L ∗ je pre hodnoty menšie
ako 0, 008856 lineárna. Podl’a štandardizácie CIE je najlepšia aproximácia
tejto krivky funkcia x 0,4 . Nelineárny vzt’ah s Y je použitý na priblíženie sa
k logaritmickej odozve oka. Hodnoty L ∗ sa pohybujú v rozmedzí 0 až 100
a relatívny jas Y /Yn v rozmedzí 0 až 1.
V priestore L ∗ u ∗ v ∗ je pre konštantné L ∗ zapracovaný (u , v )-chromatický diagram, ktorý je projektívnou transformáciou CIE 1931 (x, y)-chromatického diagramu. Priamky v (x, y)-chromatickom diagrame zostanú
po transformácii do (u , v )-diagramu zachované. Toto je dôležitá vlastnost’ v prípade, že farebné podnety sú zmiešavané aditívne. Ked’že pozícia bodov v (u ∗ , v ∗ )-diagrame závisí od hodnoty L ∗ , nie sú v jednoznačnom vzt’ahu k chromaticite. Avšak pre konštantné L, priamky z (x, y)chromatického diagramu alebo z (u , v )-chromatického diagramu zostanú priamkami aj v (u ∗ , v ∗ )-diagrame.
Rozdiel farieb
Nech [L 1 , u1 , v 1 ] a [L 2 , u2 , v 2 ] sú dve rôzne farby z L ∗ u ∗ v ∗ priestoru. Potom rozdiel týchto dvoch farieb je jednoducho Euklidovská vzdialenost’
∗
E uv
=
(L 1 − L 2 )2 + (u1 − u2 )2 + (v 1 − v 2 )2 .
(20.5)
∗
menší ako 1 je nepostrehnutel’ný, rozdiely v rozmedzí 1 až
Rozdiel E uv
4 môžu a nemusia byt’ postrehnutel’né v závislosti od toho, z ktorej časti
farebného priestoru pochádzajú. Rozdiel väčší ako 4 je postrehnutel’ný.
301
20. M ODELY A PRIESTORY FARIEB
Polárne súradnice
V praxi je často výhodnejšie použit’ polárne súradnice, ktoré lepšie vystihujú vnímanie l’udského oka, ako karteziánske. Sú vyjadrené prostredníctvom oddelených komponentov ako vnímaná svetlost’ (lightness L ∗ ),
chroma (C ∗ ) a tón farby (hue huv ). Niekedy sa používa aj psychometrické nasýtenie (saturation suv ), čo je vlastne pomer chromy a svetlosti.
Aby tento priestor bol viac priaznivý pre používatel’a, CIE definovala dva
analogické priestory C I E LC Huv a C I E LH S uv . Chroma, tón farby a saturáciu pre L ∗ u ∗ v ∗ vypočítame nasledovne
C∗
=
huv
=
s uv
=
:
;0,5
u ∗2 + v ∗2
,
+ ∗,
v
arctan ∗ ,
u
C∗
.
L∗
(20.6)
Výhodou takejto reprezentácie je, že je oddelená jasová zložka od farebnej, čo môže byt’ výhodou napríklad pri segmentácii objektov, kde
nechceme, aby jas (osvetlenie, tieňovanie) ovplyvňoval výsledok.
20.1.5 CIE 1976 L*a*b*
V roku 1976 bol vytvorený aj model CIE L ∗ a ∗ b ∗ , ktorý je určený pre farebné objekty s difúznym povrchom. Takýto priestor prvýkrát navrhol
Hunter v roku 1948 a ide o d’alšiu transformáciu kolorimetrického priestoru CIEXYZ. V súčasnosti pod skratkou Lab rozumieme priestor CIE 1976
L ∗ a ∗ b ∗ označovaný aj skratkou CIELAB, ktorý je podobný Hunterovmu
Lab priestoru. Rozdiel je iba v spôsobe, ako vypočítame koeficienty.
CIE L ∗ a ∗ b ∗ je oponentný trojdimenzionálny farebný priestor, ktorý
sa skladá z jasovej zložky L ∗ a dvoch farebných zložiek a ∗ a b ∗ . Hodnoty
jasovej zložky L ∗ sa pohybujú od 0 (čierna) po 100 (biela). Farebné zložky
tvoria dve osi, pričom záporné hodnoty osi a ∗ zodpovedajú zelenej farbe
a oproti tomu kladné hodnoty komplementárnej fialovej farbe. Na osi b ∗
zodpovedajú záporné hodnoty modrej a kladné k nej komplementárnej
žltej farbe.
302
20.1. Homogénne priestory farieb
L∗
=
a∗
=
b∗
=
⎧
: ;1/3
⎪
⎨ 116 YY
− 16, ak
n
:
;
⎪
⎩ 903, 3 Y ,
ak
Yn
+
,
+ ,
X
Y
500 f
−f
,
Xn
Yn
+ ,
+
,
Y
Z
200 f
−f
,
Yn
Zn
Y
Yn
> 0, 01,
Y
Yn
≤ 0, 008856,
(20.7)
kde
f (t ) =
⎧
⎨ t 1/3 ,
ak
Y
Yn
> 0, 01,
⎩ 7, 787t + 16 ,
116
ak
Y
Yn
≤ 0, 008856.
X n , Yn , Z n sú trichromatické hodnoty opisujúce biely referenčný bod,
ktorý reprezentuje perfektne matné biele teleso osvetlené CIE štandardným iluminantom D65, A alebo C. Pri týchto podmienkach sú X n , Yn , Z n
trichromatické zložky štandardného iluminanta s Yn rovným 100. Treba
si všimnút’ vo vzorci tretiu odmocninu, ktorá bola zavedená z dôvodu získania homogénneho izotropného farebného telesa (isotropic color solid).
L ∗ má škálu rozdelenú približne rovnomerne podl’a vnímanej sensitivity. Treba podotknút’, že rozdiely medzi rovnako vzdialenými bodmi na
osi Y sú viac postrehnutel’né v tmavších častiach než vo svetlých.
L ∗ je identická s L ∗ v CIELUV, ale pre a ∗ a b ∗ neexistuje jednoduchý
vzt’ah k zložkám u ∗ a v ∗ z CIELUV. Ked’že pozícia a ∗ a b ∗ závisí od hodnoty L ∗ , nie je možné ich zakreslit’ do roviny, a preto na rozdiel od CIELUV, CIELAB nemá chromatický diagram. V priestore CIELAB priamky
z (x, y)-chromatického diagramu nie sú namapované na priamky ako
v CIELUV, ale ich obrazy sú zakrivené.
Polárne súradnice
Podobne ako pre CIELUV, CIE definovala analogický priestor CIELCH vyjadrený pomocou polárnych súradníc, ktoré môžeme vypočítat’ nasledovne:
:
;0,5
C∗ =
a ∗2 + b ∗2
,
+ ∗,
a
h ab = arctan ∗ .
b
(20.8)
303
20. M ODELY A PRIESTORY FARIEB
Ked’že CIELAB nemá chromatický diagram, saturácia nie je v tomto priestore definovaná.
Rozdiel farieb
Formula pre rozdiel farieb je definovaná ako Euklidovská vzdialenost’ v 3D
priestore CIELAB
∗
E ab
=
3
L∗ 2 +
a ∗2 +
b∗2.
(20.9)
20.1.6 CIE CAM02
CIE sa snažila zakomponovat’ do svojich modelov čoraz viac fenomén
vzhl’adu farby, aby lepšie modelovali l’udské vnímanie farieb. Ako výsledok takéhoto snaženia vznikol v roku 2002 model CIECAM02.
Model vzhl’adu farby (Color appearance model – CAM) modeluje spôsob, akým l’udský vizuálny systém vníma farby objektov pri rôznych svetelných podmienkach a s rôznym pozadím. Farby v obraze, ktorý sledujeme, môžu byt’ v takomto modeli prispôsobené, aby vyzerali rovnako pri
rôznych svetelných podmienkach. Toto umožňuje vyvinút’ spôsob ukladania obrazov nezávislý od zariadenia. Napríklad, ak je obraz naskenovaný do počítača a sú známe osvetl’ovacie podmienky, pomocou CAM ho
môžeme transformovat’ do internej reprezentácie a následne, ak má byt’
tento obraz zobrazený na monitore alebo vytlačený pri známych svetelných podmienkach, môže byt’ transformovaný z jeho internej reprezentácie do takej, aby bol vizuálne rovnaký ako pôvodný – skenovaný.
CIECAM02 je momentálne najzložitejší používaný farebný model. Berie do úvahy osvetl’ujúci zdroj, osvetlenie okolia, pozadie, farebnú škálu
a mnoho d’alších vplyvov. Jeho predchodcom bol CIECAM97.
20.2
Hardvérovo orientované modely
V nasledujúcom texte budeme používat’ pojmy farebný priestor a farebný model. Preto si najprv vysvetlime rozdiel medzi nimi. Farebný model je abstraktný matematický model, opisujúci spôsob, ako môžeme farby reprezentovat’ pomocou n-tíc čísiel. Obvykle sú to tri alebo štyri hodnoty alebo farebné komponenty. Ak je takýto model asociovaný s presným predpisom, ako sú jednotlivé komponenty interpretované, hovoríme
o farebnom priestore. Napríklad AdobeRGB a sRGB sú dva rôzne farebné
priestory, obidva založené na RGB modeli.
304
20.2. Hardvérovo orientované modely
Niektoré farebné priestory, ako ProphotoRGB, obsahujú všetky farby,
ktoré sú v Adobe RGB a Adobe RGB obsahuje takmer všetky farby z sRGB.
Vo všeobecnosti, ak konvertujeme jeden farebný priestor do druhého,
môžeme dostat’ farby, ktoré sú mimo ciel’ového priestoru. Takéto farby
nemôžu byt’ reprezentované v novom priestore farieb presne, označujeme ich „farby mimo gamut“.
20.2.1 Lineárny model RGB
Základnými (primárnymi) farbami modelu RGB sú
R – (Red) červená,
G – (Green) zelená,
B – (Blue) modrá.
Ostatné farby sa vyjadrujú aditívnym skladaním týchto farieb. Vyjadrujeme ich pomocou váhového súčtu jednotlivých zložiek. Môžeme to
prirovnat’ k rozsvecovaniu farebných svetiel. Čím majú zložky jednotlivých farieb väčšiu hodnotu, tým je výsledná farba svetlejšia. Skladaním
primárnych farieb tvoríme takzvané sekundárne farby. V tomto modeli
sú to modrozelená (cyan), fialová (magenta) a žltá (yellow).
Model RGB je reprezentovaný jednotkovou kockou umiestnenou v začiatku súradnicovej sústavy Euklidovského priestoru, E 3 , v jeho prvom
oktante (obr. 20.1). Jednotlivé osi súradnicového systému reprezentujú
množstvo príslušnej farebnej zložky vo výslednej farbe. Intenzita základných farieb sa v tomto modeli pohybuje v intervale ⟨0, 1⟩. Z toho vyplýva,
že množina základných farieb vo vrcholoch kocky predstavuje 8 farieb,
ktoré tvoria primárne, sekundárne farby, biela a čierna. Vrchol [0, 0, 0] (tj.
stred súradnicového systému) zodpovedá čiernej farbe (black). Naproti
tomu vrchol [1, 1, 1] zodpovedá bielej farbe (white). Farby ležiace na diagonále medzi týmito vrcholmi zodpovedajú odtieňom šedej (gray).
Pri technickej implementácii je rozsah najčastejšie kódovaný pomocou 8 bitov (tj. 256 dielov). Intenzitu každého obrazového bodu môžeme
teda opísat’ 24 bitmi, čo predstavuje presnost’ resp. farebnú hĺbku „true
color“. V RGB farebnom modeli môžeme vytvorit’ 2563 = 16, 8 milióna
farieb. Pre l’udské oko by postačovalo aj delenie na 100 dielov namiesto
256. Pri praktickom nastavovaní sa preto používa percentuálne nastavenie jednotlivých zložiek.
Daný model je v porovnaní s inými modelmi najviac technicky orientovaný. Tento model sa používa pre farebné monitory. Všetky monitory
a televízory tvoria farby tak, že na obrazovke na každý bod svietia tri lúče:
červený, zelený a modrý. Avšak RGB model nie je vel’mi efektívny pri
305
20. M ODELY A PRIESTORY FARIEB
B
(0,0,1)
(0,1,0)
(1,0,0)
G
R
Obrázok 20.1: Model RGB reprezentovaný jednotkovou kockou. V osiach sa nachádzajú primárne farby R, G, B a v počiatočnom bode [0,0,0] sa nachádza čierna
farba.
práci s reálnymi obrazmi. Medzi zložkami v RGB modeli je vel’ká korelácia a pri akejkol’vek modifikácii obrazu treba spravidla modifikovat’ všetky
tri zložky.
20.2.2 Model RGBA
V tomto prípade je k červenému, zelenému a modrému kanálu pridaný
d’alší, tzv. alfa-kanál. Ten uchováva informáciu o priehl’adnosti (transparency). Alfa-kanál má väčšinou rovnaký rozsah ako ostatné tri kanály
a určuje, v akom pomere bude daná farba zmiešaná s farbou na pozadí
obrazu
• Hodnota 0 znamená úplne priehl’adný objekt,
• Hodnoty z intervalu (0, 1) znamenajú čiastočne priesvitný objekt,
• Hodnota 1 znamená úplne nepriesvitný objekt.
20.2.3 Nelineárne priestory RGB
Aby sme mohli jednoznačne definovat’ farebný priestor, potrebujeme
chromatické súradnice troch primárnych farieb a referenčnú bielu farbu.
V praxi bolo vyvinutých množstvo RGB priestorov s rôznymi primárnymi
farbami a referenčnou bielou, aj ked’ väčšinou ich hodnoty nie sú prístupné pre používatel’a. Pri manipulácii s multimédiami používatelia väčšinou predpokladajú, že všetky obrazy sú reprezentované rovnakým RGB
306
20.2. Hardvérovo orientované modely
priestorom, avšak ak nemáme k dispozícii chromatické súradnice primárnych farieb, akékol’vek manipulovanie s obrazom nie je presné.
Gama korekcia
Rôzne zariadenia majú odlišné fotosenzory. Aby sme dostali presnú reprodukciu farby na rôznych zariadeniach, pridáva sa tzv. gama korekcia.
Gama korekcia slúži na kompenzáciu nelinearity televíznej obrazovky,
kde napríklad trojnásobne silnejšiemu napätiu nezodpovedá 3× jasnejší
svit daného miesta obrazovky. Pôvodné lineárne signály sa označujú RGB,
po gama korekcii R’G’B’. Pre rôzne zariadenia môže byt’ použitá rôzna
hodnota gama.
Aj ked’ by bolo možné zvolit’ tri primárne farby tak, aby pokryli čo najväčšiu plochu v CIE xy-diagrame, sú väčšinou volené tak, aby luminofory
boli vyrobitel’né a energetické nároky neboli príliš vysoké. Zakreslením
bodov reprezentujúcich jednotlivé primárne farby do CIE xy-chromatického diagramu dostaneme paletu farieb zobrazitel’ných na danom zariadení. Toto sa nazýva gamut zariadenia.
Každý RGB farebný priestor je definovaný pre špecifické zariadenie
so svojími RGB a gama hodnotami. Referenčná biela je farba referenčného bieleho podnetu. Ako referenčná biela sa väčšinou používa jeden
z CIE štandardných iluminantov (D65, C, D50 . . . ). Bolo navrhnutých vel’a
rozličných množín kriviek trichromatických členitel’ov, aby sme mohli
správne vizualizovat’ farbu na displejoch, čo má za následok rôzne RGB
štandardy, napr. NTSC-RGB, PAL-RGB a sRGB. Proces prispôsobenia hodnôt farieb pre rôzne zariadenia (napr. kameraRGB, monitorRGB, printerRGB) má na starosti systém správy farieb (CMS).
Farebný priestor sRGB
Farebný priestor sRGB má primárne farebné podnety definované v štandarde ITU-R BT.709 (tab. 20.1).
Na rozdiel od iných RGB priestorov, gama pre sRGB sa nedá vyjadrit’ jedným číslom. Gama korekcia pozostáva z lineárnej časti (gama 1,0)
v tmavých hodnotách a nelineárnej časti na zvyšku intervalu. Hodnoty
gama prechádzajú od 1,0 až po 2,4. Celková približná gama hodnota je
2,2.
Transformácia z CIE XYZ na sRGB je nasledovná
⎡
⎤ ⎡
R sRGB
3, 2410
⎣G sRGB ⎦ = ⎣−0, 9692
B sRGB
0, 0556
−1, 5374
1, 8760
−0, 2040
⎤ ⎡ ⎤
−0, 4986
X
0, 0416 ⎦ . ⎣Y ⎦ .
1, 0570
Z
(20.10)
307
20. M ODELY A PRIESTORY FARIEB
Tabul’ka 20.1: Chromatické súradnice primárnych podnetov R, G, B priestoru
sRGB dané vo farebnom priestore xyY.
Chromatické
súradnice
x
y
Y
Červená
R
0,6400
0,3300
0,2126
Zelená
G
0,3000
0,6000
0,7153
Modrá
B
0,1500
0,0600
0,0721
Biely bod
D 65
0,3127
0,3290
1,0000
sRGB je odporúčaný farebný priestor pre Internet a od roku 2007 je
najviac používaným RGB priestorom. Môže byt’ použitý pre editovanie
a ukladanie obrazov určených na publikovanie na webe, avšak jeho farebná škála je limitovaná. Pokrýva približne 36 % viditel’ných farieb. Obrazy určené na profesionálnu tlač môžu preto stratit’ na kvalite. V tom
prípade je lepšie použit’ iný farebný priestor, napr. Adobe RGB, ktorý má
inú farebnú škálu.
Farebný priestor Adobe RGB
Farebný priestor Adobe RGB vyvinula firma Adobe Systems v roku 1998
tak, aby obsahoval väčšinu farieb dosiahnutel’ných v CMYK tlačiarňach
pomocou reprezentácie hodnôt RGB na monitore. Tento priestor obsahuje približne 52 % viditel’ných farieb, a oproti sRGB má rozsiahlejší gamut hlavne v oblasti fialovo – zelených farieb.
Farebný priestor Adobe Wide Gamut RGB
Spoločnost’ Adobe System navrhla aj d’alší RGB priestor Adobe Wide Gamut RGB. Tento pokrýva až 77,6 % viditel’ných farieb vd’aka čisto spektrálnym primárnym podnetom, ktorých chromatické súradnice spolu s
bielym bodom D 50 sú v tabul’ke 20.2.
20.2.4 Model CMY
Základnými farbami modelu CMY sú
C – (Cyan) modrozelená, tyrkysová,
M – (Magenta) fialová, purpurová,
Y – (Yellow) žltá.
308
20.2. Hardvérovo orientované modely
Tabul’ka 20.2: Chromatické súradnice primárnych podnetov R, G, B priestoru
Adobe Wide Gamut RGB.
Chromatické
súradnice
CIE x
CIE y
Vlnové dĺžky
Červená
R
0,7347
0,2653
700 nm
Zelená
G
0,1152
0,8264
525 nm
Modrá
B
0,1566
0,0177
450 nm
Biely bod
D 50
0,3457
0,3585
Model CMY vychádza z maliarskeho miešania farieb, pri ktorom pridávaním hodnôt jednotlivých farebných zložiek dostávame výslednú farbu tmavších odtieňov, ide o tzv. subtraktívne miešanie farieb. Môžeme
si to predstavit’ ako nanášanie filtrov, kde napr. žltý pri dopade bieleho
svetla všetky vlnové dĺžky pohltí, odrazí iba žltú (obrázok 20.2).
Obrázok 20.2: Princíp maliarskeho miešania farieb. Z bieleho svetla sa po dopade
na žltý filter odrazia iba vlnové dĺžky zodpovedajúce žltej farbe, všetky zvyšné vlnové dĺžky pohltí filter.
Farebný model CMY sa najčastejšie reprezentuje ako jednotková kocka umiestnená v osiach C, M, Y (obr. 20.3). Intenzita základných farieb sa
v tomto modeli pohybuje v intervale ⟨0, 1⟩. Vo vrcholoch kocky sa nachádzajú tzv. základné farby. Vrchol [0, 0, 0] zodpovedá bielej farbe a vrchol
[1, 1, 1] čiernej farbe. Farby ležiace na diagonále medzi týmito vrcholmi
zodpovedajú odtieňom šedej. Ich nárast je v opačnom smere ako v modeli RGB.
309
20. M ODELY A PRIESTORY FARIEB
Y
(0,0,1)
(0,1,0)
M
(1,0,0)
C
Obrázok 20.3: Model CMY reprezentovaný jednotkovou kockou. V osiach sa nachádzajú sekundárne farby C, M, Y a v počiatočnom bode [0,0,0] sa nachádza
biela farba.
Transformácie medzi modelom RGB a modelom CMY
Transformácia RGB na CMY je daná
Cyan
Magenta
Yellow
=
=
=
1 − Red,
1 − Green,
1 − Blue.
(20.11)
Inverzná transformácia CMY na RGB je nasledovná
Red
Green
Blue
=
=
=
1 − Cyan,
1 − Magenta,
1 − Yellow.
(20.12)
20.2.5 Model CMYK
Subtraktívne miešanie je vhodné na tlačiarenské účely, hlavne pri atramentových tlačiarňach, kde sa uplatňuje model CMYK (K – black or key),
v ktorom je pridaná čierna farba. Pri tlači sa výsledná farba v skutočnosti
nemieša, ale postupne sa nanášajú jednotlivé farby v podobe vzorov natočených pod rôznym uhlom. Takýto postup ale nie je dostatočne presný
a pri tlačení čiernej farby dostaneme skôr tmavohnedú, resp. tmavošedú.
Preto sa pridáva zvlášt’ čierna farba, ktorá je väčšinou v samostatnom toneri a tlačí sa samostatne. Ďalší dôvod je ekonomický, pri tvorbe čiernej
sa míňajú všetky tri farebné tonery, čo je finančne náročné. Vytlačený do310
20.3. Modely farieb v televíznej a videotechnike
kument alebo obraz odráža svetlo, ktoré ho osvetl’uje. Niektoré svetlo je
pohltené, zvyšné odrazené.
Priestor CMYK je taktiež neintuitívny pre používatel’ov a takisto ako
iné uvedené modely farieb nelineárny na vnímanie.
Farebné priestory RGB a CMYK sú závislé od zariadenia, na ktorom
sa používajú. CMYK taktiež závisí od atramentu a od použitého papiera.
S rozličnými zariadeniami dostaneme rôzne prenosové charakteristiky
medzi špecifikovanými CMY(K) hodnotami a množstvom farby na papieri. Konverzie sú dané systémom správy farieb (CMS), ktoré využívajú
profily farieb. Napriek tomu konverzie nemôžu byt’ úplne presné, pretože
sú tu vel’mi odlišné gamuty.
Transformácie medzi CMY a CMYK
Na prevod farieb medzi CMY a CMYK je často uvádzaná nasledovná vel’mi
jednoduchá transformácia
Transformácia CMY na CMYK je daná
K
=
min (C , M, Y ) ,
C
=
(C − K ) / (1 − K ) ,
M
=
(M − K ) / (1 − K ) ,
Y
=
(Y − K ) / (1 − K ) .
(20.13)
Transformácia CMYK na CMY je nasledovná
C
=
min(1,C (1 − K ) + K ),
M
=
min(1, M(1 − K ) + K ),
Y
=
min(1, Y (1 − K ) + K ).
(20.14)
Táto nenáročná transformácia je skôr ilustratívna, ak sa použije na
tlač, výsledná reprodukcia farieb bude vel’mi zlá. Vhodnejšie je vypočítat’
konverziu z RGB do CMY(K) cez trichromatické zložky XYZ.
20.3
Modely farieb v televíznej a videotechnike
Modely farieb opísané v tejto časti sú asi najmenej známe zo všetkých
uvedených v tejto kapitole. Používajú sa najmä tam, kde sa spracovanie
311
20. M ODELY A PRIESTORY FARIEB
obrazu a počítačové videnie stretáva s televíznou alebo videotechnikou.
Po rozšírení čiernobieleho televízneho signálu na farebný bolo potrebné nájst’ spôsob, ako tento signál komprimovat’, pretože prenos farebného signálu v podobe RGB by vyžadoval trikrát väčšiu kapacitu čiernobieleho signálu. S využitím vlastností l’udského oka, ktoré je ovel’a citlivejšie na zmeny v jase ako vo farbe bola oddelená jasová zložka od zložiek vyjadrujúcim farebu. Zároveň bolo treba zachovat’ spätnú kompatibilitu, aby sa mohli nad’alej používat’ aj čiernobiele prijímače. Pridaný
farebný signál nesmel viditel’ne ovplyvňovat’ kvalitu čiernobieleho signálu a zároveň tento musel byt’ jednoducho vyfiltrovatel’ný. V rôznych
častiach sveta vznikli viaceré systémy na kódovanie farebného signálu
a každý riešil spätnú kompatibilitu na čiernobiely signál po svojom.
Spoločnou vlastnost’ou všetkých modelov je ich oddelená jasová zložka (luma) od chromatickej. Ked’že vel’ké percento jasu je tvorené zelenou
primárnou farbou, chromatické zložky sú založené na zvyšných dvoch
primárnych farbách červenej a modrej. Prvá chromatická zložka je vytvorená odpočítaním hodnoty lumy od nelineárnej modrej (B’–Y’) a druhá
odpočítaním lumy z nelineárnej červenej (R’–Y’). Tieto zložky sa nazývajú chroma. Zložky modelov sú počítané z nelineárnych gama korigovaných hodnôt R’G’B’ a preto, vždy ked’ je použitá gama korekcia, používa
sa apostrof väčšinou pri jasovej zložke, napríklad Y’CbCr.
V rôznych aplikáciách sa používajú rozdielne škálovacie faktory na
(B’–Y’) a (R’–Y’). Škálovacie faktory Y´PbPr sú optimalizované pre analógové video. V modeli Y’CbCr je škálovanie vhodné pre digitálne video
ako štúdiové video, JPEG a MPEG. Kodak Photo YCC používa škálovacie
faktory optimalizované pre gamut farebného filmu. Y’UV je škálovanie
vhodné pre medzikrok vo formovaní kompozitných NTSC a PAL video
signálov.
Vo všeobecnosti môžeme zapísat’
Y
=
k r R + k g G + k b B,
Cb
=
B −Y,
Cr
=
R −Y,
(20.15)
kde k r , k g a k b sú vhodné koeficienty a k r + k g + k b = 1.
Polárne súradnice
Chromatické komponenty (B’–Y’) a (R’–Y’) môžeme vyjadrit’ pomocou
polárnych súradníc, aby sme lepšie reprezentovali perceptuálne atribúty
312
20.3. Modely farieb v televíznej a videotechnike
ako odtieň farby a saturáciu. Hodnoty môžeme vypočítat’ nasledovne:
+ ,
B −Y H = tan−1 ,
R −Y 3
(B − Y )2 + (R − Y )2 .
S =
(20.16)
Tieto modely sú vnemovo nehomogénne, takže nie je vhodné používat’ na meranie rozdielu medzi dvomi farbami euklidovskú vzdialenost’.
20.3.1 Model YIQ
Farebný model YIQ bol zavedený americkou komisiou NTSC (National
Television Standard Committee) v roku 1953. Je tu oddelená jasová zložka
od farebných. Y zložka (luma) zodpovedá vnímanému jasu a je to zložka,
ktorú využívajú čiernobiele televízne prijímače, kým zložky I a Q kódujú
chromatickú informáciu. Vd’aka oddelenej jasovej zložke je možná manipulácia s jasom bez ovplyvnenia farebnej zložky, napríklad pri ekvalizácii
histogramu.
Zložka I znamená in-phase (činná zložka) a nesie informáciu o tóne
farby v rozmedzí medzi oranžovou a modrozelenou. Zložka Q znamená
quadrature (kvadrant), a nesie informáciu o tóne farby medzi zelenou
a purpurovou. Chromatické zložky spoločne kódujú odtieň farby aj saturáciu.
Tento model berie do úvahy fakt, že l’udské oko je výrazne citlivejšie
na zmeny v jase ako v odtieni farby alebo saturácii, a preto sa používa
väčšia šírka pásma pre Y ako pre I a Q. Väčšia šírka pásma pre zložku Y
umožňuje aj lepšie vysporiadanie sa s vizuálnymi chybami spôsobenými
kvantizáciou počas prenosu alebo spracovania. Zložka Y je vytvorená tak,
že gama korekcia sa najskôr aplikuje na lineárny model RGB a potom
sa vypočíta váhovaný súčet nelineárnych komponentov R’G’B’. Výsledná
zložka vyjadruje jas, nie je však rovnaká ako CIE Y, napriek tomu, že použité označenie je rovnaké.
Presné škálovanie farebných osí bolo definované tak, aby zodpovedalo spektrám žiarenia luminoforov používaným v televíznych obrazovkách v rôznych častiach sveta. Gama korekcia používaná NTSC pre CRT
je 2,2. Biely bod systému je štandardný iluminant C. Koeficienty, ktoré
zodpovedajú NTSC červenému, zelenému a modrému luminoforu CRT
obrazovky, sú štandardizované v ITU-R Rec. BT. 601. Luma je vypočítaná
z nelineárnych komponentov R’G’B’ nasledovne
Y601
= 0, 299R + 0, 587G + 0, 114B .
(20.17)
313
20. M ODELY A PRIESTORY FARIEB
Transformácie medzi RGB a YIQ
Transformácia z R’G’B’ do Y’IQ je daná
⎡ ⎤ ⎡
0, 299 0, 587
Y
⎣ I ⎦ = ⎣0, 596 −0, 274
0, 211 −0, 523
Q
⎤⎡ ⎤
0, 114 R 0, 322 ⎦ ⎣G ⎦ .
0, 312 B Inverzná transformácia z Y’IQ do R’G’B’ je
⎡ ⎤ ⎡
⎤ ⎡ ⎤
R
1, 000 0, 956
0, 621
Y
⎣G ⎦ = ⎣1, 000 −0, 272 −0, 647 ⎦ ⎣ I ⎦ .
Q
B
1, 000 −1, 105 1, 702
(20.18)
(20.19)
Polárne súradnice
Ak uvažujeme polárne súradnice, transformáciu pre odtieň farby a saturáciu môžeme vyjadrit’ nasledovne
+ ,
Q
HY IQ = tan−1
,
I
S Y IQ =
I 2 + Q 2.
(20.20)
20.3.2 Model YUV
Tento model sa používal na prenos televízneho signálu v európskej norme
PAL a SECAM. Podobne ako pri modeli YIQ, aj v tomto modeli je oddelená
jasová zložka od farebnej. Zvyšné dva signály obsahujú informáciu o vel’kosti farebných zložiek obrazu. Symboly U a V tu nesmieme spájat’ s U
a V CIE YUV (1960).
Zložka Y priestoru YUV je identická s Y v priestore YIQ. Zložka U sa
niekedy označuje aj ako B–Y a V ako R–Y. Farebné zložky sa pohybujú
v rozsahu –0,5 do +0,5 a jasová zložka má rozsah 0 až 1.
YUV je podobný priestoru YIQ, rozdiel je iba v 33-stupňovom otočení
farebných osí
I = −U . sin(33◦ ) + V. cos(33◦ ),
Q = U . sin(33◦ ) + V. cos(33◦ ).
(20.21)
Norma pre YUV bola špecifikovaná Európskou vysielacou úniou (European Broadcasting Union – EBU).
314
20.3. Modely farieb v televíznej a videotechnike
Transformácie medzi RGB a YUV
Biely bod systému je D65 a súradnice farieb YUV dostaneme transformáciou z RGB nasledovne
⎤⎡ ⎤
⎡ ⎤ ⎡
R
0, 299
0, 587
0, 114
Y
⎣U ⎦ = ⎣−0, 147 −0, 289 0, 436 ⎦ ⎣G ⎦ .
(20.22)
0, 615 −0, 515 −0, 100 B
V
Inverzná transformácia je potom daná
⎡ ⎤ ⎡
R
1, 000 0, 000
⎣G ⎦ = ⎣1, 000 −0, 395
B
1, 000 2, 032
⎤⎡ ⎤
1, 140
Y
−0, 581⎦ ⎣U ⎦
0, 000
V
(20.23)
Y’UV nie je absolútny farebný priestor. Je to v podstate spôsob kódovania RGB informácie a aktuálna zobrazená farba závisí od množiny
primárnych farebných podnetov RGB.
20.3.3 Model YPbPr
Y’PbPr je model luma-chroma pre prenos analógového videa cez siet’. Používajú sa rozdielne koeficienty pre SDTV a HDTV, ktoré upravujú štandardy ITU (International Telecommunication Union). Koeficienty pre
štandardné video SDTV sú dané normou ITU-R BT.601-5, a pre HDTV ich
upravuje štandard ITU-R BT.709-5.
Transformácie medzi RGB a YPbPr
Nasledujúci vzt’ah opisuje konverziu z RGB formátu do farebného formátu YPbPr. V prípade SDTV je použitá nasledovná matica
⎡
⎤ ⎡
Y
0, 299
⎣P b ⎦ = ⎣−0, 169
Pr
0, 500
0, 587
−0, 331
−0, 419
⎤⎡ ⎤
0, 114
R
0, 500 ⎦ ⎣G ⎦
−0, 081 B
(20.24)
Súčet koeficientov v prvom riadku matice je 1. V každom zo zvyšných
dvoch riadkov je súčet koeficientov rovný 0. Hodnota 0,5 vyjadruje maximálny rozsah zložiek Pb a Pr pre modrú a červenú primárnu farbu. Inverzná transformácia pre SDTV je daná vzt’ahom
⎡ ⎤ ⎡
⎤⎡ ⎤
R
Y
1, 000 0, 000
1, 402
⎣G ⎦ = ⎣1, 000 −0, 334 −0, 714 ⎦ ⎣P b ⎦ .
(20.25)
B
1, 000 1, 772
0, 000
Pr
315
20. M ODELY A PRIESTORY FARIEB
20.3.4 Model YCbCr
Tento medzinárodný štandard pre digitálne video nezávisí od štandardu
skenovania a primárnych parametrov systému, preto nemá chromatické
súradnice, CIE XYZ matice ani úvahu o bielom bode, či CRT gama. Zaoberá sa len digitálnym vyjadrením R’G’B’ signálov v Y’CbCr podobe.
S týmto modelom sa môžeme stretnút’ napríklad pri zápise rastrových
obrazov do JPEG formátu.
Existuje viacero spôsobov vzorkovania kompletnej farebnej informácie obrazu. Uvedieme si tie najpoužívanejšie:
4 : 4 : 4 nekomprimovaný obraz, šírka pásma pre farebné zložky je rovnaká ako pre jasovú, teda pre každý pixel máme aj jasovú aj kompletnú chromatickú informáciu
4 : 2 : 2 farebné zložky sú skomprimované na polovicu, t. j. pre každý druhý
pixel máme iba jasovú informáciu
4 : 1 : 1 horizontálne rozlíšenie farby je štvrtinové, čiže šírka pásma pre
farbu je polovičná oproti šírke pásma pre zložku luma
4 : 2 : 0 horizontálne vzorkovanie je oproti 4 : 1 : 1 dvojnásobné, ale Cb,
Cr farebné zložky sú vzorkované iba v každom druhom riadku, teda
vertikálne rozlíšenie je oproti 4 : 1 : 1 polovičné. Takže celkové množstvo dát je rovnaké ako pri 4 : 1 : 1
Y’CbCr je definované v štandarde Rec. ITU-R BT. 601 pre štúdiovú
kvalitu komponentného digitálneho videa. Signál pre jas je kódovaný
8 bitmi. Nie je však využitý celý rozsah 256 hodnôt. Y’ s ofsetom 16 má
rozsah 219, od hodnoty 16 pre čiernu po 235 pre bielu farbu. Chromatické
zložky s ofsetom 128 majú rozsah ±112, od 16 po hodnotu 240 vrátane.
Transformácie medzi RGB formátom a YCbCr pre SDTV
Nasledovné rovnice opisujú konverziu farby z RGB formátu do YCbCr pre
TV so štandardným rozlíšením (SDTV) (podl’a ITU-R BT.601)
⎡ ⎤ ⎡
⎤ ⎡
⎤⎡ ⎤
Y
16
0, 257
0, 504
0, 098
R
⎣C b ⎦ = ⎣128⎦ + ⎣−0, 148 −0, 291 0, 439 ⎦ ⎣G ⎦ .
(20.26)
Cr
128
0, 439 −0, 368 −0, 071 B
Inverzná konverzia je daná vzt’ahom
⎤⎡
⎡ ⎤ ⎡
⎤
Y − 16
R
1, 000 0, 000
1, 140
⎣G ⎦ = ⎣1, 000 −0, 395 −0, 581 ⎦ ⎣C b − 128⎦ .
B
1, 000 2, 032
0, 000
Cr − 128
316
(20.27)
20.3. Modely farieb v televíznej a videotechnike
Rozsah hodnôt pre jasovú a chromatické zložky rezervuje priestor,
ktorý je potrebný pri pretečení napríklad v kombinácii so zariadením
analógového videa. Pre počítačové aplikácie používajúce farebné formáty
RGB a YCbCr je v mnohých prípadoch použitý plný 8-bitový rozsah bez
rezervovaného priestoru. Farebný formát s plným rozsahom sa používa
napríklad v JPEG obrazoch.
Transformácie medzi R’G’B’ a Y’CbCr s využitím 8-bitového rozsahu
Konverzia R’G’B’ farieb do Y’CbCr s využitím celého 8-bitového rozsahu
je nasledovná
⎡ ⎤ ⎡
⎤ ⎡
⎤⎡ ⎤
Y
0
0, 229
0, 587
0, 114
R
⎣C b ⎦ = ⎣128⎦ + ⎣−0, 169 −0, 331 0, 500 ⎦ ⎣G ⎦ .
(20.28)
Cr
128
0, 500 −0, 419 −0, 081 B Inverzná transformácia farebného formátu YCbCr s využitím celého 8 bitového rozsahu naspät’ do RGB je
⎡ ⎤ ⎡
⎤⎡
⎤
R
1, 000 0, 000
1, 400
Y
⎣G ⎦ = ⎣1, 000 −0, 343 −0, 711 ⎦ ⎣C b − 128⎦ .
(20.29)
B
1, 000 1, 765
0, 000
Cr − 128
Y’CbCr pre HDTV
Pre HDTV sa používajú odlišné koeficienty ako pre SDTV, rozsah použitých hodnôt je však rovnaký ako pre SDTV s rezervovaným priestorom
v záhlaví a päte. Parametre priestoru Y´CbCr pre HDTV sú definované
v štandarde ITU-R BT.709.
20.3.5 Model Kodak Photo YCC
Tento farebný priestor vyvinuli vo firme Kodak na kódovanie obrazov systémom FotoCD. Je odvodený z gama korigovaných R´G´B´ hodnôt s použitím bieleho bodu, primárnych podnetov a hodnoty gama definovaných
v štandarde ITU-R BT.709. Je podobný priestoru Y´CrCb, rozdiel je len
v gamute týchto priestorov. Gamut priestoru YCC bol prispôsobený farebnému gamutu fotografického filmu, zatial’ čo gamut Y´CrCb je orientovaný na luminofory NTSC systému.
Transformácia RGB dát na 8-bitový formát Y’C1C2
Pri kódovaní dát najprv aplikujeme gama korekciu na hodnoty RGB. Potom R’G’B’ dáta transformujeme na zložky luma a dve chroma zložky
317
20. M ODELY A PRIESTORY FARIEB
takto
Y
=
0, 299R + 0, 587G + 0, 114B ,
C1
=
−0, 299R − 0, 587G + 0, 886B ,
C2
=
0, 701R − 0, 587G − 0, 114B .
(20.30)
Koeficienty pre C1 dostaneme, ak uvažujeme, že signál (B − Y ) dosahuje
extrémne hodnoty v modrej t. j. R = 0, G = 0, B = 1 a teda Y = 0, 114
a B −Y = 0, 886, a v žltej t. j. R = 1, G = 1, B = 0, Y = 0, 886 a B −Y = −0, 886.
Podobne dostaneme hodnoty pre C2. Extrémy signálu (R − Y ) sú pre červenú a modrozelenú a teda ±0, 701.
Následne dáta s reálnymi hodnotami prevedieme na FotoYCC dáta
s celočíselnými hodnotami, ktoré sú uložené ako 8-bitové čísla.
Y8bi
t
=
C 18bi t
=
255 Y ,
1, 402
156 + 111, 4.C 1,
C 28bi t
=
137 + 135, 64.C 2.
(20.31)
Obidve chroma zložky sú komprimované faktorom 2 horizontálne aj
vertikálne. Asymetrická škála medzi C 1 a C 2 je navrhnutá firmou KODAK
tak, aby zachytila rozsiahly farebný gamut podobne ako fotografický film
a vystihla typické rozloženie farieb v reálnych scénach.
Kodak YCC môže obsiahnut’ viac informácií než bežné zobrazovacie
jednotky. Prevod z YCC do RGB preto nie je jednoduchý opak prevodu
RGB na YCC, ale závisí od ciel’ového zobrazovacieho systému.
Inverzná transformácia 8-bitového formátu Y’C1C2 na 24-bitové RGB
Prevod dát z formátu FotoYCC naspät’ na 24-bitové RGB dostaneme tak,
že najprv obnovíme zložky luma a chroma s reálnymi hodnotami nasledovne
Y
=
1, 3584.Y8bi t ,
C1
=
2, 2179. (C 18bi t − 156) ,
C2
=
1, 8215. (C 28bi t − 137) .
(20.32)
318
20.4. Používatel’sky orientované modely
A potom vypočítame nelineárne R’G’B’ zložky
R
=
Y + C 2,
=
Y − 0, 194C 1 − 0, 509C 2,
=
Y + C 1.
G
B
(20.33)
Treba dbat’ na dve skutočnosti
a) výsledok RGB hodnôt je v rozsahu 0 až 346 (namiesto zvyčajne používaného rozsahu 0 až 255). Na konverziu pomocou nelineárnej funkcie
na 8-bitové dáta je obyčajne použitá vyhl’adávacia tabul’ka.
b) ak sa luminofory displeja líšia od ITU-R BT.709 primárnych zložiek,
potom bude potrebná d’alšia konverzia cez farebný priestor nezávislý od
zariadenia, ako napríklad CIE XYZ.
20.4
Používatel’sky orientované modely
Doposial’ opísané modely sú hardvérovo orientované a pre bežného používatel’a môže byt’ vel’mi t’ažké vyjadrit’ niektoré farby (napr. hnedú)
pomocou jednotlivých zložiek napríklad v systéme RGB. Preto boli navrhnuté takzvané používatel’sky orientované farebné modely, vhodnejšie pre intuitívne vnímanie farieb. Základnými použitými parametrami
v nich sú
• farebný odtieň (hue),
• sýtost’ farby (saturation),
• jasová zložka (value, lightness, brightness, luminance).
Tieto modely umožňujú používatel’ovi intuitívne špecifikovat’ farby
a jednoducho si vybrat’ danú farbu. Vychádzajú z maliarskeho spôsobu
vnímania farieb. Tieto modely sú však len jednoduchou lineárnou transformáciou z RGB priestoru, a tak majú aj podobné vlastnosti. Sú vhodné
napríklad na výber farieb (color picker) alebo v softvéroch zameraných
na editovanie obrazu. Všetky používatel’sky orientované modely sú vnemovo nehomogénne.
Používatel’ské modely na rozdiel od hardvérovo orientovaných ako
RGB alebo CMY, umožňujú menit’ iba jeden parameter farby, kým zvyšné
dva zostanú zachované. Túto dôležitú vlastnost’ môžeme využit’ napríklad pri ekvalizácii histogramov.
319
20. M ODELY A PRIESTORY FARIEB
Predstavitel’mi tejto skupiny sú modely HSV (HSB), HSL (HLS), HSI
a HCI (Hue Chroma Intensity). Model HSV (V – value) sa niekedy nazýva HSB (B – brightness). Model HSL používa ako tretiu zložku svetlost’ (L – lightness), zatial’ čo model HSI intenzitu. Všetky tieto modely sú
podobné, výraznejšie sa líšia v jasovej zložke. V nasledujúcom texte uvádzame stručné vysvetlenie jednotlivých pojmov.
Intenzita svetla (Intensity) alebo aj svietivost’ je celkové množstvo svetla
prechádzajúce cez určitú oblast’. Meria sa v kandelách (cd).
Jas (Luminance) je fotometrická veličina, definovaná ako merná veličina
svietivosti. Označuje sa L a vyjadruje sa v kandelách na meter štvorcový (cd/m2 ).
Jasnost’ alebo aj vnímaný jas (Brightness) je absolútna vnímaná intenzita svetla v psychologickom zmysle.
Svetlost’ (Lightness) je vnímaná intenzita svetla vzhl’adom k referenčnej
bielej farbe.
Intenzita a jas sú fyzikálne veličiny, zatial’ čo vnímaný jas a svetlost’
sú atribúty vizuálnej percepcie.
20.4.1 Model HSV
Hlavnými parametrami v modeli HSV sú odtieň farby (H – hue), sýtost’
(S – saturation) a jasová hodnota (V – value). Odtieň farby určuje dominantnú spektrálnu farbu, sýtost’ určuje prímes ostatných farieb a jasová
hodnota množstvo bieleho (bezfarebného) svetla.
Model HSV pochádza zo 70. rokov. Formálne ho prvýkrát opísal Alvy
Ray Smith v roku 1978 v augustovom čísle časopisu Computer Graphics.
V rovnakom čísle opísali Joblove a Greenberg model HSL, ktorého dimenzie označili ako hue, relative chroma, a intensity.
Pre priestorové zobrazenie HSV modelu väčšinou používame tvar obráteného pravidelného šest’bokého ihlana (hexcone model), ktorého vrchol leží v začiatku súradnicovej sústavy, v bode [0, 0, 0] a predstavuje
čiernu farbu. HSV ihlan vytvoríme deformáciou RGB kocky (obr. 20.4). Ak
si predstavíme RGB kocku, potom hlavná diagonála vedúca z čierneho
bodu do bieleho bodu definuje jasovú os. Ked’ pozeráme pozdĺž tejto
diagonály na RGB kocku, vidíme šest’uholník. Je to vlastne premietnutie
RGB kocky na rovinu kolmú na telesovú uhlopriečku. Ak pozeráme na
menšiu kocku, vidíme menší šest’uholník. Každá rovina s konštantnou
súradnicou V v priestore HSV vytvára šest’uholník.
320
20.4. Používatel’sky orientované modely
H odtieň farby
Obrázok 20.4: Vl’avo: projekcia RGB kocky pozdĺž hlavnej diagonály. Vpravo: HSV
model.
Saturácia (sýtost’ farby) sa určuje ako vzdialenost’ od stredovej osi
jasu po danú farbu. Tón farby, súradnica H je však uhlová z intervalu
⟨0◦ , 360◦ ⟩. Jasová hodnota V je určená stredovou osou. Hodnoty jasu na
nej klesajú od bielej farby v strede podstavy ihlanu až k čiernej vo vrchole
ihlanu. V ostatných vrcholoch šest’uholníka na obvode podstavy ihlana
sú umiestnené základné farby (červená – R, žltá – Y, zelená – G, modrozelená – C, modrá – B a fialová – M), kde červená je pri 0◦ , a zvyšné sú
rozdelené po 60◦ . Komplementárne farby sú od seba vzdialené 180◦ . Pri
cyklickej zmene farby H sa mení vždy len jedna zo súradníc RGB. Vel’kost’
najväčšej zo súradníc RGB je zhodná s hodnotou V. Farby s plnou saturáciou sa nachádzajú na plášti ihlanu.
Vzhl’adom na to, že odtieň farby sa meria ako uhol, je nespojitý v oblasti červených farieb v bode 0◦ = 360◦ . Toto si treba uvedomit’ pri riešení
úloh počítačového videnia.
Nedostatky modelu HSV
Nedostatkom tohto modelu je jeho ihlanový tvar, ktorý spôsobuje, že bod
s konštantnou hodnotou jasu V a konštantnou saturáciou S sa pri zmene
hodnoty H pohybuje po šest’uholníku a preto zmena farebného odtieňa
nie je plynulá (obr. 20.5). Tento nedostatok odstraňuje HSL model, kde
je „šest’uholník nahradený kruhom“. Plynulý nie je ani prechod medzi
čiernou a bielou farbou.
Farby s nízkou intenzitou môžu byt’ zobrazené ako plne saturované.
Napríklad farba [R,G, B] = [0, 01; 0; 0] má saturáciu 1, aj ked’ pre všetky
praktické účely je nerozlíšitel’ná od čiernej, ktorá má saturáciu 0. A preto
321
20. M ODELY A PRIESTORY FARIEB
S
H
0°
Obrázok 20.5: Saturácia a odtieň farby určený v modeli HSV.
tmavé regióny obrazu majú často vel’mi zašumené hodnoty saturácie.
Ďalším problémom tohto modelu sú singularity. Pre achromatické farby
je saturácia 0 a odtieň farby je nedefinovaný.
Prevod z RGB do HSV
Uvedieme vzt’ahy pre konverziu z RGB do HSV podl’a Travisa ([Tra91]).
Pri konverzii RGB na HSV (uvažujúc normalizované hodnoty RGB) najprv
nájdeme maximálne a minimálne hodnoty z RGB trojice. Potom saturácia S je
S=
max − min
max
(20.34)
a hodnota (Value) V sa rovná maximu
V = max .
(20.35)
Odtieň farby H sa potom vypočíta takto. Najprv vypočítame R’G’B’
322
R
=
G
=
B
=
max −R
,
max − min
max −G
,
max − min
max −B
.
max − min
20.4. Používatel’sky orientované modely
Ak saturácia S = 0, potom odtieň farby nie je definovaný (farba nemá
žiadne zafarbenie, preto je achromatická).
Ak R = max
a G = min,
tak H = 5 + B Ak R = max
a G = min,
tak H = 1 − G Ak G = max
a B = min,
tak H = R + 1
Ak G = max
a B = min,
tak H = 3 − B tak H = 3 + G Ak R = max,
H = 5 − R.
Inak
Odtieň farby je potom konvertovaný na stupne vynásobením 60, čím
dostaneme HSV s S medzi 0 a 1, a H medzi 0 až 360.
Spätná konverzia z HSV do RGB
Na spätnú konverziu z HSV na RGB najprv zoberieme odtieň farby H
v rozsahu 0 až 360 a vydelíme 60
Hex =
H
.
60
Potom vypočítame hodnoty a, b, c, p, q
p
=
!Hex" ,
q
=
Hex − p,
a
=
V (1 − S),
b
=
V (1 − S ∗ q),
c
=
V (1 − S ∗ (1 − q)).
kde ! " je dolná celá čast’ čísla. Nakoniec vypočítame RGB takto:
Ak p = 0,
t ak [R,G, B] = [V, c, a]
Ak p = 1,
t ak [R,G, B] = [b,V, a]
Ak p = 2,
t ak [R,G, B] = [a,V, c]
Ak p = 3,
t ak [R,G, B] = [a, b,V ]
Ak p = 4,
t ak [R,G, B] = [c, a,V ]
Ak p = 5,
t ak [R,G, B] = [V, a, b]
Treba si pamätat’, že HSV je iba mapovanie určitého RGB farebného
priestoru. Je to viac-menej vyjadrenie originálneho RGB priestoru v inom
323
20. M ODELY A PRIESTORY FARIEB
súradnicovom priestore. Saturované farby v HSV sú farby nachádzajúce
sa na hrane zodpovedajúceho RGB trojuholníka v chromatickom diagrame. Ked’že sa neuvádza, či je HSV odvodené od lineárneho alebo nelineárneho priestoru RGB a väčšinou nevieme ani presné hodnoty trichromatických zložiek RGB, hovoríme, že HSV je systém závislý od zariadenia, vo význame, že nie je absolútny kolorimetrický priestor, ale relatívny
vzhl’adom ku gamutu RGB, ktorý opisuje.
20.4.2 Model HSL
Podobný modelu HSV je aj model HSL, ktorý je na rozdiel od HSV reprezentovaný dvojitým kužel’om (bi-cone model) (obr. 20.4). Niekedy reprezentuje aj pomocou kužel’a alebo gule. Vo vrcholoch hore a dole sa
nachádza biela a čierna farba. Stredovú os tvorí svetlost’ (lightness). Svetlost’ používame v súvislosti s farbami, napríklad svetlozelená, tmavozelená farba.
V HSL dvojitom kuželi klesá počet farieb od stredu smerom hore k bielej farbe aj smerom dole k čiernej farbe. Maximum farieb v tomto modeli
je pri hodnote svetlosti 0,5. V HSV ihlane počet farieb klesá s hodnotou
parametra jasu. Hore pri základni, kde je aj najväčší počet farieb, je hodnota parametra jasu rovná 1, čiže najvyšší jas. Zatial’ čo HSV má vel’ké
množstvo farieb s maximálnou hodnotou jasu, HSL má iba jednu – bielu.
Dôsledkom tohto je, že dve farby s rovnakým odtieňom farby a maximálnou saturáciou budú v modeli HSV svetlejšie než v modeli HSL. Tvar modelu HSL zodpovedá viac skutočnosti, že najviac rôznych farieb vnímame
pri priemernej svetlosti. Schopnost’ rozlišovania farebných odtieňov skutočne klesá so stmavovaním aj so zosvetl’ovaním základnej čistej farby.
V HSV 100% jas zodpovedá vel’mi saturovaným farbám, čo ich robí neprirodzenými.
Saturácia v modeli HSL sa pohybuje pri danej svetlosti od plne nasýtenej farby po sivú. V modeli HSV sa saturácia pohybuje hore na základni
od plne nasýtených až po bielu farbu.
Nedostatky
Nevýhodou priestorov HSV a HSL je, že odtieň farby v týchto priestoroch nie je lineárne závislý od hodnoty farebného odtieňa v priestore
RGB a ani jeho zmena nie je spojitá. Preto sa hrana v kocke RGB zobrazí
ako oblúk v modeloch HSV a HSL. Toto je nevýhoda hlavne pri interpoláciách. Ked’že obidva farebné modely sú odvodené od RGB modelu, majú
324
20.4. Používatel’sky orientované modely
120°
60°
0°
180°
240°
300°
H odtieň farby
Obrázok 20.6: Model HSL. Po obvode sa mení odtieň farby, na strednej osi sa
mení svetlost’ (lightness) a saturácia sa pohybuje od strednej osi po okraj.
aj jeho gamut. Transformácia medzi nimi prebieha v konštantnom čase
bezstratovým algoritmom.
Pri prevode HSL na RGB musíme dávat’ pozor, aby sme netransformovali hodnoty mimo RGB kocky. Predpokladajme, že máme červenú
farbu s [R,G, B] = [1, 0, 0]. Ak ju transformujeme do HSL, dostaneme
[H , S, L] = [0, 1, 1/2]. Toto je maximálne saturovaná farba pri intenzite 1/2
a je nemožné d’alej zvyšovat’ intenzitu na hodnotu 1 a zároveň zachovat’
rovnakú saturáciu.
325
K APITOLA
21
Vizuálne vnímanie
a pozornost’
V tejto časti sa budeme venovat’ vizuálnemu vnímaniu a pozornosti. Do
l’udského oka vstupuje každú sekundu vel’ké množstvo dát (108 − 109 bitov). Ked’že l’udské vnímanie je obmedzené a l’udia nedokážu vnímat’
všetky tieto vstupné informácie naraz, je vel’mi dôležité informácie triedit’ na základe ich dôležitosti. Tento proces prebieha v l’udskom vizuálnom systéme automaticky, avšak z hl’adiska aplikácií je potrebné zistit’,
na ktoré oblasti v scéne sa upriamuje pozornost’ človeka a kde v scéne sa
tieto oblasti nachádzajú. Takéto oblasti sú označované ako významné.
L’udské vizuálne vnímanie závisí od množstva faktorov – vizuálnych
vlastností pozorovanej scény, medzi ktoré patrí napr. farba, textúra, intenzita, orientácia. Preto treba zohl’adňovat’ tieto faktory pri skúmaní scény a určovaní významných oblastí v nej. Avšak l’udia pri vnímaní scény
využívajú aj vnemovú inteligenciu – vedomost’, ktorú získavajú skúsenost’ami pri pozorovaní. Táto vedomost’ vel’kou mierou prispieva ku konečnému vizuálnemu vnemu.
Významné oblasti scény nesú pre pozorovatel’a potenciálne dôležitú
informáciu a poznatky o ich výskyte v obraze majú vel’mi široké využitie
v praxi, napr. pri kompresii a kódovaní obrazu, v rozpoznávaní, detekcii,
kategorizácii objektov, pri segmentácii obrazu, odstraňovaní artefaktov,
renderovaní, spracovaní multimédií, orezávaní obrazu [Gol08].
V nasledujúcich častiach si objasníme pojem vizuálnej pozornosti.
Budeme sa bližšie venovat’ dvom najzákladnejším spôsobom určovania
oblastí, ktoré prit’ahujú l’udskú pozornost’: sledovaniu pohybu očí a tvorbe máp významných oblastí.
326
21.1. Vizuálna pozornost’
Vizuálna
pozornosť
Psychofyzika
Výpočtové
modelovanie
Modely
využívajúce filtre
Prístup
zdola-nahor
Vizuálne
vyhľadávanie
Neurofyziológia
Modely využívajúce
neurónové siete
Prístup
zhora-nadol
Kontextové
modely
Úlohovo
orientované modely
Obrázok 21.1: Graf rozdelenia štúdií vizuálnej pozornosti.
21.1
Vizuálna pozornost’
Vizuálna pozornost’ vel’mi vplýva na vnímanie, na pamät’ (l’udia sú schopní si niečo zapamätat’, len ak na to sústredia svoju pozornost’), na jazyk
(čítanie zahŕňa pozornost’ na text slovo po slove) aj na riešenie problémov (úspech v riešení problémov závisí od toho, ktorý problém zaujme
pozornost’ človeka) [Gol08].
Na obrázku 21.1 je zobrazený graf, ktorý znázorňuje rozdelenie štúdií
vizuálnej pozornosti. Z neho je zrejmé, že vizuálna pozornost’ je oblast’
výskumu, ktorá je vel’mi zaujímavá a zaoberajú sa ňou vedci z rôznych
vedných odvetví [BI13].
Pri vnímaní scény sa rozlišujú dva hlavné prístupy
• zdola-nahor (bottom-up),
• zhora-nadol (top-down).
Pomocou týchto dvoch prístupov sa vizuálna pozornost’ rozdel’uje
na endogénnu, ktorá využíva prístup zhora-nadol a exogénnu založenú
na prístupe zdola-nahor. Exogénna pozornost’ je zameraná na vonkajšie podnety, upozorňuje na výrazné časti automaticky a má rýchly časový
priebeh. Existuje široká škála exogénnych vizuálnych atribútov na zachytenie pozornosti, ako sú napríklad priestorové vnemy, náhle vizuálne
zmeny jasu, farby atd’.
V endogénnej časti je pozornost’ určovaná subjektom. Je známa ako
ciel’ovo riadená pozornost’. Endogénna pozornost’ je riadená pozorovatel’om, závislá na ňom a je pomalá z dlhodobého časového hl’adiska.
327
21. V IZUÁLNE VNÍMANIE A POZORNOS Ť
Existuje viacero modelov vizuálneho vnímania, ktoré využívajú tieto
prístupy oddelene. Avšak vo všeobecnosti takmer každý model vizuálneho vyhl’adávania je založený na vzájomnej interakcii medzi týmito prístupmi. Oba hlavné prístupy sú navzájom nezávislé.
Prístup zdola-nahor
Postupnost’ udalostí, ktoré sa začali stimuláciou receptorov, je zarad’ovaná medzi exogénne. Je riadená stimulmi, kde sa automaticky, bez vonkajších podnetov, pozornost’ zameriava na výraznejšie časti obrazu. Túto
pozornost’ môže ovplyvnit’ vel’ké množstvo podnetov, ako sú napríklad
zmeny vo farbe, zmena polohy, intenzity. Všetky tieto zmeny l’udské oko
zachytáva a podvedome upriamuje pozornost’ práve na ne.
Množstvo psychologických výskumov ukázalo, že vizuálny systém je
vysoko citlivý na vlastnosti v obraze, ako sú napríklad hrany, náhle zmeny
vo farbe, intenzite, náhle pohyby.
Procesy zdola-nahor sú nezávislé na úlohe, ktorú pozorovatel’ rieši.
Snažia sa predvídat’, ktoré časti pozorovanej scény môžu pritiahnut’ viac
pozornosti, a podl’a toho vytvárajú mapy významných oblastí v obraze.
Tieto procesy môžu byt’ využívané napríklad pri automatickej detekcii
významných oblastí v scénach, v strojovom videní, pri inteligentnej kompresii obrazu atd’. Pri analyzovaní scény pomocou prístupov zdola-nahor
sú medzi významné objekty zaradené napríklad červené jablko na zelenom strome, horiaca sviečka v tmavej miestnosti, alebo pery a oči na tvári,
ktoré sú považované za jej najvýraznejšie časti.
Pri pozorovaní scény, v ktorej sa nachádza vel’ké množstvo rovnakých
objektov, ktoré by samostatne boli určené ako výrazné, sa tieto objekty
stávajú nevýraznými. Ked’ pozorovatel’ porovnáva dve fotografie jabloní
s červenými jablkami, kde na jednej je iba jedno a na druhej je vel’ké
množstvo jabĺk, v prvom prípade si jablko všimne, ale v druhom prípade
sú jablká odfiltrované a pozorovatel’ si všíma iné výrazné oblasti a objekty [CCM03].
Prístup zhora-nadol
Vizuálne vnímanie je ovel’a komplikovanejšie, než len vnímanie energie
na receptoroch, čo sa deje pri procesoch založených na prístupe zdolanahor. Preto je pri procesoch založených na prístupe zhora-nadol pozorovanie scény čiastočne ovládané pozorovatel’om. Toto ovládanie sa deje
pridaním dodatočnej informácie ako napríklad tým, že človek je pri pozorovaní nových scén ovplyvnený vecami, ktoré už videl v minulosti. Toto
328
21.2. Určovanie významných oblastí v obraze
b) pridané vedomosti
(zhora-nadol)
svetlo
obraz
mole
elektrické
signály
a) vstupné dáta
(zdola-nahor)
moľa
Obrázok 21.2: Pozorovanie mole je ovplyvnené kombináciou a)vstupných dát
a b) predošlých vedomostí.
pozorovanie zahŕňa skúsenosti pozorovatel’a, avšak môže byt’ vel’mi pomalé.
Ako príklad prístupov zhora-nadol je možné použit’ pozorovanie kôry
stromu. Pri procesoch zdola-nahor sa určí farba kôry, rozlišujú sa hrany
a textúra, ale až pri pridaní d’alšej informácie je možné určit’, že na kôre
stromu sa nachádza mol’a (obr. 21.2).
Pri využívaní prístupov zhora-nadol môže byt’ ako prídavná informácia použitá úloha, ktorú ma pozorovatel’ vyriešit’. Avšak, ak má pozorovatel’ napríklad nájst’ určitý objekt v scéne, môže prehliadnut’ iné výrazné
oblasti v nej. Preto môže nastat’ situácia, kde niektoré objekty významné
pri detekcii pomocou prístupov zdola-nahor nemusia byt’ považované za
významné pri prístupe zhora-nadol.
Skúmaním vizuálnej pozornosti a procesov zhora-nadol sa zaoberal
aj ruský psychológ Yarbus už v roku 1965. Jeho výskum spočíval v zaznamenávaní fixácií a skokov oka pozorovatel’ov, ktorí mali úlohu skúmat’
danú scénu a odpovedat’ na položené otázky. Pohyby očí sa výrazne menili v závislosti od daných otázok [CCM03].
21.2
Určovanie významných oblastí v obraze
Pri mnohých aplikáciách z oblasti grafiky, dizajnu a HCI je vel’mi dôležité porozumenie tomu, kam človek zameriava svoju vizuálnu pozornost’. Tieto informácie sa využívajú napríklad pri automatickom orezá329
21. V IZUÁLNE VNÍMANIE A POZORNOS Ť
vaní obrazu, vytváraní náhl’adov, pri vyhl’adávaní konkrétneho obrazu
v databáze. Môžu byt’ použité taktiež pri kompresii videa, nefotorealistickom renderingu, adaptívnom zobrazovaní obrazu na malých displejoch.
Vo všeobecnosti je vzhl’adom na uvedené aplikácie potrebné čo najlepšie, najpresnejšie a najrýchlejšie detegovat’ oblasti záujmu. Na určenie
takýchto oblastí sú k dispozícii dva hlavné prístupy
• sledovanie pohybu očí („eye tracking“),
• modely na detekciu významných oblastí.
Pre niektoré aplikácie sú používané dáta získané pomocou sledovania pohybu očí. Hlavný princíp spočíva v sledovaní a zaznamenávaní pohybov očí pozorovatel’a. Pozorovatel’ sleduje scénu a systém zaznamenáva pohyby jeho oka, čím sa zist’uje, kam sa zameriava jeho pozornost’.
Avšak takýto spôsob zist’ovania významných oblastí je finančne a časovo
náročný, a preto nie je vždy možné ho používat’. Z týchto dôvodov je
vel’mi potrebné detegovat’ významné oblasti aj iným spôsobom. Ako alternatíva sú preto navrhované a používané modely na detekciu pravdepodobnosti výskytu významných oblastí v obraze.
21.2.1 Sledovanie pohybu o čí
Oči a ich pohyby sú vel’mi dôležité pri vyjadrení potrieb, túžob a emocionálneho rozpoloženia človeka. Z toho dôvodu návrh robustných techník
na detekciu očí a ich pohybu zohráva kl’účovú úlohu pri vývoji rôznych
techník interakcie človeka s počítačom, vytváranie používatel’ských rozhraní, zist’ovaní oblastí záujmu pozorovatel’a.
Detekcia očí a sledovanie ich pohybu je atraktívnou oblast’ou výskumu už mnoho rokov a v súčastnosti je využívaná v mnohých aplikáciách.
Je to jedna z netradičných techník, ktorá sa využíva pri interakcii človeka
s počítačom.
Prehl’ad techník na sledovanie pohybu očí
Geometrické a pohybové charakteristiky očí sú unikátne, čo umožňuje
využitie ich detekcie pri rôznych aplikáciách. Hardvérový systém na sledovanie polohy a pohybu očí sa nazýva „eye tracker“. Vo všeobecnosti
existujú dva hlavné prístupy na monitorovanie pohybov očí – meranie
pozície očí v závislosti na hlave pozorovatel’a a meranie orientácie očí
v priestore. V rámci softverového riešenia „eye trackera“ existuje vel’ké
množstvo rôznych prístupov [AF13]. V tejto časti si bližšie opíšeme dva
z nich
330
21.2. Určovanie významných oblastí v obraze
Obrázok 21.3: Sledovanie pohybov očí s fixnou polohou hlavy.
• sledovanie pohybu očí pomocou senzorov,
• sledovanie pohybu očí pomocou techník počítačového videnia.
Sledovanie pohybu očí pomocou senzorov
Niektoré systémy analyzujú pohyby očí na základe elektrických potenciálov pomocou elektrookulogramu (EOG). Pre každé oko sú v jeho blízkosti
umiestnené dva páry elektród, ktoré zaznamenávajú elektrický potenciál.
Na základe týchto informácií je možné určit’ polohu očí.
Sledovanie pohybu očí pomocou techník počítačového videnia
Vel’ké množstvo metód na sledovanie polohy a pohybu očí využíva techniky počítačového videnia s použitím kamery, ktorá sníma jedno, alebo
obe oči a následne spracováva tieto informácie. Pozícia kamery môže byt’
rôzna. V niektorých prístupoch sa využíva kamera pripevnená k hlave pozorovatel’a, čo je vel’mi výhodné pri systémoch, kde používatel’ pozoruje
svoje okolie. V prípade sledovania obrazov na monitore sa bežne využíva
fixné postavenie kamery a hlavy pozorovatel’a (obrázok 21.3). Pomocou
týchto techník sa riešia dve hlavné otázky
• určovanie pozície očí vzhl’adom na pozorovanú scénu,
• sledovanie pohybu očí.
Určovanie pozície očí a sledovanie ich pohybu je stále vel’mi náročná
úloha, pri ktorej je potrebné riešit’ viacero problémov ako napríklad stupeň otvorenia očí, variabilita vo vel’kosti očí, pozícia hlavy a podobne.
Rôzne techniky rozpoznávania obrazcov a redukcie dimenzie príznakov sa ukázali ako vel’mi efektívne pri sledovaní pohybu očí. Redukcia
331
21. V IZUÁLNE VNÍMANIE A POZORNOS Ť
Obrázok 21.4: Ukážka systému na sledovanie pohybov očí pomocou techník počítačového videnia.
príznakov pomocou PCA efektívne pomohla znížit’ počet hlavných komponentov obrazu oka pre lepšiu detekciu. Taktiež sa využíva neurónová
siet’, ktorá je trénovaná počas kalibrácie kamery, kde sa používatel’ovi postupne zobrazuje niekol’ko bodov, ktoré má pozorovat’. Avšak využívanie
klasifikácie čiastočne spomal’uje celý proces určovania pozície a pohybu
očí.
Jedným z d’alších prístupov sú systémy využívajúce kruhový tvar zreničky a detekciu hrán. V [CK07] bol navrhnutý systém využívajúci detekciu tváre a Gaborove filtre. Potenciálna oblast’ zodpovedajúca tvári je určovaná detekciou pokožky a následne sa tento predpoklad overí s geometrickým vzorom štruktúry tváre. Ďalej sú na oblasti s pravdepodobným
umiestnením očí aplikované štyri Gaborove filtre (0, π/4, π/2, 3π/4), ked’že zrenička nemá žiaden dominantný smer, a teda ich kombináciou môže
byt’ jednoducho určená. V prípade [KBW08] je využívaný algoritmus detekcie najdlhšej čiary, ktorý je založený na predpoklade, že zrenička má
kruhový tvar. Je nájdená najdlhšia vertikálna a horizontálna čiara, kde ich
prienik určuje stred zreničky. Vel’ké množstvo systémov využíva tiež kruhovú Houghovu transformáciu a jej kombináciu s detekciou hrán.
Ďalší spôsob detekcie pohybu očí je určovanie polohy zreničky, kde
existujú dva hlavné prístupy: metóda tmavej zreničky a svetlej zreničky.
Metóda využívajúca tmavú zreničku je založená na kontraste zreničky
s dúhovkou. Avšak v tomto prípade môže nastat’ problém pri používatel’och s vel’mi tmavými očami, kde je kontrast príliš nízky. Metóda svetlej
zreničky využíva odraz infračerveného svetla od sietnice, čo spôsobuje,
332
21.2. Určovanie významných oblastí v obraze
že zrenička sa zdá byt’ biela v obraze oka, čím sa rieši problém s kontrastom.
Niektoré zo systémov sú založené na porovnávaní oka s jeho vzorom.
Pomocou tohto prístupu bol navrhnutý aj systém, ktorý umožňoval prirodzené pohyby hlavy pri sledovaní očí a minimalizoval potrebu kalibrácie systému.
Kombináciou rôznych techník sledovania pohybu očí sú vytvárané
hybridné systémy. Jeden z takýchto systémov je založený na detekcii zreničky. Vychádza z jej intenzity, tvaru a vel’kosti. Je využívané špeciálne
infračervené osvetlenie, pri ktorom sa zrenička javí svetlejšia ako zvyšok
snímanej tváre. Jej intenzita je používaná ako primárny príznak pre detekciu, avšak v snímanom obraze sa môžu objavit’ iné rovnako svetlé objekty. Preto sa využívajú aj prídavné informácie o zreničke, ako jej vel’kost’
a tvar. V iných prípadoch sa využíva napríklad kombinácia systémov zachytávania tmavej a svetlej zreničky, odrazu od rohovky s metódou iteratívnej krivky na efektívnu detekciu zreničky a mnoho d’alších.
Využitie systémov na sledovanie pohybu očí
Oblast’ výskumu určovania polohy a pohybu očí sa stala atraktívnou hlavne kvôli vel’kému množstvu aplikácií, ktoré môžu využívat’ robustné metódy sledovania pohybu očí. Jednou z hlavných oblastí využitia sú alternatívne spôsoby pre komunikáciu človeka s počítačom. Považujú sa
za jednoduchšie ako napríklad ovládanie hlasom, alebo EEG/ECG signálmi. Taktiež dosahujú vyššiu presnost’. Ako príklad môžeme uviest’ systémy, ktoré sa využívajú pre kontrolu prístupu a podpory technológií
pomocou snímania očí. Jeden z takýchto systémov je určený na písanie
pomocou pohybov očí, ktorého výstupom je text konvertovaný na reč.
Rovnako je možné pomocou očí kontrolovat’ rôzne systémy vrátane elektronických vozíkov, alebo televízneho ovládača.
Detekcia očí môže byt’ taktiež využívaná pri biometrickom rozpoznávaní používatel’ov. V tomto prípade sa systém používa na lokalizáciu
očí a následne dúhovky, čo je prvý a vel’mi dôležitý krok pri rozpoznaní
používatel’a na základe dúhovky.
Ďalšou vel’mi zaujímavou aplikáciou týchto systémov je využitie v optometrii. Použitie týchto systémov môže dopomôct’ k odhadu zorného
uhla jednotlicva, najmä určit’ jeho slepý uhol.
E-learningové systémy sú v súčastnosti vel’mi rozšírené. Avšak aj napriek tomu, že používatelia sú väčšinou zvyknutí na prácu s počítačom,
učenie s použitím takýchto systémov môže byt’ dost’ odlišné. Pri interakcii používatel’a s vyučujúcim je vel’mi dôležitá emočná čast’ tohto vzt’ahu,
333
21. V IZUÁLNE VNÍMANIE A POZORNOS Ť
ktorá však v takomto prípade chýba. Preto je možné využívat’ snímanie
očí a ich pohybu na sledovanie používatel’ových aktivít, správanie a emočné rozpoloženie používatel’a. Na základe týchto informácií môže byt’ určený čas na vykonávanie danej úlohy. Na základe interpretácie pohybov
očí môže byt’ rozpoznávané, či má používatel’ t’ažkosti s porozumením
úlohy, je unavený alebo v strese.
V automobilovom priemysle sa sledovanie pohybu očí využíva na rozvoj monitorovania a asistencie pri systémoch využívaných v autách.
Sledovanie pohybu očí je napríklad využívané na varovanie vodiča v prípade, že začne byt’ vel’mi unavený alebo zaspí počas jazdy. Únava vodiča môže byt’ detekovaná analýzou prahu žmurkania, stavu očí (otvorené / zatvorené) a rovnako aj určovaním času, kedy pohl’ad vodiča zostáva v rovnakom smere.
21.2.2 Modely na detekciu významných oblastí
Model vizuálnej pozornosti je opis pozorovaného a predpovedaného správania l’udskej vizuálnej pozornosti. Modely na detekciu významných oblastí môžu využívat’ prirodzený jazyk, blokové diagramy, matematické
prístupy, algoritmy alebo výpočty. Ich úlohou je detegovat’ oblasti, ktoré
s najväčšou pravdepodobnost’ou prit’ahujú pozornost’ pozorovatel’a.
Modelovaniu systémov na simuláciu vizuálnej pozornosti sa vedci aktívne venujú už vyše 25 rokov. Bolo vytvorené vel’ké množstvo modelov,
ktoré sa úspešne používajú v počítačovom videní, robotike, kognitívnych
systémoch. Tieto modely sa zameriavajú na zachytenie významných oblastí v obraze a ich d’alšie použitie [BI13], [Gol08].
V súčasnosti existuje vel’ké množstvo modelov na detekciu významných oblastí inšpirovaných biologickými procesmi, ktoré sú založené na
prístupe zdola-nahor (napr. [IKN98], [HRC05]). Tieto modely sú však iba
základným opisom správania sa l’udského vizuálneho systému. Detegujú
významné oblasti použitím nízkoúrovňových príznakov, ako sú farba, intenzita, orientácia, textúra, pohyb. Taktiež používajú stratégiu vít’aza, nemožnost’ návratu, detekciu na rôznych úrovniach a podobne. Najväčším
obmedzením týchto modelov je neprítomnost’ d’alšej informácie, ktorá
by v kombinácii s nízkoúrovňovými príznakmi pomohla presnejšie určit’
významné oblasti v obraze. Preto je pri navrhovaní nových a presnejších
modelov vel’mi dôležitý kognitívny proces a využitie sémantickej informácie.
Prvá otázka, ktorá sa naskytne pri uvažovaní nad využitím kognitívneho procesu, je existencia miesta v l’udskom mozgu, kde sa lokalizuje
mapa významných oblastí. Avšak podl’a doterajších výskumov také mie334
21.2. Určovanie významných oblastí v obraze
sto neexistuje. Toto vysvetl’uje fakt, že významnost’ oblastí v pozorovanom obraze neurčujú iba nízkoúrovňové príznaky, ale taktiež naše vedomosti, spomienky, očakávania.
Vizuálne a kognitívne procesy sú vel’mi úzko prepojené a v súčasnosti
nie je možné určit’, ktoré z nich v danom čase pozorovania určujú rozloženie vizuálnej pozornosti. Pri určovaní presnosti modelov založených
na procesoch zdola-nahor sa preto využíva sledovanie očí. Avšak aj pri
sledovaní očí nemôžeme zabúdat’ na procesy, ktoré ovplyvňujú vnímanie
zo sémantického hl’adiska. Napríklad pri vol’nom pozorovaní scény sú
výrazné iné oblasti ako pri pozorovaní scény s určitou úlohou. Výraznost’
týchto oblastí je ovplyvnená aj správaním, myšlienkami a spomienkami
pozorovatel’a. Vel’mi dobrým prístupom je charakterizácia významnosti
oblastí pomocou analýzy dát získaných sledovaním očí. Tento bol využitý
v práci [Jud+09] a dáva vel’mi dobré výsledky.
Rozdelenie modelov na detekciu významných oblastí
V roku 1998 bol vytvorený jeden z prvých modelov založený na simulácii biologického vnímania scény využívajúci procesy zdola-nahor, detekciu nízkoúrovňových príznakov [IKN98]. Odvtedy vzrastal záujem o tému
detekcie významných oblastí. Niektoré d’alšie modely už využívajú kombináciu nízkoúrovňových a vysokoúrovňových príznakov (napr. detekcia pokožky, tváre, textu). Tieto kombinácie dokážu pomôct’ pri riešení
vel’mi špecifických úloh ako napríklad detekcia chodcov. V súčasnosti sa
výskum nachádza iba na začiatku tvorby týchto výpočtových modelov,
ktoré by popri nízkoúrovňových príznakoch využívali aj pridanú informáciu, čím by sa zlepšila a spresnila detekcia významných oblastí obrazu.
Existujú dva hlavné prístupy vo výskume vizuálnej pozornosti. Prvý
z prístupov sa zameriava na využitie metód pozornosti v počítačovom videní. Táto čast’ demonštruje dôležitost’ redukcie informácií pre d’alšie
spracovanie. Hlavnou motiváciou pre druhý prístup, ktorý skúma pozornost’ v biologickom videní, je vysvetlenie procesov pozornosti pre charakteristiky biologického, špeciálne l’udského videnia (obr. 21.5). Výpočtové modely patria do prieniku týchto dvoch prístupov skúmania pozornosti. Tieto modely zahŕňajú formálny popis vizuálnej pozornosti. Hlavnou motiváciou pre ich vytvorenie je redukcia množstva informácií, ktoré
je potrebné spracovat’ [Tso11].
Modely na detekciu významných oblastí v obraze môžu byt’ kategorizované na základe vel’kého množstva rôznych príznakov a prístupov.
V [BI13] bolo preskúmaných viac ako 65 modelov na detekciu význam335
21. V IZUÁLNE VNÍMANIE A POZORNOS Ť
pozornosť
v biologickom videní
pozornosť
v počítačovom videní
data-fitting
modely
operácie záujmu
na bodoch/oblastiach
aktívne
videnie
popisné
modely
perceptuálna
organizácia
algoritmické
modely
metódy
využívajúce
predpovede
výpočtové modely pozornosti
v biologickom videní
selektívne
usmerňovanie
mapa
významných
oblastí
časové
značenie
neočakávaná
pozornosť
Obrázok 21.5: Diagram znázorňujúci výskum vizuálnej pozornosti.
ných oblastí. Následne bol navrhnutý prístup kategorizácie týchto modelov, ktorý na základe 13 rôznych faktorov rozdel’uje modely do 8 základných skupín.
Faktory rozdelenia modelov do skupín sú nasledovné:
1. Procesy zdola-nahor
2. Procesy zhora-nadol
3. Informácia o priestore a čase
4. Typ úlohy (vol’né pozorovanie scény, vizuálne vyhl’adávanie, interaktívna úloha)
5. Priestorovo alebo objektovo založené
6. Príznaky (intenzita, farba, textúra, orientácia, pohyb, tváre, detekcia horizontu, optický tok atd’.)
7. Typ modelu
8. Statické vizuálne stimuly (napr. fotografie)
9. Dynamické vizuálne stimuly (napr. videá, hry)
336
21.2. Určovanie významných oblastí v obraze
10. Syntetické stimuly (hry, virtuálne prostredie, mal’by)
11. Prírodné stimuly (fotografie, videá prírodných scén)
12. Spôsob hodnotenia modelu (Kullbackova-Leiberova divergencia,
použitie ROI, ...)
13. Použitá databáza
Faktory 1 až 8 priamo opisujú vlastnosti modelov a faktory 9 až 13 s nimi
nie sú priamo spojené.
Na základe predchádzajúcich faktorov môžeme modely rozdelit’ do
ôsmich kategórií, avšak niektoré modely môžu patrit’ aj viacerým kategóriám.
Prvou z kategórií sú kognitívne modely. Skoro všetky modely sú priamo, alebo nepriamo spojené s kognitívnymi procesmi. Jeden z najznámejších modelov patriaci do tejto kategórie [IKN98] je založený na správaní a neurónovej architektúre vizuálneho systému primátov. Tento model sa stal základom pre mnoho d’alších modelov (napr. [Dha03]) a stal sa
štandardom pre porovnávanie nových modelov. Existuje vel’mi vel’a jeho
modifikácií ako napríklad pridanie detekcie kontrastu v pohybe, slúžiaceho na detekciu významných oblastí vo videu.
Bayesovské modely (napr. [Oli+03]) využívajú kombináciu prístupu
zdola-nahor s predchádzajúcimi znalost’ami, napríklad kontext scény.
Pretože majú možnost’ učit’ sa z dát, môžu napríklad využit’ štatistiku
prírodných scén alebo iných príznakov, ktoré prit’ahujú pozornost’ pozorovatel’a.
Informačné modely sú založené na predpoklade, že určená poloha
významných oblastí slúži na maximalizáciu informácie získanej z prostredia. Tieto modely (napr. [BT05]) vyberajú tie oblasti v obraze, ktoré
nesú najviac informácií a ostatné vyradia.
Modely patriace do kategórie rozhodovacích modelov (napr. [GV04])
boli vel’mi úspešné v aplikáciách počítačového videnia, ako je klasifikácia, ked’že dosahovali vysokú presnost’ v predpovedi fixácií pohl’adu používatel’a.
Grafové modely (napr. [AL10]) využívajú techniky ako skryté Markovove modely, dynamické bayesovské siete a podmienené náhodné polia
na určenie vzt’ahov medzi náhodnými premennými. Na základe týchto
vzt’ahov sa tvoria mapy významných oblastí.
Medzi modelmi využívajúcimi spektrálnu analýzu a modelmi ostatných kategórií je vel’ký rozdiel. Kým iné modely spracovávajú obraz
337
21. V IZUÁLNE VNÍMANIE A POZORNOS Ť
(a)
(b)
(c)
(d)
(e)
(f)
Obrázok 21.6: Modely na detekciu významných oblastí: (a) Originálny obraz, Mapa významných oblastí detekovaná pomocou (b) [IKN98], (c) [HKP07],
(d) [Zha+08], (e) [EE13], (f ) [GZT10].
338
21.2. Určovanie významných oblastí v obraze
v priestorovej doméne, tento typ modelov (napr. [Ach+09]) deteguje významné oblasti v obraze vo frekvenčnej doméne.
V modelovaní vizuálnej pozornosti sa využívajú aj prístupy strojového
učenia s využitím učenia modelov na základe informácií získaných použitím sledovania pohybov očí alebo významných oblastí označených používatel’mi. V tomto prípade je dôležité podotknút’, že modely patriace
do kategórie modelov s využitím klasifikácie príznakov (napr. [Kie+09]),
nemusia byt’ založené len na prístupe zdola-nahor, ked’že využívajú príznaky, ktoré sú význačné pre prístupy zhora-nadol (napr. detekcia tvárí,
textu).
Modely, ktoré nepatria do žiadnej z predchádzajúcich kategórií tvoria skupinu iných modelov. Napríklad v [RC02] bolo predstavené meranie významnosti oblastí použitím viacnásobných príznakov založených
na koncepte teórie hier. Ďalší spôsob detekcie významných oblastí bol
postavený na základe porovnávaní s predlohou [Rao+02]. Schéma detekcie významných oblastí založená na hranách v šedotónovom obraze bola
navrhnutá v [Ros09].
Na obrázku 21.6 sú znázornené mapy významných oblastí. Každý zo
zobrazených modelov patrí do inej kategórie. Výsledné mapy významných oblastí (saliency maps) sú vel’mi rozdielne v závislosti od prístupu
a v súčasnosti nie je možné presne určit’ najlepší prístup na určovanie
významných oblastí v obraze.
21.2.3 Model pre rýchlu analýzu scény
V tejto časti si opíšeme jeden zo základných modelov [IKN98]. Bol navrhnutý v roku 1998 a slúži ako základ pre vel’ký počet modelov, rovnako ako aj referenčný model pre porovnávanie úspešnosti detekcie. Je
založený na správaní a štruktúre neurónov vizuálneho systému primátov.
Kombinuje viacúrovňové príznaky do jednej mapy významných oblastí.
Používa dynamickú neurónovú siet’, ktorá vyberá oblasti záujmu v poradí
od najvýraznejších po menej výrazné. Tento systém rieši zložitý problém
porozumenia scény výpočtovo efektívnym spôsobom.
Na vstupe sú použité farebné obrazy v rozlíšení 640×480 pixelov, z ktorých je pomocou Gaussových pyramíd vytvorených 9 obrazov rôznych
vel’kostí určených na d’alšie spracovanie. Tieto sú zmenšenou kópiou pôvodného obrazu v pomere 1 : 1 (škála 0) až 1 : 256 (škála 8).
Každý príznak je vypočítaný pomocou operácií zameraných na stred
(center-surround), ked’že vizuálne neuróny sú najcitlivejšie v malej oblasti (stred), zatial’ čo na podnety zo širšej oblasti sú neuróny menej citlivé. Zameranie na stred je v tomto modeli implementované pomocou
339
21. V IZUÁLNE VNÍMANIE A POZORNOS Ť
Vstupný obraz
Lineárne filtrovanie
Farba
Intenzita
Orientácia
Rozdiel a normalizácie založené na vzdialenosti od stredu
Mapy
príznakov
(12 máp)
(6 máp)
(24 máp)
Kombinácia a normalizácia cez rôzne veľkosti
Mapy
viditeľnosti
Lineárna kombinácia
Mapa
významných oblastí
WTA
IOR
Pozície označujúce
vizuálnu pozornosť
Obrázok 21.7: Základná architektúra modelu pre rýchlu analýzu scény.
rozdielu medzi jemnými a hrubými mierkami. V strede je reprezentácia
pixela s vel’kost’ou c ∈ {2, 3, 4}, v širšom okolí je pixel reprezentovaný vel’kost’ami s = c + δ, kde δ ∈ {3, 4}. Rozdiel medzi dvoma mapami „“ je
získaný pomocou interpolácie na jemnejšiu vel’kost’ a následným odčítaním. Na obrázku 21.7, je znázornená schéma modelu [IKN98].
Určovanie príznakov
Zo vstupného obrazu vo formáte RGB (r – červená, g – zelená, b – modrá)
je získaná mapa pre intenzitu I = (r +g +b)/3, ktorá slúži ako vstup na vytvorenie Gaussovskej pyramídy I (δ), kde δ ∈ {0, ..., 8}. Kanály r,g,b sú normalizované. Následne sú vytvorené farebné kanály: R = r − (g + b)/2 pre
červenú, G = g − (r + b)/2 pre zelenú, B = b − (r + g )/2 pre modrú a Y =
(r + g )/2 − |r − g |/2 − b pre žltú (záporné hodnoty sú nastavené na 0).
Z týchto kanálov sú vytvorené štyri Gaussovské pyramídy R(δ), G(δ), B(δ)
a Y (δ).
Neuróny cicavcov sú citlivé na náhlu zmenu intenzity ako napríklad
tmavý stred obklopený svetlým okolím, alebo svetlý stred obklopený tma340
21.2. Určovanie významných oblastí v obraze
vým okolím. Oba spomenuté typy citlivosti na zmenu intenzity model
prepája, čím vznikne 6 máp I (c, s), kde c ∈ {2, 3, 4} a s = c + δ, kde δ ∈ {3, 4}
I (c, s) = |I (c) I (s)|.
(21.1)
Druhou množinou sú mapy pre farebné kanály, ktoré sú v mozgovej kôre reprezentované pomocou systému „dvojíc oponentov“. V strede
oblasti vnímania sú neuróny stimulované jednou farbou (napr. červená)
a potláčané druhou farbou (napr. zelená), avšak v širšej oblasti je to naopak. Takto navzájom pôsobiace dvojice farieb sú červená/zelená, zelená/červená, modrá/žltá a žltá/modrá. Toto viedlo k vytvoreniu RG(c, s)
mapy pre červenú a zelenú farbu a BY (c, s) mapy pre modrú a žltú farbu
RG(c, s) = |(R(c) − G(c)) (G(s) − R(s))|,
(21.2)
BY (c, s) = |(B(c) − Y (c)) (Y (s) − B(s))|.
(21.3)
Posledná množina máp pre orientáciu je získaná z I pomocou orientovaných Gaborovych pyramíd O(δ, θ), kde δ ∈ {0, ..., 8} reprezentuje vel’kost’ a θ ∈ {0◦ , 45◦ , 90◦ , 135◦ } orientáciu. Mapy pre orientáciu predstavujú
lokálne zmeny medzi stredom a okolím
O(c, s, θ) = |O(c, θ) O(s, θ)|.
(21.4)
Pomocou týchto vzt’ahov je vytvorených 42 máp príznakov: šest’ pre intenzitu, dvanást’ pre farbu a dvadsat’štyri pre orientáciu.
Tvorba mapy významných oblastí
Pri kombinácii všetkých máp nastáva situácia, ktorá spôsobuje, že oblasti, ktoré sú vel’mi výrazné iba v niektorých z kombinovaných máp, môžu zaniknút’. Preto treba uplatnit’ normalizačný operátor N ( ), ktorého
aplikácia pozostáva z troch krokov
1. normalizovanie hodnôt mapy na pevný rozsah v rozmedzí {0, ..., M}
s ciel’om odstránit’ rozdiely medzi mapami,
2. nájdenie pozície lokálneho maxima M a vypočítanie priemernej
hodnoty m všetkých týchto maxím,
3. globálne vynásobenie mapy (M − m)2 .
V prípade, že je v mape vel’ký rozdiel, najvýraznejšia oblast’ vystúpi
do popredia. Ak je rozdiel malý, mapa neobsahuje nič výrazné a je potlačená.
341
21. V IZUÁLNE VNÍMANIE A POZORNOS Ť
Mapa pre orientáciu
Ľubovoľné jednotky
Ľubovoľné jednotky
Mapa pre intenzitu
Obrázok 21.8: Normalizačný operátor N ().
Mapy sú následne kombinované do troch „máp viditel’nosti“ pre intenzitu I , farbu C a orientáciu O s vel’kost’ou δ = 4. Tieto mapy sú získané
pomocou sčítania „⊕“, ktoré sa skladá z redukcie každej mapy na rovnakú vel’kost’ a následnom sčítaní pixel po pixeli.
Mapy pre intenzitu I a farbu C sú získané nasledovne
I = ⊕4c=2 ⊕c+4
s=c+3 N (I (c, s)),
(21.5)
C = ⊕4c=2 ⊕c+4
s=c+3 [N (RG(c, s)) + N (BY (c, s))].
(21.6)
Pre orientáciu sú najprv vytvorené štyri mapy kombináciou šiestich
máp s danou orientáciou θ, ktoré sú následne sčítané
+
,
4
c+4
O=
N ⊕c=2 ⊕s=c+3 N (O(c, s, θ)) .
(21.7)
θ∈{0◦ ,45◦ ,90◦ ,135◦ }
Tieto tri mapy sú normalizované a sčítané do výslednej mapy významných oblastí
;
1:
S = N (I ) + N (C ) + N (O) .
(21.8)
3
342
21.2. Určovanie významných oblastí v obraze
Maximum výslednej mapy v danom čase ukazuje najvýznamnejšie miesto, na ktoré by mala byt’ zameraná pozornost’.
L’udská vizuálna psychika funguje na princípe skúmania scény so zákazom vracat’ sa na už navštívené oblasti. Tento fakt je využitý v danom
modeli, kde je najprv spustená súbežná extrakcia príznakov, výstupom sú
tri mapy kontrastov pre farbu C , intenzitu I a orientáciu O. Tieto mapy sú
kombinované, čím vznikne mapa významných oblastí. Následne sa táto
mapa prechádza a pomocou kroku IOR sa postupne určujú najvýznamnejšie oblasti.
V neurónovej implementácii, bol vytvorený model mapy významných
oblastí (saliency map, SM) ako 2D vrstvy presakujúcich neurónov s vlastnost’ou „integrate-and-fire“ a s vel’kost’ou štyri. Tieto neuróny majú kapacitu, ktorá zahŕňa určitú hodnotu a prah. Ked’ je daný prah dosiahnutý,
vytvorí sa „hrot“ a kapacitný náboj je nastavený na nulu. Potom je SM
daná ako 2D vít’az berie všetko (winner take all, WTA) neurónovej sieti,
v ktorej nájdená výrazná oblast’ ostáva a ostatné sú potlačené.
Neuróny dostávajú vstupy z mapy S a sú všetky nezávislé. Potenciál
neurónov v SM patriacich najvýraznejšej oblasti vzrastá najrýchlejšie. Každý SM neurón excituje jeho príslušný WTA neurón. Všetky WTA neuróny
sa tiež vyvíjajú nezávisle od seba pokial’ jeden („vít’az“) nedosiahne prahovú hodnotu. Toto vyvolá tri súbežné mechanizmy
1. oblast’ pozornosti (focus of attention, FOA) je posunutá na miesto
vít’azného neurónu,
2. globálne sa spustí WTA a inicializuje na predvolenú hodnotu všetky
neuróny,
3. v SM sa dočasne aktivuje lokálne potlačenie v oblasti s vel’kost’ou
a umiestnením novej FOA. Takto je možná dynamická zmena FOA
prostredníctvom povolenia nasledujúcej výraznej oblasti stat’ sa „vít’azom“. Taktiež sa nevraciame na už spracované FOA.
Tento model je výpočtovo nenáročný a má jednoduchú architektúru.
Dokáže dobre detegovat’ oblasti vizuálnej pozornosti v scéne. Rýchlo určuje napríklad dopravné značky rôznych tvarov, farieb a textúru aj napriek tomu, že nebol navrhnutý na túto úlohu. Z výpočtového hl’adiska
je hlavnou výhodou tohto modelu paralelná implementácia nielen vo výpočtovo náročnej fáze extrakcie príznakov, ale aj v systéme zaostrovania
na výrazné oblasti. Využitie neurónových sietí sa ukázalo ako účinné pri
reprodukcii niektorých výkonov vizuálneho systému primátov. Jeho účinnost’ však závisí od implementovaných príznakov.
343
21. V IZUÁLNE VNÍMANIE A POZORNOS Ť
21.3
Využitie detekcie významných oblastí v obraze
Detekcia významných oblastí v obraze a sledovanie pohybu očí majú široké využitie. Sledovanie pohybu očí sa využíva aj pri zist’ovaní chorôb
pacientov, ktoré sa môžu prejavovat’ napríklad pomalšími pohybmi očí.
Detekcia významných oblastí v obraze má široké využitie v počítačovom
videní, segmentácii obrazu, detekcii objektov, dynamickom osvetl’ovaní,
interakcii medzi človekom a počítačom, kompresii obrazu, pri tvorbe náhl’adov, retargetingu. Rovnako sa využíva pri navrhovaní reklamných plagátov, dizajne webových stránok. V tejto časti si podrobne opíšeme niektoré spôsoby využitia detekcie významných oblastí v obraze.
21.3.1 Hl’adanie najlepších pohl’adov na objekty
V prípade virtuálnych múzeí a tvorbe ciest po týchto múzeách je vel’mi
užitočné nájst’ najlepšie pohl’ady na zobrazované exponáty, pomocou
ktorých môžeme čo najlepšie navrhnút’ virtuálnu prechádzku daným múzeom. Jeden zo spôsobov hl’adania najlepších pohl’adov na objekty je založený na detekcii významných oblastí v obraze [KVC13]. Hlavná myšlienka spočíva v predpoklade, že čím viac detailov môžeme vidiet’ na danom objekte, tým je pohl’ad naň lepší. V prípade, že máme viacero možných pohl’adov na daný objekt detegujeme významné oblasti na každom
z nich. Následne použijeme segmentáciu obrazu pomocou povodí (watershed). Čím viac segmentov získame, tým je daný pohl’ad na objekt detailnejší.
21.3.2 Kompresia obrazu
Existujú dva hlavné spôsoby kompresie dát: stratová a bezstratová. Stratová kompresia sa používa v prípade informácií ako napríklad zvuk a obraz. Avšak pri vel’mi vel’kej kompresii strácame potrebnú informáciu. Tento problém rieši kompresia obrazu, ktorá využíva oblasti záujmu (regoin
of interest ROI). Jej princíp spočíva v určení ROI a kódovaní týchto oblastí
s väčšou kvalitou v porovnaní s ostatnými oblast’ami v obraze. Existuje
viacero spôsobov na určovanie týchto oblastí a jedným z nich je práve
využitie detekcie významných oblastí v obraze. Jedným z najrozšírenejších spôsobov kompresie dát s použitím ROI je štandard JPEG 2000.
344
21.4. Príklad využitia: Hodnotenie kvality videa
21.4
Príklad využitia: Hodnotenie kvality videa
Video je jedným z najrozšírenejších spôsobov zachytávania vizuálnej informácie. Pre väčšinu populácie slúži na relax, zábavu, avšak vel’mi dôležitú úlohu zohráva pri komunikácii sluchovo hendikepovaných osôb.
Ked’že je vizuálna informácia rozhodujúca pre sluchovo hendikepovaných l’udí, umožňuje im komunikovat’ osobne používaním posunkovej
reči, niektoré časti hovoriacej osoby sú dôležitejšie, ako iné. Preto je informácia o týchto vizuálne relevantných častiach vel’mi dôležitá. S použitím informácie o výskyte týchto oblastí môžu byt’ navrhnuté objektívne
metódy hodnotenia kvality videa, ktoré môžu pomôct’ k skvalitneniu komunikácie nielen sluchovo hendikepovaných osôb.
Existuje vel’ké množstvo objektívnych metrík na hodnotenie kvality
videa. Medzi takéto metriky patria napríklad SSIM (Structural Similarity),
VQM (Video Quality Metrics), PSNR (Peak signal-to-noise Ratio). Všetky
zo spomínaných metód však pracujú s obrazom ako s celkom. Existuje
niekol’ko modifikácií ako napríklad metrika 3SSIM, ktorá obraz rozdelí
na základe textúry na 3 úrovne, kde každej z úrovní pridelí určitú váhu.
Avšak ani toto rozdelenie nie je dostatočné.
Zrozumitel’nost’ posunkovej reči je vel’mi dôležitá pre dorozumievanie sa sluchovo hendikepovaných osôb. Preto bola navrhnutá technika
hodnotenia kvality videa, ktorá berie do úvahy informáciu o významných
oblastiach v obraze. Pomocou tejto techniky je každému pixelu obrazu
pridelená váha s hodnotou od 0 do 255. Toto zvýšenie počtu váh na pixel
dáva vel’mi dobré výsledky v porovnaní s inými technikami [KPT12].
21.4.1 Detekcia významných oblastí
Pre pozorovatel’a sú vel’mi dôležité zmeny v nízkoúrovňových príznakoch, ako sú farba, intenzita, textúra. Avšak zo sémantického hl’adiska sa
pozorovatelia zameriavajú na osoby, tváre, objekty. Pri komunikácii sluchovo hendikepovaných sú z tohto hl’adiska najdôležitejšie ruky a tvár,
ktoré je možné spoločne určit’ pomocou detekcie pokožky.
V navrhnutom prístupe bol na detekciu významných oblastí použitý
model, ktorý je založený na kombinácii príznakov farby, intenzity, textúry
a detekcie pokožky. Základný model pozostáva z nasledovných krokov
1. Tvorba máp príznakov pre farbu, intenzitu, textúru a detekciu pokožky,
2. Tvorba mapy potlačenia,
345
21. V IZUÁLNE VNÍMANIE A POZORNOS Ť
(a)
(b)
(c)
Obrázok 21.9: Ukážka detekcie významných oblastí na účely hodnotenia kvality
videa: (a) vstupná snímka, (b) mapa významných oblastí, (c) kombinácia Y kanála
vstupnej snímky z modelu YUV s mapou významných oblastí.
3. Tvorba výslednej mapy významných oblastí.
V prvom kroku sa vytvoria mapy pre príznaky farby, intenzity, textúry
a pre detekciu pokožky. Následne sa z týchto máp vytvorí mapa potlačenia a mapa kombinácií. Mapa kombinácií vzniká súčtom všetkých máp
príznakov. Táto mapa obsahuje významné oblasti, avšak obsahuje aj nesprávne určené významné oblasti. Preto je vytvorená mapa potlačenia,
ktorá potlačí tieto nesprávne významné oblasti. Kombináciou mapy potlačenia a mapy kombinácií vzniká výsledná mapa významných oblastí
(obr. 21.9(b)).
21.4.2 Hodnotenie kvality videa
Hlavná myšlienka tohto prístupu spočíva v použití máp detegovaných
významných oblastí na určenie váh pre hodnotenie kvality videa. Pomocou tejto mapy môže byt’ každá snímka videa rozdelená na 256 rôznych
úrovní podl’a významnosti.
Prístup bol testovaný na videách zachytávajúcich osobu komunikujúcu slovenskou znakovou rečou, ktoré mali rôzne úrovne kvality. Výsledky získané pomocou objektívnych metrík hodnotenia kvality videa sa
pomocou Pearsonovho korelačného koeficientu porovnávali s hodnotením sluchovo hendikepovanými používatel’mi, ktorých úlohou bolo pre
každé video určit’ mieru zrozumitel’nosti. Základné metriky, ako SSIM,
VQM a PSNR boli modifikované použitím máp významných oblastí. Tieto
nové metriky sú označené ako S-SSIM, S-VQM a S-PSNR. V tabul’ke 21.1
sú znázornené výsledné hodnoty Pearsonovho korelačného koeficientu
pre porovnávané techniky. Čím je jeho hodnota bližšia 1, tým je daná
346
21.4. Príklad využitia: Hodnotenie kvality videa
metrika úspešnejšia. Z výsledkov zobrazených v tabul’ke je zrejmé, že použitie máp detekcie významných oblastí na určenie váh pre každý pixel
v obraze značne zvyšuje úspešnost’ daných metrík.
Objektívna
metrika
S-VQM
S-SSIM
VQM
SSIM
3SSIM
S-PSNR
PSNR
Pearsonov
korelačný koeficient
0,98447
0,97869
0,97624
0,964678
0,93052
0,91398
0,91
Poradie
1
2
3
4
5
6
7
Tabul’ka 21.1: Porovnanie objektívnych metrík na ohodnocovanie kvality videa
pomocou Pearsonovho korelačného koeficientu
347
Zoznam použitej literatúry
[Ach+09]
R. Achanta a kol. „Frequency-tuned Salient Region Detection“.
IEEE International Conference on Computer Vision and Pattern Recognition (CVPR 2009). 2009, str. 1597–1604.
[AF13]
A. Al-Rahayfeh a M. Faezipour. „Eye Tracking and Head Movement Detection: A State-of-Art Survey“. IEEE Journal of Translational Engineering in Health and Medicine 1 (2013).
[AL10]
T. Avraham a M. Lindenbaum. „Esaliency (Extended Saliency):
Meaningful Attention Using Stochastic Image Modeling“. IEEE
Transactions on Pattern Analysis and Machine Intelligence 32.4
(2010), str. 693–708.
[BI13]
A. Borji a L. Itti. „State-of-the-Art in Visual Attention Modeling“. IEEE Transactions on Pattern Analysis and Machine Intelligence 35.1 (2013), str. 185–207.
[BT05]
N. D. B. Bruce a J. K. Tsotsos. „Saliency Based on Information
Maximization.“ NIPS. 2005.
[BVM08]
L. Busin, N. Vandenbroucke a L. Macaire. „Color spaces and
image segmentation“. Advances in Imaging and Electron Physics 151 (2008), str. 65–168.
[CCM03]
A. Chalmers, K. Cater a D. Maflioli. „Visual Attention Models
for Producing High Fidelity Graphics Efficiently“. Proceedings
of the 19th Spring Conference on Computer Graphics. SCCG
’03. Budmerice, Slovakia: ACM, 2003, str. 39–45.
348
Zoznam použitej literatúry
[CIE04]
CIE. 15: Technical Report: Colorimetry, 3rd edition. Tech. spr.
International Commission on Illumination, 2004.
[CIE13]
CIE. Slovenský národný komitét medzinárodnej komisie pre
osvetl’ovanie. 2013.
[CK07]
Y.-W. Chen a K. Kubo. „A Robust Eye Detection and Tracking
Technique Using Gabor Filters“. IIH-MSP. IEEE, 2007, str. 109–
112.
[Dém13]
A. Démuth. Teórie percepcie. Filozofická fakulta Trnavskej univerzity v Trnave, 2013.
[Dha03]
L. I. N. Dhavale. „Realistic avatar eye and head animation
using a neurobiological model of visual attention“. Proc. SPIE.
SPIE Press, 2003, str. 64–78.
[Dob05]
M. Dobeš. Základy neuropsychológie. Spoločenskovedný ústav
SAV, Košice, 2005.
[Ebn07]
M. Ebner. Color Constancy. Wiley & Sons, Inc., 2007.
[EE13]
E. Erdem a A. Erdem. „Visual saliency estimation by nonlinearly integrating features using region covariances“. Journal of
Vision 13.4 (2013), str. 1–20.
[Fai05]
M. D. Fairchild. Color Appearance Models. Wiley-IS&T, Chichester, UK, 2005.
[FBH97]
H. S. Fairman, M. H. Brill a H. Hemmendinger. „How the CIE
1931 color-matching functions were derived from Wright-Guild
data“. Color Research & Application 22.1 (1997), str. 11–23.
[FP02]
D. A. Forsyth a J. Ponce. Computer Vision: A Modern Approach. Prentice Hall Professional Technical Reference, 2002.
[FR98]
A. Ford a A. Roberts. Colour Space Conversions. 1998.
[Gev+12]
T. Gevers a kol. Color in Computer Vision: Fundamentals and
Applications. Wiley & Sons, Inc., 2012.
[Gev01]
T. Gevers. „Color-Based Retrieval“. Advances in Computer Vision and Pattern Recognition. Ed. M. S. Lew. Springer, 2001,
str. 11–49.
[Gol08]
B. E. Goldstein. Cognitive Psychology: Connecting Mind, Research and Everyday Experience. Belmont: Thomson Wadsworth,
2008.
349
Z OZNAM POUŽITEJ LITERATÚRY
350
[Gra53]
H. Grassmann. „Theory of Compound Colors“. Annalen der
Physilc und Chemie 19 (1853), str. 53–60. Translation published in Philosophical Magazine, 4, pp. 254-264 (1854). Reprinted in Selected Papers in Colorimetry – Fundamentals,
D. L. MacAdam, Editor, SPIE Milestone Series, Volume MS77,
(1993).
[GV04]
D. Gao a N. Vasconcelos. „Discriminant saliency for visual recognition from cluttered scenes“. In Proc. NIPS. 2004, str. 481–
488.
[GW08]
R. C. Gonzalez a R. E. Woods. Digital Image Processing. Tretie vyd. Prentice Hall, 2008.
[GZT10]
S. Goferman, L. Zelnik-manor a A. Tal. „Context-aware saliency detection“. in [IEEE Conf. on Computer Vision and Pattern Recognition. 2010.
[HKP07]
J. Harel, C. Koch a P. Perona. „Graph-based visual saliency“.
ADVANCES IN NEURAL INFORMATION PROCESSING SYSTEMS 19. MIT Press, 2007, str. 545–552.
[Hor89]
P. Horňák. Svetelná technika. ALFA, 1989.
[HRC05]
Y. Hu, D. Rajan a L.-T. Chia. „Adaptive local context suppression of multiple cues for salient visual attention detection.“
ICME. IEEE, 2005, str. 346–349.
[IKN98]
L. Itti, C. Koch a E. Niebur. „A Model of Saliency-Based Visual Attention for Rapid Scene Analysis“. IEEE Trans. Pattern
Anal. Mach. Intell. 20.11 (nov. 1998), str. 1254–1259.
[Jud+09]
T. Judd a kol. „Learning to Predict Where Humans Look“. IEEE
International Conference on Computer Vision (ICCV). 2009.
[KBW08]
T. Kocejko, A. Bujnowski a J. Wtorek. „Eye mouse for disabled“. Human System Interactions, 2008 Conference on. Máj 2008,
str. 199–202.
[Kie+09]
W. Kienzle a kol. „Center-surround patterns emerge as optimal predictors for human saccade targets“. en. Journal of Vision 9.5:7 (máj 2009), str. 1–15.
[KPT12]
J. Kucerova, J. Polec a D. Tarcsiova. „Video Quality Assessment using Visual Attention Approach for Sign Language“.
6.5 (2012), str. 181–186.
Zoznam použitej literatúry
[KVC13]
J. Kucerova, I. Varhanikova a Z. Cernekova. „Best View Methods Suitability for Different Types of Objects“. Proceedings
of the 28th Spring Conference on Computer Graphics. SCCG
’12. Budmerice, Slovakia: ACM, 2013, str. 55–61.
[Mus10]
V. Muszková. „Fyziologické a Psychologické Princípy Zrakovej
Percepcie“. Diplomová práca. Masarykova univerzita Brno,
Lékařská fakulta, 2010.
[Oic07]
B. Oicherman. „Effects of colorimetric additivity failure and
of observer metamerism on cross-media colour matching“.
Dizertačná práca. The University of Leeds UK, Department
of Colour Science, 2007.
[Oli+03]
A. Oliva a kol. Top-Down Control of Visual Attention in Object
Detection. 2003.
[Poy97]
C. Poynton. Frequently Asked Questions about Color. 1997.
[PP10]
M. Petrou a C. Petrou. Image Processing: The Fundamentals.
Druhé vyd. Wiley & Sons, Inc., 2010.
[Pra07]
W. K. Pratt. Digital Image Processing. Štvrté vyd. Wiley & Sons,
Inc., 2007.
[Rao+02]
R. P. Rao a kol. „Eye movements in iconic visual search“. Vision Research 42 (2002), str. 1447–1463.
[RC02]
O. Ramström a H. I. Christensen. „Visual Attention Using Game
Theory.“ Biologically Motivated Computer Vision. Ed. H. H.
Bülthoff a kol. Zv. 2525. Lecture Notes in Computer Science.
Springer, 2002, str. 462–471.
[Reb10]
Rebrová, K. and Takáč, M. „Vnímanie a pomenovávanie farieb a farebných kategórií“. Umelá inteligencia a kognitívna
veda II. Ed. V. Kvasnička a kol. Bratislava, 2010, str. 411–436.
[RF95]
E. Ružický a A. Ferko. Počítačová Grafika a Spracovanie Obrazu. Sapientia, 1995.
[Ros09]
P. L. Rosin. „A simple method for detecting salient regions.“
Pattern Recognition 42.11 (2009), str. 2363–2371.
[Rus11]
J. C. Russ. The Image Processing Handbook. 6. vyd. CRC Press,
2011.
[SB59]
W. S. Stiles a J. M. Burch. „N.P.L. colour-matching investigation: final report (1958)“. Optica Acta: International Journal
of Optics 6.1 (1959), str. 1–26.
351
[SH11]
R. Shapley a M. J. Hawken. „Color in the Cortex: single- and
double-opponent cells“. Vision Research 51.7 (2011), str. 701–
717.
[SHB07]
M. Sonka, V. Hlavac a R. Boyle. Image Processing, Analysis,
and Machine Vision. Tretie vyd. Cengage Learning, 2007.
[Ska93]
V. Skala. Světlo, barvy a barevné systémy v počítačové grafice.
Advances in Computer Vision and Pattern Recognition. Academia Praha, 1993.
[ŠMS11]
A. Štrba, V. Mesároš a D. Senderáková. SVETLO – vlny, lúče,
fotóny. Enigma publishing s.r.o., Nitra, 2011.
[SS01]
L. G. Shapiro a G. C. Stockman. Computer Vision. Prentice
Hall, 2001.
[Tra91]
D. Travis. Effective Color Displays. Theory and Practice. Academic Press, 1991.
[Tso11]
J. K. Tsotsos. A Computational Perspective on Visual Attention. MIT Press, 2011, str. I–XVI, 1–308.
[Umb10]
S. E. Umbaugh. Digital Image Processing and Analysis: Human and Computer Vision Applications with CVIPtools. Druhé
vyd. CRC Press, 2010.
[VV11]
M. Vik a M. Viková. „Odchylky od platnosti Grassmanových
zákonů – problém současné kolorimetrie?“: Světlo 1 (2011),
str. 52–54.
[WS00]
G. Wyszecki a W. S. Stiles. Color Science, Concepts and Methods, Quantitative Data and Formulae. Druhé vyd. Wiley &
Sons, Inc., 2000.
[Žár+04]
J. Žára a kol. Moderní počítačová grafika. Druhé vyd. Computer Press, Brno, 2004.
[Zha+08]
L. Zhang a kol. „SUN: A Bayesian framework for saliency using
natural statistics.“ J Vis 8.7 (2008), str. 32.1–20.
Č AS Ť V
D ODATKY
D ODATOK
A
Vybrané témy
z pravdepodobnosti
A.1
Pravdepodobnost’
Pravdepodobnost’ môžeme definovat’ rôznymi spôsobmi.
Klasická (Laplaceova) definícia. P (A) = NNA . Pravdepodobnost’ je daná
relatívnou početnost’ou výsledku A v N pokusoch.
Limitná definícia. P (A) = limN→∞ NNA . Pravdepodobnost’ intuitívne chápeme ako relatívnu početnost’ v nekonečne vel’kom počte pokusov.
Axiomatická (Kolmogorovova) definícia. Pole javov A je σ-algebra na
Ω, t. j. systém podmnožín priestoru Ω obsahujúci Ω a uzavretý voči
doplnku a zjednoteniu
Ω∈A,
C
A∈A ⇒ A ∈A,
!
An ∈ A .
(∀n ∈ N : A n ∈ A ) ⇒
(A.1)
(A.2)
(A.3)
n∈N
Pravdepodobnost’ je funkcia P : A → ⟨0, 1⟩, ktorá spĺňa nasledovné
vlastnosti
P(
P (Ω) = 1,
!
An ) =
P (A n ),
n∈N
n∈N
ak javy A n sú po dvoch disjunktné.
354
(A.4)
(A.5)
A.1. Pravdepodobnost’
Usporiadaná trojica (Ω, A , P ) tvorí tzv. pravdepodobnostný priestor.
Funkcia P môže predstavovat’ mieru na σ-algebre A . Ostatné definície sú
špeciálnymi prípadmi axiomatickej definície, v praxi sa však pri výpočte
pravdepodobnosti často využívajú.
Množina všetkých možných výstupov náhodnej premennej sa nazýva
výberový priestor. Jednotlivé (rovnako pravdepodobné) prvky sa nazývajú elementárne javy. Každú podmnožinu výberového priestoru nazveme (náhodný) jav. Jav môže byt’ diskrétny (napr. hod kockou alebo mincou, počet detí v rodine. . .) alebo spojitý (napr. rozmer nejakého výrobku,
výška hráčov basketbalového mužstva. . .).
Nech A je jav reprezentujúci hod kockou. Potom výberový priestor
je 1, 2, . . . 6 a elementárne javy sú počty bodov na stranách kocky. Javom
môže byt’ „padne párne číslo“.
Rozkladom výberového priestoru nazývame súbor vzájomne disjunktných neprázdnych javov, ktorých zjednotením je celý výberový priestor.
Opačný jav k javu A, t. j. AC , sa nazýva aj jav doplnkový alebo komplementárny. Zrejme A a AC je najjednoduchší rozklad. Pre každý jav platí
P (AC ) = 1 − P (A).
Prienik A∩B nastáva práve vtedy, ked’ nastanú oba javy A a B . Pravdepodobnost’ P (A ∩ B) sa nazýva vzájomná alebo združená pravdepodobnost’ a označuje sa aj P (A, B).
Zjednotenie A ∪B nastáva práve vtedy, ked’ nastane aspoň jeden z javov A a B.
Vlastnosti pravdepodobnosti
Nech A, B ∈ A , potom
P () = 0
(A.6)
C
P (A ) = 1 − P (A)
(A.7)
A ⊆ B ⇒ P (A) ≤ P (B)
(A.8)
P (B\A) = P (B) − P (A ∩ B)
(A.9)
A ⊂ B ⇒ P (B\A) = P (B) − P (A)
(A.10)
P (A ∪ B) = P (A) + P (B) − P (A ∩ B)
(A.11)
A ∩ B = ⇒ P (A ∪ B) = P (A) + P (B)
(A.12)
C
C
C
(A.13)
C
C
C
(A.14)
P (A ∪ B) = 1 − P ((A ∪ B) ) = 1 − P (A ∩ B )
P (A ∩ B) = 1 − P ((A ∩ B) ) = 1 − P (A ∪ B )
355
A. V YBRANÉ TÉMY Z PRAVDEPODOBNOSTI
A.1.1 Nezávislost’ javov, podmienená pravdepodobnost’
Podmienená pravdepodobnost’ P (A|B) je definovaná vzt’ahom
P (A|B) =
P (A ∩ B)
,
P (B)
(A.15)
kde P (B) = 0. Podmienená pravdepodobnost’ hovorí o pravdepodobnosti,
že nastane jav A za podmienky, že nastal jav B. Z tejto definície vyplýva
P (A ∩ B) = P (A|B).P (B) = P (B|A).P (A).
Javy A a B nazveme nezávislé, ak platí P (A ∩ B) = P (A).P (B). Pre nezávislé javy preto platí P (A|B) = P (A). To znamená, že to, či nastane jav
B neovplyvní pravdepodobnost’, že nastane jav A. A platí to aj naopak
P (B|A) = P (B).
Príklad 1.1: Aká je pravdepodobnost’, že pri hode mincou padne hlava
dvakrát za sebou?
Pri férovej minci je pravdepodobnost’, že padne hlava 0,5. Výsledok druhého hodu (B) je nezávislý od výsledku prvého hodu (A). Preto výsledná
pravdepodobnost’ P (A ∩ B) = P (A).P (B) = 0, 5.0, 5 = 0, 25.
Príklad 1.2: Z krabice, v ktorej sa nachádza 10 červených a 5 modrých
ponožiek, vytiahneme naslepo postupne dve ponožky. Aká je pravdepodobnost’, že sme ako druhú vytiahli modrú ponožku?
V tomto prípade sa nejedná o nezávislé javy, lebo vytiahnutím prvej ponožky sa zmení počet kusov v krabici a tým aj pravdepodobnost’ vytiahnutia druhej ponožky. Označme si A jav, ked’ bola vytiahnutá ako prvá
červená a B, ked’ modrá ponožka. Jav C je vytiahnutie modrej ponožky
v druhom t’ahu. Potom platí P (A) = 10/15 a P (B) = 5/15. Podmienené
pravdepodobnosti sú nasledovné P (C |A) = P (C ∩ A)/P (A) a P (C |B) =
P (C ∩ B)/P (B). Po vytiahnutí prvej ponožky zostane v krabici už len 14
kusov. Ked’ sme vytiahli červenú ponožku, zostalo 9 červených a 5 modrých ponožiek, a preto P (C |A) = 5/14. Ked’ sme vytiahli modrú, zostalo
10 červených a 4 modré ponožky, preto P (C |B) = 4/14. Výsledná pravdepodobnost’, že v druhom t’ahu vytiahneme modrú ponožku je P (C ) =
P ((C ∩ A)∪(C ∩ B)), pretože bud’ vytiahneme červenú a modrú (C ∩ A)
alebo (∪) dve modré (C ∩ B). Tieto javy sú nezlučitel’né (nemôžu nastat’
oba naraz), a preto P (C ) = P (C ∩ A)+P (C ∩ B). Z definície podmienenej
pravdepodobnosti potom vyplýva
P (C ) = P (C |A).P (A) + P (C |B).P (B) =
5 10
4 5
7
1
. + .
=
= .
14 15 14 15 21 3
(A.16)
Teda pravdepodobnost’, že v druhom t’ahu vytiahneme modrú ponožku,
je 1/3.
356
A.1. Pravdepodobnost’
M
Nech {A i }i=1
je rozkladom priestoru Ω (teda
pravdepodobnost’ javu B je daná
M
P (B) =
M
i=1 P (A i ) = 1).
P (B|A i )P (A i ).
Potom
(A.17)
i=1
Je zrejmé, že l’ubovolný jav B ∈ Ω je zjednotením javov (B ∩ A 1 ),
"M
. . . (B ∩ A M ), čiže B = i=1
(B ∩ A i ). Tieto javy sú disjunktné, preto P (B) =
M
P
(B
∩
A
).
Z
definície
podmienenej
pravdepodobnosti (A.15) potom
i
i=1
vyplýva (A.17).
M
V reálnych aplikáciách nás často zaujíma, ktorý z javov {A i }i=1
viedol
k javu B. Hl’adáme teda P (A k |B). Z (A.15) a (A.17) vieme, že
P (A k |B) =
=
P (B|A k ).P (A k )
=
P (B)
P (B|A k ).P (A k )
M
i=1 P (B|A i )P (A i )
(A.18)
.
(A.19)
Vzt’ah (A.19) sa nazýva Bayesov vzorec a udáva, ako zistíme aposteriórnu
pravdepodobnost’ javu A k za predpokladu, že nastal jav B (P (A k |B)), ak
M
pre javy {A i }i=1
poznáme apriórnu pravdepodobnost’ javov (P (A i )) a podmienené pravdepodobnosti P (B|A i ).
Príklad 1.3: Na konci výrobnej linky je tester, ktorý s pravdepodobnost’ou 0,999 vyradí chybný výrobok. S pravdepodobnost’ou 0,01 však vyradí aj kvalitný výrobok. Kazivost’ výrobkov je 0,1 (jeden z desiatich výrobkov je chybný). Aká je pravdepodobnost’, že vyradený výrobok je skutočne
chybný?
Priestor výrobkov rozložíme na chybné P (A ch ) = 0, 1 a kvalitné P (A k v ) =
0, 9. Vyradenie výrobku je jav B, pričom podmienené pravdepodobnosti
sú P (B|A ch ) = 0, 999 a P (B|A k v ) = 0, 01. Pomocou Bayesovho vzorca hl’adáme pravdepodobnost’
P (B|A ch ).P (A ch )
=
P (B|A ch )P (A ch ) + P (B|A k v )P (A k v )
0, 999.0, 1
.
=
0, 999.0, 1 + 0, 01.0, 9
P (A ch |B) =
(A.20)
Pravdepodobnost’, že vyradený výrobok je skutočne chybný, je približne
0,9174.
357
A. V YBRANÉ TÉMY Z PRAVDEPODOBNOSTI
1
P(X≥b)
F(d)
P(b≤X<d)
P(X=b)
P(X<b)
F(b)
0
a
b
c
d
e
x
Obrázok A.1: Distribučná funkcia diskrétnej premennej.
A.2
Náhodná premenná
Pojmom náhodná premenná (veličina) označujeme funkciu, ktorej hodnota je určená výsledkom náhodného pokusu. Prirad’uje číselnú hodnotu každému elementárnemu javu.
Pre náhodnú premennú X : Ω → R platí, že množina {ω ∈ Ω|X (ω) < x}
je náhodný jav.
Hodnota funkcie sa nedá pred uskutočnením pokusu určit’, ale dokážeme ju opísat’ rozdelením pravdepodobnosti. Rozdelenie pravdepodobnosti náhodnej premennej definovanej na pravdepodobnostnom priestore (Ω, A , P ) opisujeme pomocou distribučnej funkcie F : R → ⟨0, 1⟩ definovanej ako
F (x) = P (X < x).
(A.21)
P (X < x) znamená pravdepodobnost’, s akou náhodná premenná X nadobúda hodnotu menšiu ako x. Distribučná funkcia je neklesajúca a zl’ava spojitá a platí limx→−∞ F (x) = 0 a limx→∞ F (x) = 1.
Náhodná premenná môže byt’ diskrétna alebo spojitá. Distribučná
funkcia pre diskrétne premenné je „schodovitá“ funkcia ako na obr. A.1.
Príklad distribučnej funkcie spojitej premennej je na obr. A.2.
Vzt’ahy medzi pravdepodobnost’ou a distribučnou funkciou sú nasledovné (ako vidno na obrázkoch A.1a A.2)
∀a < b; a, b ∈ R
P (X ≥ a) = 1 − F (a) =
∞
f (x)dx
b
f (x)dx
P (a ≤ X < b) = F (b) − F (a) =
a
*
limx→a + F (x) − F (a), diskrétne premenné
P (X = a) =
0,
spojité premenné.
358
(A.22)
a
(A.23)
(A.24)
A.3. Číselné charakteristiky náhodnej premennej
1
P(X≥b)
F(d)
P(b≤X<d)
F(b)
P(X<b)
0
a
b
c
d
x
e
Obrázok A.2: Distribučná funkcia spojitej premennej.
0.4
1
0.8
F(x)
P(x)
0.3
0.2
0.6
0.4
0.1
0
1
0.2
2
3
x
4
0
−2
5
(a) Pravdepodobnostná funkcia.
0
2
x
4
6
8
(b) Distribučná funkcia.
Obrázok A.3: Príklad pravdepodobnostnej a zodpovedajúcej distribučnej funkcie
diskrétnej premennej.
Distribučnú funkciu diskrétnej premennej určíme ako
F (x) =
P (xi )
x i <x
a pre spojitú premennú
F (x) =
(A.25)
x
−∞
f (t )dt ,
(A.26)
kde f (t ) je hustota rozdelenia pravdepodobnosti (ekvivalent pravdepodobnostnej =
funkcie P (x)). Hustota pravdepodobnosti je nezáporná fun∞
kcia a platí −∞ f (x)dx = 1, limx→−∞ f (x) = 0 a limx→∞ f (x) = 0. Tieto
vzt’ahy opisujú obrázky A.3 a A.4.
A.3 Číselné charakteristiky náhodnej premennej
Charakterizujú vlastnosti náhodnej premennej a umožňujú porovnávat’
premenné. V d’alšom texte opíšeme len charakteristiky spojitých premenných. Pre diskrétne premenné platia obdobné vzt’ahy.
359
A. V YBRANÉ TÉMY Z PRAVDEPODOBNOSTI
0.4
1
0.8
F(x)
f(x)
0.3
0.2
0.6
0.4
0.1
0
−4
0.2
−2
x
0
2
0
−4
4
(a) Hustota rozdelenia pravdepodobnosti.
−2
0
x
2
4
(b) Distribučná funkcia.
Obrázok A.4: Vzt’ah hustoty rozdelenia pravdepodobnosti a zodpovedajúcej distribučnej funkcie spojitej premennej.
A.3.1 Momenty
Začiatočný moment r-tého rádu je definovaný ako
∞
x r f (x)dx.
μr = E(X r ) =
−∞
(A.27)
Okrem začiatočných momentov sa používajú aj centrálne momenty,
kde od hodnôt pôvodných dát odčítame ich priemer
∞
μr = E((X − E(X ))r ) =
(x − E(X ))r f (x)dx.
(A.28)
−∞
Využívajú sa najmä centrálne momenty druhého, tretieho a štvrtého rádu.
Stredná hodnota
Vyjadruje hodnotu, „okolo“ ktorej sa sústred’ujú všetky hodnoty náhodnej premennej. Nazýva sa aj priemer (expected value, mean), značí sa
E(X ) alebo μ
μ=
∞
−∞
x f (x)dx.
(A.29)
Vidíme, že začiatočný moment prvého rádu je vlastne priemer.
Rozptyl
Rozptyl (tiež variancia, disperzia, stredná kvadratická odchýlka) je centrálny moment druhého rádu a vyjadruje variabilitu hodnôt dát okolo
strednej hodnoty. Označuje sa σ2 alebo V (X ), prípadne Var(X )
∞
(x − E(X ))2 f (x)dx.
(A.30)
Var(X ) =
−∞
360
A.3. Číselné charakteristiky náhodnej premennej
(a) Pozitívne zošikmené
rozdelenie.
(b) Symetrické rozdelenie.
(c) Negatívne zošikmené
rozdelenie.
Obrázok A.5: Šikmost’.
Pri praktických výpočtoch sa používa vzt’ah
Var(X) = E(X 2 ) − (E(X ))2 .
(A.31)
Smerodajná (alebo štandardná) odchýlka označovaná σ alebo Std(X )
je daná druhou odmocninou rozptylu
3
(A.32)
Std(X) = Var(X ).
Šikmost’
Podiel tretieho centrálneho momentu a tretej mocniny smerodajnej odchýlky vyjadruje mieru symetrie rozdelenia pravdepodobnosti vzhl’adom
na normované (štandardné) normálne rozdelenie N (0, 1) (pozri kapitolu
A.6)
μ
α3 = 33 .
(A.33)
σ
Podl’a hodnoty, akú nadobúda α3 hovoríme o symetrickom (α3 = 0),
negatívne (α3 < 0) alebo pozitívne (α3 > 0) zošikmenom rozdelení (obr.
A.5).
Špicatost’
Podiel štvrtého centrálneho momentu a štvrtej mocniny smerodajnej odchýlky vyjadruje relatívnu plochost’ rozdelenia pravdepodobnosti vzhl’adom na normované (štandardné) normálne rozdelenie N (0, 1)
α4 =
μ4
σ4
.
(A.34)
Pre N (0, 1) je α4 = 3, preto sa používa normovaná hodnota α4 − 3
a podl’a tejto hodnoty hovoríme o normálnej (0), menšej (< 0) alebo väčšej (> 0) špicatosti rozdelenia (obr. A.6).
361
A. V YBRANÉ TÉMY Z PRAVDEPODOBNOSTI
>0
0
<0
Obrázok A.6: Normálna (0), menšia (< 0) a väčšia (> 0) špicatost’ rozdelenia.
A.3.2 Kvantily
Kvantil Q p je hodnota, pre ktorú platí, že pravdepodobnost’, že náhodná
veličina X má hodnotu menšiu ako Q p , je 100p %
P (X < Q p ) = p.
(A.35)
Kvantily tvoria vlastne inverznú funkciu k distribučnej funkcii. Pre
spojité rozdelenie je kvantil Q p číslo, pre ktoré platí
F (Q p ) = p.
(A.36)
Hodnoty kvantilov jednotlivých rozdelení nájdeme v štatistických tabul’kách. Hodnoty charakterizujú polohu dát. Ich rozdiel (rozpätie) používame na charakteristiku variability.
Niektoré dôležité kvantily majú vlastné mená.
Medián
Medián je kvantil deliaci súbor na dve polovice. Je to teda Q 0,5 . Znamená
to, že polovica hodnôt dát je menšia a polovica väčšia ako medián.
Kvartil
Kvartily delia súbor na štvrtiny. Sú to Q 0,25 (dolný kvartil), Q 0,5 a Q 0,75
(horný kvartil). Rozdiel horného a dolného kvartilu určuje medzikvartilové rozpätie Q 0,75 − Q 0,25 , ktoré je znázornené na obrázku A.7.
Decil
Decily delia súbor na desatiny. Sú to Q 0,1 , Q 0,2 ,. . . Q 0,9 . Medzidecilové rozpätie je rozdiel Q 0,9 − Q 0,1 .
Percentil
Percentily delia súbor na stotiny. Sú to Q 0,01 , Q 0,02 ,. . . Q 0,99 . Medzipercentilové rozpätie je rozdiel Q 0,99 − Q 0,01 .
362
A.4. Náhodné vektory
Q0,5 - medián
Obrázok A.7: Medzikvartilové rozpätie.
modus
priemer
modus
priemer
modus
medián
priemer
medián
(a) Pozitívne zošikmené
rozdelenie.
medián
(b) Symetrické rozdelenie.
(c) Negatívne zošikmené
rozdelenie.
Obrázok A.8: Modus, medián a priemer pre rôzne zošikmené rozdelenia pravdepodobnosti.
A.3.3 Modus
Modus je najčastejšie sa opakujúca hodnota v súbore. Vzt’ah medzi priemerom, modusom a mediánom je znázornený na obrázku A.8.
A.4
Náhodné vektory
Náhodnú veličinu chápeme ako výsledok náhodného pokusu. Takýto výsledok však nemusí byt’ opísaný jedným číslom, ale usporiadanou n-ticou
čísiel. Príkladom je kontrola produkcie v potravinárskom priemysle, kde
napríklad pri mäsových výrobkoch sa pri meraní zist’uje množstvo soli,
obsah vody, obsah tuku, obsah dusitanov. Čiže každé meranie je reprezentované usporiadanou štvoricou.
Podobne ako rozdelenie pravdepodobnosti náhodnej premennej definujeme združené rozdelenie pravdepodobnosti náhodného vektora. Pre
N -rozmerný vektor (X 1 , . . . X N ) platí
F (x1 , . . . x N ) = P ((X 1 < x1 )& . . . &(X N < x N )) =
= P (X 1 < x1 , . . . X N < x N ).
(A.37)
363
A. V YBRANÉ TÉMY Z PRAVDEPODOBNOSTI
Združenú distribučnú funkciu diskrétneho náhodného vektora určíme
ako
F (x1 , . . . x N ) =
...
X 1 <x 1
X N <x N
P (x1 , . . . x N )
(A.38)
a pre spojitú premennú
F (x1 , . . . x N ) =
x 1
−∞
x N
...
−∞
f (t1 , . . . t N )dt1 . . . dt N ,
(A.39)
kde f (t1 , . . . t N ) je hustota rozdelenia pravdepodobnosti (ekvivalent pravdepodobnostnej funkcie P (x1 , . . . x N )).
A.4.1 Marginálne rozdelenie pravdepodobnosti
Pri náhodných vektoroch (v oblasti počítačového videnia a klasifikácie sú
to vektory príznakov) potrebujeme často poznat’ aj marginálne rozdelenie jednotlivých zložiek vektora. Marginálne rozdelenie zložky i vypočítame pomocou združenej hustoty pravdepodobnosti nasledovne
F i (xi ) = P (X 1 < ∞, . . . X i < xi , . . . X N < ∞) =
∞
∞ xi
...
...
f (t1 , . . . t N )dt1 . . . dt N .
=
−∞
−∞
−∞
(A.40)
Zložky náhodného vektora sú vzájomne nezávislé, práve vtedy ked’
F (x1 , . . . x N ) = F 1 (x1 ) . . . F N (x N ).
(A.41)
A.5 Číselné charakteristiky náhodného vektora
Aj náhodné vektory opisujeme číselnými charakteristikami. Rodel’ujeme
ich na skalárne, vektorové a maticové charakteristiky.
A.5.1 Združené momenty
Obecný združený moment (r 1 , . . . r N )-tého rádu je definovaný ako
r
μr 1 ,...r N = E(X 1r 1 X 2r 2 . . . X NN ) =
∞ ∞
r
r
...
x11 . . . x NN f (x1 , . . . x N )dx1 . . . dx N .
=
−∞
364
−∞
(A.42)
A.5. Číselné charakteristiky náhodného vektora
Ked’ od hodnôt dát odčítame priemer, môžeme vypočítat’ centrálny
združený moment (r 1 , . . . r N )-tého rádu definovaný ako
μr 1 ,...r N = E((X 1 − E(X 1 ))r 1 (X 2 − E(X 2 ))r 2 . . . (X N − E(X N ))r N ) =
∞ ∞
=
...
(x1 − E(X 1 ))r 1 . . . (x N − E(X N ))r N f (x1 , . . . x N )dx1 . . . dx N .
−∞
−∞
(A.43)
Príkladom použitia momentov v 2D úlohách počítačového videnia sú
škálovo invariantné momenty (i , j )-teho rádu
ηi,j =
:
μi,j
1+
μ0,0
i+j
2
;
(A.44)
a Huove momenty, ktoré sú škálovo, translačne aj rotačne invariantné
I 1 =η2,0 + η0,2
I 2 =(η2,0 − η0,2 )2 + 4η21,1
(A.45)
....
Zvyšné Huove momenty sú uvedené v [Hu62].
A.5.2 Marginálne charakteristiky
Marginálne charakteristiky opisujú jednotlivé zložky náhodného vektora.
Opíšeme si strednú hodnotu a rozptyl, momenty vyšších rádov získame
obdobne.
Stredná hodnota
Stredná hodnota E(X) náhodného vektora X je vektor stredných hodnôt
jednotlivých zložiek
E(X) = (E(X 1 ), . . . E(X N )) .
(A.46)
Stredná hodnota E(X) je vlastne vektorom začiatočných združených
momentov (r 1 , . . . r N )-tého rádu, kde jeden z indexov r i je rovný 1 a ostatné sú nulové.
365
A. V YBRANÉ TÉMY Z PRAVDEPODOBNOSTI
Rozptyl
Podobne, rozptyl Var(X) náhodného vektora X je vektor rozptylov jednotlivých zložiek
Var(X) = (Var(X 1 ) . . . Var(X N )) .
(A.47)
Rozptyl Var(X) je vlastne vektorom centrálnych združených momentov (r 1 , . . . r N )-tého rádu, kde jeden z indexov r i je rovný 2 a ostatné sú
nulové.
A.5.3 Kovariancia
Vzt’ah medzi dvomi náhodnými veličinami X i , X j určuje kovariancia
Cov(X i , X j ) = E((X i − E(X i ))(X j − E(X j )),
(A.48)
a teda centrálny moment (r 1 , . . . r N )-tého rádu, kde indexy r i = r j = 1 a ostatné sú nulové.
Kladná kovariancia hovorí, že hodnoty náhodných premenných sa
pohybujú rovnakým smerom (zvýšením jednej sa zvýši aj druhá).
Z vlastností kovariancie vyplýva aj vzt’ah, ktorý sa používa na praktický výpočet jej hodnoty
Cov(X i , X j ) = E(X i X j ) − E(X i )E(X j ).
(A.49)
Cov(X i , X i ) = E(X i2 ) − (E(X i ))2 = Var(X i )
(A.50)
Cov(X i , X j ) = Cov(X j , X i ).
(A.51)
Ďalej platí
a
Na opis vzt’ahov jednotlivých zložiek náhodného vektora X sa používa
kovariančná matica Σ, kde
Σi j = Cov(X i , X j ) = E((X i − μi )(X j − μ j )),
(A.52)
a teda
⎡
Var(X 1 )
⎢ Cov(X , X )
2
1
⎢
Σ=⎢
..
⎢
⎣
.
Cov(X N , X 1 )
366
Cov(X 1 , X 2 )
Var(X 2 )
..
.
Cov(X N , X 2 )
···
···
..
.
···
⎤
Cov(X 1 , X N )
Cov(X 2 , X N )⎥
⎥
⎥.
..
⎥
⎦
.
Var(X N )
(A.53)
A.6. Normálne rozdelenie
0.2
0.15
0.1
0.05
0
4
2
y
0
−2
−4 −4
−2
0
2
4
x
Obrázok A.9: Dvojrozmerné normálne rozdelenie so nulovým priemerom a jednotkovou kovariančnou maticou.
A.6
Normálne rozdelenie
V oblasti spracovania obrazu, počítačového videnia a rozpoznávania objektov pracujeme väčšinou s predpokladom, že dáta majú normálne rozdelenie.
Hovoríme, že náhodná premenná má normálne (Gaussove) rozdelenie s parametrami μ a σ (X ∼ N (μ, σ)), ked’ pre jej funkciu hustoty platí
f (x) =
(x−μ)2
1
−
e 2σ2 .
σ 2π
(A.54)
A.6.1 Viacrozmerné normálne rozdelenie
Zápis X ∼ N (µ, Σ) znamená, že N -rozmerný vektor X = (X 1 , . . . X N ) má
normálne (Gaussove) rozdelenie s parametrami µ a Σ. Toto platí, ak združená funkcia hustoty vektora X je
,
+
1
1
f (x) = 3
(A.55)
exp − (x − µ)T Σ−1 (x − µ) ,
2
(2π)N |Σ|
kde µ je vektor stredných hodnôt a Σ je kovariančná matica vektora X.
Pre dvojrozmerné normálne rozdelenie má funkcia hustoty pravdepodobnosti kopcovitý tvar (obr. A.9), ktorý závisí na kovariančnej matici,
ako je znázornené na obrázku A.10.
367
A. V YBRANÉ TÉMY Z PRAVDEPODOBNOSTI
4
4
0.1
3
2
2
0.08
0.08
1
0
0.06
y
y
1
−1
0
0.06
−1
0.04
−2
−3
−4
−4 −3 −2 −1
0.1
3
−3
0.02
0
x
1
2
3
0.04
−2
0.02
−4
−4 −3 −2 −1
4
(a) Var(X ) = 2, Var(Y ) = 1, Cov(X ,Y ) = 0
0
x
1
2
3
4
(b) Var(X ) = 1, Var(Y ) = 2, Cov(X ,Y ) = 0
4
0.14
3
0.12
2
0.1
y
1
0
0.08
−1
0.06
−2
0.04
−3
−4
−4 −3 −2 −1
0
x
1
2
3
4
0.02
(c) Var(X ) = Var(Y ) = 1, Cov(X ,Y ) = 0
4
0.12
4
3
2
1
0.08
0
0.06
−1
−2
0.04
−3
0.1
2
y
y
1
−4
−4 −3 −2 −1
0.12
3
0.1
0.08
0
0.06
−1
−2
0.04
−3
0
x
1
2
3
4
0.02
−4
−4 −3 −2 −1
0
x
1
2
3
4
0.02
(d) Var(X ) = 2, Var(Y ) = 1, Cov(X ,Y ) = −0,5 (e) Var(X ) = 2, Var(Y ) = 1, Cov(X ,Y ) = 0,5
Obrázok A.10: Vrstevnice dvojrozmerného normálneho rozdelenia so stredom
(0,0) a rôznymi kovariančnými maticami.
368
D ODATOK
B
Vybrané témy z maticového
počtu
B.1
Singulárny rozklad matice
Singulárne číslo a singulárne vektory matice A sú nezáporné číslo σ a nenulové vektory u a v také, že
Av = σu,
H
A u = σv,
(B.1)
(B.2)
kde AH je Hermitovsky (komplexne združená) transponovaná matica. Pre
reálne matice, s ktorými budeme pracovat’, platí AH = AT . Z toho vyplýva,
že v je vlastný vektor matice AT A a u vlastný vektor matice AAT prislúchajúce vlastnému číslu λ = σ2 . Dôkaz uvedieme neskôr v kapitole B.1.2.
V maticovom zápise:
AV = US,
(B.3)
T
(B.4)
T
A U = VS ,
kde U = [u1 , . . . uN ], V = [v1 , . . . vD ] a S = diag(σ1 , . . . σrank(A) ).
Zápis
A = USVT
sa nazýva singulárny rozklad matice A. Rozmerovo
[A]N×D = [U]N×N [S]N×D VT D×D .
370
(B.5)
(B.6)
B.1. Singulárny rozklad matice
B.1.1 Úsporná forma SVD
Ak r = rank(A) ≤ min(N , D) a matice U, S a V sa dajú zapísat’ ako blokové
nasledovne
U=
U1
U3
S=
diag(σ1 , . . . σr )
0
VT =
V1
V2
U2
U4
,
V3
V4
(B.7)
0
0
S1
0
=
0
0
,
,
(B.8)
(B.9)
kde 0 je nulová matica, potom
A=
U1
U3
U2
U4
=
U1
U3
(N×r )
S1
0
V1
V2
0
0
V3
V4
=
[S1 ](r ×r ) [V1 |V3 ](r ×D) .
(B.10)
(B.11)
Takémuto vyjadreniu sa hovorí úsporná forma SVD, pretože rátame len r
stĺpcov matice U a r riadkov matice VT .
B.1.2 Vlastnosti SVD
Ak A je reálna štvorcová symetrická matica, potom
A = USUT ,
(B.12)
kde S má na diagonále vlastné čísla matice A a U sú ortonormálne vlastné
vektory matice A.
Dôkaz. S má na diagonále vlastné čísla matice A, U sú ortonormálne
vlastné vektory matice A, potom
AU = US,
(B.13)
−1
A = USU
.
(B.14)
Pre ortonormálne matice platí UT = U−1 a teda A = USUT .
Ak A je reálna matica, tak
A = USVT ,
(B.15)
kde S má na diagonále odmocninu vlastných čísel matice AAT , U sú vlastné vektory matice AAT a V sú vlastné vektory matice AT A.
371
B. V YBRANÉ TÉMY Z MATICOVÉHO PO ČTU
Dôkaz. Pre singulárny rozklad matice platí
AV = US,
(B.16)
T
(B.17)
T
A U = VS ,
a teda
AT AV = AT US = VST S,
T
T
T
(B.18)
AA U = AVS = USS .
(B.19)
AT A = VST SVT ,
(B.20)
Z toho vyplýva
T
T
T
AA = USS U ,
(B.21)
a teda U sú vlastné vektory matice AAT a V sú vlastné vektory matice AT A.
Označme σi vlastné čísla matice AAT . Pretože platí eig(AB) = eig(BA),
σi sú zároveň vlastné čísla matice AT A. Potom ST S = SST = diag({σi }).
Nech S = diag({λi }). Z toho vyplýva, že ST S = SST = diag({λ2i }), a teda
λi = σi , a teda S má na diagonále odmocniny vlastných čísel matice
AAT .
372
D ODATOK
C
Vybrané kapitoly z lineárnej
algebry
Pre hlbší popis uvedených pojmov odkážeme čitatel’a na podrobnejšiu
literatúru teórie maticového počtu ([Kra06]).
C.1
Vektorový priestor (Lineárny priestor)
Reálny vektorový priestor Reálny vektorový priestor V je neprázdna
množina prvkov nazývaných vektory, v ktorej je definovaná operácia sčítanie, ktorá každej dvojici vektorov u ∈ V, v ∈ V prirad’uje vektor u +v ∈ V
a operácia násobenia vektorov reálnym číslom, ktorá každej dvojici α ∈
R, u ∈ V , prirad’uje vektor αu ∈ V ; pričom tieto operácie majú tieto vlastnosti:
1. u + v = v + u pre všetky u, v ∈ V.
2. (u + v) + w = u + (v + w) pre všetky u, v, w ∈ V.
3. Existuje vektor o ∈ V ; zvaný nulový vektor, tak, že ν + o = ν pre
všetky ν ∈ V.
4. Ku každému vektoru ν ∈ V existuje jednoznačne určený vektor−ν
tak, že ν + (−ν) = o.
5. (αβ)ν = α(βν) pre všetky α, β ∈ R a pre všetky v ∈ V.
6. 1.ν = ν pre všetky v ∈ V.
374
C.2. Lineárna kombinácia vektorov
7. (α + β)ν = αν + βν pre všetky α, β ∈ R a pre všetky v ∈ V.
8. α(u + ν) = αu + αν pre všetky u, v ∈ V.
Komplexný vektorový priestor Analogicky sa definuje komplexný vektorový priestor. Reálny a komplexný vektorový priestor budeme nazývat’
spoločným názvom vektorový priestor.
Číslo potom bude v prípade reálneho vektorového priestoru znamenat’
reálne číslo, v prípade komplexného vektorového priestoru číslo bude
znamenat’ komplexné číslo. Čísla budeme tiež nazývat’ skaláry.
C.2
Lineárna kombinácia vektorov
Operácie sčítanie vektorov a násobenie vektorov číslami umožňujú zaviest’ pojem lineárna kombinácia vektorov.
Ak sú α1 , ..., αn l’ubovol’né čísla aν1 , ..., νn l’ubovol’né vektory, tak vektor
α1 ν1 + ... + αn νn
(C.1)
nazývame
lineárnou kombináciou vektorov ν1 , ..., νn s koeficientami α1 , ..., αn .
C.3
Lineárna transformácia
Pojmom lineárne zobrazenie (lineárna transformácia) sa v matematike
označuje také zobrazenie medzi vektorovými priestormi V1 a V2, ktoré
zachováva vektorové operácie sčítanie a násobenie skalárom.
C.4
Báza vektorového priestoru
Bázou vektorového priestoru V nazývame taký sytém Φ vektorov vo V, pre
ktoré sú splnené nasledovné podmienky:
1. Φ je lineárne nezávislý
2. Φ generuje celý priestor V (úplná báza)
375
C. V YBRANÉ KAPITOLY Z LINEÁRNEJ ALGEBRY
Nech a1 ...a N ∈ V . Potom a_{1}...a_{N } tvoria bázu V práve vtedy, ked’
každý vektor z V je možné vyjadrit’ ako lineárnu kombináciu vektorov
a1 ...a N a to jednoznačne.
Ak vektory a1 ...a N tvoria bázu priestoru V, a pre s ∈ V platí, že s =
s1 a1 +...+s N a N . Potom koeficienty s1 ...s N sa nazývajú súradnice vektora
s vzhl’adom k danej báze.
376
Zoznam použitej literatúry
[HT13]
M. Hamala a M. Trnovska. Nelineárne programovanie, teória
a algoritmy. Druhé vyd. EPOS, 2013.
[Hu62]
M. K. Hu. „Visual pattern recognition by moment invariants“.
Information Theory, IRE Transactions on 8.2 (1962), str. 179–
187.
[Kor03]
J. Korbaš. Lineárna algebra a geometria I. Vydavatel’stvo UK,
Bratislava, 2003.
[Kra06]
E. Krajník. Základy maticového počtu. ČVUT, Praha, 2006,
str. 165.
[Lit11]
M. Litschmannová. Vybrané kapitoly z pravděpodobnosti. Skriptá. VŠB TU Ostrava, Fakulta elektrotechniky a informatiky,
2011.
[Nav07]
M. Navara. Pravděpodobnost a matematická statistika. Skriptá.
FEL ČVUT, Praha, 2007.
[PJ11]
A. Pázman a K. Janková. Pravdepodobnost’ a štatistika. Vydavatel’stvo UK, Bratislava, 2011.
[Zla11]
P. Zlatoš. Lineárna algebra a geometria. Skriptá. FMFI UK, Bratislava, 2011.
378
Počítačové videnie. Detekcia a rozpoznávanie objektov
Autorský kolektív:
RNDr. Elena Šikudová, PhD.
RNDr. Zuzana Černeková, PhD.
Ing. Vanda Benešová, CSc.
RNDr. Zuzana Haladová
RNDr. Júlia Kučerová
Recenzenti:
Prof. Ivan Bajla, ÚMER SAV, Bratislava
Prof. Jaroslav Polec, ÚT FEI STU, Bratislava
Doc. Jarmila Pavlovičová, ÚT FEI STU, Bratislava
Obálka: Spyridon Giochalas
Vydavatel’stvo: Wikina, Livornská 445, 109 00 Praha 10
1. vydanie
Náklad: 100
Počet strán: 397
Nepredajné
Vydané s podporou grantu KEGA 068UK-4/2011
ISBN: 978-80-87925-07-2
Download