´ NI´ HRANOVY´CH DETEKTORU˚ POROVNA ˇ ITY´CH PR ˇ I PARAMETRIZACI POHYBU POUZ ´ ZNAMU Z OBRAZOVE´HO ZA Jan HAVLI´K Katedra teorie obvodu˚, Fakulta elektrotechnicka´ Cˇeske´ vysoke´ ucˇenı´ technicke´ v Praze
Abstrakt Tento cˇla´nek se zaby´va´ problematikou vy´beˇru optima´lnı´ho hranove´ho detektoru pro parametrizaci pohybu z obrazove´ho za´znamu. Obsahuje porovna´nı´ peˇti hranovy´ch detektoru˚ implementovany´ch v IMAGE PROCESSING TOOLBOXU ve vy´pocˇetnı´m syste´mu MATLAB - Robertsova, Prewittove´, Sobelova, Laplacian od Gaussian (LOG) a Cannyho detektoru prˇ´ımo na specificke´m proble´mu parametrizace pohybu. Jednotlive´ detektory jsou porovna´va´ny na za´kladeˇ definovany´ch parametru˚ - pru˚meˇrne´ odchylky, relativnı´ chybovosti a pru˚meˇrne´ doby trva´nı´ hranove´ detekce. Prˇesne´ definice pouzˇity´ch parametru˚ jsou v cˇla´nku uvedeny.
´ VOD 1 U Parametrizace pohybu z obrazove´ho za´znamu je cˇasto rˇesˇenou u´lohou v mnoha odveˇtvı´ch lidske´ cˇinnosti. Znalost parametricke´ho popisu pohybu umozˇnˇuje jeho na´slednou automatickou klasifikaci a dalsˇ´ı vyuzˇitı´ zı´skany´ch dat prˇi rˇesˇenı´ rozsa´hly´ch u´loh. Jednou z velmi zajı´mavy´ch u´loh soucˇasne´ neurologie je analy´za vztahu pohybu lidske´ho teˇla a mozkove´ aktivity cˇloveˇka. Vzhledem k tomu, zˇe za´vislost mezi mozkovou aktivitou reprezentovanou EEG signa´ly a pohyby lidske´ho teˇla je velmi slozˇita´, je prˇi jejı´ analy´ze nezbytneˇ nutne´ zacˇ´ıt s hleda´nı´m EEG odezvy na elementa´rnı´ pohyby lidske´ho teˇla. Proto byl jako sledovany´ pohyb zvolen volny´ prostorovy´ pohyb ukazova´cˇku ruky. 2 PARAMETRIZACE POHYBU Sledovany´ prst je v mı´stech kloubu˚ oznacˇen specia´lnı´mi znacˇkami - soustrˇedny´mi cˇerny´mi kruzˇnicemi s bı´ly´m mezikruzˇ´ım (viz Obra´zek 2).
VSTUPNI´ VIDEOSEKVENCE
ˇ ´IDE ˇ NI´ TR ˇ ZˇIS ˇ Tˇ TE
RGB, indexovany´
ˇ EDZPRACOVA ´ NI´ PR
PARAMETRIZACE
B/W
´ POC ˇ ET VY ˇ ZˇIS ˇ Tˇ TE
PARAMETRIZOVANE´ POHYBY
Obra´zek 1: Blokove´ sche´ma procesu parametrizace Pohyb prstu je snı´ma´n videokamerou. Za´znam pohybu je ukla´da´n na videokazetu a na´sledneˇ nahra´n do pocˇ´ıtacˇe, kde docha´zı´ k offline zpracova´nı´ cele´ho za´znamu. Blokove´ sche´ma parametrizace pohybu prstu je uvedeno na Obra´zku 1.
Ulozˇeny´ za´znam je nejprve prˇedzpracova´n. Jednotlive´ vstupnı´ barevne´ snı´mky (RGB nebo indexovane´ barvy - za´visı´ na forma´tu ulozˇeny´ch dat) jsou prˇevedeny na cˇernobı´le´ snı´mky s bı´ly´m pozadı´m a cˇerny´mi oblastmi v mı´stech znacˇek na prstu ruky.
Obra´zek 2: Vstupnı´ snı´mek - znacˇky umı´steˇne´ na prstu ruky V dalsˇ´ım kroku jsou spocˇtena teˇzˇisˇteˇ jednotlivy´ch cˇerny´ch oblastı´ v kazˇde´m snı´mku a pote´ ulozˇena do matice teˇzˇisˇt’. Ulozˇena´ teˇzˇisˇteˇ jsou potom setrˇ´ıdeˇna tak, aby teˇzˇisˇteˇ na odpovı´dajı´cı´ch pozicı´ch pro vsˇechny snı´mky odpovı´dala stejne´ znacˇce na prstu ruky. Za´veˇrem je pohyb parametrizova´n. Z takto zı´skane´ matice teˇzˇisˇt’je mozˇne´ vypocˇ´ıst vsˇechny velicˇiny popisujı´cı´ pohyb prstu ruky. 3 POROVNA´NI´ HRANOVY´CH DETEKTORU˚ V pru˚beˇhu pra´ce bylo porovna´va´no celkem peˇt hranovy´ch detektoru˚ - detektory Robertsu˚v, Prewittove´, Sobelu˚v, Laplacian of Gaussian (LOG) a Cannyho. Pro srovna´nı´ byly vyuzˇity jejich defaultnı´ implementace v IMAGE PROCESSING TOOLBOXU ve vy´pocˇetnı´m syste´mu MATLAB. Detektory byly porovna´va´ny na za´kladeˇ trˇ´ı parametru˚ - pru˚meˇrne´ odchylky, relativnı´ chybovosti a pru˚meˇrne´ doby trva´nı´ hranove´ detekce. Definice parametru˚ jsou uvedeny v kapitole 4. Vsˇechny detektory byly srovna´va´ny na za´kladeˇ vy´sledku˚ detekce 1260 znacˇek (420 snı´mku˚ velikosti 720 526 bodu˚, pru˚meˇr jednotlivy´ch znacˇek ve videosekvenci byl zhruba 22 pixelu˚). V pouzˇite´ videosekvenci byla nejprve rucˇneˇ nalezena teˇzˇisˇteˇ vsˇech znacˇek. Jejich sourˇadnice byly na´sledneˇ pouzˇity jako referencˇnı´. Pote´ byla videosekvence zpracova´na pocˇ´ıtacˇem a byla nalezena teˇzˇisˇteˇ jednotlivy´ch znacˇek. Vsˇechny vstupnı´ plnobarevne´ snı´mky byly nejprve prˇevedeny na snı´mky v sˇede´ sˇka´le. Na´sledneˇ byl na snı´mky aplikova´n neˇktery´ z testovany´ch hranovy´ch detektoru˚ (viz Obra´zek 3). Vy´sledky hranove´ detekce byly pote´ filtrova´ny 2-D filtrem s impulsovou odezvou , kde pro . Takto zı´skane´ obra´zky jsou mapami hustoty hran a uda´vajı´, kolik pixelu˚ lezˇ´ıcı´ch v okolı´ dane´ho bodu na´lezˇ´ı neˇktere´ z detekovany´ch hran v pu˚vodnı´m obra´zku. V dalsˇ´ım kroku byly takto zı´skane´ mapy prˇefiltrova´ny sadou filtru˚ klouzavy´ch pru˚meˇru˚ (filtr F19). s impulsovy´mi odezvami rozmeˇru (filtr F5), (filtr F11) a
Z jednotlivy´ch prˇefiltrovany´ch map byla na za´veˇr zı´ska´na teˇzˇisˇteˇ jednotlivy´ch znacˇek jako indexovany maxima hustoty hran.
(a)
(b)
(c)
(d)
(e)
(f)
Obra´zek 3: Vy´sledky hranove´ detekce: (a) vstupnı´ snı´mek, (b) Robertsu˚v detektor, (c) detektor Prewittove´, (d) Sobelu˚v detektor, (e) detektor LOG, (f) Cannyho detektor
4 VY´SLEDKY Parametry, na jejichzˇ za´kladeˇ byly jednotlive´ hranove´ detektory porovna´va´ny, byly definova´ny na´sledovneˇ:
pru˚meˇrna´ odchylka ,
, jinde , relativnı´ chybovost , pru˚meˇrna´ doba trva´nı´ vy´pocˇtu
,
kde
a jsou sourˇadnice teˇzˇisˇteˇ znacˇky spocˇtene´ automatickou detekcı´, a jsou sourˇadnice teˇzˇisˇteˇ znacˇky urcˇene´ rucˇneˇ, je pocˇet znacˇek, jejichzˇ (absolutnı´ chybovost), je celkovy´ pocˇet zpracovany´ch znacˇek, je maxima´lnı´ tolerovana´ odchylka, je doba trva´nı´ hranove´ detekce snı´mku , je celkovy´ pocˇet zpracovany´ch snı´mku˚.
Takto definovane´ parametry vypocˇtene´ pro jednotlive´ hranove´ detektory prˇi zpracova´nı´ vzorove´ho souboru dat jsou uvedeny v Tabulka´ch 1 a 2. V Tabulce 1 jsou uvedeny pru˚meˇrne´ odchylky a relativnı´ chybovosti pro jednotlive´ detektory a ru˚zne´ filtrace mapy hustoty hran prˇi maxima´lnı´ tolerovane´ odchylce px. Velikost maxima´lnı´ tolerovane´ odchylky je zvolena s ohledem na dalsˇ´ı zpracova´nı´ videosekvencı´.
Hranova´ detekce Robertsova Prewittove´ Sobelova LOG Cannyho
Pru˚meˇrna´ odchylka ( = 5) [px] WF F3 F5 F7 1.81 1.73 1.02 1.32 2.30 1.67 0.74 0.98 2.29 1.69 0.76 0.98 4.06 2.78 2.44 1.64 3.20 2.35 1.75 2.36
Relativnı´ chybovost ( = 5) [px] WF F3 F5 F7 1.19 1.03 0.56 0.71 4.68 3.81 3.25 3.10 4.68 4.13 3.10 3.10 52.70 67.86 8.73 0.71 61.75 54.84 41.51 39.37
Tabulka 1: Pru˚meˇrne´ odchylky a relativnı´ chybovost (WF oznacˇuje zpracova´nı´ bez filtrace mapy hustoty hran, F3 oznacˇuje zpracova´nı´ s filtracı´ F3 atd.) V Tabulce 2 jsou uvedeny pru˚meˇrne´ doby trva´nı´ hranovy´ch detekcı´ jednoho snı´mku pro jednotlive´ hranove´ detektrory. Doby trva´nı´ jsou meˇrˇeny prˇi zpracova´nı´ na pocˇ´ıtacˇi s procesorem Pentium Pro 200 MHz a velikostı´ pameˇti 128 MB. Hranova´ detekce Robertsova Prewittove´ Sobelova LOG Cannyho
Pru˚meˇrna´ doba trva´nı´ [s] 9.79 10.79 11.63 16.84 40.74
Tabulka 2: Pru˚meˇrne´ doby trva´nı´ hranove´ detekce 5 POZNA´MKY K IMPLEMENTACI Vsˇechny pouzˇite´ algoritmy byly implementova´ny jako funkce ve vy´pocˇetnı´m syste´mu MATLAB. Standardnı´ funkce zpracova´nı´ obrazu˚ pouzˇite´ prˇi implementaci uvedeny´ch algoritmu˚ vcˇetneˇ implementacı´ testovany´ch hranovy´ch detektoru˚ byly prˇevzaty z IMAGE PROCESSING TOOLBOXU. 6 ZA´VEˇR Prˇedmeˇtem prezentovane´ pra´ce bylo srovna´nı´ hranovy´ch detektoru˚ implementovany´ch ve vy´pocˇetnı´m syste´mu MATLAB na specificke´m proble´mu parametrizace pohybu z obrazove´ho za´znamu. Jak je uvedeno v kapitole 4, z hlediska pru˚meˇrne´ odchylky se jako nejprˇesneˇjsˇ´ı prˇi parametrizaci pohybu uka´zaly hranove´ detektory Prewittove´ a Sobelu˚v, ktere´ prˇi maxima´lnı´ tolerovane´ odchylce px dosa´hly prˇi zpracova´nı´ vzorove´ho souboru dat a pouzˇite´ filtraci mapy hustoty hran F5 pru˚meˇrne´ odchylky px resp. px.
indexovany´
150
150
150
150
140
140
140
140
130
130
130
130
120
120
120
120
110
110
110
110
100
100
100
100
90
90
90
90
80
80
80
80
70
70
70
70
60
60
60
60
50
50
50
50
40
40
40
40
30
30
30
30
20
20
20
10
10
10
0
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
0
0
0.5
1
1.5
(a)
2
2.5
3
3.5
4
4.5
5
0
20 10 0
0.5
1
1.5
2
(b)
2.5
3
3.5
4
4.5
5
0
150
150
150
140
140
140
130
130
130
130
120
120
120
120
110
110
110
110
100
100
100
100
90
90
90
90
80
80
80
80
70
70
70
70
60
60
60
60
50
50
50
50
40
40
40
40
30
30
30
30
20
20
20
10
10
10
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
0
0
0.5
1
1.5
2
(e)
2.5
3
3.5
4
4.5
5
0
1
1.5
(f)
2
2.5
3
3.5
4
4.5
5
0
150
150
140
140
140
130
130
130
120
120
120
120
110
110
110
110
100
100
100
100
90
90
90
90
80
80
80
80
70
70
70
70
60
60
60
60
50
50
50
50
40
40
40
40
30
30
30
30
20
20
20
10
10
10
1.5
2
2.5
3
3.5
4
4.5
5
0
0
0.5
1
1.5
2
(i)
2.5
3
3.5
4
4.5
5
0
1
1.5
(j)
2
2.5
3
3.5
4
4.5
5
0
150
150
140
140
140
130
130
130
120
120
120
120
110
110
110
110
100
100
100
100
90
90
90
90
80
80
80
80
70
70
70
70
60
60
60
60
50
50
50
50
40
40
40
40
30
30
30
30
20
20
20
10
10
10
1.5
2
2.5
3
3.5
4
4.5
5
0
0
0.5
1
1.5
(m)
2
2.5
3
3.5
4
4.5
5
0
1
1.5
(n)
2
2.5
3
3.5
4
4.5
5
0
150
150
140
140
140
130
130
130
120
120
120
120
110
110
110
110
100
100
100
100
90
90
90
90
80
80
80
80
70
70
70
70
60
60
60
60
50
50
50
50
40
40
40
40
30
30
30
30
20
20
20
10
10
10
1.5
2
2.5
(q)
3
3.5
4
4.5
5
0
0
0.5
1
1.5
2
2.5
(r)
1.5
2
3
3.5
4
4.5
5
0
2.5
3
3.5
4
4.5
5
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
3
3.5
4
4.5
5
(p)
150
1
1
(o)
130
0.5
5
10 0.5
140
0
4.5
20
0
150
0
4
(l)
150
1
0.5
(k)
130
0.5
3.5
10 0.5
140
0
3
20
0
150
0
2.5
(h)
150
1
0
(g)
130
0.5
2
10 0.5
140
0
1.5
20
0
150
0
1
(d)
140
0
0.5
(c)
150
0
0
20 10 0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
(s)
5
0
0
0.5
1
1.5
2
2.5
(t)
Obra´zek 4: Histogramy odchylek jednotlivy´ch hranovy´ch detektoru˚: (a) - (d) Robertsu˚v hranovy´ detektor (zleva zpracova´nı´ bez filtrace a s filtracemi F3, F5 a F7), (e) - (h) Sobelu˚v hranovy´ detektor (zleva zpracova´nı´ bez filtrace a s filtracemi F3, F5 a F7), (i) - (l) hranovy´ detektor Prewittove´ (zleva zpracova´nı´ bez filtrace a s filtracemi F3, F5 a F7), (m) - (p) hranovy´ detektor LOG (zleva zpracova´nı´ bez filtrace a s filtracemi F3, F5 a F7), (q) - (t) Cannyho hranovy´ detektor (zleva zpracova´nı´ bez filtrace a s filtracemi F3, F5 a F7)
Z hlediska relativnı´ chybovosti byl jako nejprˇesneˇjsˇ´ı vyhodnocen Robertsu˚v hranovy´ detektor, jehozˇ relativnı´ chybovost prˇi maxima´lnı´ tolerovane´ odchylce px byla prˇi zpracova´nı´ vzorove´ho souboru dat a pouzˇite´ filtraci mapy hustoty hran F5 %. Jako nejrychlejsˇ´ı byl ve srovna´nı´ s ostatnı´mi hranovy´mi detektory vyhodnocen Robertsu˚v hranovy´ detektor. Vzhledem k tomu, zˇe s ohledem na dalsˇ´ı zpracova´nı´ snı´mku˚ prˇi rˇesˇenı´ specificke´ u´lohy parametrizace a klasifikace pohybu z obrazove´ho za´znamu je du˚lezˇiteˇjsˇ´ı dosa´hnout u pouzˇite´ho hranove´ho detektoru co nejmensˇ´ı relativnı´ chybovosti nezˇ zı´skat detektor s malou pru˚meˇrnou odchylkou, z nameˇrˇeny´ch hodnot vyply´va´, zˇe optima´lnı´m detektorem pro rˇesˇenı´ te´to problematiky je Robertsu˚v hranovy´ detektor. Tento detektor je navı´c nejrychlejsˇ´ım z testovany´ch detektoru˚. PODEˇKOVA´NI´ Tato pra´ce je podporova´na grantem cˇ. 0305913 ”Parametrizace pohybu z obrazove´ho za´znamu” (udeˇlen GK CˇVUT v Praze) a vy´zkumny´m za´meˇrem cˇ. MSM 210000012 (udeˇlen Ministerstvem sˇkolstvı´, mla´dezˇe a teˇlovy´chovy Cˇeske´ republiky). LITERATURA [1] GONZALEZ, R. C. – WOODS, R. E.: Digital Image Processing, Prentice Hall, 2002. [2] HAVLI´K, J.: Klasifikace pohybu˚ cˇa´sti lidske´ho teˇla v prostoru, Odborna´ studie, 2003. [3] HLAVA´Cˇ, V. – SEDLA´CˇEK, M.: Zpracova´nı´ signa´lu˚ a obrazu˚, Vydavatelstvı´ CˇVUT, Praha, 2001. [4] Image processing fundamentals. URL: http://www.ph.tn.tudelft.nl/Courses/FIP/frames/fip.html , [2003-01-13]. [5] KLI´MA, M. – ET AL.: Zpracova´nı´ obrazove´ informace, Vydavatelstvı´ CˇVUT, Praha, 1999. [6] The MathWorks, Inc.: MATLAB Reference Guide, 1995. [7] The MathWorks, Inc.: Image Processing Toolbox User’s Guide, 2002.
Jan HAVLI´K (Ing.) se narodil v Praze v roce 1975. Titul Ing. zı´skal na Fakulteˇ elektrotechnicke´ Cˇeske´ho vysoke´ho ucˇenı´ technicke´ho v Praze v roce 2001. V soucˇasne´ dobeˇ je zameˇstnancem Katedry teorie obvodu˚ te´to fakulty. Katedra teorie obvodu˚, Fakulta elektrotechnicka´ Cˇeske´ vysoke´ ucˇenı´ technicke´ v Praze Technicka´ 2, 166 27 Praha 6 tel.: 224 352 048, email:
[email protected]