Elektrotehniški vestnik 76(4): 229-234, 2009 Electrotechnical Review, Ljubljana, Slovenija FRI Rehab 3D: 3-D rekonstrukcija kvadra s pomočjo kamere pri rehabilitaciji človeSke roke Boris Simončič, Peter Peer Fakulteta za računalništvo in informatiko, Univerza v Ljubljani, Tržaška 25, 1000 Ljubljana, Slovenija E-pošta: boris.simoncic@fri. uni-lj.si, peter.peer@fri. uni-lj.si Povzetek. V članku je obdelan problem rehabilitacije pacienta po poškodbi roke ali zapestja s pomočjo osebnega računalnika in ene spletne kamere. Pacient drZi v roki preprost objekt, kvader, in ga premika. Kamera snema njegove premike, program pa na podlagi slike kamere s pomočjo barvne informacije in z uporabo modela kvadra izračuna lego predmeta v 3-D prostoru v realnem času. Program umesti ta predmet v navidezni 3-D prostor, v katerem pa je še en takšen predmet. Naloga pacienta je, da premakne realni predmet v lego navideznega. S tem trenira določene gibe zapestja in roke, ki pripomorejo k hitrejšemu okrevanju. Zato je problem zanimiv tako s tehničnega kot tudi s čisto praktičnega vidika. Pri predlagani rešitvi izhajamo iz zelje omogočiti to rešitev čim večjemu krogu uporabnikov, zato smo se omejili na dve zelo osnovni zahtevi: uporabnik mora imeti osebni račšunalnik in spletno kamero. Na konču podajamo tudi očene delovanja programa, ki temeljijo na kvantitativni in kvalitativni analizi mnozšiče primerov. Na podlagi rezultatov in ob pogoju, da je uporabnik pripravljen tudi sam vloziti nekaj truda, lahko povzamemo, da smo se z opisano rešitvijo dovolj priblizali začrtanim ciljem. To velja predvsem tedaj, ko natančnost ni odločilna in manjša odstopanja pri rekonstrukciji ne onemogočajo postopka rehabilitačije. Ključne besede: računalniški vid, model kvadra, 3D rekonstrukcija kvadra, rehabilitacija roke, izvajanje v realnem času, spletna kamera FRI Rehab 3D: 3D-rečonstručtion of the čuboid based on a single čamera used in rehabilitation of the human hand Extended abstract. The paper presents a rehabilitation method using a personal computer and a single web camera for patients who suffer from an arm or wrist injury. Patient holds in his hand a simple object, cuboid, and moves it around. A camera records his movement while the software calculates in real-time the position of the object in a 3D-space on the basis of the color information and the cuboid model. The program places the object in a virtual 3D-space in which another similar object is already present. In Chapter 2 we present the existing rehabilitation solutions, together with their accuracies and prices. As seen, they can be very expensive and need specialized hardware. Therefore, the goal of our work was to develop a much simpler and less expensive solution demanding only a personal computer and a single web camera. In Chapter 3 we present the environment required to achieve good results (Figure 1). To segment out the object more easily we need a black background and black glove. The lighting is one of the most important factors. In Chapters 4 and 5 we discuss the methods of obtaining cuboid characteristics such as edges and corners from input image. The edges were obtained by separating the sides of the cuboid from the original image and then intersecting them. This leaves only a very narrow set of points which we use as a basis for linear regression to determine the edges (Figure 2). Determining the corners is divided into three sub-problems. When only one side is visible, a bounding rectangle is calculated touching the cuboid on four points. We Prejet 20. marec, 2009 Odobren 17. april, 2009 improve their location with local optimization. When two sides are visible, we use the intersection method to detect the first two corners. To detect the other four ones, we calculate and analyze perpendiculars to the intersected edge (Figure 3). In the case of three visible sides, the intersection method is used. The analysis of the resulting edges gives four corners. Approximations of the remaining three corners are calculated on the basis of the first four and refined by using optimization (Figure 4). In the Chapter 5 we discuss how the object is projected on the image plane (Figure 5) and how the 3D-coordinates of the cubiod can be obtained on this basis (Equation 1). We describe how the cuboid model is used to construct and solve the system of equations thus giving 3D-coordinates for one side of the cuboid. The rest of the sides can be calculated with a vector product. In Chapter 7, a method of matching a virtual and real object is presented (Figure 6). In Chapter 8 we evaluate the software. Our evaluation is based on a quantitative and qualitative analysis performed on a set of examples. The quantitative analysis gives a graph that presents the correlation between the distance of the object from the origin and the size of the error (Figure 7). In Tables 1 and 2 we present errors calculated with methods like geometric mean, median, average and standard deviation. In Figure 8 distribution of the quantitative and qualitative errors can be found. The qualitative analysis was performed on a set of three videos where all the frames (2160 frames in the first video with only one visible side, 2677 frames in the second video with two visible sides, 3477 frames in the third video with three visible sides) were assigned ranking: good, acceptable or bad. The analysis shows that 4,2 % of the frames were displayed incorrectly, but only 1 % of those were assigned the ranking bad. Such analysis however depends on many factors and results are to be taken as an approximation. In the concluding chapter we compare our solution to those of others (Table 3) and present some ways of how to improve the accuracy and efficiency of our software. Finally we conclude that under the condition that the user himself is willing to make his own effort, the presented solution serves its purpose well enough despite some deficinecies. It is suitable mostly in cases where accuracy is not critical and smaller deviations of 3D-reconstruction do not thwart the process of the rehabilitation. Although the accuracy is quite good, under appropriate conditions, we do think that this kind of approach has a potential for significantly better results. Key words: computer vision, cuboid model, 3D reconstruction of a cuboid, arm rehabilitation, real-time execution, web camera 1 Uvod Cilj tega dela je razviti program, s katerim bi pacientom olajšali rehabilitacijo po poškodbi roke, zapestja ali dela moZganov, ki nadzoruje ta del. Vsako leto na milijone ljudi po svetu doZivi kap, samo v ZdruZenih drŽavah Amerike ta stevilka presega 600.000 [1]. Poškodovanec mora ustrezni del mozšganov spet naucšiti oz. navaditi uporabljati roko ali zapestje. Ustrezna terapija po kapi traja zaradi motenj gibanja vecš tednov po posškodbi. Zaradi ekonomskih pritiskov pa imajo pacienti Čedalje manj teh terapij in jih hitro pošljejo domov. Tako tudi koristi terapije niso v celoti dosezene. Zato je pomembno razviti sistem, ki bo pacientom omogocšal nadaljevanje terapije brez prisotnosti zdravnika. 2 Sorodna dela Ena izmed rešitev, FRI Rehab 2D, je bila razvita na Univerzi v Ljubljani [2]. Ta program ob pogojih, kot sta ustrezna osvetlitev in ne prehitro premikanje predmeta, v realnem casu uspesno doloca lego predmeta. Predmet uspesno doloci tudi ce je ta delno zakrit. Sliko zajema s crno-belo kamero. Slabost te rešitve je, da deluje v dveh dimenzijah. Naša resitev je nadgradnja tega sistema s prehodom v tri dimenzije, uporaba barvne informacije in modela kvadra. Sistem Optotrak Certus ima natancnost do 0,1 mm in locjivost 0,01 mm. Sledi lahko do 512 markerjem (IR-diode) z najvecjo hitrostjo osvezevanja 4600 Hz. Sistem Optotrak Certus vsebuje tri kamere, obcutljive za in-frardeco svetlobo. Sistem stane okrog 150.000 dolarjev, a ni omejen samo na rehabilitacijo, temvecš se uporablja tudi v industriji, biomehaniki in na raziskovalnih inštitutih [3]. Xsensov MTi je miniaturen sistem za zaznavanje lege in smeri. Vsebuje notranji signalni procesor in posebne senzorje, s katerimi doloca 3-D orientacijo [4]. Kljub sirši namembnosti bi lahko sistem MTi uporabili tudi pri rehabilitaciji. Sistema stane priblizno 2500 evrov. Po navedbah proizvajalca je napaka premikajocšega se senzorja manj kot dve kotni stopinji. Za kvader, kakrsšnega smo uporabljali za naš program (dolzina 14 cm, širina 8 cm, visšina 6 cm), smo preracšunali napako, ki znasša 5,35 mm. Pristop za sledenje v 3-D koordinatah, ki sta ga uporabila Y. Tao in H. Hu, integrira kamero in senzor, ki meri inercijo (angl. inertial sensor). Z dodatnimi optimiza-cijski algoritmi sta dosegla natancnost ± 5 cm za vse tri koordinate [5]. 3 Predpriprave Pred zacšetkom dela s programom je treba pripraviti prostor (slika 1) in opremo, saj je pravilnost delovanja programa mocno odvisna od teh dejavnikov. Slika 1. Ureditev delovnega okolja Figure 1. Work space arrangement. V našem primeru je na zajeti sliki pomembna samo ena stvar - kvader, ki ga premikamo. Zato je pomembno, da lahko kvader locimo od okolja. V ta namen smo uporabili podobno rešitev, kot jo pogosto uporabljajo na televiziji pri napovedovanju vremena, in sicer t. i. modri zaslon (angl. blue screen). Ideja te rešitve je, da obdrZimo samo tiste dele slike, ki niso neke določene barve, v našem primeru smo se odlocili za crno. Uporabimo lahko zaveso crne barve, ki jo namestimo tako, da pokriva celoten del vidnega polja kamere. Na roko, s katero drzimo in premikamo kvader, si nadenemo še crno rokavico. Tako je na zajeti sliki vse, razen kvadra, crne barve. Podatke o predmetu vnesemo v program v posebnem oknu, kjer podamo dimenzije kvadra, torej dolzino, širino in višino ter barve stranic. Lastnost, ki jo je treba upostevati, je material, iz katerega je narejen sam kvader ali njegove stranice. Dober material je tak, ki je hkrati dovolj svetel in obenem ne prevec odbojen. Odbojnost in osvetljenost kvadra pa je odvisna tudi od virov svetlobe v prostoru. Temu je treba nameniti še posebno pozornost tudi zaradi kamer, kijih uporabljamo, saj se osredinjamo na kamere najnizjega cenovnega razreda. Najbolje je torej uporabiti vire svetlobe, ki osvetljujejo kvader cim bolj enakomerno iz vseh strani. Dobro se obnese kombinacija dnevne svetlobe z enim ali dvema viroma razpršene umetne svetlobe. 4 Iskanje robov Za določanje oglišč potrebujemo čim bolj natančno določene notranje robove kvadra. Te določimo na podlagi presekov posameznih parov stranič (slika 2). Slika 2. Presek stranič pri določanju roba med njima Figure 2. Side intersečtion in edge detečtion. Najprej ugotovimo, katere straniče so na sliki, in nad njimi paroma naredimo preseke. Točke posameznih presekov zberemo v posebne mnoZiče, nad katerimi z linearno regresijo [6] določimo premiče, ki te točke pokrivajo z najmanjšo napako. 5 Iskanje oglišč Oglišča so za računanje polozaja objekta zelo uporabne značšilke, zato je velik del programa namenjen njihovemu iskanju. Pomemben del reševanja tega problema je metoda iskanja robov. Reševanje si olajšamo, če čeloten problem določanja oglišč razdelimo na tri podprobleme. 5.1 Vidna ena stranica Ta podproblem je sestavljen iz dveh delov. V prvem delu poisčemo grob priblizek oglišča in ga v drugem koraku poskusšamo izboljsšati z lokalno optimizačijo. Priblizšek iščemo tako, da določimo natančen najmanjši okvir. Ta okvir se na štirih točkah dotika pravokotnika, ki predstavlja objekt. Pravokotnik se dotika okvirja na štirih točkah, kar je priblizen polozaj oglišč. Sledi optimizačija na omejenem območju. Za vsako belo točko v tem območju izračšunamo sštevilo sosednjih točšk bele barve. Tam, kjer je sštevilo točšk minimalno, je oglisščše. 5.2 Vidni dve stranici Kadar sta na sliki vidni dve straniči, moramo po prej opisanem postopku najti premičo, ki določa rob med njima. Nato tej premiči sledimo in ko naletimo na prvo nečšrno točško, jo označšimo za en koneč roba. Premiči sledimo se naprej, dokler ne naletimo tokrat na črno točko, kar označuje drugi koneč roba. Slika 3. Iskanje ostalih oglišč s pravokotnicami. Figure 3. Detection of other corners with perpendiculars. Naslednji korak je iskanje približkov preostalih štirih oglišc. V okolici prvega oglišca dolocimo n pravokotnic na prej dobljeno premico (slika 3). Za vsako od pravokotnic nato izracunamo razdaljo od njene ižhodišcne tocke, ki leži na premici, do prve ne crne tocke, torej prve tocke, ki ne leži vec na kvadru. Vseskozi spremljamo dolžine pravokotnic. Ko pravokotnica ne tece cež kvader, je njena dolžina nic. Prva naslednja pravokotnica, ki tece cež kvader, pa ima dolžino ražlicno od nic. Algoritem ugotovi spremembo dolžin ter tam doloci prisotnost novega oglišca. Sledi še optimižacija prej dobljenih oglišc. 5.3 Vidne tri stranice Prvi korak je dolocitev notranjih robov ž metodo preseka. S pomocjo vseh treh robov lahko želo natancno dolocimo prvo notranje oglisce kvadra. Dodatna tri oglisca dobimo tako, da sledimo vsakemu od treh robov. Zacnemo pri iž-hodišcu in se premikamo po premici roba, dokler ne pridemo do prve ne crne tocke. Slika 4. Na levi sliki so prikažani robovi in prva štiri oglišca ter približški preostalih treh oglisšcš. Desno je režultat po optimiža-ciji. Figure 4. Left picture shows the edges and the first four corners plus three approximate corners. The picture on the right shows the result after optimižation. Preostala so nam še tri nežnana oglišca. Sprejmemo predpostavko, da štiri oglišca, ki tvorijo eno stranico, dolocajo pravokotnik. Tri oglišca tega lika že imamo. (Četrtega ižracunamo ž žrcaljenjem enega od oglišc prek premice, ki jo dolocata preostali dve oglišci. Isti posto- pek ponovimo še za preostali stranici. Izkaže se, da so optimizirana oglišca dobro določena (slika 4). 6 Določanje 3-D koordinat Na podlagi 2-D koordinat oglišč, modela kvadra, ločljivosti in gorišcne razdalje kamere lahko izračunamo 3-D koordinate. Uporabljali smo kamero Logitech Quickcam 5000 Pro z locljivostjo 640x480 tock. Objekt se preslika na slikovno ravnino, ki tvori sliko, in na podlagi katere smo po prej opisanih postopkih dolocili znacilki oz. njihovi koordinati x in y. Ker je slikovna ravnina od lec kamere oddaljena za goriscno razdaljo, nam ta razdalja pomeni koordinato z znacilk. Za lazjo ponazoritev problema smo si pomagali z orodjem 3D Studio (3ds) Max (slika 5). Tocke na sliki oznacimo s crkami a, b, c in d. Tocke objekta oz. oglišca, kijih išcemo, pa oznacimo z a', b', c' in d'. Poznamo tudi razdalje med njimi. Kamera je na tocki z oznako o, ki naj bo tudi izhodišce koordinatnega sistema. a' a d' tÍ^Bt' G C' O Slika 5. Podrobnejši prikaz preslikave objekta na sliko Figure 5. Detailed illustration of an object projected on the image plane. Vidimo lahko, daje zveza med oglišci kvadra, kijih išcemo, ter oglišci kvadra, preslikanimi na slikovno ravnino, naslednja: oa' = ki • oa ob' = k2 • ob (!) oc' = k3 • oc od' = k^ • od Ugotovimo lahko, da so konstante ki, k2, k3 in k4 enolično določene, ce vpeljemo dve omejitvi, ki izhajata iz modela kvadra. Prva omejitev je presecišce obeh diagonal. Druga omejitev pa je dolzšina stranice, ki jo kot vhodni podatek dolocšimo na zacšetku programa pri kali-braciji. Obe omejitvi skupaj tvorita stiri enacbe, ki skupaj enolicno dolocajo sistem s stirimi neznankami. Tako smo izracunali neznanke ki, k2, k3 in k4 ter dolocili tocke a', b', c' in d'. Določanja preostalih stranic se lahko lotimo z vektorskim produktom, s katerim določimo pravokotnice na vsa štiri oglišca prej določene stranice. Rezultat moramo se normalizirati tako, da dolZino, ki jo vrne vektorski produkt, delimo z dejansko dolZino. To seveda poznamo, saj je to ena izmed dimenzij kvadra. S tem kolicnikom nato delimo vse tri komponente novega vektorja in tako dobimo koordinate novega oglišca kvadra. Postopek moramo ponoviti za vsa preostala oglišca in s tem je postopek dolocanja 3-D koordinat koncan in kvader lahko postavimo v navidezni 3-D prostor. 7 Ujemanje z navideznim predmetom Navidezni kvader moramo za simulacijo postaviti v na-kljucno lego v navideznem prostoru ter ga nato cim bolje pokriti z realnim kvadrom. Slika 6. Ujemanje navideznega in realnega kvadra izpiše sporocilo o uspehu Figure 6. Matching of a virtual and real cuboid is displayed by a success message. Najprej dolocimo središce realnega kvadra in središce navideznega kvadra. Kadar je razdalja med obema središcema manjsa od dolocene vrednosti, izracunamo se razdalje med oglisci navideznega in realnega kvadra. Kadar so te razdalje manjše od vnaprej definiranega parametra, lahko recšemo, da sta lega in rotacija obeh predmetov enaki (slika 6). 8 Rezultati V tem poglavju smo pri kvantitativnih meritvah najprej v programu 3ds Max ustvarili prostor, v katerega smo v nakljucno lego postavili ustrezen kvader ter ga zasukali. Sliko smo upodobili (angl. render) ter jo uporabili kot vhodni podatek v naš program, ki je nato izracunal polozaj kvadra. Izracunane koordinate oglišc kvadra smo primerjali s koordinatami kvadra v 3ds Maxu. Primerjali smo vsa vidna oglisšcša. Vse enote so v milimetrih. Sistem smo razvijali na osebnem racunalniku s procesorjem Core2 Duo 1,86 GHz z operacijskim sistemom Windows XP v okolju VS.NET C++. Izmerili smo tudi hitrost delovanja programa in večinoma se giblje med stirimi do devetimi slikami na sekundo. Kvantitativna napaka je definirana kot razdalja med pravilno lego oglišča, ki jo dobimo v 3ds Maxu, ter izračunano lego oglišča programa. Kvantitativna napaka v tem primeru ne da vedno pravilnega občšutka o uporabnikovi izkusšnji programa in njegovi natančšnosti, zato smo vpeljali priblizšek kvalitativne vizualne napake, ki zanemari koordinato z, saj je napaka na tej koordinati uporabniku veliko manj opazna kot pa napaka na koordinatah x in y. Za oba tipa napak je vključen tudi izračun nekaterih pogostejših kazalcev napak: povprečna napaka (angl. average) in standardni odklon (angl. standard deviation), srednja geometrična napaka (angl. geometric mean) in mediana (angl. median). 8.1 Pogosti problemi V nekaterih situacijah program zelo slabo določi koordinate. (Če je premalo svetlobe, se stranice ne vidijo v celoti. To tezšavo lahko odpravimo z dodatnimi viri svetlobe. Druga tezšava lahko nastopi, ko se zaradi direktne točškaste svetlobe straniče obarvajo drugačše. V tem primeru moramo vir svetlobe zatemniti ali pa obrniti tako, da zšarniča ne sveti naravnost v kvader. Preveriti moramo tudi, da ni material stranic kvadra preveč odbojen. 8.2 Kvantitativna očena Tu smo proučili skupaj 45 primerov, od tega 15 tam, kjer je vidna ena stranica, 15 kjer sta vidni dve stranici in 15 kjer so vidne vse tri stranice (skupaj 226 oglisč). ocena sred. geom. napaka mediana kvantitativna 11,73 mm 11,58 mm kvalitativna 2,51 mm 2,34 mm Tabela 1. Izračunane napake na podlagi 226 oglišc Table 1. Errors calculated on the basis of 226 corners. ocena povp. napaka ± std. odst. razdalja od izh. 3,02 % ± 3,84 % Tabela 2. Povprečna napaka, izražena v odstotkih dejanskih razdalj Table 2. Average error expressed in percentages of the actual distančes. Na sliki 7 je vidna korelacija med razdaljo oglišča od izhodisščša in velikostjo napake za kvantitativno in kvalitativno napako. Graf prikazuje tudi linearni funkciji obeh napak. Na sliki 8 je prikazana razporeditev frekvenc kvantitativnih in kvalitativnih napak. Stabilnost je dovolj dobra, še posebno pri kvalitativnih meritvah. Tako napaka v odstotkih kot grafi stabilnosti kazejo na zadovoljivo delovanje. K .....im*!* i i ittmf 'm1 i i i r i t r ■ i n......t......fin -Kvalitativne frekvence napak -Kvantiativne frekvence napak Slika 7. Graf korelacije med razdaljo od izhodišča ter velikostjo napake Figure 7. Graph showing correlation between the distance from the origin and the error size. Izracun napak prikazujeta tabeli 1 in 2. Slika 8. Razporeditev frekvenc kvantitativnih in kvalitativnih napak Figure 8. Distribution of the quantitative and qualitative errors. 8.3 Kvalitativna očena Za vizualno (subjektivno) ocenjevanje delovanja programa smo vpeljali tri ocene: dobro (brez deformacije), sprejemljivo (majhna, srednja deformacija) in slabo (kvader je zelo deformiran oz. izgine). Test smo izpeljali na treh videosekvenčah. Pred testiranjem smo še enkrat določili barve ter preverili oz. spremenili ali dodali svetlobne vire. Tako je bilo hkrati dovolj svetlo, a brez preveč direktne svetlobe, ki bi se na kvadru preostro odsevala in povzročšila slabsšo detekčijo. V prvem videu (2160 slik, 72 sekund) smo premikali in obračali kvader tako, da je bila večšinoma vidna le ena straniča. V drugem videu (2677 slik, 89 sekund) smo premikali in obracšali kvader tako, da sta bili vecšinoma vidni dve stranici. V tretjem videu (3477 slik, 116 sekund) pa smo premikali in obracšali kvader tako, da so bile vecšinoma vidne vse tri stranice. Rezultati so pokazali, da jih je od vseh slik le 4,2 % prikazanih napacno, vendar od teh samo 1,2 % tudi zelo slabo, preostalih 3 % pa je sprejemljivih. Ti rezultati so dosegljivi samo s pravilnim uposštevanjem osvetlitve, dobro kalibracijo barv in predhodno nastavitvijo parametrov kamere, kot je bilo opisano na zacšetku tega dela. Tudi sicer se te ocene lahko razlikujejo od videa do videa zaradi razlicšnih dejavnikov, kot so oddaljenost kvadra od kamere, hitrost premikanja, kakovost izdelave kvadra ipd. 9 Sklep Medtem ko druge resšitve uporabljajo napredno dodatno strojno opremo, smo se mi omejili le na navadno spletno kamero. To prinese tako prednosti kot slabosti (tabela 3). Pomembne prednosti so nizka cena in dostopnost, saj lahko program na sodobnem racšunalniku vsak uporablja kar doma. Glavni slabosti pa sta natancnost v primerjavi z drazjimi rešitvami in obcutljivost za zunanje dejavnike. Naša rešitev ima veliko moznosti za dopolnitev in izboljšanje delovanja. Ena moznost bi bila uporaba kamere z vecjo locljivostjo. Vecjo izboljsavo bi prinesla tudi uporaba naprednejšega algoritma 3-D rekonstrukcije, ki bi bolje izrabljal lastnosti modela kvadra. Program bi bilo mogocše razsširiti tudi z vodenjem statistike pacienta, s katero bi imel fizioterapevt dodatno podlago za oceno napredka pacienta. Dodatna mozšnost bi bila tudi razširljivost z delitvijo programa na strezniški in odjemal-ski del. napaka cena naša rešitev 11,58 mm cena kamere Optotrak [3] 0,1 mm pribl. 118.000 evrov Xsens MTi [4] 5,35 mm 2.500 evrov Tao, Hu [5] 50 mm cena kamere, senzorja Tabela 3. Sklepna primerjava različnih rešitev Table 3. Concluding comparison of different solutions. Predlagano rešitev smo na koncu tudi ustrezno preizkusili. Na podlagi rezultatov lahko zaključimo, da smo se z opisano resšitvijo dovolj priblizšali zacšrtanim ciljem. To seveda velja le ob pogoju, daje uporabnik uposteval podane smernice priprave prostora ter ustrezno nastavil parametre kamere. S tem lahko velikost napake in stabilnost detekcije zelo izboljšamo, vendar natancnosti drazjih rešitev kljub temu ne moremo doseci. Zato je opisana rešitev ustrezna pri metodah rehabilitacije, kjer izmerjene napake ne vplivajo na uspesnost terapije. Menimo pa, da bi z vpeljavo zgoraj omenjenih izboljšav natancnost lahko še precej izboljšali. 10 Literatura [1] L. E. Sucar, G. Azcrate, R. S. Leder, D. Reinkensmeyer, J. Hernndez, I. Sanchez, P. Saucedo, "Gesture Therapy: A Vision-Based System for Arm Rehabilitation after Stroke", Proceedings of the First International Conference on Health Informatics, 2008, str. 107-111. [2] J. Katrašnik, M. Veber, P. Peer, "Using computer vision in a rehabilitation method of a human hand", Mediterranean Conference on Medical and Biological Engineering and Computing MEDICON2007, str. 947-949. [3] Technology in Motion, opis produkta: http://www.ndigital.com/lifesciences/certus.php (12.2.2009). [4] Xsens MTi, specifikacije: http://www.xsens.com/Static/Documents/ UserUpload/Xleaflets/leaflet_MTi.pdf (12.2.2009). [5] Y. Tao, H. Hu, "3D Arm Motion Tracking for Home-based Rehabilitation", Proceedings of the 3rd Cambridge Workshop on universal access and assistive technology, Cambridge, U.K., 2006, str. 105-111. [6] D. A. Forsyth, J. Ponce, "Computer Vision: A Modern Approach", Prentice Hall, 2003, str. 436-444. Boris Simoncic je diplomiral leta 2009 na univerzitetnem sštudiju Fakultete za racšunalnisštvo in informatiko Univerze v Ljubljani. Peter Peer je docent na Fakulteti za racunalništvo in informatiko Univerze v Ljubljani.