Visual motion based Human-Computer Interface



Hasonló dokumentumok
10. Alakzatok és minták detektálása

Fuzzy rendszerek. A fuzzy halmaz és a fuzzy logika

Skálázottan merőleges kamera

Support Vector Machines

Panorámakép készítése

Biometrikus azonosítás érintőképernyős gesztúrákkal Touchscreen gestures for biometric identification

Méréselmélet: 5. előadás,

7. Regisztráció. Kató Zoltán. Képfeldolgozás és Számítógépes Grafika tanszék SZTE (

A KLT (Kanade Lucas Tomasi) Feature Tracker Működése (jellegzetes pontok választása és követése)

Philosophiae Doctores. A sorozatban megjelent kötetek listája a kötet végén található

Intelligens elosztott rendszerek

Optikai elmozdulás érzékelő illesztése STMF4 mikrovezérlőhöz és robot helyzetérzékelése. Szakdolgozat

Hely és elmozdulás - meghatározás távolságméréssel

Békefi Zoltán. Közlekedési létesítmények élettartamra vonatkozó hatékonyság vizsgálati módszereinek fejlesztése. PhD Disszertáció

ALGORITMUSOK, ALGORITMUS-LEÍRÓ ESZKÖZÖK

Statisztikai próbák. Ugyanazon problémára sokszor megvan mindkét eljárás.

Osztályozó algoritmusok vizsgálata

Hipotézis vizsgálatok. Egy példa. Hipotézisek. A megfigyelt változó eloszlása Kérdés: Hatásos a lázcsillapító gyógyszer?

Dr. Ratkó István. Matematikai módszerek orvosi alkalmazásai Magyar Tudomány Napja. Gábor Dénes Főiskola

4 2 lapultsági együttható =

The original laser distance meter. The original laser distance meter

Alapmőveletek koncentrált erıkkel

CAD-CAM-CAE Példatár

6. gyakorlat. Gelle Kitti. Csendes Tibor Somogyi Viktor. London András. jegyzetei alapján

Item-válasz-elmélet alapú adaptív tesztelés. Item Response Theory based adaptive testing

Tantárgyi koncentráció: Rajz, magyar, matematika, környezetismeret

1.Tartalomjegyzék 1. 1.Tartalomjegyzék

s n s x A m és az átlag Standard hiba A m becslése Információ tartalom Átlag Konfidencia intervallum Pont becslés Intervallum becslés

Az elektromos kölcsönhatás

Az entrópia statisztikus értelmezése

II. Rákóczi Ferenc Kárpátaljai Magyar Fıiskola. Pataki Gábor. STATISZTIKA I. Jegyzet

Leica DISTOTMD510. X310 The original laser distance meter. The original laser distance meter

Egy negyedrendű rekurzív sorozatcsaládról

Régió alapú szegmentálás. Digitális képelemzés alapvető algoritmusai. 2. példa: Elfogadható eredmények. 1. példa: Jó eredmények. Csetverikov Dmitrij

KOMBINATORIKA ELŐADÁS osztatlan matematika tanár hallgatók számára. Szita formula

Lineáris regresszió. Statisztika I., 4. alkalom

ALAKOS KÖRKÉS PONTOSSÁGI VIZSGÁLATA EXCEL ALAPÚ SZOFTVERREL OKTATÁSI SEGÉDLET. Összeállította: Dr. Szabó Sándor

8. Programozási tételek felsoroló típusokra

8. Pontmegfeleltetések

3515, Miskolc-Egyetemváros

Egyenáramú szervomotor modellezése

METROLÓGIA ÉS HIBASZÁMíTÁS

Periodikus figyelésű készletezési modell megoldása általános feltételek mellett

Modern Fizika Labor Fizika BSC

MŰSZAKI TUDOMÁNYI DOKTORI ISKOLA. Napkollektorok üzemi jellemzőinek modellezése

Variációs módszerek a gépi látásban

Mechatronika segédlet 3. gyakorlat

MEZŐGAZDASÁGI TERMÉKEK FELVÁSÁRLÁSI FOLYAMATÁNAK SZIMULÁCIÓJA, KÜLÖNÖS TEKINTETTEL A CUKORRÉPÁRA OTKA

A neurális hálózatok alapjai

Elosztott rendszerek játékelméleti elemzése: tervezés és öszönzés. Toka László

IDA ELŐADÁS I. Bolgár Bence október 17.

LABMASTER anyagvizsgáló program

Regresszió. Fő cél: jóslás Történhet:

április 24. INFO Savaria április 24. INFO Savaria április 24. INFO Savaria

2. személyes konzultáció. Széchenyi István Egyetem

3D számítógépes geometria és alakzatrekonstrukció

Forgácsolási paraméterek mûvelet szintû optimalizálása

d(f(x), f(y)) q d(x, y), ahol 0 q < 1.

Reaktivitás on-line digitális mérhetősége virtuális méréstechnikával

A multikritériumos elemzés célja, alkalmazási területe, adat-transzformációs eljárások, az osztályozási eljárások lényege

Adatstruktúrák, algoritmusok, objektumok

Jelek és rendszerek Gyakorlat_02. A gyakorlat célja megismerkedni a MATLAB Simulink mőködésével, filozófiájával.

Teljesítmény Mérés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Teljesítmény Mérés / 20

Kvantum-tömörítés II.

Minősítéses mérőrendszerek képességvizsgálata

6. Alkalom. Kép ClipArt WordArt Szimbólum Körlevél. K é p

Kiegészítés a felületi hullámossághoz és a forgácsképződéshez. 1. ábra. ( 2 ) A szögváltozó kifejezése:

Indirekt térfogat-vizualizáció. Fourier térfogat-vizualizáció. Tomográfiás rekonstrukció. Radon-transzformáció. A Fourier vetítő sík tétel

Teljes eseményrendszer. Valószínőségszámítás. Példák. Teljes valószínőség tétele. Példa. Bayes tétele

Térbeli transzformációk, a tér leképezése síkra

/11 Változtatások joga fenntartva. Kezelési útmutató. UltraGas kondenzációs gázkazán. Az energia megőrzése környezetünk védelme

Adatsorok jellegadó értékei

HA8EV ORBITRON Programmal vezérelt Azimut/Elevációs forgató elektronika v10.0

4 Approximációs algoritmusok szorzatalakú hálózatok esetén

MIKROFYN GÉPVEZÉRLÉSEK. 2D megoldások:

Mechanizmusok vegyes dinamikájának elemzése

3D - geometriai modellezés, alakzatrekonstrukció, nyomtatás

A dinamikus geometriai rendszerek használatának egy lehetséges területe

FILMHANG RESTAURÁLÁS: A NEMLINEÁRIS KOMPENZÁLÁS

Chipkártya alapú elektronikus szavazórendszer tervezése és implementálása

Feladatok MATEMATIKÁBÓL II.

Algoritmusok és adatszerkezetek gyakorlat 09 Rendezések

MPEG-4 modell alkalmazása szájmozgás megjelenítésére

Térinformatikai DGPS NTRIP vétel és feldolgozás

Ciklikusan változó igényűkészletezési modell megoldása dinamikus programozással

Bevezetés a kémiai termodinamikába

Biostatisztika e-book Dr. Dinya Elek

CAD-CAM-CAE Példatár

Összegzés a 92/2011.(XII.30.) NFM rendelet 9. melléklete alapján

Ember-robot kölcsönhatás. Biztonsági kihívások

5.1. A szállítás fontosabb jellemzői Hoover-féle egyik alapkő: a szállítási/közlekedési költségek minimalizálása transzferálható inputok és outputok

A korlátozás programozás alapjai

ORVOSI STATISZTIKA. Az orvosi statisztika helye. Egyéb példák. Példa: test hőmérséklet. Lehet kérdés? Statisztika. Élettan Anatómia Kémia. Kérdések!

Bevezető milyen információkkal rendelkezik a magyar lakosság ezekről a termékkategóriákról Módszertan:

OPTIMALIZÁLT LÉPÉSKÖZŰ NEWTON-RAPHSON ALGORITMUS EHD FELADAT MEGOLDÁSÁHOZ

* Az eszköztáron látható menüpontok közül csak a felsoroltak esetén használható a Ctrl.

Adat mentés. A program segítség file-ok, mappák mentésében. Mentési csomagokat állíthatunk össze.

VARIANCIAANALÍZIS (szóráselemzés, ANOVA)

Mobil Telefonon Keresztüli Felügyelet Felhasználói Kézikönyv

3D - geometriai modellezés, alakzatrekonstrukció, nyomtatás

Átírás:

Project 4: Vsual moton based Human-Computer Interface Számítógépes Látás kurzus 2007/08. 3. ellenırzés pont (2007-12-11)

Számítógépes látás 2007 Project 4. 2 / 12 Tartalomjegyzék Csapattagok...3 Feladat...3 Háttér...3 Meglévı hasonló rendszerek...4 OpenCV...4 Optcal flow...4 Phase correlaton...4 Block matchng...4 Lucas Kanade módszer...4 Módszerek...5 1. módszer...5 Feature pont kválasztás...5 FP elmozdulásának meghatározása...5 Globáls transzformácó meghatározás...7 2. módszer (saját ötletek alapján)...8 A fejlesztés technka részlete...9 A program használata...9 Tesztelı környzet...9 Eredmények...10 1. ellenırzés pont...10 2. ellenırzés pont...10 3. ellenırzés pont...10 Tovább lehetıségek... 11 Mozgás predkcó... 11 Térképnézegetı... 11 Térképszoftveren lokalzácó... 11 Készülékek általános vezérlése...12 3D tervezıprogramok segítése...12 Hvatkozások...12

Számítógépes látás 2007 Project 4. 3 / 12 Csapattagok Jaksa Zsombor Németh József Ung Tamás Utas Tamás Jaksa.Zsombor@stud.u-szeged.hu Nemeth.Jozsef@stud.u-szeged.hu Ung.Tamas@stud.u-szeged.hu Utas.Tamas@stud.u-szeged.hu Feladat Human-Computer Interface (HCI) fejlesztése olcsó webkamera segítségével. A kamera mozgását a kamera által továbbított képek alapján kell megbecsüln. Az nterface vezérlése a kézben tartott kamera mozgatásával történk, így 3D mutatóként használható. Egy egyszerő képnézegetı program vezérlését s meg kell valósítan az alább módon: vízszntes mozgás az képet bal-jobb rányban mozgatja függıleges mozgás a képet fel-le mozgatja elıre-hátra mozgás a képet nagyítja és kcsnyít Háttér 1963-ban a Stanford Kutatóntézeben Douglas Engelbart felvetette az egér gondolatát. Mára egy mndenk által használt eszköz lett, de azóta nemgazán történt elırelépés a hétköznap használatra szánt számítógépek perférának pacán. A technka fejlıdésével megjelent az gény a számítógépek könnyő használhatóságára. Szükségessé vált, hogy az ember ne csak bllentyőzeten tudjon kommunkáln a géppel, telefonnal. Újfajta ember-számítógép nterfészek jelentek meg. Modern autókban a fedélzet számítógépek megértk a szóbel utasításokat, ntellgens kvetítıkre lehet ujjal rajzoln. Az lyen nterfészek megkönnyíthetk a fogyatékkal élık életét s, mnt például jelbeszédfelsmerı rendszerek, vagy a vakokat segítı hangalapú rendszerek. A mobl számítógépek (telefonok) esetében s komoly probléma a kezelhetıség ks méretük matt. Ezért mára már khagyhatatlan részének számító kamera s egy fontos bevtel perféraként használható. Képnézegetık, játékok, webböngészık rányítását lehet megkönnyíten a kamera képébıl knyerhetı mozgásnformácó felhasználásával. Ez a technka egészen új lehetıségeket s teremtett, melynek jelentıségét növel, hogy a mobl számítástechnka eszközök növekvı teret foglalnak az nformatka üzletágban [1].

Számítógépes látás 2007 Project 4. 4 / 12 Meglévı hasonló rendszerek Egy megvalósítás leírása elérhetı [2], melyet megvalósítva azt összehasonlíthatjuk az általunk fejlesztett módszerrel. A feladattal rokon alkalmazás, amkor a kamera rögzített és a felhasználó a kezét vagy az arcát mozgatja, ezzel rányítva egy programot. Ilyen alkalmazás s létezk, mely képes az arc egyes részet külön s értelmezn [3]. OpenCV Az OpenCV egy C++ nyelven írt open-source függvénygyőjtemény, melynek elsıdleges célja a valós dejő számítógépes látás segítése. Fejlesztését az Intel kezdeményezte, de mára nagyon sokan járultak hozzá. Platformfüggetlen forráskódja letölthetı a következı címrıl: http://sourceforge.net/projects/opencvlbrary/ Optcal flow Mvel a mozgásérzékelı programunkat általános felhasználásra tervezzük, nem használhatunk k semmlyen elızetes nformácót a kamera által érzékelt objektumokról. Ezért azokat a módszereket, amelyek objektum felsmerésen alapszanak, nem használhatjuk. Általános esetben a kép elmozdulást az optcal flow-val jellemezzük. Az optcal flow egy olyan módszer, amely vzuálsan reprezentált tárgyak elmozdulását határozza meg. Jellemzıen vektorokkal írjuk le, melyek képpontokból erednek vagy képpontokba mutatnak egy képsorozatban [4]. Az optcal flow számítására több módszer s létezk, rövden felsorolunk néhányat a legfontosabb jellemzıkkel együtt: Phase correlaton Ez a módszer azt használja k hogy az eredet képen az eltolás a frekvencatérben fázseltolódásként jelenk meg [5]. Gyors módszer, real-tme megvalósításra alkalmas, de mvel csak az eltolást és a forgatást detektálja, számunkra nem teljesen megfelelı, mvel nekünk a zoom funkcóhoz a nagyítás faktorra s szükségünk van. Block matchng Ez a módszer egy egyszerő template matchng algortmus szabályosan kválasztott képrészletekre alkalmazva [6]. A leírások alapján nem elég pontos módszer. Lucas Kanade módszer Ez a legnépszerőbb optcal flow meghatározó módszer, mely vszonylag régóta smert [7]. Érdemes csak néhány elıre meghatározott feature pontokra alkalmazn [8], így real-tme megvalósítása gyengébb hardware-en s lehetséges.

Számítógépes látás 2007 Project 4. 5 / 12 Módszerek 1. módszer Elıször egy már publkált módszert mplementáltunk[2], hogy lehetıségünk legyen a saját megvalósítás ötletenket összehasonlítan. Ennek a módszernek lényege az alább ábrán látható: feature pontok keresése feature pontok követése feature pontok szurése transzformácó meghatározás mozgás utófeldolgozás Feature pont kválasztás 1. ábra: Az elsı módszer folyamatábrája. A vdeó képet 4 4 régóra bontjuk, és mndegykben meghározunk egy feature pontot (FP). Az lesz a régóhoz tartozó FP, amelyknek a környezetében maxmáls a horzontáls és vertkáls derváltak összege. Egy (x,y) pontban jelölje G(x,y) a két parcáls dervált összegét: G ( x, y) = ( I( x, y) I( x 1, y) ) 2 + ( I( x, y) I( x, y 1 )) 2 Ezzel a jelöléssel a FP kválasztás az alább krtérum alapján történk: p = max G(x, y (x,y) R (x,y) B ) ahol p az -edk FP, R az aktuáls kép régó, B az -edk FP-hez tartozó kép blokk, amely egy FP középpontú ks mérető négyzet alakú része a képnek (a m esetünkben pl. 7 7 mérető). FP elmozdulásának meghatározása Az FP-k kválasztása után a következı képkockán meg kell határoznunk azok elmozdulását. Ehhez bevezetjük az -edk FP-hez és v elmozduláshoz tartozó SSD mértéket, melyet az FP körül B blokkban számítunk az alább képlet alapján: D ( v, B ) ( ( ) ( ) 2 = Ik x, y Ik+ 1 x+ vx, y+ vy (x,y) B Azt az elmozdulást választjuk mnden ponthoz, amely egy adott keresés ablakon (W) belül a mnmáls SSD értéket adja: v W ( B ) v = mn D v, Ezt a módszert nevezk block-matchng-nek. Mőködését két teszt képpel llusztráljuk, melyeken pros keretekkel vannak jelölve az FP középpontú blokkok.

Számítógépes látás 2007 Project 4. 6 / 12 SSD SSD 2. ábra: Átlagos block-matchng SSD értékek a 16 darab FP-tól számított -20...+20 távolságban (vízszntes tengelyek) két különbözı nput képen. A felsı képen a FP-ok egyed környezettel bírnak, míg az alsó képen perodkus mntázatban helyezkednek el. Jól látható módon ennek a módszernek az a hátránya, hogy a valós elmozduláshoz képest az SSD mnmuma ettıl eltérı helyre kerül, melynek oka egyrészt a kép dszkretzácója, másrészt a képen smétlıdı ksebb mnták jelenléte. Ezért a legjobb blokk lleszkedésen kívül fgyelembe vesszük azokat a pontokat s, amelyek még bzonyos valószínőséggel takarhatják a valós FP elmozdulást. p -hez tartozó lehetséges elmozdulások halmaza legyen V : { v D( v,b ) < k G( B ) k } V = + 1 2 ahol G(B ) a B blokkon belül (x,y) pontok G(x,y) értékenek összege. k1 és k2 konstansokat kísérlet úton határozzuk meg, a m esetünkben a k 1 =0,6 és k 2 =4 értékek bzonyultak használhatónak. A szóbajövı elmozdulások llusztrálására bemutatjuk az alább négy képet, melyeken kékre színeztük azokat a pontokat, melyek lehetséges elmozdulása a zöld-pros FP-oknak. Érdemes megfgyeln hogy a sarokpontok elmozdulását nagy bztonsággal meg tudjuk határozn, az éleken elhelyezkedı pontok elmozdulása az éllel párhuzamosan bzonytalan, míg a vszonylag homogén területen az elmozdulás meghatározása mnden rányban bzonytalan, amt a nagy kterjedéső kék területek jeleznek:

Számítógépes látás 2007 Project 4. 7 / 12 3. ábra: A zöld-pros FP-k lehetséges elmozdulásat kék pontok jelölk. V halmaz eltárolása helyett, csak azok kovarancamátrxát (ks módosítással) tároljuk: 1 C = N v V 1 12 T ( v v)( v v) + I Ezt a formulát részletesen ndokolják a szerzık egy korább munkájukban[9]. Globáls transzformácó meghatározás Az elmozdulás leírására nem a hagyományos transzformácós mátrxokat használjuk (affn transzformácó esetén 2x2 mérető mátrx), hanem egy θ-val jelölt 4x1 mérető mátrxot: x p= y θ1 1 0 x y θ 2 v= v( θ, p) = = H p 0 1 y x θ 3 θ4 ( ) θ Ebben a módszerben tehát elmozdulást (θ 1 és θ 2 ), valamnt forgatást és skálázást (θ 3 és θ 4 ) határozunk meg, melyet globáls transzformácónak nevezünk az egyes képkockák között. A 16 FP elmozdulás közül elvetjük azokat amelyek nncsenek összhangban a többség által meghatározott transzformácóval, ezt nevezzük outler analyss-nek. Ehhez egy RANSAC-hoz hasonló módszert használunk, azzal a különbséggel hogy a 16 FP által alkotott mnden lehetséges pontpárhoz meghatározzuk a velük összhangban elmozduló pontok számát, valamnt fgyelembe vesszük hogy nem egy dszkrét elmozdulás érték tartozk egy ponthoz, hanem még egy kovaranca mátrx s, amely tartalmazza az elmozdulás bzonytalanságát két különbözı rányban.

Számítógépes látás 2007 Project 4. 8 / 12 A legtöbb "szavazatot" kapó pontpár transzformácós csoportjában lévı elmozdulásokból BLUE (Best Lnear Unbased Estmator) módszerrel határozzuk meg a globáls transzformácót, a szerzık által leírt módon. A mozgás utólagos símítását Kálmán flter helyett jelenleg három képkocka egyszerő átlagolásával oldottuk meg, amely a gyakorlatban kelégítınek bzonyul. Ez az egyetlen algortmkus eltérés amelyet a szerzık leírásához képest a saját mplementácónkban végeztünk. 2. módszer (saját ötletek alapján) A meglévı megoldások és az elérhetı könyvtárak alapján a következı saját megvalósítást tervezzük a feladat megoldására: feature pontok keresése feature pontok követése feature pontok szurése transzformácó meghatározás mozgás utófeldolgozás OpenCV, Hesse sajátértékek Lukas-Kenade (template-matchng) RANSAC affn transzformácó SVD felbontással átlagolás 4. ábra: Az általunk fejlesztett HCI algortmus vázlata. A feature pontok meghatározására jó és hatékony mplementácót találtunk OpenCV-ben. A függvény neve GoodFeaturesToTrack. Ez a pontok közül azokat választja k, melyeknek lokálsan a legnagyobbak a Hesse mátrx sajátértéke. A pontok Lukas-Kenade szernt követése szntén meg van valósítva OpenCV függvényként (cvcalcoptcalflowpyrlk). Ez hatékony, mvel a pontkövetést két-szntő képpramson végz, template matchng segítségével. Mvel a pont megfeleltetések túldefnálják a transzformácót, ezért elıször az outler-eket k kell szőrn, amre a RANSAC algortmust használjuk. Véletlenszerően kválasztott pontok által meghatározott transzformácóra megnézzük hogy a több pontmegfeleltetést mennyre elégítk k valamlyen küszöb alatt hbával. T p 1, p2, p3 [ p p p ][ p p ] 1 = p 1 2 3 1 2 ahol p-k a véletlenszerően kválasztott pontok, T pedg az affn transzformácó. Az -edk pont szavazatszáma a j 1, j 2, j 3 pontokra: K E( p ) E( p ) = d( p, Tp p p p K j, j, ) < 1 2 j3 V ( p j, p j, p j ) = 1 2 3 0 különben 3 ahol K tapasztalat úton választott küszöbérték (a m esetünkben 15), d az eukldesz távolság, E pedg a hba mértéke. A legjobb pontokat és a rájuk szavazó pontokat tartjuk meg. A megmaradó pontokból még mndg túldefnált egyenletrendszert kapunk: T [ p p... p ][ p p p ] 1 = 1 2 n 1 2... n A jobboldalon található nverz számítást SVD felbontással közelítjük.

Számítógépes látás 2007 Project 4. 9 / 12 A mozgás utófeldolgozását jelenleg a 3 utolsó elmozdulás súlyozott átlagolásával oldjuk meg. A fejlesztés technka részlete Egyk célunk, hogy a fejlesztett forráskódban csak ngyenes, open-source eszközöket használjunk, valamnt a kód változtatás nélkül fordítható legyen az különbözı platformokon (Wndows és Lnux). A fordítás elıkészítését CMake-kel végezzük, amely egy konfgurácós text fle-ból különbözı platformokra elıkészít a fordítást, pl. GCC-hez makefle-t csnál, Vsual Studo-hoz projekt fle-t. Fordítás környezetün részletet a következı címen publkussá tettük: http://opencvlbrary.sourceforge.net/gettng_started A kamera képenek beolvasása, képfeldolgozó mőveletek és numerkus mőveletek elvégzéséhez az OpenCV könyvtár függvényet használjuk. A program használata A programot parancsor termnálból neye.exe futtatásával ndítjuk, mely egy kötelezı paramétert vár, a böngészn kívánt képfájl nevét. Másodk opcnáls paraméterként teszt nput vdeófájlt lehet megadn, ezesetben ennek a képet használja webkamera helyett. Futtatás közben az alább funkcóbllentyőket használhatjuk: 's' : pozícó alaphelyzetbe állítás; 'r' : forgatás engedélyezés/tltás; 'x' : klépés; +/- : zoomolás. A képben való navgácó a feladatkírásnak megfelelıen a webkamera mozgatásával történk. Tesztelı környzet Az általunk fejlesztett HCI mnıségét az alább teszt segítségével mérjük. Az 5. ábrán látható képeket nytjuk meg navgácó céljából. A HCI segítségével úgy kell navgáln a képeken hogy a zöld pontból eljussunk a pros pontg, mközben a látómezı csak a fekete és sárga mezıket érnthet (a kéket nem). A kék mezık érntése hbának számít. A fekete utakon úgy kell haladn hogy mndg legyen sárga mezı a látómezıben. Ha a sárga mezın hurok van, akkor azon a helyen az egész hurkot látómezıbe kell hozn. A három képen végghaladva számoljuk a hbák számát. 5. ábra: Tesztképek navgácóhoz.

Számítógépes látás 2007 Project 4. 10 / 12 Eredmények 1. ellenırzés pont A fejlesztı környezetet, az OpenCV és VTK könyvtárak összelnkelését megoldottuk. Készítettünk két egyszerő demóprogramot. Az egyk a feladatot oldja meg, a másk egy 3D-s objektumot forgat a fej jobbra-balra mozgatásával egyszerre a montorra rögzített kamera segítségével. A demó programokról készült vdeónk a következı lnkeken elérhetık: http://www.youtube.com/watch?v=kny-u6h7wm http://www.youtube.com/watch?v=hm-fwnr5uzu 2. ellenırzés pont Elkészítettük a [2] referencában leírt módszer mplementácóját, azzal az egyetlen módosítással, hogy a mozgás utófeldolgozása nem Kálmán flterrel, hanem egyszerő átlagolással történk. Mvel véleményünk szernt e módszer bonyolultsága nem áll arányban a hatékonyságával, úgy döntöttünk hogy saját ötleteken alapuló módszert s mplementálunk. A két módszer futásdejének elemzését az alább ábrán mutatjuk be: sec 0.07 0.06 0.05 0.04 0.03 0.02 0.01 : 1. módszer : m módszerünk 0 1 FP 2 outler 3 4 követés analyss FP választás gobáls mozgás 5. ábra: A két mplementácó futásdejének elemzése. Az FP kválasztás és követés az 1. módszerben mőveletgényesebb mnt az OpenCV úgyanezt a feladatot ellátó függvénye. Az outler analízsnél a bonyolultabb mátrxmőveletek lelassítják a RANSAC mőködését az 1. módszer esetén. Ennek oka az elmozdulás meghatározás hbájának továbbvtele kovarancamátrxok formájában. 3. ellenırzés pont Megpróbáltuk a frame-ek között globáls fényerı változást frame-enként hsztogram kegyenlítéssel kompenzáln, de mvel ez lokálsan nagy eltéréseket okozott az átlag pxelértékekben, az eredményenket rontotta, ezért ezt az ötletet elvetettük.

Számítógépes látás 2007 Project 4. 11 / 12 A navgácós tesztképekkel bzonyítottuk hogy a m módszerünkkel s el lehet érn a kívánt pontosságot, hszen a feladatok hba nélkül teljesíthetık. Célunk volt a számítások gyorsítása. A mátrxmőveletek futás dejét skerült csökkentenünk az mplementácó hatékonyabbá tételével, kevesebb szükségtelen memórafoglalás használatával. A használhatóságot javítottuk az utófeldolgozás közben végzett átlagolás súlyozásával. Tesztelés közben megfgyeltük hogy a kamerától kapott kép mérete jelentısen befolyásolja a futás sebességét, ezért méréseket végeztünk az összefüggés felderítése céljából (6. ábra). Ezek alapján skerült megtaláln a leghasználhatóbb felbontást a m tesztelı hardverünkre (160x120). 18 16 14 frame / sec 12 10 8 6 4 2 0 0 20 40 60 80 100 klopxel 6. ábra: Input képméret és futás sebesség összefüggése. Tovább lehetıségek Mozgás predkcó Feature pont szegény nput kép esetén a korább nformácók alapján valamekkora dıtartományban jósolható lehet a mozgás. Ezzel ellensúlyozn lehet homogén területek fölött kamera áthúzást. Térképnézegetı A feladatban meghatározott képnézegetı program specáls esete amkor térképet nézünk mobltelefonon vagy PDA-n. Ez az felhasználás különösen hasznos. Térképszoftveren lokalzácó A GPS helymeghatározó rendszerek egyk korlátja hogy csak néhány méteres pontossággal képesek az elmozdulást érzékeln. Ezért pl. amkor elndulunk egy rányba akkor akár több tíz métert s megtehetünk mre a GPS jel alapján a térképszoftver el tudja dönten hogy mlyen rányba ndultunk és

Számítógépes látás 2007 Project 4. 12 / 12 ahhoz képest merre kanyarodjunk. Ha a navgáló készüléket kegészítjük egy földre rányuló kamerából származó mozgásnformácóval (pl. autó aljára szerelve), akkor ez nagyon jól kegészítené a GPS pontatlanságát ks távolságokon. Készülékek általános vezérlése A mobl készülékek mozgásnformácót nem csak másféle mozgássá transzformálhatjuk (pl. kép mozgatása) hanem egyéb parancsokat s rendelhetünk a mozgásokhoz. Például a jobbra-balra gyors mozgatás megnythatja a telefonkönyvet, a körbe mozgatás megnythat egy programot stb. Egy fotó sorozat megnézése közben kameránkkal apró mozdulatot tehetünk jobbra vagy balra ezáltal lapozva oda-vssza a képek között. 3D tervezıprogramok segítése Úgy kell tennünk, mntha a valóságban akarnánk megnézn bármlyen 3D-s objektumot. A kamera elıtt ülve csak balra-jobbra, elıre -hátra dılünk, az alkalmazásunk pedg a kamera képe alapján elforgatja, átméretez a montoron látható objektumot. Ez nagyban segíthet a 3D-s szerkesztıprogramok kényelmes használatát, mvel általában nagyon sok nterakcó kell a pontos szerkesztéshez. Hvatkozások 1. Judy York and Parag C. Pendharkar. Human-computer nteracton ssues for moble computng n a varable work context. Internatonal Journal of Human-Computer Studes. HCI Issues n Moble Computng, 2004 (60); 771-797. 2. Hannuksela J, Sang P. Hekklä J. Vson-based moton estmaton for nteracton wth moble devces. Computer Vson and Image Understandng: Specal Issue on Vson for Human- Computer Interacton, 108(1-2):188-195. 3. Jln Tu, Ha Tao and Thomas Huang. Face as mouse through vsual face trackng. Computer Vson and Image Understandng. 2007 (108); 35-40. 4. http://en.wkpeda.org/wk/optcal_flow 5. E. De Castro and C. Morand. Regstraton of Translated and Rotated Images Usng Fnte Fourer Transforms. IEEE Transactons on pattern analyss and machne ntellgence, Sept. 1987. 6. http://www.fxgude.com/artcle333.html 7. Lucas BD and Kanade T. An teratve mage regstraton technque wth an applcaton to stereo vson. Proceedngs of Imagng understandng workshop 1981. pp 121 130. 8. Tomas C, Kanade T. Detecton and Trackng of Pont Features. Tech Report 1991. http://www.ces.clemson.edu/~stb/klt/tomas-kanade-techreport-1991.pdf 9. Sang P, Hekkla J, Slven O. Moton analyss usng frame dfferences wth spatal gradent measures. Pattern Recognton, 2004. ICPR 2004. Proceedngs of the 17th Internatonal Conference on, Volume 4, Issue, 23-26 Aug. 2004: 733-736.