Pannon Egyetem Informatikai Tudományok Doktori Iskola
Tanuló és adaptív videófeldolgozó eljárások Doktori (PhD) értekezés Licsár Attila Képfeldolgozás és Neuroszámítógépek Tanszék Témavezető: Prof. Szirányi Tamás
Veszprém, 2007.
TANULÓ ÉS ADAPTÍV VIDEÓFELDOLGOZÓ ELJÁRÁSOK Értekezés doktori (PhD) fokozat elnyerése érdekében Írta: Licsár Attila Készült a Pannon Egyetem Informatikai Tudományok Doktori Iskolája keretében
Témavezető: Prof. Szirányi Tamás
Elfogadásra javaslom igen / nem
Veszprém, 2007. május 29.
………………………. Prof. Szirányi Tamás
A jelölt a doktori szigorlaton …......... % -ot ért el.
Az értekezést bírálóként elfogadásra javaslom:
Bíráló neve: …........................ …................. igen /nem ………………………. (aláírás)
Bíráló neve: …........................ …................. igen /nem ………………………. (aláírás)
A jelölt az értekezés nyilvános vitáján …..........% - ot ért el
Veszprém
…………………………. a Bíráló Bizottság elnöke
A doktori (PhD) oklevél minősítése…................................. ………………………… Az EDT elnöke
Tartalomjegyzék
TARTALMI KIVONAT ................................................................................................................................I SUMMARY OF CONTENTS...................................................................................................................... II ZUSAMMENFASSUNG ............................................................................................................................ III 1. FEJEZET
CÉLKITŰZÉSEK ................................................................................................................ 1
2. FEJEZET
FELHASZNÁLÓ-ADAPTÍV KÉZFELISMERŐ ELJÁRÁS INTERAKTÍV
TANÍTÁSSAL................................................................................................................................................ 3 2.1 BEVEZETÉS ............................................................................................................................................. 3 2.2 LÁTÁS ALAPÚ KÉZFELISMERŐ ELJÁRÁSOK SZAKIRODALMI ÁTTEKINTÉSE .............................................. 4 2.2.1 Kézjelek felismerésénél alkalmazott modellek áttekintése.............................................................. 5 2.2.2 Tanuló és osztályozó eljárások....................................................................................................... 6 2.3 KÉZJELEK FELHASZNÁLÁSA MULTIMÉDIÁS ALKALMAZÁSOKBAN .......................................................... 8 2.4 KÉZJELEK KONTÚR ALAPÚ FELISMERÉSE KAMERA-KIVETÍTŐ KÖRNYEZETBEN ....................................... 9 2.4.1 A kamera-kivetítő környezet kalibrációja..................................................................................... 13 2.4.2 Az előtér szegmentálása ............................................................................................................... 19 2.4.3 A kézfej szegmentációja................................................................................................................ 21 2.5 KÉZJELEK FELISMERÉSE IDŐBEN EGYMÁST KÖVETŐ KONTÚROK FELHASZNÁLÁSÁVAL ........................ 26 2.5.1 Fourier leíró alapú osztályozás.................................................................................................... 26 2.5.2 Kontúrleíró függvényekkel végzett kísérletek ............................................................................... 30 2.5.3 Kézjelek felismerése az időben egymást követő kézjelek vizsgálatával ........................................ 33 2.6 INTERAKTÍV TANÍTÓ ELJÁRÁS ............................................................................................................... 33 2.6.1 Kézjelek nem felügyelt tanítása .................................................................................................... 35 2.6.2 Kézjelek felügyelt tanítása............................................................................................................ 35 2.7 KÍSÉRLETI EREDMÉNYEK ...................................................................................................................... 38 2.8 ÖSSZEFOGLALÁS .................................................................................................................................. 43 3. FEJEZET
ADAPTÍV KÉPSTABILIZÁCIÓS ELJÁRÁS ARCHÍV FILMEKEN ........................ 45
3.1 FILMMENTÉS ÉS RESTAURÁCIÓ ............................................................................................................. 45 3.1.1 Digitális filmrestaurációs eljárások............................................................................................. 46 3.1.2 Archív felvételek jellemző filmhibái ............................................................................................. 47 3.2 KÉPREMEGÉS FILMHIBA........................................................................................................................ 48 3.3 STABILIZÁCIÓS ELJÁRÁSOK ÁTTEKINTÉSE ............................................................................................ 49 3.4 NEM FELÜGYELT KÉPSTABILIZÁCIÓ ...................................................................................................... 52 3.5 MOZGÁSBECSLÉS FÁZIS-KORRELÁCIÓS ELJÁRÁSSAL ............................................................................ 54 3.6 ADAPTÍV STABILIZÁLÁS AUTOMATIKUS ROF KIVÁLASZTÁSSAL .......................................................... 58
3.7 KÍSÉRLETI EREDMÉNYEK ...................................................................................................................... 63 3.8 ÖSSZEFOGLALÁS .................................................................................................................................. 71 4. FEJEZET
TANÍTHATÓ FOLTHIBA-DETEKTÁLÓ ELJÁRÁS NAGYFELBONTÁSÚ
ARCHÍV FILMEKEN ................................................................................................................................ 72 4.1 BEVEZETÉS ........................................................................................................................................... 72 4.2 FOLTHIBÁT DETEKTÁLÓ ELJÁRÁSOK ÁTTEKINTÉSE .............................................................................. 74 4.3 FOLTHIBÁT DETEKTÁLÓ ELJÁRÁS LEÍRÁSA ........................................................................................... 78 4.3.1 A villódzás filmhiba korrigálása és foltok detektálása SROD eljárással ..................................... 80 4.3.2 Hamis pozitív találatok csökkentése ROI alapú mozgásbecsléssel .............................................. 84 4.3.3 Hamis pozitív találatok csökkentése objektum alapú osztályozó eljárással ................................. 90 4.4 REFERENCIA KÉPMASZK MEGHATÁROZÁSA FÉL-AUTOMATIKUS ELJÁRÁSSAL ...................................... 97 4.5 KÍSÉRLETI EREDMÉNYEK ...................................................................................................................... 98 4.5.1 ROI alapú mozgásbecslő eljárás kiértékelése .............................................................................. 99 4.5.2 A folthibák objektum alapú osztályozásának kiértékelése .......................................................... 102 4.5.3 Az emberi beavatkozás mennyiségének objektív vizsgálata........................................................ 105 4.6 ÖSSZEFOGLALÁS ................................................................................................................................ 107 ÖSSZEFOGLALÁS................................................................................................................................... 108 TÉZISCSOPORTOK ................................................................................................................................ 109 THESIS GROUPS ..................................................................................................................................... 112 ÚJ TUDOMÁNYOS EREDMÉNYEKHEZ KAPCSOLÓDÓ PUBLIKÁCIÓK ................................. 115 IRODALOMJEGYZÉK............................................................................................................................ 117
Köszönetnyilvánítás
Köszönettel tartozom témavezetőmnek Szirányi Tamás Professzor Úrnak a munkám során nyújtott segítségéért, útmutatásáért és támogatásáért. Köszönetet szeretnék mondani Dr. Czúni Lászlónak és a Pannon Egyetem Képfeldolgozás és Neuroszámítógépek Tanszék munkatársainak a segítségükért és a közös munkáért. Köszönöm
szüleimnek
sokéves
támogatásukat,
tanulmányaimat és segítették céljaim elérését.
amellyel
lehetővé
tették
Tanuló és adaptív videófeldolgozó eljárások
Tartalmi kivonat A disszertáció célja tanuló és adaptív módszerek kidolgozása videófeldolgozó eljárásokban, amelyek segítségével javítható az ember-gép kapcsolat minősége, növelhető az eljárások pontossága, a feldolgozás sebessége és csökkenthető az emberi beavatkozások mennyisége. Ennek érdekében a bemutatott eljárások felügyelt és nem felügyelt tanuló, illetve adaptív módszereket alkalmaznak. A disszertációban végzett kutatások két fő téma köré csoportosíthatóak: az embergép kapcsolat feltételeinek javítása a kéz gesztusainak hatékony és tanítható felismerésével, illetve az archív felvételek remegésének és folthibáinak korrekciójával foglalkozó módszerek. E feladatok mindegyikében a gyakorlati alkalmazhatóság, a valós körülmények vizsgálatával történt a főbb problémák meghatározása és a kutatás irányainak kijelölése. Az automatikus feldolgozás hibája esetén a pontosság növelése rendszerint kézi beavatkozással történik, amely csökkenti az eljárások hatékonyságát. Ezért a feladat a számítási hatékonyság növelése és az emberi beavatkozás minimalizálása azonos minőségű feldolgozás mellett. A vizsgált problémák a következők: kézjelek felismerési hatékonyságának csökkenése olyan felhasználó esetén, aki nem vett részt a tanító minták létrehozásában; képremegés automatikus stabilizációjának hibája összetett, komplex mozgást tartalmazó felvételeken; folthibák detektálásának hamis pozitív hibája, amely hatására a tévesen foltnak kijelölt képterületek tartalmát módosítja a korrekciót végző eljárás, ezzel meghamisítva az eredeti képi tartalmat. A munka főbb kutatási eredményei a következők: kézjelek tanítása a felhasználó és a számítógép közötti folyamatos interakció segítségével a felismerés pontosságának növelése érdekében; kéz kontúrjának kinyerése és felismerése kamera-kivetítő környezetben; képremegés filmhiba stabilizálása egy képterület (ROF, „region of fixation”) adaptív kiválasztásával; folthibák alacsony számításigényű detektálása nagyfelbontású képeken; az előzőleg detektált foltgyanús területek hamis pozitív (tévesen foltnak osztályozott) találatainak csökkentése a kinyert képi jellemzők osztályozásával. Az új tudományos eredmények tételes felsorolását a disszertáció végén található téziscsoportok tartalmazzák. i
Learning and Adaptive Video Processing Methods
Summary of Contents The dissertation aims the introduction of learning and adaptive methods in video processing tasks to improve the quality of the human-computer interaction, to increase speed and precision of the processing, and to reduce the amount of the necessary human intervention. For this reason the proposed procedures apply supervised, unsupervised learning and adaptive methods. The research work in the dissertation can be grouped into two main areas: improvement of conditions of the human-computer interaction by the efficient and trainable recognition of hand gestures; correction of image vibration and blotch defects on archive films. In all of these tasks the problem formulation and the selection of aims of researches have done by the analysis of real world situations and environments. The main scientific results of the work: training of hand gestures by continuous interaction between human and computer to improve the performance of the recognition, extraction and recognition of the contour of the hand in camera-projector environment, stabilization of image vibration by adaptive selection of ROF („region of fixation”), detection of blotches on high resolution images with low computational cost, classification of preliminary detected blotch candidates by extracted image features to remove false alarm (wrongly classified as non-blotch) regions. The list of the new scientific results is summarized in thesis groups at the end of dissertation.
ii
Lernmethoden und anpassungsfähige Methoden in der Video Verarbeitung
Zusammenfassung Das Ziel der Abhandlung ist die Ausarbeitung der Lern- und der anpassungsfähigen Methoden in der Video Verarbeitung, damit die Qualität der Mensch-ComputerInteraktion zu verbessern, die Präzision der Methoden und die Geschwindigkeit der Verarbeitung zu erhöhen, und die Menge der menschlichen Intervention zu verringern. Zu diesem Zweck beantragt jedes der vorgeschlagenen Verfahren anpassungsfähige Methoden, beziehungsweise überwachte und auch unüberwachte Lernmethoden. Die Forschungsarbeiten in der Abhandlung können in zwei Hauptbereiche gruppiert werden: sowohl Anerkennung und Lehre der menschlichen Handgesten, als auch die automatische Korrektur der Bilderschütterung und der Flecksdefekten auf Archivfilmen. In jeder Aufgabe haben die praxische Anstellbar, die Problemformulierung und die Auswahl von Zielen der Forschung durch die Analyse der realen Situationen getan. Die wissenschaftlichen Hauptsächlichresultate der Arbeit sind die verschiedene: Lehre der Handgesten durch ununterbrochene Interaktion zwischen dem Menschen und Computer, im Interesse der Erhöhung der Präzision von Anerkennung; der Extraction und der Anerkennung der Handgesten im Kamera-Projektor-System, Ausgleichung zu verbessern; Bilderschütterung durch anpassungsfähige Auswahl von ROF („region of fixation“); Abfragung der Flecke auf den Bildern mit der hohen Auflösung, mit niedrigen Berechnungskosten; Klassifikation der einleitenden ermittelten Fleckanwärter ist durch extrahierte Bildeigenschaften, um falsche Warnung (falsch eingestuft als Nichtfleck) Regionen zu entfernen. Die Liste der neuen wissenschaftlichen Resultaten werden in den Thesegruppen am Ende der Abhandlung zusammengefaßt.
iii
1. Fejezet Célkitűzések
1. Fejezet Célkitűzések
Az utóbbi évtizedekben a számítási teljesítmény növekedésével, a különböző képrögzítő és megjelenítő eszközök fejlődésével lehetővé vált a nagyfelbontású (pl. 6000x4000 képpont) képsorozatok feldolgozása, illetve kamerás rendszerek alkalmazásával a képi információ valós idejű analízise. A növekvő mennyiségű információ feldolgozásának hatékonyságát az adott eljárás sebessége, minősége mellett befolyásolja az emberi tényező is, amely az eljárás hibája esetén a manuálisan elvégzett korrekciót jelenti. Mivel az emberi beavatkozás lassítja a feldolgozás menetét és növeli annak költségeit, ezért lényeges hatékony és megbízható módszerek kidolgozása. A disszertációban bemutatott kutatások két fő téma köré csoportosíthatóak: az ember-gép kapcsolat feltételeinek javítása a kéz gesztusainak hatékony és tanítható felismerésével, illetve az archív felvételek remegésének („image vibration”) és folthibáinak („blotch”) korrekciójával foglalkozó módszerek. A vizsgált feladatok mindegyikében a probléma megfogalmazása és a kutatás irányainak kijelölése a valós felhasználási körülmények vizsgálatával történt, amikor is a számítógépnek mozgóképek gyors analízise alapján kell döntéseket és beavatkozásokat végeznie adaptív, tanuló eljárások segítségével. Erre utal disszertáció összefoglaló címe. A vizsgált problémák a videófeldolgozás néhány, a gyakorlati felhasználás szempontjából fontosnak tekinthető feladatával kapcsolatosak: 1) kézjelek felismerési hatékonyságának csökkenése olyan felhasználók esetén, akik nem vettek részt a gépi felismeréshez szükséges tanító minták létrehozásában [22,23]; 2) képremegés automatikus stabilizációjának hibája összetett, komplex mozgást tartalmazó felvételeken; 3) a folthibák automatikus detektálásának magas hamis pozitív hibarátája, aminek következtében a tévesen foltnak kijelölt képterületek tartalmát módosítja a korrekciót végző eljárás, ezzel meghamisítva az eredeti képi tartalmat.
1
1. Fejezet Célkitűzések
Az archív filmek hibáinak javításakor fontos szabály, hogy az eredeti képi tartalom nem módosulhat, kivéve, ha az információ sérülése miatt az elkerülhetetlen [24,25]. A vizsgált eljárásokban az automatikus feldolgozás hibája esetén rendszerint kézi beavatkozással történik a korrekció. A feldolgozás során további problémát jelentettek: •
A nagymennyiségű feldolgozandó adat a nagyfelbontású képsorozatok, illetve a valós idejű eljárások esetén.
•
Az archív filmekre jellemző képi hibák (pl. intenzitás villódzása, szemcsezaj) csökkentik a lokális és globális képi információ elemzésének és feldolgozásának megbízhatóságát.
Ezért a képsorozatok analízise és feldolgozása során további feladatot jelentett a különféle műveletek (pl. osztályozás, mozgásbecslés) számítási igényének csökkentése és megbízhatóságának, pontosságának növelése a különböző képi zajok esetén. A disszertáció célja olyan tanuló és adaptív módszerek kidolgozása az ismertetett videófeldolgozó eljárásokban, amelyek segítségével javítható az ember-gép kapcsolat hatékonysága, növelhető a feldolgozás sebessége, minősége, továbbá csökkenthető a szükséges emberi beavatkozás mennyisége.
2
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással 2.1 Bevezetés A számítógépes látással („computer vision”) kapcsolatos kutatások egyre fontosabbá válnak az ember-gép kapcsolat (EGK) javításában. Az EGK kutatási területe az ember és gép közötti interakción alapuló számítógépes rendszerek tervezésével, megvalósításával és értékelésével foglalkozik, amely célja a felek közötti kommunikáció minőségének javítása. A kapcsolat egy interfészen keresztül történik, amely szoftver és hardver komponensekből áll. Tipikus hardver alapú interfész például a billentyűzet, digitalizáló tábla, amelyek közvetlen fizikai kapcsolatot igényelnek a felhasználó és periféria között. Az EGK fejlesztések egyik fontos kutatási területe olyan kommunikáció kialakítása, amelyhez nem szükséges közvetlen fizikai kapcsolat a felhasználó és a beviteli eszköz között, ilyen például a beszédfelismerés [16,17], kézjelek, vagy az arc mimikájának vizsgálata [18,19,20], illetve az emberi test mozgásának felismerése [21]. Gesztusnak nevezzük az emberi test, vagy testrész jellegzetes mozgását, állapotát, amely valamely érzelmet vagy jelentést fejez ki. Kézfelismerő eljárásokban a felismerés hatékonyságát befolyásoló egyik tényező, hogy a különböző felhasználók eltérő módon formálhatják meg a gesztusokat. A legtöbb eljárás ezért egy előzetes gyűjtés során adott számú felhasználó kézjegyeiből vesz mintákat, amelyeket felhasználva végzi el a tanítást. A tanítást követően az ún. felismerési fázisban történik az aktuálisan megformált kézjel osztályozása. Jellemző probléma, hogy ha egy felhasználó nem vett részt a tanításban, kézjeleinek felismerési hatékonysága lecsökkenhet [22,23]. Ha az alkalmazott kézjel felismerési pontossága lecsökken, a felismerési fázis nem folytatható és a tanítást meg kell ismételni, amely során új mintákat kell gyűjteni az aktuális felhasználótól. Ezért a kutatás célja egy olyan felismerő és tanító eljárás elkészítése, amely alkalmazkodik a valós felhasználási körülményekhez és lehetővé teszi a felhasználók számára a tévesen felismert kézjelek újratanítását, így biztosítva a kézjel alapú interfész folyamatos és
3
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
megbízható működését. Ennek érdekében egy interaktív, a felhasználó és a számítógép közötti kölcsönhatáson alapuló tanító eljárás került kidolgozásra, amely a felismerési fázisba ágyazott tanítást tesz lehetővé a megfelelő felismerési hatékonyság elérése érdekében. A felhasználó és a számítógép közötti folyamatos kölcsönhatás miatt követelmény a tanuló és felismerő eljárások valós idejű működése. A
különböző
multimédiás
alkalmazások,
bemutatók
esetén
rendszeresen
alkalmaznak kivetítőket. A bemutatott kézfelismerő eljárás megvalósítása egy ún. kamera-kivetítő környezetben történt, amely lehetővé teszi a kivetített felhasználói felület kézjelekkel történő vezérlését. Az ilyen ún. kiterjesztett valóság („augmented reality”) alkalmazásokban a valódi tér elemeit (felhasználó kézjelei) a számítógép által generált elemek (kivetített háttér) bővítik ki, míg a virtuális valóság („virtual reality”) esetében kizárólag mesterségesen előállított elemek szerepelnek. A következő fejezetekben a kézjel modellek, felismerő eljárások, majd ezek multimédiás rendszerekben való alkalmazásának áttekintése következik. Az 2.4 fejezet tartalmazza a kamera-kivetítő rendszer leírását, a kéz tulajdonságvektorainak kinyerését és a felismerő eljárást a 2.5 fejezet, majd az erre épülő interaktív tanító eljárás leírását az 2.6 fejezet tárgyalja. Végül a kísérleti eredmények kiértékelése a 2.7 fejezetben olvasható. 2.2 Látás alapú kézfelismerő eljárások szakirodalmi áttekintése A kézjelek felismeréséhez első megközelítésben kézre húzható mechanikus kesztyűt alkalmaztak (pl.: CyberGloveTM, ShapeHandTM), amelybe beépített érzékelők közvetlenül mérik a kéz egyes paramétereit, például az ujjak és a tenyér síkja által bezárt szögeket. Előnyük, hogy nagy pontossággal, megbízhatóan működnek, azonban használatuk a kesztyű miatt kötöttséget jelent, ezért az eszközt csak speciális alkalmazásokban, például sebészeti szimulátorokban alkalmazzák. A számítási teljesítmény növekedése és a különböző kamera eszközök minőségének fejlődése lehetővé tette a számítógépes látást alkalmazó eljárások használatát az ember és gép közötti kommunikációban. Az egyes modellek alkalmazásakor lényeges, hogy a megfelelő képi jellemzők milyen biztonsággal nyerhetőek ki a kamera képéről. Ennek érdekében használható az ujjak és a tenyér pozíciójának meghatározásához különböző 4
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
színekre festett kesztyű [24,25], illetve a kéz adott pontjaira rögzített LED („Light Emitting Diode”) világítás [26]. Az alkalmazott kiegészítők (pl. kesztyű) azonban korlátozzák a kapcsolatot, ezért a természetesebb, kötetlenebb kommunikáció érdekében a kézjelek jelző eszköz („marker”) nélküli felismerése szükséges. Egy általános, látás alapú kézfelismerő eljárás a következő főbb komponensekre bontható: 1) a vizsgált kézjel matematikai modelljének definiálása; 2) a képi analízis során a választott modellnek megfelelő tulajdonságvektor kinyerése; 3) tanuló eljárás, amely a tanító mintákról kinyert tulajdonságvektorok alapján megalkotja a különböző kézjelek leírását a paramétertérben; 4) osztályozó eljárás, amely az aktuális kézjelről kinyert tulajdonságvektor alapján kiválasztja a megfelelő gesztus osztályát. A gesztusokat leíró matematikai modell időben statikus, illetve dinamikus jellemzőket tartalmazhat. A statikus jellemzők a kéz állapotát írják le egy adott időpillanatban (pl. kéz kontúrja), míg a dinamikus jellemzők a kéz állapotának változását adják meg az időben (pl. kéz pozíciójának változása, ujjak mozgásának leírása). 2.2.1 Kézjelek felismerésénél alkalmazott modellek áttekintése
A gesztus modellek két fő csoportra bonthatóak: 1) 3D-s modell alapú; 2) megjelenés alapú eljárásokra. A 3D-s modell alapú eljárások a kéz geometriai modellje [27] alapján az ujjak (ujjperccsontok által bezárt szög) és a tenyér paramétereit becsülik meg, majd e paraméterek alapján végzik el a kézjel felismerését. A kéz képéről az ujjpercek koordinátái alapján a modell paraméterei inverz kinematikai számításokkal adhatók meg [28,29]. E paraméterek becslése az ún. rosszul modellezhető („ill-posed”) problémák közé tartozik, mivel a paraméterek kiszámítására nincsen egyértelmű megoldás, ezért további megkötések alkalmazása szükséges. A módszer hátránya, hogy a becslés eredménye nagyban függ a képi jellemzők (pl. ujjpercek pontjainak meghatározásától) mérésének zajától. Ezért az ilyen típusú eljárások csak speciális körülmények között alkalmazhatóak, amely biztosítja a képi információ pontos meghatározását. A második csoportba a megjelenés alapú modellek tartoznak, amelyek a kéz 2D-s vetületi képének jellemzőit használják fel. A megjelenés alapú modellek alkalmazhatnak régió, vagy kontúr alapú képi tulajdonságokat, amelyek a szegmentált kéz képének 5
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
sziluettjét, annak textúráját, illetve a kéz kontúrját használják fel. Régió alapú eljárásokban használnak képi momentumokat [25,45], sajátvektor analízist [30], Zernike momentumokat [31], amelyek invariánsak a sziluett eltolására, forgatására és skálázására. Az ún. orientációs hisztogram alapú eljárás [32] a kéz képén található élek irány szerinti eloszlását vizsgálja. A hisztogramok euklidészi távolság alapú összehasonlítása függ a kéz orientációjától, így a felismerés csak a tanításnál is alkalmazott irányban alkalmazható. A kéz kontúrja meghatározható különböző geometriai leírókkal, amelyek a kontúrt hajlatpontokra és az azokat összekötő egyenesekre bontja fel. Így e szegmensek hossza és a hajlatpontoknál mérhető szögek alapján történik a kontúrvonal leírása [33,34], amely invariáns az eltolás és forgatás transzformációkra. A kontúrvonal hajlásszögeiből, illetve koordinátapontjai
alapján
számított
Fourier
transzformált
együtthatói
alapján
számolhatóak az ún. Fourier leírók [35,36], amelyek invariánsak eltolás, forgatás és skálázás transzformációkra. A módosított Fourier leírók módszere szórás alapú összehasonlító eljárást alkalmaz [37], amely jobb eredményt ad az euklidészi távolság alapú metrikánál [38]. A kontúr alapú eljárások előnye a régió alapú módszerekkel szemben, hogy számításigényük alacsonyabb, mivel a képi információ kinyeréséhez csak a kontúr pontjait használják fel, ezért alkalmasabbak valós idejű feldolgozó eljárások esetén is. 2.2.2 Tanuló és osztályozó eljárások
A kézfelismerő eljárások közös jellemzője, hogy működésük két fő lépésre, egy előzetes tanító, majd az ezt követő felismerési fázisra különíthető el. A gesztusok megformálása változhat a felhasználó személyétől (pl. a kéz, ujjak méretének különbsége miatt), illetve annak állapotától (pl. a felhasználó mennyire fáradt). Ezért olyan alkalmazásoknál, ahol több felhasználó lehetséges, fontos a kézjelek felhasználó-független felismerése. Ennek érdekében a következő megközelítéseket vizsgálja a szakirodalom: 1. A tanítás során több felhasználótól vesznek mintát, így létrehozva egy nagyméretű tanító halmaz, amelyek alapján kialakíthatóak az egyes osztályok paraméterei [22,39,40,41].
6
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
2. Dinamikus gesztusok alkalmazása, amelyek megformálása kevésbé jellemző egy adott felhasználóra, mint például a kéz mozgáspályája [23,42].
A tanításhoz felhasznált, különböző felhasználóktól vett minták számának emelésével növekszik a tanítás komplexitása és az osztályozáshoz szükséges feldolgozási idő. Athitsos [41] egy nagyméretű prototípus adatbázist hozott létre, amely alapján egy kézjel lekérdezése 3-4 másodpercet vett igénybe. Amennyiben a tesztelést végző felhasználó nem vett részt a tanításban, a kézjelek felismerési hatékonyság lecsökken. Ezt bizonyítja Ramamoorthy [22] kísérlete, ahol a tanítást végző felhasználók esetén a felismerési valószínűség 90-94% volt, azonban eltérő felhasználók esetén ez leromlott 60-85%-ra. Raytchev [23] kísérletében a felismerési arány lecsökkent 97.2%-ról 91.7%-ra, amennyiben eltérő felhasználó végezte a tanítást és tesztelést. Ezért ha a felhasználók személye előre nem ismert és így nem vehetnek részt az előzetes tanításban, akkor nem garantálható minden egyes kézjel robusztus felismerése. A gyakorlatban, ekkor a gesztus alapú interfész nem használható hatékonyan, mivel téves felismerés esetén fel kell függeszteni a felismerési fázist és új minták gyűjtésével a kézjelek tanítását meg kell ismételni. Lehetséges megoldás egy újonnan érkező felhasználó esetén egy előzetes tanítási ciklus elvégzése a felismerési fázis előtt, amely garantálná a kézjelek felismerését, azonban ez a megközelítés nehézkessé tenné a program használatát. Mivel a felhasználók személye és sorrendje előre nem ismert, a felhasználók kézjeleinek mintái előre nem tárolhatóak. A tanuló eljárások két fő típusa a felügyelt („supervised learning”) és a nem felügyelt tanulás („unsupervised learning”). A felügyelt tanulás során a cél egy olyan függvény becslése, amely a tanító halmaz mintái alapján számított képi jellemzők és az ezekhez rendelt osztályazonosító közötti kapcsolatot írja le. A nem felügyelt tanítás esetén nem állnak rendelkezésre címkével ellátott minták, hanem a kivont jellemzők közötti összefüggések, hasonlóságok alapján történik a tanulás. Felügyelt tanítást alkalmazó eljárások közül statikus és dinamikus kézjelek felismerésére alkalmazható visszacsatolt neurális hálózat [43], rejtett Markov modell („hidden markov model”) Baum-Welch tanító eljárással [40,25,44,42], döntési fa [24], illetve legközelebbi szomszédság alapú eljárások
7
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
[45,30,31,32]. Nem felügyelt tanítás esetén alkalmazható neurális hálózat önszervező tanulási eljárással [46], K-közép módszer és radiális bázisfüggvény hálózatok [39,47]. 2.3 Kézjelek felhasználása multimédiás alkalmazásokban A kézjelek felismerése különböző vezérlő és kommunikációs feladatokra alkalmazható, például robotok vezérlésére [48], siketek jelnyelvének felismerésére [25,65], továbbá különböző multimédiás alkalmazásokban, amelyekben a felhasználói felület a kézjelek segítségével vezérelhető. Számos eljárás dinamikus gesztusokat alkalmaz, amely a kéz mozgáspályája alapján ismerhető fel. A kéz mozgásának pályája különböző alfanumerikus karakterek és grafikus jelek alakját követik, így azok intuitív módon vihetőek be egy szövegszerkesztő alkalmazásban [44], illetve a jelek, mint vezérlő parancsok alkalmazhatóak egy PowerPoint™ bemutató vezérlése során [42]. E módszerek mivel csak a kéz pályáját vizsgálják, nem alkalmasak pozíció és vezérlő utasítások egyidejű bevitelére. Freeman [49] egy televízió vezérlésére alkalmazta a gesztusokat, ahol a kéz mozgatásával vezérelhető a képernyőn megjelenített kurzor, míg a megformált kézjel aktiválja a kurzor pozíciójától függő parancsot, például a szabályozza a hangerőt. Multimédiás előadások, alkalmazások esetén a költséges nagyméretű kijelzők helyett gyakran alkalmaznak kivetítő eszközöket. A SmartBoard [50] rendszer a felhasználói interfészt egy táblára vetíti ki, amelybe beépített nyomásérzékelők segítségével a kivetített alkalmazás érintésekkel vezérelhető. A BrightBoard [51] rendszere nyomásérzékelők helyett több mikrofont használ az érintés pozíciójának azonosításához. Ezekben a megoldásokban speciális hardver eszközöket alkalmaznak, azonban adott körülmények esetén a látás alapú, kamerát és kivetítőt tartalmazó megoldások költséghatékonyabbak, mivel általános célú eszközökből állíthatóak össze. E rendszerek sajátossága, hogy a vetítés és a kép rögzítése azonos irányból történik, ezért az interakció során a kéz felületén visszaverődik a vetített kép. A vetített háttér és a kéz képének szegmentálása egyszerűsíthető speciális, hátulról megvilágított vászon, vagy infra kamera alkalmazásával. Leubner [52] hátulról megvilágítható vászonra vetíti a képet, amellyel szemben a felhasználó rámutat a kép kívánt részére. A rendszer több 8
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
kameraképet felhasználva meghatározza a kar 3D-s irányát, amely alapján kijelöli a kép adott részét. A felhasználó különböző hangjelek segítségével további vezérlő parancsokat adhat ki. Az EnhancedDesk [53] elnevezésű módszer egy speciális infra megvilágítást és kamerát alkalmaz a kéz és a vetített háttér szegmentálása érdekében, ahol a felhasználó a kéz pozíciójával adja meg a kurzor helyzetét és a kéz adott ideig való kitartásával generálja az egérgomb lenyomását. Magicboard [54] eljárásban a felhasználó speciális színű markereket mozgat az ujjaival, így azok színe alapján detektálható a kéz pozíciója. A DigitalDesk [55] alkalmazásban egy kivetített dokumentumban jelölhetünk ki, például számadatokat, amelyeket összead a rendszer. A rendszer nem módosítja a vetített hátteret, így mozgás alapján detektálja a kéz pozícióját. A FreeHandPresent [56] módszere a felhasználó ujjainak képe alapján követi a kéz pozícióját, amely a detektált ujjhegyek számával generálja a különböző vezérlő funkciókat. A kivetített háttér változása miatt az ujjhegyek megbízható követése érdekében a kézjelek megformálása a vetített felület egy olyan részén történik, ahol nem változik a vetített kép. Az eljárás, mivel az ujjak száma alapján ismer fel kézjeleket csak korlátozott számú gesztusok bevitelére alkalmas. 2.4 Kézjelek kontúr alapú felismerése kamera-kivetítő környezetben Az eddigi eljárásokkal szemben a bemutatandó kamera-kivetítő környezetben a kézjelek kontúr alapú felismerése valósítható meg, amely nem igényel speciális eszközöket (pl. színes marker, infra kamera) és lehetővé teszi pozíció (kéz pozíciója) és vezérlő utasítás (felismert kézjel) egyidejű meghatározását. Az 2-1. ábrán a bemutatandó kamera-kivetítő környezet főbb komponensei láthatóak.
9
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
A kivetítőn és a monitoron megjelenített kép
Eljárás beállításai
Kivetítendő kép (felhasználói felület)
Monitor
Információs terület Felismerési terület
Kivetítő
Felhasználói felület
Kamera
Munkaállomás Alkalmazott kézjelek
2-1. ábra: A bemutatandó kamera-kivetítő környezet főbb komponensei és az alkalmazható statikus kézjelek
A kamera-kivetítő környezet általános célú eszközökből: egy kamerából és egy kivetítőből áll. A kivetítő egy tetszőleges felhasználói felületet (kivetítendő kép) jelenít meg, amely előtt a felhasználó különböző kézjeleket formál meg. A vetített képet és az előtte megformált kézjeleket, egy a kivetített felülettel szemben elhelyezett kamera rögzíti (kamerakép). A kamera a vetített kép egy részét figyeli (felismerési terület), az ezen kívül eső területen a felhasználó számára különböző információk jeleníthetőek meg (információs terület). Itt jeleníthető meg a felismert kézjel képe és az alkalmazható gesztusok listája, amely jelzi a felhasználó számára, hogy milyen kézjeleket alkalmazhat, továbbá segíti a felismerés hatékonyságának folyamatos ellenőrzését. Az eljárás 9 különböző statikus kézjelet tartalmaz (lásd 2-1. ábra). A munkaállomás végzi felhasználói felület megjelenítését és a vetített képre mutató felhasználó megfigyelését a kamera segítségével. Az eljárás beállításai egy monitoron jeleníthetőek meg. A kamera-kivetítő környezetben a kézjelek alkalmazásának a következő feltételei vannak:
10
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
•
A felhasználó a kivetített képre mutat, miközben karja közel párhuzamos a vetített felülettel, így a vetített kép a lehető legjobban látható a közönség számára (lásd 21. ábra).
•
A kamera és kivetítő pozíciója nem változhat az interakció során, így a kar közel merőleges a kamera optikai tengelyére és a kamera közel azonos szögből látja a kéz képét.
•
A kivetítő és a kamera közvetlenül egymás mellé kerül elhelyezésre. Mivel a kar közvetlenül a vetített felület előtt mozog, a kar árnyéka nem befolyásolja a szegmentálást.
A kéz pozíciójának meghatározása és a megformált kézjel felismerése érdekében szükséges az előtérben látható kar és a háttér elkülönítése, majd a szegmentált karon a kézfej pozíciójának meghatározása. A kamera-kivetítő környezetben a következő problémák lépnek fel a szegmentáció, a kézjel felismerése és pozíciójának meghatározása során: •
A kar felületén visszaverődik a kivetített háttérkép, így annak textúrája folyamatosan változhat a kéz pozíciójától és a kivetítetendő kép tartalmától függően (lásd 2-8. ábra).
•
A kivetítendő kép geometriailag és színileg torzul a kamera által rögzített képen, ezért a kameraképen a detektált kéz koordinátája nem egyezik meg a vetítendő kép azonos pontjának pozíciójával.
•
A kivetítetendő kép módosulhat az interakció során.
Mivel a vetítés következtében a kéz textúrája folyamatosan változhat a kéz mozgásával, nem alkalmazható színi, illetve textúra alapú szegmentációs eljárás. Ezért az előtérben a felhasználó sziluettjének detektálása egy módosított háttérkivonáson alapuló szegmentáló eljárással történik (lásd 2.4.1 és 2.4.2 fejezetet). Az eljárás a vetített háttérkép változása esetén, az előzetesen ismert kivetítendő kép segítségével mesterségesen állítja elő a háttérképet – figyelembe véve a kivetített kép geometriai és színi torzulásait –, amely így képes a kamerakép alapján az előtér szegmentálására. A következő lépés a kézfej
11
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
kijelölése a kar sziluettjén (lásd 2.4.3 fejezetet), amely alapján elvégezhető a kézjel kontúr alapú analízise. A kamera-kivetítő környezetben a kézjelek felismerésének főbb lépései a következők (lásd 2-2. ábrán): 1. A kamera és a kivetítő elhelyezése, beállítása. Ennek során a kamera automatikus beállítási funkcióit, például a színegyensúly automatikus javítását, automatikus erősítésszabályozást („gain control”) ki kell kapcsolni, továbbá a felismerés alatt a kivetítő és kamera paraméterei, például színhőmérséklet, gamma korrekció már nem módosíthatóak. 2. A kamera-kivetítő környezet automatikus geometriai és színi kalibrációja (lásd 2.4.1 fejezetet). 3. A kamerakép alapján a felhasználó karjának (előtér) szegmentálása, majd azon a kézfej kijelölése. 4. Kézjel felismerése és pozíciójának meghatározása a kéz kontúrja alapján. 5. A felismert kézjel alapján történik az adott alkalmazás vezérlése véges állapotú automatával („finite state machine”), amely során módosulhat a felhasználói interfész és így a kivetítendő felhasználói felület. Ha az interakció alatt a kéz mozgásával egyidőben módosul a kivetített háttér is, akkor azt figyelembe kell venni a kamerakép szegmentációja során. Mivel a kivetítendő kép ismert, így van előzetes információ a kéz hátteréről, amely felhasználható a szegmentálás során. 6. A kivetített képet a kamera rögzíti, majd folytatódik a feldolgozási ciklus az eljárás 3. lépésétől.
12
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
Inicializációs és kalibrációs lépések
Kamerakép rögzítése
Módosított felhasználói felület megjelenítése
kamerakép kivetítendő kép A kar szegmentációja és a kéz kijelölése
kivetítendő kép
kéz kontúrja Kézjel felismerése és tanítása
felismert kézjel
Felhasználói felület módosítása véges állapotú automatával
2-2. ábra: Kézfelismerő eljárás működésének folyamatábrája kamera-kivetítő környezetben
2.4.1 A kamera-kivetítő környezet kalibrációja
A megjelenítés során a kivetítendő kép geometriailag torzul, ezért a feladat a kivetítendő kép és a kamerakép koordinátapontjai közötti függvénykapcsolat meghatározása a felhasználói felület vezérlése, illetve a háttér szegmentálása érdekében. A regisztrációs probléma megoldásának egyik megközelítése a kamera-kivetítő környezet optikai leképezésének meghatározása lyukkamera („pinhole”) modell segítségével, ahol a kivetítendő kép és kamera által rögzített kép egymásból projektív transzformációval állítható elő [57]. A módszer hátránya, hogy az eszközök optikájának paramétereit, elhelyezkedésüket, irányukat egy előzetes kalibráció során meg kell határozni. Továbbá az eljárás nem kezeli a lencse esetleges optikai torzításait, például tűpárna („pincushion”), vagy hordó torzításokat („barrel”).
13
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
zC
zP
kamerakép
kivetítendő kép
2-3. ábra: A vetítés során a kivetítendő kép zp és a kamerakép megfelelő zC koordinátája A probléma megoldásának másik megközelítése során a vetítés és leképezés folyamata egyetlen 2D-s geometriai transzformációval modellezhető a kivetítendő kép és a kamerakép között. A módszer előnye, hogy nem szükséges külön a kamera és kivetítő optikájának, elhelyezkedésének előzetes kalibrációja. Sík vetítési felület esetén a kamera és vetített kép közötti 2D-s transzformációra alkalmazható projektív [58], illetve bilineáris transzformáció [55], melyek képesek kompenzálni a „keystone” torzulást a vetítés során (lásd 2-4. ábrán). E transzformációk jellemzője, hogy sík vetítési felületet feltételeznek a megjelenítés során. Mivel a kamera-kivetítő környezet különböző típusú eszközöket tartalmazhat, a vetítésre használt felület esetleges egyenetlenségei, illetve az alkalmazott optikák lencséjének torzítása esetén csak magasabb rendű modellek alkalmazásával mövelhető a geometriai korrekció pontossága. Ezért a kivetítendő és kamerakép közötti kapcsolat meghatározása 2D-s másodrendű polinomiális függvénnyel [59] történik: a 0 a1 a 2 a3 a 4 a5 zP = 1 xC b0 b1 b2 b3 b4 b5
[
yC
xC y C
xC2
y C2
]
T
(2.1)
,
amely a kamerakép zC = [xC yC ] pozícióját a kivetítendő kép z P = [xP y P ] pozíciójába T
transzformálja
(lásd
2-3.
ábrán)
T
és
ahol
az
aT= [a0 a1 a2 a3 a4 a5]
és
bT= [b0 b1 b2 b3 b4 b5] vektorok tartalmazzák a polinomiális modell együtthatóit. Az 2-
4. ábrán látható az aT és bT vektorok együtthatóinak hatása a transzformált képre. A geometriai kalibráció során egy speciális kép kerül kivetítésre (lásd 2-5. ábra), amely alapján a kamera és a kivetítendő képen az összetartozó z C ,i = [xC ,i yC ,i ]
T
és
z P ,i = [x P ,i y P ,i ] pozíciókat (i=1,…n; ahol n a minták száma), ún. kontroll pontokat von T
14
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
ki az eljárás. A kontroll pontok a fekete-fehér négyzetrácsos mintázat sarokpontjainak detektálásával történik [60]. A kalibráció során az 2.1 képletben szereplő aT és bT együtthatók kiválasztása egy optimalizációs eljárás során úgy történik, hogy a 2.1 képlet alapján becsült és a kalibrációs képen mért z P ,i kontroll pontok különbség négyzetes értelemben minimális legyen, amely hiba (E) formálisan a következő alakban írható fel: E = ( x P − Aa) T ( x P − Aa) + ( y P − Ab) T ( y P − Ab) ,
ahol x P = [x P ,1 x P , 2 ... x P ,n ] , y P = [y P ,1 y P , 2 ... y P ,n ] T
T
(2.2)
a kontroll pontok koordinátái
alapján meghatározott vektorok, aT= [a0 a1 a2 a3 a4 a5] és bT= [b0 b1 b2 b3 b4 b5] vektorok tartalmazzák a polinomiális modell együtthatóit (lásd 2.1 képletet), és A mátrix a kameraképen mért z C ,i = [xC ,i yC ,i ]
T
kontroll pontok koordinátái alapján a következő
mátrixos formában adható meg: A=
1
xC,1
yC,1
xC,1 yC,1
xC2 ,1 2 C ,2
1
xC,2
yC,2
xC,2 yC,2
x
M
M
M
M
M
1
xC,n
yC,n
xC,n yC,n
xC2 ,n
yC2 ,1 yC2 ,2 M . yC2 ,n
(2.3)
A megoldás a legkisebb négyzetek módszere alapján az 2.1 egyenlet a és b együtthatói, amelyek a következő módon adhatóak meg [59]:
[ ] b = [A A] a = AT A T
−1
−1
A T xP
(2.4)
AT y P ,
ahol az (ATA)−1AT kifejezés az A mátrix ún. pszeudo-inverze [59]. A geometriai transzformáció gyorsítása érdekében a kamerakép minden egyes zC pozíciójához előzetesen kiszámításra kerülnek z P pozíciók (lásd 2.1 képletet) és így a transzformáció során azok egy táblázatból (LUT, „lookup-table”) kereshetőek ki. A mesterséges kamerakép zC pozíciójának IˆC ( zC ) paletta értéke az I P kivetítendő kép z P pozícióban történő újramintavételezésével számítható ki: Iˆ C (z C ) = I P ( z P ) , ahol z P pozíció az 2.1 képlet alapján adható meg és az újramintavételezés bilineáris interpolációval történik [59]. 15
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
eredeti képterület a1 skálázás (lineáris)
a0 egyenletes transzláció
transzformált képterület
a2 nyírási deformáció („shear”)
a4 nem egyenletes skálázás (négyzetes)
a3 „keystone” deformáció
a5 hajlítás
2-4. ábra: Másodrendű polinomiális transzformáció hatása a képen (vízszintes tengely mentén ai együtthatók alapján)
2-5. ábra: A geometria kalibráció alatt kivetített mintázat
16
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
A kivetítendő kép színileg torzul a megjelenítés és rögzítés során, a kivetítő és a kamera különböző érzékenysége és átviteli karakterisztikája következtében. Egyes eljárások az eszközök előzetes fotometriai és radiometria kalibrálásával [61] határozzák meg a kivetítendő
kép
és
a
kamera
által
rögzített
RGB
paletta
értékek
közötti
függvénykapcsolatot. E módszer hátránya, hogy az előzetes kalibráció elvégzéséhez speciális eszközökre van szükség. Ezért cél a kivetítendő kép (rP , g P , bP ) és a kamerakép
(rC , g C , bC )
RGB paletta értékei közötti függvénykapcsolat közvetlen meghatározása egy
parametrikus modell segítségével, előzetes műszeres kalibráció alkalmazása nélkül. Az RGB színtérben az egyes színcsatornák átviteli karakterisztikája a következő ötödfokú polinom függvénnyel modellezhető: 5
2
2
i =0
i =1
i =1
i i i [R] [ R] [ R] rˆC = ∑ ai[ R ] (rP ) + ∑ a5[ R+i] (g P ) + ∑ a7[ R+i] (bP ) + a10 rP g P + a11 rP bP + a12 g P bP 5
2
2
i =0
i =1
i =1
5
2
2
i =0
i =1
i =1
(2.5)
i i i [G ] [G ] [G ] gˆ C = ∑ ai[ G ] (g P ) + ∑ a5[G+i] (rP ) + ∑ a7[G+i] (bP ) + a10 rP g P + a11 rP bP + a12 g P bP
i i i [B] [ B] [ B] bˆC = ∑ ai[ B ] (bP ) + ∑ a5[ B+i] (rP ) + ∑ a7[ B+i] ( g P ) + a10 rP g P + a11 rP bP + a12 g P bP
ahol az R (vörös), G (zöld) és B (kék) komponensek esetén a kivetítendő kép paletta
(
)
értékeit (rP , g P , bP ) , a kamerakép becsült értékeit pedig rˆP , gˆ P , bˆP jelöli. A modell (lásd 2.5 képletet) együtthatói adott RGB komponensek (csatornák) esetén: a0[ R ,G , B ] ,..., a5[ R ,G , B ] , azonban a csatornák közötti áthallás (csatorna-összefüggőség) miatt további első és másodrendű tagok is szerepelnek: a6[ R ,G , B ] ,..., a12[ R ,G , B ] . Így csatornánként 13, tehát összesen 39 paraméterrel írható le a színi transzformáció. A színi kalibráció alatt a kivetítendő képen
az
színmintái
{(r , g P
P
, bP ) rP , g P , bP = 50,80,110,140,170,200,230}
kerülnek
kivetítésre,
amelyek
a
geometriai
halmaz
(r
P,i
, g P ,i , bP ,i )
transzformáció
során
összerendelhetőek a kamerakép (rC ,i , g C ,i , bC ,i ) paletta értékeivel (i=1,…m; ahol m a minták száma). A modell a [ R,G , B ] = [a0[ R ,G , B ] ... a12[ R ,G , B ] ] együtthatóinak számítása a legkisebb T
négyzetek módszerével történik [59], amely a következő hiba (E[R,G,B]) értékét minimalizálja az egyes színcsatornákon:
17
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
(
)
2 2 2 E [ R ] = ∑ (rC ,i − rˆC ,i ) , E [G ] = ∑ (g C ,i − gˆ C ,i ) , E [ B ] = ∑ bC ,i − bˆC ,i , i
i
(
(2.6)
i
)
ahol (rC ,i , g C ,i , bC ,i ) és rˆC , gˆ C , bˆC a kalibráció során készített kameraképen mért, illetve a parametrikus modell (lásd 2.5 képletet) alapján becsült RGB paletta értékek. Jelölje
[
[ R ,G , B ] a [ R ,G , B ] = a 0[ R ,G , B ] ... a12
RGB
csatornák
]
T
a színi transzformáció együtthatóit (lásd 2.5 képletet) az egyes
esetén,
T r C = [rC ,1 rC , 2 ... rC ,m ] ,
továbbá
T g C = [g C ,1 g C , 2 ... g C ,m ] ,
T b C = [bC ,1 bC , 2 ... bC ,m ] a kameraképen mért színmintákat, ahol m a minták számát adja meg.
Ekkor a legkisebb négyzetek módszere alapján [59] a 2.5 képlet a [ R ] , a [G ] és a [ B ] együtthatói az alábbi módon számíthatóak ki:
[ ] = [A A ] = [A A ]
a [ R ] = ART AR a [G ] a
−1
T G
[ B]
−1
G
−1
T B
B
ART r C AGT g C T B
A b
(2.7) ,
C
ahol az AR, AG, AB mátrixok a kivetítendő színminták alapján felírhatóak (lásd 2.8-10 képleteket): 1 1 AR = M 1 1 1 AG = M 1 1 1 AB = M 1
rP,1
rP2,1
rP3,1
rP4,1
rP5,1
g P,1
g P2,1
bP,1
bP2,1 rP,1 g P,1
rP,1bP,1
rP,2
rP2,2
rP3,2
rP4,2
rP5,2
g P,2
g P2,2
bP,2
bP2,2 rP,2 g P,2
rP,2bP,2
M
M
M
M
M
M
M
M
M
M
M
rP,m rP2,m rP3,m rP4,m rP5,m g P,m g P2,m bP,m bP2,m rP,m g P,m gP,1
gP2,1
gP3 ,1
gP4 ,1
gP5 ,1
gP,2
g
2 P, 2
3 P, 2
4 P, 2
5 P, 2
M
M
g M
g M
g M
bP2,1 rP,1gP,1
rP,1
rP2,1
rP,2
2 P, 2
r
bP,2
b
rP,2 gP,2
rP,2bP,2
M
M
M
M
M
M
bP,1
2 P, 2
gP,m gP2, m gP3 , m gP4 ,m gP5 ,m rP, m rP2,m bP, m bP2,m rP,m gP,m rP2,1
gP,1
gP2,1 rP,1gP,1
rP,1bP,1
bP,2 bP2,2 bP3,2 bP4,2 bP5,2
rP,2
rP2,2
g P, 2
gP2,2 rP,2 gP,2
rP,2bP,2
M
M
M
M
M
M
M
bP4,1
rP,mbP,m
rP,1
M
bP3,1
rP,1bP,1
bP5,1
bP,1
bP2,1
rP,mbP,m
M
M
M
bP,m bP2,m bP3,m bP4,m bP5,m rP, m rP2,m gP,m gP2,m rP,m gP,m rP,mbP,m
g P,1bP,1 g P,2bP,2 , M g P,mbP,m
(2.8)
gP,1bP,1 gP,2bP,2 , M gP,mbP,m
(2.9)
gP,1bP,1 gP,2bP,2 . M gP,mbP, m
(2.10)
18
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
2.4.2 Az előtér szegmentálása
A megjelenített kép visszatükröződik a vetített felületen és az előtérben álló felhasználón. A kamera által rögzített kép RGB paletta értékeit meghatározó egyik paraméter a vetített felület és a felhasználó karjának visszaverési tényezője [62]. A vetített felület esetén – a megfelelő képminőség érdekében – a spektrális visszaverési tényező magas, közel 100%, míg az előtérben a felhasználó karján a bőr spektrális visszaverési tényezőjének maximális értéke 70% [62], így a kameraképen mért RGB paletta értékek alacsonyabbak az előtér objektum pozícióiban. Mivel a felhasználó karján visszaverődő képrészlet változhat a felhasználó mozgásával, az előtér szegmentálása a kamera által rögzített háttérkép (előtér objektum képét nem tartalmazza) és a felhasználó karját is tartalmazó kamerakép összehasonlításával történik. Az előtér szegmentációja során figyelembe kell venni, hogy a kivetített kép módosulhat. Ha a kamera rögzít egy képet kizárólag a vetített háttérről, akkor statikus (változatlan) háttér esetén az előtér szegmentálható a háttérkivonás módszerével, ahol a háttér az ún. futóátlag számításával módosul [63]. Ez az eljárás nem alkalmazható, ha a kivetített háttér módosul és a felhasználó karja is látható a kameraképen. Ezért egy olyan módosított háttérkivonás alapú eljárás kerül bemutatásra, amely mesterségesen állítja elő a kameraképen látható hátteret (a kivetítendő kép geometriai és színi transzformációjával) azokban a pozíciókban, ahol a kivetítendő kép módosult. A t-edik időpillanatban a szegmentált előtérhez tartozó z=(x,y) pozíciók halmazát jelölje FGt :
(
)
1 R FGt = z I ( z , t ) − H R (z , t ) + I G ( z , t ) − H G ( z , t ) + I B ( z , t ) − H B (z , t ) > τ , 3
(2.11)
ahol I [ R ,G , B ] ( z , t ) a kamerakép, H [ R ,G , B ] (z , t ) a kamera által rögzített háttér adott színcsatornájának paletta értéke t időpillanatban, továbbá τ>0 küszöbszám határozza meg, [ R ,G , B ] hogy mely képpontok tartoznak FGt halmazba. Jelölje PGT (z, t ) a kivetítendő kép
geometriailag transzformált (lásd a 2.1 képletet) képének paletta értékét z pozícióban. A [ R ,G , B ] PGT (z, t ) érték változása esetén az előtér megfelelő szegmentálása érdekében becslést
kell adni a kamera által megfigyelhető H [ R ,G , B ] ( z , t ) háttérkép paletta értékére a kalibráció
19
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
során meghatározott színi transzformáció segítségével (lásd 2.5 képletet). A H [ R ,G , B ] ( z , t ) paletta értéke a kivetítendő kép változásától függően, a futóátlag módszere alapján [63] a következő feltételek szerint módosul: α ⋅ I Ψ (z, t − 1) + (1 − α ) ⋅ H Ψ (z, t − 1) , z ∈ FG ∩ CH Ψ t −1 t Ψ Ψ H (z, t ) = H ( z, t − 1) , z ∈ FGt −1 ∩ CHtΨ Ψ , z ∈CHtΨ PGT ,CT (z, t )
{
(2.12)
}
Ψ CHtΨ = z PGT (z, t ) − PGTΨ (z, t − 1) > 0 ,
ψ = R, G, B , [ R ,G , B ] ahol PGT (z, t ) és PGT[ R ,,GCT,B ] (z, t ) jelöli a kivetítendő kép geometriailag (lásd 2.1 képletet),
illetve geometriailag és színileg (lásd 2.1 és 2.5 képleteket) transzformált képének paletta értékét a z pozícióban, CH t[ R ,G , B ] azoknak a z pozícióknak a halmaza t időpillanatban, ahol a kivetítendő kép geometriailag korrigált változata módosul. Ha adott z pozícióban a kivetítendő kép nem módosul és az előző t-1 időpontban z pozíció nem az előtér része volt ( FGt −1 az FGt −1 komplementer halmazát jelöli), akkor H [ R ,G , B ] (z , t ) paletta érték az
I [ R ,G , B ] ( z , t − 1) kamerakép alapján, rekurzív eljárással módosul. Ekkor az α tanulási együttható szabályozza, hogy a kamerakép milyen arányban vegyen részt háttérkép frissítésében (lásd 2.12 képletet). Amennyiben a kivetítendő kép módosul adott z pozícióban, a kivetítendő kép geometriailag és színileg korrigált változata alapján (lásd [ R ,G , B ] [ R ,G , B ] (z, t ) paletta értéke. A PGT ,CT ( z , t ) a 2.12 képletben) módosul a háttérkép H
kísérletek során τ küszöbszám a megjeleníthető maximális paletta érték 15%-a, α tanulási együttható értéke 0.005 volt.
20
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
a)
b)
c)
d)
e)
f)
2-6. ábra: Az előtér és háttér szegmentációja mesterségesen előállított háttérkép segítségével; a) az eredeti kivetítendő kép; b) geometriailag transzformált kivetítendő kép; c) geometriailag és színileg transzformált kivetítendő kép; d) a kamera által rögzített kép; e) a szegmentált előtér képe, kizárólag geometriai transzformációval előállított háttérkép alapján; f) a szegmentált előtér képe, geometriai és színi transzformációval előállított háttérkép alapján
Annak érdekében, hogy a kivetített kép sötét tónusú (akár nulla RGB értékek esetén is) területein is szegmentálható legyen az előtér, a kivetítő fényerejét növelni, illetve a kivetítendő képet lineáris hisztogram transzformációval módosítani kell, hogy a kameraképen mérhető minimális paletta értékek a megjeleníthető maximális érték (8 bit színmélységű képek esetén 255) legalább 20%-a legyen. A 2-6. ábrán látható példa az előtér szegmentációjára mesterségesen generált háttérkép segítségével. 2.4.3 A kézfej szegmentációja
A kézfej elkülönítése érdekében számos eljárás hosszú ujjú inget alkalmaz [64,65], amely a szegmentálás során egybeolvad a háttérrel, így megkönnyítve a kézfej szegmentációját. E megoldás hátránya, hogy korlátozza a felhasználó által viselhető ruházatot, ezért számos eljárás a csukló automatikus detektálásával különíti el a kézfejet. A csukló 21
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
detektálásához alkalmazhatóak kontúr és régió alapú eljárások. A régió alapú módszerek [39,66] a szegmentált alkar vastagságát vizsgálják, amelyen a csuklóvonal (lásd 2-7. ábrán) meghatározása azon a megfigyelésen alapszik, hogy a csukló területén az alkar szélessége hirtelen megváltozik. A kontúr alapú módszer [66] a kontúrvonal hajlásszögeinek vizsgálatával azonosítja a kézfej kiszélesedését. E módszerek azonban kevésbé hatékonyak, ha a szegmentált kar kontúrja nem egyenletes, például ha a felhasználó inget visel, vagy ha az előtér szegmentálása zajos (lásd 2-8. ábrán). Továbbá a fenti módszerek akkor alkalmazhatóak, ha csak az alkar látszik a kameraképen, mivel a behajlított kar téves szegmentációt eredményez. A kötetlenebb kommunikáció érdekében ezért figyelembe kell venni, hogy a felhasználó tetszőleges ruhadarabot viselhet az interakció során. A következő régió alapú eljárás meghatározza a szegmentált kar fő irányát, amelyre merőleges irányban vizsgálja a kar vastagságának változását (lásd 2-7. ábrát). A kar iránya geometriai momentumok segítségével határozható meg [45], amelyek a kép intenzitás-eloszlását jellemzik és így a kar geometriai tulajdonságainak leírásához alkalmazhatóak. A (p,q)-ad rendű µp,q centrális momentumok a következő módon fejezhetőek ki:
µ p ,q = ∫∫ ( x − xc ) p ( y − y c )q f ( x, y ) dxdy
(2.13)
R
1 : objektum képpont , ( x, y ) ∈ R f ( x, y ) = 0 : háttér képpont , ( x, y ) ∉ R ahol R az objektum képpontjainak halmaza, amelyhez tartozó (x,y) pozíciókat az f függvény jellemez a momentumok számítása során és ahol (xc,yc) az objektum tömegközéppontjának koordinátája. A másodrendű centrális momentumok számításával meghatározhatóak a kép fő tehetetlenségi tengelyei, amelyek megadják a kéz ellipszis alapú geometriai modelljét. Az ellipszis modell a és b tengelyeit (lásd az 2-7. ábrát) nevezzük nagy- és kistengelynek, amelyek közül az előbbi határozza meg a kar irányát. Az a ás b tengelyek hossza a centrális momentumok segítségével (2.13 egyenlet) a következő módon határozható meg:
22
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
b=
1 2 ⋅ (µ 2,0 + µ 0, 2 ) − 4 ⋅ µ12,1 − (µ 2, 0 − µ 0, 2 ) 2
a=
1 2 ⋅ (µ 2, 0 + µ 0, 2 ) + 4 ⋅ µ12,1 − (µ 2, 0 − µ 0, 2 ) . 2
(2.14)
Az ellipszis nagytengelyének Θ szöge (lásd 2-7. ábrát) meghatározható: Θ=
2 µ1,1 1 arctan 2 µ 2,0 − µ 0, 2 .
(2.15)
Legyen Pd a kar (xc,yc) tömegközéppontján áthaladó nagytengely egy adott pontja, amely
d>0 távolságra van P0 ponttól (lásd az 2-7. ábrán a nagytengely és a kép szélének találkozási pontját a kar sziluettjének és a kép szélének metszete közelében). Így a tengelyre illeszkedő bármely Pd pont egyértelműen azonosítható a P0 ponttól mért euklidészi távolsággal: d = P0 P d . Ekkor a kar szélességének méréséhez a nagytengely irányára merőleges, a Pd ponton áthaladó ed egyenes és a kar R maszkja használható fel (lásd 2-7. ábrát). Az ed egyenes és R maszk metszetének segítségével mérhető a Pd
{
}
ponthoz tartozó Wd≥0 szélesség (lásd 2-7. ábrát): Wd = max B1 B2 B1 , B2 ∈ ed ∩ R . Mivel a felhasználó tetszőleges ruházatot viselhet és a kameraképen akár a teljes kar és törzs is látható (lásd 2-8. ábrát), ezért a következő két feltétel alapján határozható meg az e K csuklóvonal (lásd 2-7. ábrát) a Wd értékek felhasználásával: •
A csukló detektálása a Wd szélességek meghatározott mértékű növekedése alapján történik.
•
Az eljárás a csukló detektálását a Wd értékek vizsgálatával csak egy előzetesen kijelölt régióban hajtja végre.
23
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
csuklóvonal Pd
b a
P0
Wd
d=E
. Θ
d=0
d=K
eK
ed
2-7. ábra: A kézfej szegmentálása a csuklóvonal meghatározásával
Az egyes Pd pontokhoz tartozó Wd szélesség értékek hirtelen növekedése alapján detektálható a d=K pozíció és az ennek megfelelő eK csuklóvonal (lásd 2-7. ábrát) a következő feltételek teljesülése esetén:
K = min{i (Wi + D − Wi ) > Tw }, i
(2.16)
ahol D és Tw paraméterek határozzák meg, hogy milyen mértékben növekszik a kar szélessége a csuklónál. A kar fő irányának (lásd 2.15 egyenletet) és Wd szélességek mérésével meghatározhatóak a csuklóvonalhoz tartozó d=K és a kézfej végpontjához tartozó d=E pozíciók (lásd 2-7. ábrát). A kéz ellipszis modellje alapján a nagytengely a kar hosszát, míg a kistengely annak szélességét határozza meg. Az interakció során a látható kar hossza (nagytengely hossza) jelentősen változhat, azonban annak szélessége (kistengely hossza) közel azonos, így a kistengely hossza alapján becslés adható a csukló területére. A kísérletek alapján a fél-kistengely b hossza (lásd 2-7. ábrát) esetén a csuklóvonal keresése leszűkíthető azokra a Wd értékekre, ahol d∈[E-3·b, E].
24
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
A kísérletek során (lásd 2-8. ábrát) a felhasználók különböző ruházatokat viseltek, például hosszú és rövid ujjú inget, továbbá a kameraképen az alkar, illetve a felkar is látható. A 2-8. ábrán látható, hogy az eljárás behajlított kar és szegmentálási hibák esetén is alkalmazható. A kézfej szegmentálása során alkalmazott értékek D=15 és Tw=10 (lásd 2.16 képletet).
a)
b)
c)
d)
2-8. ábra: Kézfej szegmentációjának eredménye különböző ruházat esetén; a) kivetítendő kép; b) kamerakép, előtérben a kéz képével; c) szegmentált kar képe; d) szegmentált kézfej kontúrja
25
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
2.5 Kézjelek felismerése időben egymást követő kontúrok felhasználásával A bemutatandó eljárásban a kézjelek felismerése, időben több egymást követő kézjel analízise alapján pontosítható, ahol az egyes gesztusok osztályozása a bevezetett kontúrleíró függvény alapján, Fourier leírók számításával történik. 2.5.1 Fourier leíró alapú osztályozás
A kézjel analízise során az első lépés egy ún. kontúrleíró függvény meghatározása, amely alapján kiszámíthatóak a Fourier leírók [36]. Jelölje u(k) egy tetszőleges kontúrt reprezentáló 1D-s kontúrleíró függvény k-adik elemét, amely a kontúrvonal (x(k),y(k)) koordinátapontja segítségével fejezhető ki (k=0,…,N-1, ahol N a kontúr elemeinek számát jelöli). A képi alapú információ-visszakereső [36], karakterfelismerő eljárásokban [37], illetve kézjelek felismerésénél [39,65] különböző kontúrleíró függvényeket alkalmaznak (lásd az 2.18, 2.19, 2.20 képleteket és az 2-9. ábrán ismertetett „II”, „III”, „IV” kontúrleíró függvényeket), ahol e függvények mindegyike a kéz kontúrját zárt alakzatként modellezi. A következőkben egy új kontúrleíró függvény kerül bevezetésre, amely figyelembe veszi a kéz struktúráját, mivel kizárólag a csuklópontok közötti kontúrvonalat használja fel (lásd „I” kontúrleírót az 2.17 képlet és 2-9. ábra alapján). A „I” eljárás az előzőleg meghatározott WP1 és WP2 csuklópontok (lásd 2-9. ábrát) közötti kontúrvonal koordinátáiból képzett komplex függvényt nyeri ki (lásd 2.17 képletet), amely bejárja a kontúrvonal pontjait WP1-től a WP2 ponton keresztül vissza WP1-ig annak érdekében, hogy u(k) periodikus legyen. A vizsgált kontúrleíró függvények a következők:
„I” eljárás
z I (k ) = (x(k ) − xc ) + ( y(k ) − yc ) * j, xc =
1
N −1
∑ x(k ), y
N k =0
c
=
1 N
(2.17)
N −1
∑ y(k ), k =0
x(0) = WP1x , y(0) = WP1y , x(N / 2) = WP2x , y( N / 2) = WP2y , x( N − 1) = WP1x , y( N − 1) = WP1y
26
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
„II” eljárás
z II (k ) = ( x(k ) − xc ) + ( y (k ) − yc ) * j xc =
1 N
N −1
1
k =0
N
∑ x(k ), yc =
(2.18)
N −1
∑ y(k ), k =0
x(0 ) = x( N − 1), y (0 ) = y ( N − 1), „III” eljárás
r III (k ) =
(x(k ) − xc )2 + ( y (k ) − yc )2 ,
(2.19)
1 N −1 1 N −1 x ( k ) , y = ∑ ∑ y(k ) c N k =0 N k =0 x(0 ) = x( N − 1), y(0 ) = y ( N − 1) xc =
„IV” eljárás
r IV (k ) = xw =
1 2
(x(k ) − xw )2 + ( y(k ) − y w )2 ,
(WP
1
x
)
+ WP2x , y w =
1 2
(WP
1
y
(2.20)
)
+ WP2y ,
x(0 ) = x( N − 1), y (0 ) = y ( N − 1), ahol j a képzetes egység és N a kontúrpontok száma, zI(k) és zII(k) komplex függvények, amelyek k-adik eleme a kontúrpont (x(k),y(k)) koordinátája és a kontúrvonal (xc,yc) tömegközéppontja segítségével képzett komplex szám (lásd 2.17 és 2.18 képleteket), továbbá WP1[x,y] és WP2[x,y] a csuklópontok koordinátáit jelölik. Az rIII(k) értéke a kontúr k-adik (x(k),y(k)) koordinátapontja és a kontúrvonal (xc,yc) tömegközéppontjának (lásd 2.19 képletet) euklidészi távolságával számolható, míg rIV(k) a kontúr k-adik (x(k),y(k)) pontja és a WP1, WP2 pontok (lásd a 2-9. ábrát) által meghatározott szakasz (xw,yw) felezőpontjának (lásd 2.20 képletet) távolságával határozható meg.
27
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
(x(k), y(k)) (x(k), y(k)) WP1 (xc, yc)
(xc, yc)
WP2
I.)
II.)
(x(k), y(k))
(x(k), y(k)) WP1
r(k)
r(k)
(xw, yw)
(xc, yc)
WP2
III.)
IV.)
2-9. ábra: Vizsgált eljárások („I”-„IV”) a kontúrleíró függvény meghatározására a kézjel kontúrja alapján (lásd 2.17, 2.18, 2.19, 2.20 képleteket)
A kontúrleíró függvények diszkrét Fourier transzformáltja a következő módon fejezhető ki:
Fi =
1 N
N −1
∑ u (k )e
− j 2 π ik / N
,
(2.21)
k =0
ahol j a képzetes egység és Fi Fourier együtthatók (i=0,…,N-1) alapján számíthatóak a Fourier leírók. A kontúrok robusztus összehasonlítása érdekében olyan hasonlósági mértéket kell választani, amely invariáns a kontúr méretének skálázására (α), a kontúr kezdeti pontjának eltolására (τ) és forgatására (φ): u ( 2) (k ) = α ⋅ e jφ ⋅ u (1) (k − τ ) ,
(2.22)
ahol u(1)(k) és u(2)(k) rendre az eredeti és a geometriailag transzformált kézjel kontúrleíróját jelöli. Amennyiben az u(k) kontúrleíró függvény a kontúrpontok távolsága alapján határozható meg (lásd a „III”, „IV” kontúrleíró függvényeket a 2.19 és 2.20
28
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
egyenletekben és a 2-9. ábrán), a kontúr φ szöggel történő forgatása nem módosítja a kontúrleíró függvény értékeit, mivel a transzformációt követően a vizsgált pontok távolsága nem változik. A Fourier transzformáció elvégzése után, annak tulajdonságai alapján levezethető [59], hogy
Fi ( 2 ) = e jiτ ⋅ e jφ ⋅ α ⋅ Fi (1) ,
(2.23)
ahol Fi(1) és Fi(2) jelöli u(1)(k) és u(2)(k) kontúrleíró függvények Fourier transzformáltját. A 2.23 egyenletből levezethető, hogy Fi(2) és Fi(1) Fourier transzformáltak fázisspektrumának elhagyásával a Fourier együtthatók értéke független lesz u(1)(t) függvény esetleges forgatására és kezdőpontjának eltolására így amplitúdójuk hányadosa megegyezik α skálázási faktorral (lásd 2.22 egyenletet):
Fi ( 2 ) Fi (1)
(2.24)
= Ri = α ,
ahol Ri az |Fi(2)| és |Fi(1)| Fourier együtthatók amplitúdójának (Fourier leírók) hányadosát jelölik (i=1,…,N−1). Amennyiben u(1)(k) és u(2)(k) függvények nem vihetők át egymásba a 2.22 egyenletben megadott transzformációkkal, akkor Ri hányados értéke nem lesz konstans α. Az Ri (lásd 2.24 képletet) értékek modellezhetőek normális eloszlással (Ν(m,σ2) normális eloszlás, ahol m a várható érték és σ a szórás), ahol a két kontúr hasonlóságát σ szórás jellemzi, amely ideális hasonlóság esetén 0 értéket vesz fel. Ekkor a módosított Fourier leírók módszerében [37] alkalmazott szórás alapú hasonlósági mérték szimmetrikus változata az alábbi módon fejezhető ki: F (1) F (1) Fn(1) h h +1 S (u , u , n) = σ , ,..., Fh( 2) Fh(+21) Fn( 2 ) (1)
( 2)
( 2) ( 2) (2) + σ Fh , Fh+1 ,..., Fn F (1) F (1) Fn(1) h +1 h
,
(2.25)
ahol S az u(2) és u(1) kontúrok hasonlóságát jellemzi, σ(.) a szórást jelöli, továbbá |Fi(1)| és |Fi(2)| a Fourier együtthatók amplitúdója, i=h,…,n, ahol h értéke az alkalmazott kontúrleíró függvénytől függ és n az ún. vágási frekvencia. Az „I” és „II” kontúrleíró függvények (lásd a 2-9. ábrát) esetén |F0(1)| és |F0(2)| értéke a kéz pozíciójától függ, ezért ezek nem vesznek részt az összehasonlításban, így h=1 a 2.25 képletben. A „III” és „IV” kontúrleíró
29
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
függvények esetén |F0(1)| és |F0(2)| értéke független a kéz pozíciójától, ezért ekkor h=0 a 2.25 képletben. Jelölje az i-edik osztályhoz tárolt kézjel minta kontúrleíró függvényét u(i), i=1,…,Ng, ahol Ng=9 az alkalmazott kézjel típusok száma (lásd 2-1. ábrán). Minden egyes osztály egy mintát tárol, mivel az alkalmazott kézjel típusok kontúrjai jól szeparálhatóak, így nem szükséges több alosztály létrehozása az osztályokon belül. Legyen p(i) (i=1,…,Ng) annak valószínűsége, hogy a kameraképen vizsgált kézjel v kontúrja az i-edik osztályba tartozik. Az eljárás feltételezi, hogy a felhasználó az alkalmazott kézjelek egyikét mutatja fel, így nem azonosít ismeretlen kézjelet. Ekkor p(i) valószínűség a módosított Fourier leírók módszerével
számított
S ( v, u ( i ) , n )
hasonlóság
alapján
(lásd
2.25
képletet)
meghatározható a következő függvénnyel [38]: p (i) = 1 − d (v, u (i ) ) , ahol a d(v,u(i)) a kiszámított S (v, u ( i ) , n) érték [0,1[ intervallumba normalizált változata. Ennek alapján a kézjelek osztályozása a maximális valószínűség vizsgálatával: L = arg max( p(i )) ,
(2.26)
i
ahol L megadja az osztályozás eredményét. 2.5.2 Kontúrleíró függvényekkel végzett kísérletek
Kérdés, hogy a kontúrok osztályozásának hatékonysága hogyan függ az n vágási frekvenciaértéktől, illetve az u(k) kontúrleíró függvények típusától (lásd 2-9. ábrát). Ezért a következő összehasonlításban az „I”-„IV” típusú kontúrleírókkal (lásd az 2.17, 2.18, 2.19, 2.20 képleteket) és eltérő vágási frekvenciaértékekkel (lásd 2.25 képletet) történik az osztályozás. A kísérletekben a teszthalmazt 1600 minta alkotta, amely 9 különböző kézjel alapján 4 felhasználótól gyűjtött kézjelekből állt. Az átlagos felismerési hatékonyságot az első kísérlet az „I”-„IV” eljárásokra n=4 és n=13 közötti vágási frekvenciákon vizsgálta (lásd 2-10. ábrán). A 2-10. ábrán látható, hogy a maximális felismerési arányt az „I” eljárás érte el n=6 vágási
frekvencia
frekvenciaértékekkel
esetén
(lásd
kiszámított
2.25
képletet).
felismerési
Az
így
hatékonyságok
megállapított a
2-1.
vágási
táblázatban
30
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
szerepelnek. A táblázat alapján megállapítható, hogy az „I” kontúrleíró függvény segítségével érhető el a legnagyobb, 98.5%-os átlagos felismerési arány, míg a „II”, „III”, „IV” eljárások esetén 94-96.2%-os átlagos felismerési arány kapható. Ezért a további kísérletek az „I” típusú kontúrleíró függvényt és n=6 vágási frekvenciaértéket alkalmazzák (lásd n változót a 2.25 képletben).
2-10. ábra: Átlagos felismerési hatékonyság különböző típusú kontúrleíró függvények („I”-„IV”) és eltérő vágási frekvenciaértékek (lásd n paramétert a 2.25 képletben) vizsgálatával Felismerési hatékonyság (%) „I” eljárás
„II” eljárás
„III” eljárás
„IV” eljárás
Felhasználók 1. Felhasználó
99.6
96.8
98.1
97
2. Felhasználó
98.3
92.6
96.7
98.1
3. Felhasználó
97.9
95.2
95.3
91.2
4. Felhasználó
98.2
91.2
94.5
92.3
Átlag
98.5
94
96.2
94.7
2-1. táblázat: Kézjelek osztályozásának felismerési hatékonysága különböző típusú („I”„IV”) kontúrleíró függvényekkel és n=6 vágási frekvenciaérték esetén
31
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
A következő kísérlet annak relatív gyakoriságát vizsgálja, hogy egy kézjel felismerésekor a hozzá tartozó referenciaosztály (a kézjelhez tartozó helyes osztály) az osztályozás során a k-adik legvalószínűbb a p(i) valószínűségek (lásd 2.26 képletet) alapján meghatározott rangsorban, ahol a kézjel p(i) valószínűséggel tartozik az i-edik osztályba. A k=1 azt jelzi, hogy az osztályozás helyes volt, mivel a mintához tartozó referenciaosztály megegyezik a p(i) alapján meghatározott legvalószínűbb osztállyal. A mérés 4 felhasználó és 9 kézjel osztály alapján, összesen 800 kézjel vizsgálatával történt, amelyek mindegyikéhez a referenciaosztály manuálisan került meghatározásra („ground truth”). A 2-11. ábra relatív gyakoriság értékei alapján látható, hogy a kézjelek téves felismerése esetén (k≥2) a megfelelő referenciaosztály az osztályozás rangsora szerint (elől áll a legvalószínűbb osztály) a második legvalószínűbb osztály (k=2), továbbá k értékének növekedésével a relatív gyakoriság monoton csökken. Így az időben egymást követő kézjelek hasonlóságát összegezve növelhető a felismerés hatékonysága, mivel a felhasználók minimálisan 1-2 másodpercig formálnak meg egy adott gesztust.
2-11. ábra: Annak relatív gyakorisága, hogy egy kézjel téves felismerésekor a hozzá tartozó referenciaosztály (a minta valódi osztálya) az osztályozás során a k-adik legvalószínűbb a 2.26 képletben alkalmazott p(i) valószínűségek alapján (k=2 esetén a kézjelhez tartozó referenciaosztály az osztályozás során kapott rangsorban a második legvalószínűbb osztály)
32
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
2.5.3 Kézjelek felismerése az időben egymást követő kézjelek vizsgálatával
Jelölje a t-edik időpillanatban kinyert kézjel kontúrját vt, ekkor pt(i) jelöli (i=0,…,Ng-1; Ng az alkalmazott kézjel típusok száma) annak valószínűségét, hogy vt kontúr az i-edik osztályba tartozik (pt(i) az 2.26 képlet alapján határozható meg t időpontban). Ekkor M időben egymást követő kézjel alapján a kézjelek osztályozása a maximális valószínűség elve alapján (ML, „maximum likelihood”) az alábbi módon fogalmazható meg: M −1 L = arg max ∏ pt (i ) i t =0
(2.27)
ahol L megadja az osztályozás eredményét. Így a 2.26 képlet a 2.27 képletnek speciális esete, amennyiben M=1 értéket veszi fel. Az M érték növelésével hosszabb lesz a kézjel vizsgálatánál alkalmazott időablak, amely a kézjel váltásakor növeli a váltás és annak detektálása közötti időtartamot, az ún. válaszidőt. Az időben egymást követő kézjelek vizsgálata során az ML alapú osztályozó eljárás M=5 értéket alkalmaz (lásd 2.27 képletet), amely beállítása 3 és 10 közötti értékek vizsgálatával történt.
2.6 Interaktív tanító eljárás Amennyiben egy felhasználó nem alkalmaz előzetes tanítást, kézjeleinek felismerési hatékonysága csökkenhet. A feladat egy olyan új tanító eljárás bevezetése, amely a felismerési fázis alatt egy gyors, a felhasználó és a számítógép közötti folyamatos interakció segítségével vezérelhető tanítást valósít meg. Így téves felismerés esetén nem szükséges a felismerési fázis befejezése, mivel a tanítást maga a felhasználó is el tudja végezni és elegendő csak a tévesen felismert kézjeleket újratanítani. Az interaktív tanító eljárás folyamatos tanítást végez a felismerési fázis alatt, amely felügyelt („supervised”), illetve nem felügyelt („unsupervised”) tanuló eljárásokat alkalmaz (lásd 2-12. ábra). A felügyelt tanítás célja, hogy az aktuális felhasználó a tévesen felismert kézjelek referenciaosztályát (a kézjel tényleges osztálya) a számítógéppel történő interakció során újratanítsa, így növelve az adott gesztus felismerési arányát. A nem felügyelt tanuló eljárás a megformált gesztusok alapján folyamatosan frissíti a felismert osztály paramétereit (feltételezve, hogy az osztályozás
33
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
helyes), így adaptálódva az aktuális felhasználó gesztusaihoz, illetve a kézjelek hosszú távon bekövetkező változásaihoz. A felügyelt tanítás alapja, hogy a felhasználó egy kézjel téves felismerése esetén jelzést
ad
a rendszernek
(visszajelzés) egy speciális
mozgás
alapú
gesztus
megformálásával. E visszajelzés a kéz alakja, kontúrja helyett a kéz mozgásának sebességét vizsgálja, így biztosítva annak felismerését különböző felhasználók esetén is. Amennyiben a kézjel felismerése megfelelő, a felhasználó nem ad visszajelzést és ekkor a rendszer a nem felügyelt tanuló eljárást alkalmazza (lásd 2-12. ábra). Így a felhasználó visszajelzésétől függően, az adott időpillanatban felügyelt vagy nem felügyelt tanítást alkalmaz az eljárás.
2-12. ábra: Interaktív tanító eljárás működése
34
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
2.6.1 Kézjelek nem felügyelt tanítása
A nem felügyelt tanuló eljárás feltételezi, hogy az éppen megformált kézjel osztályozása helyes, mivel a felhasználó nem adott visszajelzést. Ekkor a felhasználó aktuális kézjele alapján kivont Fourier leírók segítségével frissíthetőek a felismert osztály mintájának paraméterei. Jelölje v a felhasználó által megformált kézjel kontúrját és u kontúr legyen a v kontúr alapján kiválasztott osztály mintája. Az u és v kontúrok alapján számított k-adik Fourier leírókat jelölje t időpillanatban: Fk(,vt ) és Fk(,ut ) . Nem felügyelt tanítás esetén a kiválasztott osztály Fourier leírói az alábbi futóátlag alapján módosulnak: Fku,t +1 = (1 − β ) ⋅ Fku,t + β ⋅ Fkv,t
(2.28)
ahol β paraméter értéke adja meg, hogy a tanulás során a felhasználó kézjelének paraméterei milyen súllyal vegyen részt az osztályok paramétereinek frissítésében. E paraméter beállításánál figyelembe kell venni, hogy téves felismerés esetén a nem felügyelt tanítás (lásd 2.29 képletet) nem a megfelelő osztály paramétereit módosítja, így ez téves felismeréshez vezethet. Ezért a kísérletek során az 2.29 képletben β =0.002 érték biztosítja, hogy ha a téves felismerés észlelése és a visszajelzés megformálása között több másodperc is eltelik, a nem felügyelt tanítás számottevően ne módosítsa a tévesen azonosított osztály paramétereit. Amennyiben a nem felügyelt tanítás oly módon változtatja egy osztály paramétereit, hogy a kézjel felismerése téves lesz, akkor az a felügyelt tanítás segítségével korrigálható. 2.6.2 Kézjelek felügyelt tanítása
Téves felismerés esetén a felhasználó egy speciális mozgás alapú gesztus segítségével jelzi a felügyelt tanítás kezdetét és a nem felügyelt tanítás befejezését. A cél, hogy a felhasználó minimális beavatkozás segítségével – annak jelzésével, hogy a felismerés nem megfelelő – elvégezze a hibásan felismert kézjel újratanítását. Ezért a felügyelt tanulás során az eljárás becslést ad a kézjel referenciaosztályára (kézjel valódi osztálya), amelyet a felhasználó megformál annak érdekében, hogy az eljárás mintát vegyen a kézjel kontúrjából és elvégezze kiválasztott osztály újratanítását. Mivel a becslés bizonytalan, a
35
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
tanuló eljárás a kijelölt kézjel újratanítását követően újabb kézjelet jelöl ki tanításra egészen addig, amíg a felhasználó a kívánt kézjelet újra nem tanítja. Ekkor a felhasználó a mozgás alapú kézjel újbóli megformálásával befejezi a felügyelt tanítást. A tanítási szabályok alapján feltételezhető, hogy az alkalmazott kézjel osztályozása téves, ezért a kézjelek hasonlósága alapján kell becslést adni a hibásan felismert kézjel referenciaosztályára. A kézjelek felismerése során felállítható egy rangsor az osztályok között, amely a 2.27 képletben alkalmazott p(i) valószínűségek szerinti csökkenő sorrendet állít fel. E rangsor felhasználható a kézjelhez tartozó referenciaosztály hatékony kijelölésében. A 2-11. ábra kísérlete alapján annak relatív gyakorisága monoton csökken, hogy a rangsorban a következő osztály a kézjelhez tartozó referenciaosztály. Így ha az osztályok rangsora szerint történik az egyes osztályokat újratanításra, akkor minimális kézjel újratanításával elvégezhető a tévesen felismert kézjel korrekciója. A felügyelt tanítás főbb lépései a következők (lásd 2-12. ábra): 1. A felhasználó jelzi a mozgás alapú gesztus megformálásával, hogy a kézjel felismerése nem megfelelő. 2. Az eljárás kiválasztja az osztályozás során megállapított rangsor alapján a legvalószínűbbet. 3. A rendszer megjeleníti a kiválasztott osztály egy mintaképét a felhasználónak, aki bemutatja azt az újratanítás elvégzéséhez. Az eljárás a megformált kézjelről kinyert kontúrt és annak Fourier leíróit eltárolja a kiválasztott osztály mintájaként. 4. Az újratanítást követően az eljárás az osztályok rangsora alapján kijelöli a következő legvalószínűbb kézjel osztályát tanításra és az eljárás a 3. ponttól folytatódik. Amennyiben az eljárás a hibásan felismert kézjelet ajánlotta fel és annak tanítása megtörtént, a felhasználó a mozgás alapú gesztus segítségével befejezi a felügyelt tanítást.
A fenti eljárás előnye, hogy egy tévesen felismert kézjel tanításánál a tanítandó referenciaosztályt nem manuálisan kell kijelölni, hanem az osztályozás során felállított
36
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
rangsor alapján, így biztosítva a minimális interakciót a tanítás alatt. A tanítás során a következő tanítási szabályok érvényesek: •
A tanítás során az eljárás nyilvántartja azoknak a kézjeleknek a listáját, amelyeket a felhasználó már újratanított. A tanításra a felügyelt tanuló eljárás csak azokat az osztályokat jelöli ki, amelyek nem szerepelnek ezen a listán, tehát újratanításuk egy előző ciklusban nem történt meg.
•
A már tanított kézjelek listája törlődik abban az esetben, amikor a kameraképen az eljárás nem észleli a felhasználó kezét.
•
A felügyelt tanítás automatikusan befejeződik, amikor az összes lehetséges osztály újratanítása befejeződött. Így a legrosszabb esetben az összes kézjelet újratanítja a felhasználó.
•
A mozgás alapú gesztus felismerése után 2 másodpercig a rendszer nem ismer fel újabb jelzést, így biztosítva, hogy egy kézmozgás ne idézzen elő több felhasználói visszajelzést.
•
A felügyelt tanuló eljárás feltételezi, hogy a felhasználó a megjelenített kézjelet formálja meg és tanítja újra.
A kézjelek tanításánál egy olyan mozgás alapú gesztus bevezetése a cél, amely felismerési hatékonysága nem függ a felhasználótól és így megbízhatóan alkalmazható a kontúr alapú kézjelek tanításának vezérléséhez. Ezért az alkalmazott gesztus egy gyors, függőleges irányú periodikus kézmozgás, amelyet a megfigyelések alapján a felhasználók nem alkalmaznak a vezérlés során. A mozgás alapú gesztus felismerése a kéz átlagos sebességének mérése alapján történik:
vˆi , N =
1
tN
k = N −1
∑y
i +1
− yi
(2.29)
k =0
ahol yi a kéz tömegközéppontjának függőleges koordinátája, vˆi , N az átlagos sebesség függőleges irányú komponense i időpontban N egymást követő kézjel pozíciójának felhasználásával, amely tN=2 másodperces időintervallumot vizsgál. A mozgás alapú gesztust akkor azonosítja az eljárás, amikor az i időpontban vˆi , N értéke meghalad egy
37
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
előre meghatározott Vmin küszöbszámot. A kísérletek alapján meghatározott küszöbszám
Vmin=300. A felügyelt tanítás során a felhasználó bemutatja az eljárás által megadott kézjelet, amely alapján elvégezhető az újratanítás. Annak érdekében, hogy a tanuló eljárás a megfelelő kézjelről vegyen mintát, fel kell ismernie, hogy a felhasználó megformálta a kívánt gesztust és várakozik a tanítás elvégzésére. Az eljárás a kontúr időbeli változása alapján azt vizsgálja, hogy a felhasználó adott ideig ugyanazon gesztust formálja-e meg. Jelölje vt a kézjel kontúrját t időpillanatban, u(i) az i-edik osztályhoz tárolt mintát és K jelölje a felügyelt tanítás során kijelölt osztályt. A kontúr időbeni változása a következő ρt kifejezéssel írható le t időpillanatban:
ρt =
S (vt , vt −1 , n )
{(
min S u i i≠ K
(K )
(i )
)}
(2.30)
,u , n ,
ahol S (vt , vt −1 , n ) az időben egymást követő kézjelek hasonlóságát vizsgálja (lásd 2.25
(
)
képletet), és S u ( K ) , u (i ) , n a felügyelt tanítás során kiválasztott osztály hasonlóságát méri a fennmaradó osztályokkal. Amikor a felhasználó kézjele nem változik ρt értéke egy adott küszöbszám alatt marad, amely értéke a kísérletek alapján 0.5. Amennyiben a felhasználó 3 másodpercig nem módosítja a kézjelet az előbbi feltétel alapján, akkor a tanuló eljárás mintát vesz az újratanításhoz.
2.7 Kísérleti eredmények A következő kísérletek megvizsgálják, hogyan változik a felismerési hatékonyság, ha a kézfelismerő eljárás tanítását és tesztelését különböző személyek végzik, továbbá hogyan javítható a kézjelek felismerési aránya az interaktív tanító eljárás segítségével, illetve az időben egymást követő kézjelek vizsgálatával (lásd 2.27 képletet). Az eljárások eredményének objektív összehasonlítása érdekében a felismerési arány mérése előre létrehozott teszthalmazokon történik. A minták 5 felhasználó 9 kézjelének mintáit tartalmazzák, ahol minden egyes gesztusról egy 10 másodperces videó, összesen 45 képsorozat készült. Így az egy képkockát felhasználó osztályozó eljárás (továbbiakban
38
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
„egy kézjel alapú” eljárás, lásd 2.26 képletet) a videók különálló képkockáin tesztelhetőek, míg a több képkockát felhasználó osztályozás (továbbiakban „több kézjel alapú” eljárás, lásd 2.27 képletet) a videó egymást követő képeit használja fel. A szakirodalomban a felismerési hatékonyság jellemzésére rendszerint a kézjelek átlagos felismerési aránya szolgál, azonban ez nem ad információt az egyes kézjelek felismerési arányának eloszlásáról, ezért az átlag mellett azok szórását is célszerű vizsgálni. Így az átlagos felismerési arány növekedése és a szórás csökkenése jelzi a felismerés hatékonyságának növekedését. A felismerési arány mérése az egyes felhasználók esetén előre rögzített képsorozaton történik, amely alapján mérhető az időben egy, illetve több kézjelet felhasználó osztályozás. A tanító eljárás hatékonyságának vizsgálata a következő kísérletekkel történt: •
Minden egyes felhasználó elvégzi az összes kézjel tanítását (tanító felhasználó) – egy előzetes tanítás során –, amely alapján az egyes felhasználok tesztmintái (tesztelő felhasználó) kiértékelésre kerülnek (lásd 2-2. táblázatot).
•
Az interaktív tanító eljárás alkalmazásával a felhasználó újratanítja a tévesen felismert kézjeleket. A felismerési hatékonyságok összehasonlításra kerülnek az interaktív tanítás előtt és után (lásd 2-3. és 2-4. táblázatokat).
Ez első kísérlet megvizsgálja az előzetes tanítás hatékonyságát abban az esetben, amikor a tesztelő és tanító felhasználó azonos (lásd a 2-2. táblázat főátlójának értékeit), illetve különböző személy (lásd a 2-2. táblázat főátlón kivüli értékeit). Az előzetes tanítás során a felhasználó minden egyes kézjeléről eltárol egy mintát az eljárás. Azonos tanító és tesztelő felhasználó esetén a felismerési arány átlaga 98% feletti, míg a szórás 0.7-2.1 értékek között mozog. Több egymást követő kézjel alapján végzett osztályozást alkalmazva az átlag 99% feletti, a szórás 0.6-1.4 értékek között mozog. Különböző tanító és tesztelő személyek esetén a felismerési arány egyes esetekben lecsökken (87%-99%) és szórása nő (2-30). A több kézjel alapú osztályozás növelte a kézjelek felismerési arányának átlagát és csökkentette annak szórását. Megfigyelhető, hogy amikor az egy kézjel alapú osztályozás esetén a szórás értéke magas (15-20 feletti értékek esetén), a több kézjel alapú eljárás nem növeli minden esetben a felismerés hatékonyságát, az egyes
39
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
kézjelek alacsony felismerési aránya miatt. Az interaktív tanító eljárás alkalmazása nélkül a megfelelő felismerési hatékonyság csak akkor garantálható, ha a tesztelést végző felhasználó végzi a kézjelek tanítását.
Felismerési hatékonyság [%] Előzetes tanítást végző felhasználók „A” felhasználó „B” felhasználó „C” felhasználó „D” felhasználó „E” felhasználó
Tesztelő
Átlag Szórás Átlag
Szórás
Átlag
Szórás
Átlag Szórás Átlag Szórás
felhasználók „A” felhasználó Egy kézjel alapú
99.3
2
96.7
6.8
97.7
4.1
92.4
21.1
96.1
9.7
Több kézjel alapú
99.5
1.3
99.5
1.5
99.5
1.5
91.9
22.6
98.1
4.1
Egy kézjel alapú
99
3.1
99.3
2.1
99.1
2.6
98.1
3.7
94
12.6
Több kézjel alapú
99.3
2
99.6
1.4
99.3
2.4
99
3
96.4
7.9
Egy kézjel alapú
87.7
17.8
94.7
10.9
98.9
1.9
89.6
23.4
89.9
25.8
Több kézjel alapú
93
10.7
96.6
6.7
99.7
1
92.1
21.8
89.3
27.1
Egy kézjel alapú
94.9
9.3
98.9
2.3
96.4
7.2
99.2
1.6
89.7
29.6
Több kézjel alapú
96.7
5.9
99.1
1.8
99.6
1.2
99.6
1.2
89.3
30.8
Egy kézjel alapú
94.7
10.2
95.4
12.4
91.6
15.2
92.1
18.7
99.6
0.7
Több kézjel alapú
95.9
8
95.4
12.4
92.8
15.3
92.7
18.5
99.8
0.6
„B” felhasználó
„C” felhasználó
„D” felhasználó
„E” felhasználó
2-2. táblázat: Kézjelek felismerési arányának átlaga és szórása különböző tanító és tesztelő felhasználók esetén
A következő kísérlet megvizsgálja a felismerési hatékonyság változását az interaktív tanító eljárás alkalmazásával, ahol az előzetes tanítást és a kézjelek tesztelését eltérő felhasználó végzi. A tesztelő felhasználó az interaktív tanító eljárással végzett kísérlet során korrigálja a tévesen felismert kézjeleket. A kísérlet a 2-2. táblázat alapján néhány olyan előzetes tanítást és tesztelést végző felhasználót vizsgál, ahol szükséges az interaktív tanító eljárás alkalmazása. 40
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
Előzetes
Tesztelő
Felismerési hatékonyság az
Felismerési hatékonyság
tanítást
felhaszn.
interaktív tanítás előtt [%]
az interaktív tanítás után [%]
végző
Átlag
Szórás
Átlag
Szórás
Felügyelt tanítási ciklusok száma
Újratanított kézjelek száma
Egy kézjel alapú
87.7
17.8
98
3.7
3
5
Több kézjel alapú
93
10.7
99.6
1.2
Egy kézjel alapú
92.4
21.1
98.2
2.8
1
2
Több kézjel alapú
91.9
22.6
98.8
2.4
Egy kézjel alapú
89.6
23.4
98.9
2.7
1
2
Több kézjel alapú
92.1
21.8
99.7
0.9
Egy kézjel alapú
94.7
10.9
98.5
2.8
1
3
Több kézjel alapú
96.6
6.7
99.6
1
Egy kézjel alapú
96.4
7.2
97.7
4.8
1
1
Több kézjel alapú
99.6
1.2
99.7
1.3
Egy kézjel alapú
89.7
29.6
98.7
2.7
1
3
Több kézjel alapú
89.3
30.8
99.5
1.6
felhaszn.
„A”
„D”
„D”
„B”
„C”
„E”
„C”
„A”
„C”
„C”
„D”
„D”
2-3. táblázat: Felismerési hatékonyság az interaktív tanítás elvégzése előtt és után
41
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
„-” jelzi, hogy a statisztikák változatlanok Felhasználók
Felismerési hatékonyság az interaktív tanítás előtt [%] Átlag
Szórás
Egy kézjel alapú
99.3
2
Több kézjel alapú
99.5
1.3
Egy kézjel alapú
99
3
Több kézjel alapú
99.3
2
Egy kézjel alapú
87.7
Több kézjel alapú
Felismerési hatékonyság az interaktív tanítás után [%] Átlag Szórás
Felügyelt Újratanított tanítási kézjelek ciklusok száma száma
“A” felhasználó -
-
0
0
-
-
0
0
17.8
98
3.7
3
5
93
10.7
99.6
1.2
Egy kézjel alapú
94.6
12.8
98.9
3
1
2
Több kézjel alapú
92.9
17.8
99.1
2.8
Egy kézjel alapú
95.3
13
98.9
2
1
1
Több kézjel alapú
96.1
10.6
99.6
0.9
Egy kézjel alapú
98.1
2.9
-
-
0
0
Több kézjel alapú
99.3
2
Egy kézjel alapú
97.5
5.2
-
-
0
0
Több kézjel alapú
98.4
4
Egy kézjel alapú
93.1
11.8
99.5
1.1
3
4
Több kézjel alapú
94.5
10.4
99.8
0.6
Egy kézjel alapú
94.7
12.8
99.3
1.9
1
2
Több kézjel alapú
96.4
7.9
99.4
1.7
“B” felhasználó
“C felhasználó
B felhasználó
D felhasználó
A felhasználó
C felhasználó
E felhasználó
B felhasználó
2-4. táblázat: Felismerési hatékonyság az interaktív tanítás elvégzése előtt és után
42
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
A 2-3. táblázat megadja, hogy a felhasználó hány felügyelt tanítási ciklust kezdeményezett (mozgás alapú gesztus segítségével jelzi a ciklus kezdetét és végét) és ezekben összesen hány kézjel újratanítását végezte el. Az egy kézjel alapú osztályozó eljárással a felismerési arányok átlaga az interaktív tanító eljárás segítségével 87.7-96.4%ról 97% fölé nőtt, míg a 7.2-23.4 közötti szórások lecsökkentek 1.2-21.8 közötti értékekre. Több kézjel alapú osztályozó eljárás esetén az interaktív tanítás a felismerési arányok átlagát 89.3-99.6%-ról 98.8% fölé növelte, míg a szórás 2.4 alá csökkent. Az egyes felhasználók esetén az újratanított kézjelek száma 1 és 5 között volt, amelyek újratanítása 1, illetve 3 újratanítási ciklusban történt. A harmadik kísérletben (lásd 2-4. táblázatot) a valós felhasználói körülményeknek megfelelően az előzetes tanítást csak az első felhasználó („A” felhasználó) végzi el, míg a következő felhasználók csak az interaktív tanító eljárást alkalmazzák téves felismerés esetén. A felhasználók sorrendje alapján a 2-4. táblázat egymást követő soraiban láthatóak a felismerés hatékonyságát jellemző statisztikák a felügyelt tanítás előtt és után, ahol „-” jelzi, hogy a statisztikák változatlanok. Az egy kézjel alapú osztályozás esetén az egyes felhasználók maximum 5 kézjelet tanítottak újra és az interaktív tanítással a felismerési arány átlaga 98% fölé emelkedett, míg a szórás 4 alá csökkent. A több kézjel alapú osztályozással az átlag meghaladja 99%-ot, és szórásuk 3 alá csökkent. A felügyelt tanítási ciklus vezérléséhez szükséges mozgás alapú kézjel tesztelésekor a hamis pozitív (az eljárás tévesen azonosította a kéz mozgását, mint mozgás alapú gesztust) és a hamis negatív (a megformált mozgás alapú gesztust nem ismerte fel az eljárás) esetek összege 2% volt.
2.8 Összefoglalás A fejezet egy a felhasználó és a számítógép közötti interaktív tanító eljárást és egy ún. kamera-kivetítő rendszerben alkalmazható kontúr alapú kézfelismerő eljárást ismertetett. Az interaktív tanító eljárás lehetővé teszi a kézjelek téves felismerésének hatékony korrekcióját a felismerési fázis alatt. Így a felhasználóknak nem szükséges kézjeleik előzetes betanítása a megfelelő felismerési arány elérése érdekében, illetve a gesztusok téves felismerése esetén nem kell a felismerési fázist befejezni és az összes kézjel 43
2. Fejezet Felhasználó-adaptív kézfelismerő eljárás interaktív tanítással
tanítását megismételni. Segítségével a felhasználó saját maga végezheti el a kézjelek tanítását és elegendő csak a tévesen felismert gesztusokat újratanítani. A kézjelek kontúr alapú felismerését Fourier alapú osztályozó eljárás végzi, amely időben több egymást követő kézjelet vizsgál a felismerés hatékonyságának növelése érdekében. A bevezetett kontúrleíró függvény segítségével növelhető a kézjelek felismerési aránya és alacsony számítási komplexitása miatt alkalmazható valós idejű tanítás és osztályozás elvégzésére. A kamera-kivetítő környezet lehetővé teszi a kézjelek kontúr alapú felismerését speciális eszközök, például infra kamera alkalmazása nélkül. A vetített háttér és a felhasználó karjának szegmentálását egy módosított háttérkivonáson alapuló eljárás végzi, amely egy előzetes kalibrációt követően mesterségesen generálja a háttérképet a kivetítendő kép geomteriai és színi transzformációjával. A kézfej a csuklóvonal detektálásával szegmentálható a kar sziluettje alapján, függetlenül a viselt ruházattól. Ennek segítségével a kivetített felhasználói felület a kéz pozíciójával és a megformált kézjel segítségével kiadott utasításokkal vezérelhető.
44
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken 3.1 Filmmentés és restauráció Az első filmszalagra rögzített képsorokat több mint száz éve mutatták be a nagyközönség számára a Lumiére-testvérek. A filmszalag cellulóz alapú, fényérzékeny emulzióval bevont anyag, amelyre képkockánként exponálható a képsorozat. A korai nitrát (ún. nitrófilmek), diacetát, triacetát alapú celluloid szalagok nem voltak képesek minőségüket hosszú távon megőrizni, például anyaguk kiszáradt, amely következtében méretük lecsökkent (zsugorodás), ezzel megnehezítve a film felhasználását. A film alapanyaga és annak tárolási körülményeitől függően a különböző kémiai, fizikai folyamatok sérüléseket okoznak a szalagon, amelyek módosíthatják, illetve megsemmisíthetik a tárolt képi információt. A film szerves anyagának bomlása okozza a különböző színi torzulásokat („color fading”), a szemcsezajt („grain”), illetve a kép intenzitásának villódzását („flicker”). A különböző felületi szennyeződések, illetve a film továbbítása következtében számos filmhiba jelenhet meg a képsorozatokon. Ilyen tipikus hibák például a képremegés („image vibration”), koszok és foltok („blotch”), illetve karcok („scratch”) megjelenése [67]. Jelenleg a világ filmarchívumaiban közel 2.2x1012 méter nitrófilm vár felújításra, amelyekből a némafilmek közel 90 százaléka és az 1950 előtti filmek közel fele rongálódott meg jelentősen [6]. Ebből Magyarországon több mint 30-40 ezer órányi (kb. 60 millió méter pozitív és negatív filmet) filmszalagot tárolnak. Mivel állapotuk folyamatosan romlik, megmentésük sürgős beavatkozást igényel. Az archívumok a magas restaurációs költségek és a szűkös lehetőségek miatt két fő feladatot határoztak meg [67]: 1) a nitrát, acetát alapú filmek átmentése poliészter alapú filmanyagra (filmkonzerválás); 2) a filmek kémiai és fizikai sérüléseinek javítása és az eredmény poliészter alapú filmanyagra mentése (filmrestauráció). Az első feladat megakadályozza a film állagának további romlását, lehetőséget adva a későbbi restaurációs munkára. A második szinten a film állapotának minél magasabb szintű helyreállítása a feladat, a hagyományos
45
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
fotókémiai, illetve a digitális restaurációs eljárások felhasználásával. A restauráció során az egyik legfőbb szabály, hogy a képi információt nem szabad módosítani, meghamisítani, kivéve, ha az eredeti anyag pusztulása, sérülése miatt ez elkerülhetetlen [67,68]. A mai poliészter alapú filmek megfelelő tárolás mellett akár száz évig is megőrizhetik a tárolt képi információt, azonban a fizikai sérülések, a különböző szennyeződések a modern alapanyagú filmeken is számos filmhibát eredményezhetnek. Ezért a filmrestaurációs eljárások az archív filmek mellett a mai modern filmszalagok javításában is nélkülözhetetlenek. 3.1.1 Digitális filmrestaurációs eljárások
A számítási teljesítmény folyamatos növekedése és a költségek csökkenése következtében a hagyományos analóg (fotókémiai, fotóoptikai eszközökön alapuló) eljárások mellett egyre nagyobb szerepet kapnak a digitális restaurációs eszközök. Analóg eljárásokkal csak bizonyos fokú rendellenességek, fizikai sérülések javíthatóak, például különböző vegyszerekkel letisztíthatóak a szennyeződések a film felületéről, korrigálható a film fakulása, illetve a felületi karcok javíthatóak az ún. folyadékkapus („wet gate”) módszer [67] alkalmazásával. E módszerek hátránya, hogy a folyadékok alkalmazása a film anyagának kiszáradását okozhatják, amely növeli a film sérülékenységét. Számos filmhiba csak digitális eljárásokkal javítható hatékonyan, például a szemcsezaj, a kép villódzása és remegése. A digitális restaurációs eljárások célja az automatikus eljárások segítségével az időigényes és költséges emberi beavatkozás csökkentése, a javítás minőségének és sebességének növelése. A restauráció három fő lépésből áll: 1) digitalizálás; 2) feldolgozás; 3) az elkészült képsorozat tárolása digitális hordozón, illetve visszaírása filmszalagra. A digitális rekonstrukció első lépése a filmek átalakítása digitális jelekké, amely soronként 6000 (6K), 4000 (4K), 2000 (2K) pixeles felbontást is igényelhet 35mmes filmek esetén. A feldolgozás során – főleg a nagyfelbontású (2K-6K) képek esetén – a nagymennyiségű adat jelenti a legfőbb problémát, mivel egy átlagos hosszúságú film közel 100000 képkockát tartalmaz. Ezért a restauráció költségeinek csökkentése 46
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
érdekében fontos az eljárások minél magasabb fokú automatizálása, felgyorsítása és az emberi beavatkozás mennyiségének csökkentése. A nagyfelbontáson digitalizált és restaurált képsorozatok veszteségmentes tárolásához több terrabájt kapacitás lenne szükséges, amely gazdaságos és biztonságos rögzítésére a mai modern alapanyagú filmszalagok adják a leghatékonyabb megoldást. Az első, teljes egészében digitális helyreállítás 1993-ban történt, amikor Walt Disney: Snow White (Hófehérke, 1937) című mesefilmjét restaurálták. Hazánkban az első teljeskörű digitális restaurációt, a „Lúdas Matyi” című film felújítását 2004-ben közösen végezte a MNFA (Magyar Nemzeti Filmarchívum), Magyar Filmlaboratórium Kft., a Veszprémi Egyetem (Pannon Egyetem), az MTA SZTAKI (Magyar Tudományos Akadémia Számítástechnikai és Automatizálási Kutató Intézete) és az RDI Hangstúdió. 3.1.2 Archív felvételek jellemző filmhibái
Az archív felvételek egyik gyakori hibája a karcok jelenléte, amelyeket a filmtovábbító berendezések, illetve a különböző szennyeződések karcolnak a film anyagába. Több fajtájuk létezik a karcok méretétől, számától függően, például folyamatos, szakaszos, egysoros, többsoros, éles, dörzs, esőkarc. Javításuk analóg módszerek esetén az ún. folyadékkapun át történő másolással történik, amely segítségével csak a fizikai sérüléssel jellemezhető karcok javíthatóak. Ha a karc képe egy másolást követően kerül a filmre, az csak digitális eljárásokkal javítható. A folthibák („blotch”) a nem megfelelő tárolás, rögzítés során a filmre kerülő szennyeződéssel jönnek létre, amelyek jellemzően az egyes képkockákon egymástól függetlenül, véletlen pozíciókban és eltérő alakban észlelhetőek. A kép remegését, vibrációját („image vibration”) okozhatja a kamerák, másológépek pontatlan filmtovábbítása, illetve a filmszalag fizikai sérülése, zsugorodása. E hiba hagyományos analóg módszerekkel csak speciális esetekben, korlátozottan korrigálható, például speciális másolóberendezések alkalmazásával. A film szemcsézettsége („film grain”) a filmszalag hordozórétegében a képi információt hordozó ezüst szemcsék struktúrája, amely a digitalizálás során véletlenszerű textúraként jelenik meg. 47
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
Penészesedést („mold”) okozhatja a helytelen tárolás, amely során a filmtekercset nedvesség éri. A penészgomba rongálja a film szerves alapanyagát, így lejátszásakor periodikus világosság, illetve színi elváltozást eredményez, amely a kép lokális területein észlelhető. A folyamat vegyszeres kezeléssel állítható meg, azonban a sérült területek pótlása hatékonyan csak digitális eszközökkel végezhető el. A színi fakulások („colour fading”) során a színes filmek különböző festékrétegei eltérő mértékben sérülnek. Az eredmény leggyakrabban a bíborba, vörösessárgába hajló, elszíneződött kép lesz. Az egymást követő képkockák intenzitásának globális vagy lokális változása okozza a kép villódzását („flicker”). Okozhatja a nem konstans expozíciós idő a korai filmfelvevő eszközökben, illetve az egyes filmkockák nem egyenletes fakulása.
3.2 Képremegés filmhiba A filmremegés az időben egymást követő képkockák véletlenszerű elmozdulása, amelyet a filmszalag pontatlan továbbítása okoz. A hibát okozhatja a szalag szélein elhelyezkedő lyuksorozat, az ún. perforáció sérülése, amely a filmszalag továbbítását végzi egy szakaszosan mozgó villás szerkezet (greiffer) segítségével. A hiba további oka lehet a filmtovábbító rendszer pontatlansága a szalag másolása, felvétele és lejátszása során. Az archív filmek stabilizálásának célja a fenti okokból megjelenő képremegés kiszűrése a képi tartalomhoz köthető mozgások, például a kamera mozgásának megtartásával. A digitalizált filmkockákon mérhető 2D-s látszólagos mozgásokra hatással van a kamera és a különböző objektumok mozgása. A kamera, illetve több mozgó objektum komplex mozgása esetén a teljes képterület alapján nem szűrhető ki hatékonyan a remegő mozgás, ezért rendszerint kézi beavatkozás szükséges. Ennek során a felhasználó kijelöl egy képterületet (ROF, „region of fixation”), amely mozgása alapján megfelelően stabilizálható a teljes képsorozat. Azonban az emberi beavatkozás időigényes és növeli a javítás költségeit, ezért a cél az archív felvételek stabilizálása a megfelelő képterület (ROF) automatikus kiválasztásával. A mozgás robusztus becslése érdekében figyelembe kell venni, hogy a vizsgált archív képsorozatokon számos képi hiba és zaj található. 48
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
A következő fejezetek áttekintik a stabilizációs eljárásokat és bemutatják annak főbb lépéseit. Ezt követi a mozgásbecslő, majd az adaptív stabilizációs eljárás ismertetése. Az utolsó fejezetben a kísérletek számos példán vizsgálják az eljárás működését.
3.3 Stabilizációs eljárások áttekintése A képremegés a perforáció sérülése és a film zsugorodása esetén csökkenthető speciális, vákuum alapú filmtovábbító berendezéssel, illetve az optika pozíciójának adaptív módosításával [3]. Ha a digitalizáló berendezés a képkocka széleit is rögzíti, akkor a képkockák széleinek detektálásával automatikusan stabilizálható a szalag mozgása (amennyiben az exponált terület megfelelő mennyiségű fényt kap és a képkocka széleinek kontúrja jól detektálható). Amennyiben csak olyan kópia áll rendelkezésre, ahol a remegés egy előzetes másolás során következett be, vagy az alkalmazott digitalizáló berendezés nem képes rögzíteni a képkockák széleit, akkor a képremegés stabilizálása kizárólag az egymást követő képek mozgásának vizsgálatával végezhető el. A kamera mozgásának („ego-motion”), illetve a képén mérhető globális mozgás meghatározása, kompenzálása, stabilizálása számos képfeldolgozási feladat kapcsán jelentkezik, mint például robot navigáció [69], mozgó objektumok szegmentálása és követése [70, 71], videókódolás [72]. Ez a fejezet speciálisan az archív filmek stabilizálásánál alkalmazható eljárásokat ismerteti. Figyelembe véve, hogy a kamera a 3D-s környezet 2D-s vetületét rögzíti a filmszalagra, archív felvételeken az észlelhető képremegésnek a következő összetevői lehetnek: •
Kamera mozgásának remegése. A remegő mozgást okozhatja, ha a kamera egy remegő objektumhoz, például egy egyenetlen úton haladó autóhoz rögzítve készít felvételeket, vagy ha a felhasználó egy könnyű kézikamerát használ.
•
Objektum remegő mozgása, például egyenetlen úton haladó autót rögzít a kamera.
•
Filmkockák pontatlan továbbítása a felvétel, másolás során, amelyet mechanikai eredetű hiba, például a szalag fizikai sérülése okozhat.
49
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
Ennek alapján a filmszalagról digitalizált képsorozatokon az egyes képpontok látszólagos mozgását befolyásolja a kamera és az objektumok mozgása, illetve a filmkockák továbbításából
származó
mechanikai
eredetű
képremegés.
Az
archív
filmek
stabilizálásának célja a mechanikai eredetű remegő mozgás kiszűrése, a kamera és a lokális mozgások megtartásával. Általános célú felvételeken a kamera mozgása időben egyenletesen változik, azonban a kamera, vagy a filmszalag remegő mozgása esetén a mérhető mozgások kiugró értékeket tartalmaznak. Így a mért mozgások kiugró értékeinek kiszűrésével becsülhető az eredeti, egyenletes mozgás. Egy általános stabilizációs eljárás fő lépései a következők: 1.
Időben egymást követő képkockák közötti mozgások (pl. kamera, objektumok mozgása) meghatározása. Jelölje az egymást követő két kép között a megfigyelt mozgás paramétereit Θ t ,t −1 , amelyre teljesül, hogy Θ t ,t −1 = θ t ,t −1 + η t ,t −1 , ahol θ t ,t −1 jelöli az eredeti mozgás (szalag sérülése előtti) és η t ,t −1 a remegő (zaj) mozgás komponensét. Például transzlációs mozgás esetén Θt ,t −1 = d t ,t −1 = [d x d y ].
2.
A mért mozgás alapján a remegő mozgás kiszűrése és így a kívánt egyenletes mozgáspálya becslése. Jelölje Θtc a mozgás kumulatív összegét (mozgáspálya) a t időpontban, amely alapján becsülhető az eredeti, egyenletes mozgás kumulatív
( )
összege: θˆtc,t −1 = Γ Θ ct , ahol Γ függvény végzi az egyenletes mozgáspálya t
becslését. Például transzlációs mozgás esetén: Θtc = ∑ di ,i −1 . i =1
3.
A stabilizált képsorozat előállítása az egymást követő kameraképek geometriai transzformációjával, újrapozícionálásával végezhető el, ahol t időpontban a képkocka a következő értékkel kompenzálható: ηˆt ,t −1 = Θ tc − θˆtc,t −1 .
A képstabilizáció első lépése az időben egymást követő képkockák mozgásának becslése, amely a következő módokon lehetséges: •
A kamera mozgásának („ego-motion”) becslésével [69,73], amely leírható a kamera 3D-s koordinátarendszerében a tengelyek körüli forgatással és eltolással.
50
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
•
Az ún. globális mozgás mérésével, ahol a teljes képterület minden egyes képpontjának mozgása egyetlen mozgásfüggvénnyel írható le, amely formálisan 2D-s parametrikus mozgásmodellel adható meg [74,75].
•
Egy objektum pozíciójának követésével vizsgálható a mozgás pályája és szűrhető ki annak remegése [76].
A 3D-s kameramozgás becslése számításigényes optimalizációs feladat [73], amely meghatározásához előzetes információ szükséges, például a kamera optikai paraméterei, illetve a megfigyelt objektumok elhelyezkedése [77]. Ezért számos módszer – a kamera mozgására és az objektumok elhelyezkedésére vonatkozó megkötések bevezetésével - a kameraképek között 2D-s parametrikus mozgásmodell meghatározásával ad becslést kamera mozgásának paramétereire [69,79]. A modell paramétereinek becslése történhet a kiszámított lokális mozgások utófeldolgozásával, ahol statisztikai analízis során [78,79,80,81], illetve optimalizációs eljárásokkal [74,75] kapható meg a globális mozgásfüggvény. A lokális mozgásinformáció kiszámítható jellemző pontok, például sarokpontok kinyerésével és követésével [78], a teljes képen számított gradiens [82,83] és blokk alapú („block matching”) [79,80,81,84,85] lokális mozgásmezőt számító eljárások segítségével. E módszerek hátránya, hogy a lokális információ kinyerése a zajos archív felvételeken nem megbízható. A [84,85] eljárások a teljes képen számított blokk alapú mozgásbecsléssel határozzák meg a mozgásmezőt, majd a 2D-s parametrikus mozgásmodell együtthatói a legkisebb négyzetek módszerével adhatóak meg, amely így minimalizálja a parametrikus modell alapján becsült és a ténylegesen meghatározott vektormező különbségét. Az alkalmazott mozgásmodell tartalmazza a kép vízszintes és függőleges irányú elmozdulását, illetve annak forgó mozgását. A globális mozgás meghatározására alkalmazható az ún. fázis-korrelációs eljárás [86,87,88,89], amely a frekvenciatérben vizsgálja a két kép közötti korrelációt. E módszer előnye, hogy hatékonyan számítható gyors Fourier transzformációs eljárások segítségével, illetve robusztusan alkalmazható a képsorozat gyors intenzitásváltozására, villódzására és a képi zajokra, amely hibák jellemzőek az archív felvételeken [89].
51
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
Mivel az átlagos kameramozgás esetén az időben egymást követő mozgások értéke egyenletesen változik, a képremegés felismerhető a mozgások nem folytonos, kiugró változásaként. Ekkor a mozgáspálya kiugró értékei különböző médián [75], átlagoló szűrő [90], illetve a frekvenciatérben aluláteresztő szűrő alkalmazásával [91] nyerhetőek ki, mivel a mozgások hirtelen változása magasfrekvenciás komponensnek tekinthető. További eljárások különböző mozgásmodellek felhasználásával, előzetes információ alapján végzik az egyenletes mozgáspálya becslését és így a remegés szűrését. Ilyen módszerek például a poligonális approximáció [73], illetve a Kálmán-szűrő [92] alkalmazásával adnak becslést az eredeti mozgások értékeire. Mivel a kamera és a filmszalag remegésének szűrése is a folyamatos mozgás becslésén alapszik, ezért ezek különválasztása csak a kamera mozgásának becslésével végezhető el, amely azonban nagyban megnövelné az eljárás számításigényét. Mivel általános célú felvételeken a kamera mozgása egyenletes, ezért a gyakorlatban nem jelent problémát, ha a kétféle remegést nem választja külön az eljárás. Meg kell jegyezni, hogy amennyiben a kamera remegése a film látványeleme, nem végezhető el a stabilizálás, mivel a mozgás vibráló hatása tartalmi információt is hordozhat, például az operatőr az adott jelenetet valóságközelibbnek kívánja ábrázolni.
3.4 Nem felügyelt képstabilizáció A mechanikai eredetű képremegés jól modellezhető globális mozgásfüggvénnyel, mivel azt a síkfelületű filmszalag elmozdulása okozza az optika előtt. A mozgásbecslő eljárások általánosan egy domináns objektumot (az objektum képpontjainak számát tekintve) feltételeznek, amelynek mozgása alapján jól jellemezhető a teljes kép mozgása. Azonban ha az adott jelenet komplex mozgásokat, illetve több eltérően mozgó objektumot tartalmaz, a mozgás nem becsülhető megbízhatóan globális mozgásmodellel, amely hibás stabilizáláshoz vezethet. Rendszerint ekkor a kielégítő eredmény elérése érdekében kézi beavatkozást igényel az eljárás [75,93,84], amely során a felhasználó bejelöl egy adott képterület (ROF, „region of fixation”), amely egyetlen domináns objektumot tartalmaz és így annak mozgása megbízhatóan becsülhető (például egy képterületet, amely mozgására csak az egyenletes kameramozgás van hatással). Azonban a kézi beavatkozás csökkenti a 52
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
feldolgozás sebességét és növeli a restauráció költségét. Ezért a célkitűzés egy olyan eljárás kifejlesztése, amely komplex mozgás esetén automatikusan jelöli ki a ROF képterületet a stabilizálás elvégzéséhez. Az archív felvételek stabilizálásánál a következő problémák foglalhatók össze: •
Az optimalizációs eljárások számításigényesek a nagyfelbontású képeken.
•
A kamera és a globális mozgás meghatározása nem egyértelmű több objektum, komplex mozgása esetén, ekkor rendszerint kézi beavatkozás szükséges.
•
A lokális jellemzők (pl. jellemző pontok követése) alapján történő mozgáskövetés érzékeny a különböző filmhibákra (pl. villódzás, foltok, szemcsezaj).
A fenti jellemző problémákat figyelembe véve a bemutatandó eljárás a mozgás struktúrájától függően választ ki egy képterületet (ROF, „region of fixation”), amely alapján elvégzi a mozgásbecslést. Így komplex mozgás esetén, adaptív módon nem a teljes kép, hanem egy képterület mozgása alapján stabilizálható a teljes képsorozat. Mivel a mechanikai eredetű képremegés hatással van a kép bármely területének mozgására és a vibráció szűrése azon a feltételezésen alapszik, hogy a mozgás egyenletesen változik az egymást követő képkockákon, a vibráció szűrése hatékonyabb, ha a mért mozgás minél egyenletesebb az időben. Ennek érdekében olyan mozgásinformációval rendelkező képterület kiválasztása a feladat, amelyre teljesülnek a következő feltételek: •
A terület képpontjainak mozgása megbízhatóan becsülhető az alkalmazott mozgásfüggvénnyel, tehát a vizsgált képterület egy jellemző, domináns irányú és nagyságú mozgással írható le.
•
A mért mozgás időben egyenletes, összehasonlítva a kép többi területének mozgásával.
A stabilizációs eljárás tervezésénél figyelembe kell venni, hogy az eljárásnak nagymennyiségű adatot kell feldolgoznia, továbbá, hogy a felvételek számos filmhibát tartalmazhatnak. Ezért a stabilizációs eljárás fázis-korrelációs [88] módszerrel végzi a mozgásbecslést a kiválasztott képterületen. Ennek alapján a nem felügyelt stabilizációs eljárás lépései a következők: 53
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
1.
Az egymást követő képkockák közötti mozgások vizsgálatával egy adott képterületet (ROF) kiválasztása.
2.
A kiválasztott képterület mozgása alapján a remegő mozgás kiszűrése és így a kívánt egyenletes mozgáspálya előállítása.
3.
Az egymást követő kameraképek geometriai transzformációjával stabilizált mozgás előállítása.
A stabilizációs eljárás a számított mozgásértékek alapján, átlagoló szűrő alkalmazásával végzi az egyenletes mozgáspálya ( θˆtc,t −1 ) becslését t időpontban: θˆtc,t −1 = G * Θ tc , ahol Θ tc a mért kumulatív mozgás t időpontban és G egy konvolúciós mátrix, amely 1xn méretű és konstans együtthatói 1/n értékűek.
3.5 Mozgásbecslés fázis-korrelációs eljárással A fázis-korrelációs eljárás [88] két kép normalizált Fourier teljesítményspektrumának („cross power spectrum”) vizsgálatával adható meg. Jelölje ft(x,y) és ft+1(x,y) a két időben egymást követő kép intenzitásértékeit (x,y) pozícióban, amelyek közötti 2D-s mozgásfüggvény megadható (dx,dy) transzlációs mozgással: f t ( x, y ) = f t +1 (x − d x , y − d y ).
(3.1)
A Fourier transzformáció tulajdonságai alapján [59] a térbeli értéktartományban végzett eltolás megfelel a fázisértékek eltolásával a frekvenciatartományban („shift theorem”). Így a (dx,dy) elmozdulás kifejezhető az alábbi egyenlettel:
Ft (ζ ,η ) ⋅ Ft ∗+1 (ζ ,η ) Ft (ζ ,η ) ⋅ Ft ∗+1 (ζ ,η )
=e
j 2π
ζ d +η d x
y
(3.2) ,
ahol j a képzetes egység, Ft(ζ,η) és Ft+1(ζ,η) rendre az ft(x,y) és ft+1(x,y) képek Fourier transzformáltjai, Ft+1*(ζ,η) az Ft+1(ζ,η) komplex konjugáltját és |.| a frekvenciatér amplitúdóspektrumát jelöli. A 3.2 egyenletben a (dx,dy) értékek kifejezhetőek inverz Fourier transzformációval, amelynek eredménye megegyezik δ(dx,dy) Dirac-delta
54
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
függvénnyel a (dx,dy) pozícióban. Diszkrét Fourier transzformáció alkalmazása esetén az inverz transzformáció egy egységnyi hosszúságú impulzust ad (dx,dy) pozícióban. A gyakorlatban azonban a képi zajok, illetve több mozgó objektum esetén nem egyetlen impulzust, hanem több kiugró érték alkot egy ún. korrelációs felszínt (lásd 3-1. ábrát) az objektumok különböző irányú mozgásának megfelelően. A felszín adott (dx,dy) pozíciója a transzlációs mozgás paramétereit jellemzi (lásd 3.1 képletet), míg az adott pozícióban a felszín magassága a (dx,dy) mozgással jellemezhető képterületek korrelációját adja meg a két egymást követő kép között. Így a korrelációs felszín legmagasabb értékéhez tartozó (dx,dy) pozíció határozza meg a mozgás paramétereit (lásd 3.1 képletet). A mozgás számítása során az eljárás csak egységnyi méretű képpontokban („pixel”) képes mérni, ezért az ennél pontosabb, ún. sub-pixeles mozgásinformáció becsléséhez további feldolgozás szükséges. Egyik lehetséges módszer az egymást követő képek λ értékkel történő nagyítása a feldolgozás előtt, amely segítségével a 3.2 képlet alapján kapott mozgásvektorból sub-pixeles mozgás számolható a kapott mozgásértékek megfelelő skálázásával:
(d
x
/ λ , d y / λ ) . A módszer hátránya, hogy a nagyításnak
megfelelően a feldolgozandó adatmennyiség négyzetesen növekszik. A számítási hatékonyság érdekében célszerűbb a korrelációs felszín csúcsának környezetére egy kvadratikus (parabolikus) prototípus függvényt illeszteni, amely csúcsértékének pozíciója megadja a sub-pixeles mozgásértéket [86]. Jelölje C(x,y) a korrelációs felszín magasságát (x,y) pozícióban, amely maximális értékét (x0,y0) pozícióban veszi fel. A kvadratikus függvény alakja 1D-s esetben: C ( x) = a 0 x 2 + a1 x + a 2 . A C(x0-1,y0), C(x0,y0), C(x0+1,y0) értékekre illesztett kvadratikus függvény
[a0
a1
a2 ]
T
együtthatói a következő
egyenletrendszer megoldásával kaphatóak meg: ( x0 − 1)2 ( x0 )2 ( x0 + 1)2
(x0 − 1) ( x0 ) (x0 + 1)
1 a0 C ( x0 − 1, y0 ) 1 a1 = C ( x0 , y0 ) . 1 a2 C ( x0 + 1, y0 )
(3.3)
Az így meghatározott függvény a maximumértékét az x0′ = − a1 / 2a0 helyen veszi fel. Ehhez hasonló módon határozható meg az y0′ értéke az C( x0′ ,y0-1), C( x0′ ,y0), C( x0′ ,y0+1)
55
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
értékekre illesztett függvény segítségével. Az így kapott sub-pixeles elmozdulás értéke:
(x0′ , y0′ ) . Amennyiben a mechanikai eredetű remegés során a filmszalag globális mozgása az (dx,dy) eltolás mellett α szöggel történő forgatással is jellemezhető, akkor felírható a következő egyenlet az egymást követő képkockákra: f t ( x, y ) = f t +1 (x ⋅ cos α + y ⋅ sin α − d x ,− x ⋅ sin α + y ⋅ cos α − d y ),
(3.4)
ahol ft(x,y) és ft+1(x,y) az időben egymást követő kép intenzitásértékeit (x,y) pozícióban. Ekkor a Fourier transzformáció tulajdonságai alapján [59] a térbeli értéktartományban végzett forgatás megfelel a frekvenciatartományban végzett forgatásnak, amely alapján a felírható a következő összefüggés:
Ft (ζ ,η ) = e
− j 2π
ζ d +η d x
y
(3.5)
Ft +1 (ζ cos α + η sin α ,−ζ sin α + η cos α ) .
A fenti egyenlet amplitúdóspektruma független a (dx,dy) értékkel végzett eltolástól, amely így szeparálható az α szöggel történő forgatástól. Az 3.5 egyenlet amplitúdóspektrumára felírható:
M t (ζ ,η ) = M t +1 (ζ cos α + η sin α ,−ζ sin α + η cos α )
(3.6) ,
ahol az Mt(ζ,η)=|Ft(ζ,η)| jelöli Ft(ζ,η) amplitúdóspektrumát. Az 3.6 egyenlet alapján belátható, hogy Mt(ζ,η) és Mt+1(ζ,η) egymásnak α szöggel elforgatott megfelelője, így azok polár koordinátarendszerbe történő transzformálásával felírható a következő egyenlet:
M t (r , Φ ) = M t +1 (r , Φ − α )
(3.7) ,
ahol Mt(ζ,η) megfelelője a polár koordinátarendszerben: Mt(r,Φ). Így megállapítható, hogy a térbeli értéktartományban végzett forgatás, a 3.7 egyenletben α értékkel történő eltolásként jelenik meg, amely a 3.2 egyenlet alapján, a már ismertetett módon számítható ki. Ekkor a kiindulási kép α szöggel történő kompenzálása után a 3.2 egyenlet alapján számítható ki a (dx,dy) eltolás értéke. 56
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
A Fourier transzformáció feltétele a vizsgált ft(x,y) és ft+1(x,y) függvények periodikussága. Ezért a vizsgált képsorozat It képéből pozíciófüggő súlyozással állítható elő ft(x,y) az (x,y) pozícióban: ft(x,y)=It(x,y)·Qw(x,y), ahol w(x,y) tartalmazza a pozíciótól függő súlyértékeket. E művelet a kép széleinek intenzitását lecsökkenti, így biztosítva a jel periodicitását. A 2D-s w(x,y) függvény szeparálható vízszintes, illetve függőleges irány szerint két 1D-s függvényre: w(x,y)=Qw(x)·Qw(y). A vízszintes irányú w(x) felírható a következő képlettel (ezzel analóg módon adható meg a függőleges irányú w(y) is): xπ π w( x ) = β + (1 − β ) cos − 2. k
(3.8)
ahol β az w(x) súlyfüggvény alakját befolyásolja, 0≤x≤k, k értéke megadja a kép vízszintes irányú felbontását. A kísérletek során a 3.8 képletben β=0.54, amely megfelel a Hamming-szűrőnek [94]. Az így végzett súlyozás további hatása, hogy a mozgásanalízis során a kép szélein mozgó objektumokat kisebb súllyal veszi figyelembe a kép közepén mozgó objektumokhoz képest. Az archív filmek esetén gyakori az egymást követő képkockák közötti intenzitásváltozás („flicker”), amely az alacsony frekvencia-komponenseket érinti. Így felül-áteresztő szűrő alkalmazásával robusztusabbá tehető a mozgásanalízis az intenzitásértékek villódzása esetén. Mivel a fázis-korrelációs eljárás során a számítások a frekvenciatérben történnek, ezért a felül-áteresztő szűrés elvégzése a Fourier spektrumban hatékonyan elvégezhető a megfelelő frekvencia-komponensek súlyozásával (ζ,η) frekvenciaértékek esetén [88]: Ft(ζ,η) = Jt(ζ,η) · H(ζ,η), ahol Jt(ζ,η) az eredeti és Ft(ζ,η) a feldolgozott Fourier spektrum. A H(ζ,η) frekvenciafüggő súlyérték az alábbi kifejezéssel adható meg:
H (ζ ,η ) = (1 − X (ζ ,η ))(2 − X (ζ ,η )) πζ X (ζ ,η ) = cos l
(3.9)
πη cos , k
ahol l és k a kép függőleges és vízszintes irányú felbontását jelöli, továbbá − l / 2 ≤ ζ ≤ +l / 2 és − k / 2 ≤ η ≤ + k / 2 .
57
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
Az fázis-korrelációs eljárás hatékony számítása érdekében gyors Fourier transzformációs módszerekkel [95] csökkenthető a feldolgozási idő, ennek érdekében a vizsgált képek méretének kettő valamely hatványával kell megegyeznie. Ha a kép mérete különböző, akkor egy befoglaló, megfelelő méretű kép középpontjába elhelyezve végezhető el a transzformáció. A feldolgozási idő csökkentése érdekében a mozgásbecslés az eredeti kép méretének 1:β (β>1) arányban csökkentett változatán hajtódik végre, amely során a kicsinyített kép újramintavételezése bicubic interpolációs [59] eljárással történik. A mozgásbecslés során a kapott (dx,dy) eltolás és α forgás értékek (lásd 3.1, illetve 3.4 egyenleteket) az eredeti felbontású képen (β·dx,β·dy) eltolás és α szöggel történő forgatásnak felelnek meg.
3.6 Adaptív stabilizálás automatikus ROF kiválasztással Az adaptív stabilizálás során egy olyan képterület kiválasztása a cél, amely mozgása jól jellemezhető az alkalmazott mozgásfüggvénnyel és időben megközelítőleg egyenletes mozgást végez. Az automatikus ROF kiválasztás a transzlációs mozgás (lásd 3.1 egyenletet) vizsgálatával kerül kiválasztásra, melynek lépései a következők: 1. Az egymást követő képek térbeli szegmentálása négyágú fa módszerrel – a teljes kép területéből kiindulva – olyan területekre (ROF), amely mozgása megbízhatóan becsülhető. 2. Az így kapott területeken, több egymást követő képkockán mért mozgások időbeli vizsgálatával a legegyenletesebb ROF kiválaszta.
A fázis-korrelációs eljárás a mozgás számításakor meghatároz egy ún. korrelációs felszínt (lásd 3.5 fejezetet), amely megadja a különböző irányú elmozdulásokhoz tartozó korrelációt. A 3-1./a ábrán látható példa egy korrelációs felszínre, amelyhez tartozó képterület pontjainak mozgása egyértelműen meghatározható egy mozgásfüggvénnyel, míg a 3-1./b ábra esetén a képterület több, eltérően mozgó objektumot tartalmaz. Így a korrelációs felszín vizsgálatával következtetni lehet a mozgás komplexitására és a mozgásbecslés megbízhatóságára. 58
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
a)
b)
3-1. ábra: A normalizált teljesítményspektrum inverz Fourier transzformáltja, az ún. korrelációs felszín: a) a képterület mozgása megbízhatóan becsülhető, mivel egyetlen jellemző irányú mozgás van jelen; b) a képterület eltérő irányú, nagyságú mozgásokat tartalmaz
Komplex mozgás esetén (lásd 3-1./b ábra) az adott képterület, négyágú fa („quad-tree”) struktúra szerint négy egyenlő területre bontható fel (lásd 3-2. ábrán), amelyek mozgása tovább vizsgálható. A rekurzív lépések addig ismételhetőek, amíg az adott blokk mozgása megbízhatóan becsülhető, illetve az eljárás nem éri el a maximális mélységet a fában. A mozgás négyágú fa alapú szegmentálásának lépései: 1. Jelölje H ⊂ Z2 a vizsgálandó ROF képterületet és D annak szintjét a fastruktúrában, ahol kezdetben H megegyezik a teljes képterülettel, ekkor D=1. 2. A H által meghatározott képterületen fázis-korreláció számítása (lásd 3.1 és 3.2 egyenleteket), amely eredményét jelöljék (dx,dy) értékek. 3. A 3.2 egyenlet megoldása során kapott C(x,y) korrelációs felszín vizsgálata. A H terület mozgása megbízhatóan jellemezhető a kapott (dx,dy) mozgással, amennyiben teljesülnek a következő feltételek. a) A korrelációs felszínen a legmagasabb C(dx,dy) korreláció értékére teljesül, hogy C(dx,dy)>hmin. Az archív felvételeken végzett kísérletek során hmin=0.023, amely küszöbszámot általánosan alkalmazzák a fáziskorrelációval végzett mozgásbecslés megbízhatóságának mérésére [86,88].
59
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
b) A maximális C(dx,dy) érték alapján, a (dx,dy) pozíción kívül δ ⋅ C (d x , d y ) értéknél nincs magasabb lokális csúcs a korrelációs felszínen. A kísérletek alapján δ=0.3. Ha az adott H képterület mozgása nem jellemezhető az alkalmazott mozgásfüggvénnyel a fenti feltételek alapján és D
H111
H112
H114
H113
H14
H12
H1
H12
H11
H13
H111
H112
H113
H13
H14
H114
3-2. ábra: A mozgásmező négyágú fa felbontása és a szegmentált képterületek struktúrája
{ }
Jelölje Qt = H it a t és (t+1)-ik képkockák alapján létrejött négyágú fa felosztás leveleit (lásd az egymást követő képkockák szegmentált képterületeinek struktúráját a 3-3. ábra felső sorában), ahol H it ⊂ Z2 képterületek (i=1,…,mt; ahol mt a képterületek száma) diszjunktak és uniójuk megegyezik a teljes kép területével. Egy M elemű képsorozat egyes képkockái esetén a négyágú fa struktúrák és így Qt (t=0,…,M-1) halmazok eltérőek lehetnek (lásd 3-3. ábra felső sorát). Annak érdekében, hogy ugyanazon képterület mozgása időben (M hosszúságú képsorozaton keresztül) vizsgálható legyen, egy közös négyágú fa felosztást kell létrehozni (lásd 3-3. ábra alsó sorát), amely az egyes
60
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
fastruktúrák alapján a legrészletesebb felbontás létrehozásával alkotható meg. A közös fastruktúrának megfelelő képterületek Q ′ halmaza felírható a következő módon:
{
}
Q′ = H k′ H k′ = G0 ∩ G1 ∩ K ∩ GM −1 , Gt ∈ Qt , t = 0,..., M − 1
(3.10)
ahol a kapott Q ′ közös felosztás képterületeit jelölje H k′ ⊂ Z2 (k=1,…,n; n a képterületek számát adja meg), amely halmazok páronként diszjunktak és uniójuk a teljes kép területe, továbbá a t és (t+1)-ik képkockák alapján létrejött négyágú fa felosztás leveleinek
{ }
halmazát Qt = H it
jelöli, Gt ∈ Qt és Gt ⊂ Z2 (t=0,…,M-1 ahol M a felhasznált
képkockák számát adja meg).
t-1
t
t+1
3-3. ábra: Időben egymást követő képek mozgásmezőinek négyágú fa felbontása. Felső sor: a különálló képeken szegmentált mozgásmezők struktúrája. Alsó sor: a szegmentált mozgásmezők közös fastruktúrája
Adott H k′ ∈ Q′ képterületen mért mozgás egyenletességének mérése egy lineáris modell segítségével történik: u[x,y](t) = a + b·t, ahol a és b a modell paraméterei és u[x,y](t) a modell alapján becsült vízszintes (x), illetve függőleges (y) irányú mozgás sebessége t időpillanatban. A modell segítségével leírható egyenletes (b=0), illetve egyenletesen
61
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
gyorsuló (b>0) és egyenletesen lassuló mozgás (b<0). A paraméterek meghatározása lineáris regresszióval történik az M elemű (t,v[x,y](t)) mintapárokon, ahol v[x,y](t) a H k′ képterületen és a t-edik képkockán mért sebesség (t=0,…,M-1; M a vizsgált képkockák számát jelöli): M −1
b=
(
)
M −1
M −1
n =0
n =0 M −1
(
)
M ∑ nv[ x , y ] (n ) − ∑ (n )∑ v[ x , y ] (n ) n =0
M −1
(3.11)
M ∑ n2 − ∑ n n =0 n =0 M −1
( )
M −1
∑ (v (n)) − b ∑ (n )
.
[ x, y]
a=
n =0
n =0
M Az adott H k′ képterületen (k=1,…,n; n a képterületek számát adja meg) mért mozgás egyenletességét a mért (v[x,y](t)) és a modell alapján becsült (u[x,y](t)) mozgás négyzetes hibája adja ( χ k ): M −1
M −1
χ k = ∑ (v x (t ) − u x (t )) + ∑ (v y (t ) − u y (t )) . 2
t =0
2
(3.12)
t =0
Így a H k′ ∈ Q′ képterület alapján mért χ k hiba alapján kiválasztható a legegyenletesebb mozgású H L′ ∈ Q′ képterület (ROF) a stabilizálás elvégzéséhez:
L = arg min (χ k ). k
(3.13)
Az így meghatározott H L′ képterületen mért mozgásvektorok alapján történik a teljes képsorozat stabilizálása. Egy képsorozat stabilizálásakor M képkockánként történik egy adott ROF kijelölése, így a mozgás struktúrájának változásával folyamatosan módosulhat a kiválasztott képterület. Az objektumok eltérő sebessége következtében szükséges az M adaptív meghatározása. Jelölje tM az M képkocka hosszúságú képsorozat időtartamát másodpercben, ekkor M értéke a mozgásanalízis során az alábbi feltétel alapján határozható meg:
62
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
i−1 w M = max i ∑ d x (t ) < és 4 t =0
h ∑ d (t ) < 4 , i −1
y
t =0
0.5 ≤ t M ≤ 1
(3.14)
ahol dx(t) és dy(t) a teljes képen mért vízszintes és függőleges irányú elmozdulás a t-edik képkockán, w és h jelöli a kép szélességét és magasságát. Így a vizsgált képsorozat M elemszáma függ a teljes képen mért vízszintes, illetve függőleges mozgások kumulatív összegétől, továbbá az időtartam (tM) maximális értéke 1, minimális értéke 0.5 másodperc.
3.7 Kísérleti eredmények A következő kísérletek bemutatják a mozgásbecslés pontosságának és feldolgozási idejének változását abban az esetben, ha a becslés különböző 1:β arányban átméretezett (lásd 3.5 fejezetet) képsorozaton (lásd 3-4., 3-5., 3-6. ábrákat) történik, amely alapján az eredeti felbontású képsorozat mozgása (β·dx,β·dy). A képsorozat 20 képkockát tartalmaz, amelyek felbontása 512x512 képpont. A feldolgozási idő 1.8 GHz-es Intel Pentium számítógépen az eltolás és forgás egyidejű vizsgálatakor 3 másodperc (lásd 3.4 egyenletet), illetve eltolás alapú mozgásmodell esetén 0.9 másodperc volt (lásd 3.1 egyenletet). A 3-4. és 3-5. ábrán látható az egymást követő képek közötti eltolás (lásd dx értékét a 3.4 egyenletben) és forgásszög (lásd α értékét a 3.4 egyenletben) becslése a vizsgált képsorozat különböző méretarányú változatain (1:β). A 3-6. ábrán látható a különböző felbontású képsorozatokon mért relatív feldolgozási idő. A kísérletek alapján látható, hogy a β=2 méretarány esetén a feldolgozási idő hatékonyan csökkenthető közel azonos becslési pontosság mellett.
63
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
3-4. ábra: Becsült forgásszög az egymást követő képkockák között, különböző méretarányú képsorozatok felhasználásával. Az 1:1 méretarány az eredeti felbontást jelöli
3-5. ábra: Becsült vízszintes irányú elmozdulás az egymást követő képkockák között, különböző méretarányú képsorozatokon. Az 1:1 méretarány az eredeti felbontást jelöli
64
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
3-6. ábra: Az eltolás és forgatás elvégzéséhez szükséges feldolgozási idő, különböző méretarányú képsorozatokon. Az 1:1 méretarány az eredeti felbontást jelöli
Az adaptív stabilizációs eljárás kiértékelése számos képsorozat felhasználásával történik, amelyek különböző típusú filmhibákat, például villódzást, foltokat, illetve alacsony kontrasztot és képi zajokat tartalmaznak. A kísérletekben a mozgásbecslő eljárás β=2 értéket alkalmazza, kivéve a „henger” képsorozatra, ahol β=1.
„Katonák” képsorozat
A 3-7. ábrán látható a képsorozat 1. és 20. képkockája, amely lokális és függőleges irányú kameramozgást tartalmaz. A stabilizálás tesztelése érdekében normális eloszlású, nulla várható értékű mesterséges remegő mozgás került hozzáadásra az eredeti képsorozathoz, amely maximum ±2 képponttal tolja el az egyes képkockát vízszintes és függőleges irányban.
65
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
3-7. ábra: A „katonák” képsorozat 1. és 20. képkockája
3-8. ábra: Az eredeti, a remegő és a stabilizált képsorozat függőleges irányú mozgáspályája A 3-8. ábra az egyes képkockák között mért függőleges elmozdulások (lásd d y értékét a 3.1 egyenletben) kumulatív összegét és így a t-edik képkocka pozícióját ábrázolja: t
∑ d (i ) . Az ábrán megfigyelhető, hogy a mesterséges remegést és a kamera egyenetlen y
i =o
mozgását egyaránt stabilizálta az eljárás. Az adaptív stabilizáló eljárás nem bontotta fel a képet, mivel a teljes képen mérhető mozgás jól jellemezhető az alkalmazott mozgásfüggvénnyel, ezért a stabilizálás a teljes képterületen mérhető mozgás alapján történt.
66
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
„Kamera” képsorozat
A képsorozat villódzás filmhibát, lokális és vízszintes irányú kameramozgást (lásd 3-9. ábrát), továbbá képremegést tartalmaz, amely eltolás és forgatás transzformációval modellezhető. A 3-10. és 3-11. ábrákon látható az adaptív stabilizáció eredménye, amely a teljes képet jelölte ki a stabilizációhoz, mivel annak mozgása megbízhatóan becsülhető.
3-9. ábra: A „kamera” képsorozat 1. és 40. képkockája
3-10. ábra: A „kamera” képsorozat vízszintes irányú elmozdulása a stabilizálás előtt és után
67
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
3-11. ábra: A „kamera” képsorozat forgása a stabilizálás előtt és után
„Forgó henger” képsorozat
A példában egy komplex mozgást végző forgó henger látható, amely összetett, nem merev („non-rigid”) mozgást végez (lásd 3-12. ábrát). A képsorozat nem tartalmaz észlelhető remegő mozgást.
3-12. ábra: A „forgó henger” képsorozat 10. és 20. képkockája
68
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
3-13. ábra: A „forgó henger” 10. és 20. képkockája, amely stabilizálása során a [84] eljárás hibázott, mivel vízszintes irányban elmozdította a képet
Az adaptív stabilizációs eljárás a képet, annak komplex mozgása miatt további képterületekre bontotta. Az eljárás a mozgás analízise során a kép bal felső negyedét választotta a stabilizáláshoz, mivel annak mozgása közel nulla az ún. apertúra probléma miatt. A bevezetőben ismertetett [84,85] eljárások szabadon elérhetőek, így azok összehasonlításra kerültek a bemutatott eljárással. Mindkét eljárásra jellemző, hogy a teljes képen mért lokális mozgások alapján határozzák meg a globális mozgást és nem végeznek szegmentálást a képen. A kísérletek során mindkét eljárás hibázott, mivel vízszintes/függőleges irányú elmozdulásokat detektáltak az egymást követő képkockák között, így a stabilizálás téves eredményt adott. A 3-13. ábrán látható, ahogy a [84] eljárás a stabilizálás során tévesen elmozdította vízszintes irányban a képet.
„Jármű” képsorozat
A képsorozaton a kamera egy autót követ a gyorsan mozgó háttér előtt (lásd 3-14. ábrát). Az adaptív stabilizáló eljárás a kép jobb alsó területét választotta (ahol az autó látható), amelyen mért mozgás alapján végzi a teljes képsorozat stabilizálását. A nem adaptív eljárás a teljes képet alkalmazza a mozgásbecsléshez, ezért annak értékét a háttér és az autó mozgása is befolyásolja, így a stabilizálás során eltérő objektumok mozgását használja fel. A 3-14. ábrán látható az eredeti képsorozat, a nem adaptív, illetve az adaptív stabilizáló eljárással készült képsorozat 13. és 24. képkockája, ahol a nem adaptív eljárásnál látható a hibás stabilizációt okozó vízszintes elmozdulás. A 3-15. ábra 69
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
bemutatja az autó vízszintes elmozdulásait az eredeti és a különböző módszerekkel stabilizált képsorozaton, amelyen megfigyelhető, hogy a nem adaptív eljárás a globális mozgásbecslés hibája miatt több kiugró értéket tartalmaz. A stabilizálás eredményének kiértékelésekor az autó mozgása a kézzel kijelölt képterület (a kép jobb alsó területe) mozgásának mérésével történt.
13. képkocka
24. képkocka Eredeti
Adaptív stabilizáció
Nem adaptív stabilizáció
3-14. ábra: A „jármű” képsorozat 13. (felső sor) és 24. (alsó sor) képkockája az eredeti, az adaptívan stabilizált és a nem adaptívan (teljes kép alapján) stabilizált képsorozat esetén
70
3. Fejezet Adaptív képstabilizációs eljárás archív filmeken
3-15. ábra: Az autó vízszintes irányú elmozdulása az eredeti, az adaptívan és a nem adaptívan stabilizált képsorozaton
3.8 Összefoglalás A költséghatékony restauráció érdekében fontos szempont a feldolgozási idő és a szükséges emberi beavatkozás mennyiségének csökkentése. A képremegés filmhibát a filmszalag
pontatlan
továbbítása
okozza
a
másoló,
felvevő
és
megjelenítő
berendezésekben. A stabilizáció első lépése az egymást követő képkockák közötti mozgás meghatározása, amely alapján kiszűrhető a remegő mozgás. Ha a képsorozat több mozgó objektumot tartalmaz, a teljes képen mért globális mozgás alapján végzett stabilizáció hibát okozhat. Ekkor általában kézi beavatkozás szükséges, amely során a felhasználó egy képterületet (ROF, „region of fixation”) jelöl ki, amely mozgása megbízhatóan mérhető az alkalmazott mozgásmodell felhasználásával. A bemutatott eljárás a különböző mozgó területek elkülönítésével és mozgásuk vizsgálatával adaptívan jelöl ki egy képterületet, amely mozgása alapján elvégezhető a teljes képsorozat stabilizálása. A mozgásbecslő eljárás figyelembe veszi, hogy a felvétel számos filmhibát, például villódzást tartalmazhat.
71
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken 4.1 Bevezetés Számos filmhiba esetén a digitális filmrestauráló eszközök segítségével a hagyományos (fotókémiai) restaurációs eszközöknél jobb minőségben, gyorsabban és olcsóbban végezhetőek el javítások. Az automatikus, fél-automatikus eljárásokkal növelhető a feldolgozás sebessége, illetve csökenthető az emberi beavatkozás mennyisége és így a restauráció költsége. A digitális és analóg filmrestauráció alapvető szabálya, hogy a javítás során nem módosítható az eredeti képi tartalom, kivéve, ha az más módon nem pótolható [67,68]. A digitalizált képen megjelenő, kockánként eltérő pozícióban megjelenő képhibák, („one-frame defect”), például foltok, vagy bizonyos típusú karcok helyén a képi információ megsemmisült, ezért az eredeti tartalomra csak becslés adható. A film felületének fizikai sérülése, a rátapadt szennyeződések, a különböző kémia folyamatok, mint például a film gombásodása okozhatja az ún. folthibát. Az ilyen típusú hibák jellemzője, hogy alakjuk, méretük, textúrájuk változatos, és az egymást követő képkockákon egymástól függetlenül, véletlen pozícióban jelennek meg. Ezért a folthiba modellezhető az időben egymást követő képek intenzitásértékeinek nem folytonos változásával, amely nem vezethető vissza az objektumok mozgására. Így például egy képterület tévesen foltnak ismerhető fel (hamis pozitív találat, „false positive”) egy felcsillanó objektum, vagy a háttérnél világosabb/sötétebb mozgó objektum esetén. A folt az egyik leggyakoribb filmhiba, amely restaurálása nagymennyiségű kézi beavatkozást és számítógépes erőforrást igényel [3]. Ennek okai: 1) a hiba megjelenésének változatossága (pl. alaki, méretbeli); 2) nagymennyiségű feldolgozandó adat (pl. mozgásbecslés esetén) a 2K (2000 képpont soronként) vagy nagyobb felbontású képek esetén; 3) a detektálás „ill-posed” jellegű probléma, mivel a sérült képterületen a mozgások nem ismertek, amelyek szükségesek lennének a hiba felismeréséhez; 4) nagymennyiségű kézi beavatkozás szükségessége a detektálás hamis pozitív hibájának 72
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
kiszűrése érdekében. A tévesen foltnak azonosított területek korrigálásával az eredeti képi információ a becslés során módosulna, amely a filmes szakemberek álláspontja szerint nem megengedett [67,68]. Ezért a restaurátorok egy utólagos ellenőrzés során kiszűrik a hamis pozitív hibákat, ami nagymennyiségű emberi beavatkozást igényel. A folthiba javításának általános lépései a következők (lásd még 4-1. táblázatot): 1. Az
egymást
követő
képek
előfeldolgozása
a
vizsgált
képkockák
mozgáskompenzációjával, amely célja a mozgásból származó hamis pozitív találatokat csökkentése. 2. Foltok területének detektálása. 3. A detektált foltmaszk utófeldolgozása a felismerési hatékonyság növelése érdekében. 4. A foltok javítása az érintett képpontokban a hiányzó képi információ térbeli és/vagy időbeli interpolációjával.
A foltok javításának további megközelítése a mozgásbecslést, a foltok detektálását és a rekonstrukciós lépést egy közös Bayes statisztikai modellben végzi [96]. E megközelítések hátrányai: 1) számítási igényük magas a teljes képen végzett mozgásbecslés következtében; 2) a mozgásbecslés hibája növeli a hamis pozitív találatok arányát. Az archív felvételekre jellemző képi zajok, objektumok komplex mozgása (kitakarás/előtünés), nem merev mozgás („non-rigid motion”), mozgásból adódó elmosódás („motion blur”) következtében a mozgásbecslés és így a mozgáskompenzáció hibája növekszik, amely növeli a hamis pozitív találatok előfordulását és csökkenti a helyesen felismert (igaz pozitív, „true positive”) folthibák számát. Ezért a bemutatandó eljárás a foltok időben történő, mozgásbecslésen alapuló detektálást kiegészíti egy térbeli, a foltok képi tulajdonságait vizsgáló eljárással. Az utófeldolgozás során, a folt-gyanús helyek képi jellemzői alapján egy osztályozó eljárás kiszűri a hamis pozitív találatokat (tévesen folthibának azonosított képterület, amely az eredeti zajmentes képi tartalom része), amelyeket így nem korrigál az eljárás. Az osztályozó eljárás adaptívan választja ki a foltok képi jellemzőit egy előzetesen elvégzett,
73
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
felügyelt tanítás segítségével. A hamis pozitív találatok csökkentésével így lerövidíthető az automatikus feldolgozást követő kézi beavatkozáshoz szükséges idő. A mozgásból származó hamis pozitív találatok csökkentése érdekében egy gradiens alapú, többszintű mozgásbecslést alkalmazó eljárás került bevezetésre, amely a foltgyanús területek felhasználásával csökkenti a feldolgozandó képpontok számát és így a feldolgozási időt. A detektálás hatékonyságának objektív kiértékelése érdekében egy tesztadatbázis készült eredeti archív felvételekből, ily módon az eljárások valós körülmények között hasonlíthatóak össze. A mérések során az adott képkockához tartozó, a hibák pontos elhelyezkedését leíró ún. referencia képmaszk egy fél-automatikus eljárással került meghatározásra, amely lehetővé teszi tesztadatbázisok költséghatékony elkészítését. Az eljárás kiértékelése során egy új mérőszám került bemutatásra, amely a szükséges emberi beavatkozás mennyiségével minősíti a foltok detektálásának hatékonyságát.
4.2 Folthibát detektáló eljárások áttekintése A detektálást végző eljárások három fő csoportra oszthatóak: 1) térbeli detektálás a kép intenzitásértékei alapján, lokális minimum/maximum vizsgálatával; 2) az egymást követő képkockák adott pozíciójában az intenzitásértékek változásának, folytonosságának mérésével; 3) térbeli és időbeli analízis együttes alkalmazásával (hibrid modellek) [97,98]. Az első csoportba tartozó eljárások morfológiai műveletekkel [99,100], illetve medián jellegű szűréssel [101] detektálja a foltokat, amely főleg kisebb kiterjedésű hibák esetén alkalmazható hatékonyan [96]. Mivel e módszerek időben csak egyetlen képkockát vizsgálnak, hátrányuk, hogy a képi tartalomhoz tartozó, a környezeténél világos (sötétebb) területet is tévesen foltnak minősíthetik. A második csoportba tartozó eljárások az egyes képpontok intenzitásértékének időbeli folytonossága alapján a kiugró értékeket vizsgálják. Ez végezhető 3D-s medián [91], SDI (Spike Detection Index) [102], Markov típusú valószínűségű mezőkkel („Markov Random Field”, MRF) [103], ROD („Rank Ordered Differences”) [104], SROD („simplified ROD detector”) [105], ESTD (Enhanced SpatioTemporal Detector) [106]. A vizsgálat során alkalmazható három [105], [102], illetve öt egymást követő képkocka [107], amely egyes esetekben növelheti a detektálás 74
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
hatékonyságát, azonban lényegesen növeli a feldolgozási időt. Az MRF, SDI és ROD eljárások összehasonlítása során [104] a ROD eljárás bizonyult a leghatékonyabbnak a feldolgozási idő és a számítási komplexitás szempontjából. A ROD alacsonyabb számítási teljesítményt igénylő változata az SROD („simplified ROD detector”) amellyel hasonló felismerési hatékonyság érhető el [105]. Az előfeldolgozás során tipikus lépés (lásd 4-1. táblázatot) a többirányú mozgásbecslés, amely során a vizsgált képkockához képest az előző és következő képkockák mozgását (amelyek részt vesznek a foltok detektálásában) kompenzálják a detektálás előtt, ezzel csökkentve a mozgásból származó hamis pozitív találatok számát. A mozgásbecsléshez a legtöbb módszer blokk alapú eljárást alkalmaz (lásd 4-1. táblázatot), ahol a mért mozgásvektor egész értékű. További módszer a gradiens alapú mozgásbecslés, amely a képpontnál pontosabb, ún sub-pixeles becslést ad [102]. E módszerek számítási komplexitása csökkenthető többszintű (a kép különböző felbontású változatait felhasználva) mozgásbecslés [105,104,75], illetve heurisztikus eljárások [107,108] alkalmazásával. A többszintű becslés során a kép alacsonyabb felbontásán mért mozgásértékek, mint kiindulási adatok pontosíthatóak az eredeti kép nagyobb felbontású, részletgazdagabb változatain. A heurisztikus eljárások a blokk alapú mozgásbecslés során csökkentik a számítási műveletek számát. A rekurzív, blokk alapú eljárás [108] az egyes lépések során a szomszédos pozíciókban határozza meg a leghasonlóbb blokkot (4szomszédság alapján), majd a kapott pozícióból kiindulva újból elvégzi a hasonlóság alapú keresést. A rekurzió adott lépésszámig vagy adott fokú egyezés eléréséig tart. Az Nlépéses (log-D) blokk alapú keresés [107] során adott lépésközönként történik a blokkok hasonlóságának vizsgálata. Az iterációs lépések során az előzőleg kiválasztott pozícióból indul a keresés, az előzőnél kisebb lépésközű felosztás alapján, így csökkentve a számítási lépések számát. A heurisztikus eljárások hátránya, hogy nem garantálják a globális optimumot és csak képpont pontosságú becslést adnak. A feldolgozási idő csökkentésének további lehetséges módja, hogy a blokk alapú mozgásbecslést csak a lehetséges foltokhoz tartozó képterületen történik [106]. E megközelítésről azonban nem vizsgálták meg, hogy milyen mértékben módosítja a feldolgozási időt és foltok detektálásának hatékonyságát. A módszer további hátránya,
75
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
hogy többszintű mozgásbecslés alkalmazása nélkül a blokk alapú mozgásbecslés számítási igénye magas a nagyfelbontású képeken mérhető mozgások esetén (akár 40 képpont a 2K felbontású képeken). Az utófeldolgozás során morfológia műveletekkel növelik a detektált folt területét, hogy a folt széleinek részleges felismerése esetén is a korrekció megfelelő legyen. A foltok részleges detektálásának csökkentése érdekében alkalmazható hiszterézisküszöbölés („hysteresis thresholding”, HT) [105], feltételes régiónövelő eljárás („constrained region growing”, CRG) [105], amely a folt területét meghatározó maszk méretét növeli a szomszédos képpontok hasonlósága alapján (lásd 4-1. táblázatot). A foltok detektálása után a hiányzó képterület rekonstrukciója („inpainting”) következik a képpontok interpolációjával, amelyhez a térbeli és/vagy időbeli szomszédságot használja fel. A folthibák térbeli rekonstrukciója végezhető például morfológiai műveletek [100], 2D-s AR (autóregresszív) modell [99] felhasználásával. Hátrányuk, hogy csak kisméretű, illetve homogén területek rekonstrukciója esetén hatékonyak [96]. A nagyobb kiterjedésű területek interpolációja időbeli rekonstrukciós eljárással végezhető hatékonyan, amely az időben előző/következő mozgáskompenzált képkockák textúráját használja fel a korrekcióhoz [105,107,108,75]. További eljárások a hiányzó területek textúráját mesterségesen állítják elő, például 3D-s AR modell [103], 3D-s medián szűrés [91,107] alkalmazásával. Így tehát a térbeli és időbeli interpoláció a hamis pozitív foltok esetén módosítja az eredeti képtartalmat. Ha a foltok hamis pozitív detektálását a téves mozgásbecslés okozta, akkor az időbeli interpoláció esetén a mozgáskompenzáció is téves, így a korrekció hibás lesz. A fenti eljárások objektív kiértékelése (lásd 4-1. táblázatot) mesterségesen előállított folthibákon történt, amelyeket egy előzetes modell alapján generáltak és helyeztek el véletlenszerűen egy jó minőségű képsorozaton [97,103,107,104]. A kiértékelés során így összehasonlítható a foltok becsült és a referencia képmaszk által leírt, valódi pozíciója („ground truth”). E módszer hátránya, hogy nem alkalmaz valódi archív felvételeket az objektív kiértékelés során, így nem veszi figyelembe az előforduló egyéb filmhibákat (pl. szemcsezaj, kép villódzása), továbbá a mesterséges folthiba modell befolyásolhatja a mérések eredményét. Ezért lehetséges megoldás a filmszalag szkennelése infra
76
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
tartományban, amellyel pontosan meghatározható a foltokat leíró bináris maszk [109]. Hátránya, hogy csak bizonyos színes filmek esetén és csak felületi szennyeződések felismerésére alkalmazható. Ha a szennyeződés már csak képi információ – például a szalagok közötti másolás eredményeként –, a hiba nem mutatható ki. Objektív kiértékelés mesterséges foltokon: a folt textúráját mesterségesen állítják elő és helyezik rá a képre; Objektív kiértékelés eredeti foltokon: a kísérletekben eredeti archív felvételek vesznek részt, amelyekhez adott a folthibák elhelyezkedését meghatározó referencia képmaszk; HT: hiszterézis-küszöbölés („hysteresis thresholding”); CRG: feltételes régiónövelés („constrained region growing”); SDI: („spike detection index”); ROD: („rank ordered differences”); MRF: Markov mezők („Markov random fields”); ESTD: javított térbeli és időbeli detektálás („enhanced spatio-temporal detector”); AR: autóregresszív („autoregressive”); Morfológia: morfológia alapú módszer Folt Képek Mozgásbecslés Mozgásbecslés Utófeldolgozó Objektív Szerző Analízis detektálása száma elvégzése módszere lépései kiértékelés Tenze [100] Morfológia Térben
1
-
-
-
-
Naranjo [98] Morfológia
Hibrid
3
-
-
-
-
Joyeux [99] Morfológia Térben
1
-
-
Morfológia
Mesterséges foltokon
Nadenau [104]
ROD
Időben
3
Előfeldolgozó
Blokk alapú
Morfológia
Mesterséges foltokon
Kokaram [103]
SDI,MRF, AR
Időben
3
Előfeldolgozó
Blokk, ill. gradiens alapú
Morfológia
Mesterséges foltokon
Buisson [108]
Módosított SDI
Időben
3
Előfeldolgozó
Blokk alapú
Morfológia
Mesterséges foltokon
Gangal [107]
ROD
Időben
5
Előfeldolgozó
Blokk alapú
Morfológia
Mesterséges foltokon
Ghaderi [97]
SDIa
Hibrid
3
Előfeldolgozó
Blokk alapú
Morfológia
Mesterséges foltokon
Schallauer [75]
módosított ROD
Időben
3
Előfeldolgozó
Blokk alapú
Morfológia
-
Roosmalen [105]
SROD
Időben
3, 5
Előfeldolgozó
Blokk alapú
HT, CRG
Mesterséges foltokon
Tenze [106]
ESTD
Hibrid
3
Utófeldolgozó
Blokk alapú Mozgásbecslés
Bemutatandó eljárás
SROD
Időben
3
Utófeldolgozó Gradiens alapú
Mozgásbecslés + osztályozás
Mesterséges foltokon Eredeti foltokon
4-1. táblázat: A különböző folthiba detektáló eljárások jellemzőinek összehasonlítása
77
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
4.3 Folthibát detektáló eljárás leírása A bemutatandó eljárás célja a feldolgozási idő csökkentése és a detektálás hamis pozitív találatainak csökkentése. Az eljárás a képpontok intenzitásának időbeli folytonosságát a számítási hatékonyság érdekében előzetes mozgáskompenzálás nélkül, módosított SROD („simplified ROD detector”) [105] eljárással méri. Az objektumok mozgása következtében a becsült folthibát leíró képmaszk számos hamis pozitív találatot tartalmazhat. Ennek csökkentése érdekében az utófeldolgozás során az előzőleg becsült képmaszk alapján történik: 1) mozgások kompenzálása minden egyes képpontban; 2) az összefüggő folt-gyanús területek (objektumok) képi jellemzői alapján a hamis pozitív találatok kiszűrése. A módszer előnye, hogy a mozgásbecslés nem az előfeldolgozás során a teljes képen, hanem csak az SROD által becsült pozíciókban történik, így a mozgásanalízishez szükséges idő csökkenthető. A nagyfelbontású képeken a hatékony mozgásanalízis érdekében egy többszintű, gradiens alapú mozgásbecslő eljárás került kidolgozásra, amely csak az előzőleg megbecsült képterületeket („region of interest”, ROI) veszi figyelembe a mozgás becslése során. Mivel a foltok detektálását és a mozgásbecslés pontosságát befolyásolja az egymást követő képkockák közötti intenzitásváltozás – az ún. villódzás filmhiba („flicker”) –, ezért szükséges ennek szűrése a detektálás előtt. Az archív filmekre jellemző további képi zajok, például a nem merev mozgás, az objektumok takarása, kitakarása során a mozgásbecslés tévedhet, amely hatással van a mozgásból származó hamis pozitív találatok csökkentésére. Természetesen a mozgásbecslő eljárás fejlesztésével, például nagyobb szabadsági fokú mozgásmodell alkalmazásával javítható a hatékonyság, azonban ez jelentősen megnövelné a feldolgozási időt. Ezért a cél az időbeli analízist (SROD és mozgásbecslés) követően a fennmaradó hamis pozitív találatok (amelyek a mozgásbecslés hibájára vezethetőek vissza) térbeli vizsgálata. Az utófeldolgozás következő lépéseként a fennmaradó hamis pozitív találatok a lehetséges foltok képi tulajdonságai alapján kerülnek kiszűrésre. Az összefüggő képpontokból álló lehetséges foltokat, mint objektumokat osztályozza az eljárás, ahol a két lehetséges osztály a folthiba, illetve nem folthiba (hamis pozitív) találat. Az eljárás főbb lépései a következők (lásd 4-1. ábra): 78
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
1. Villódzás korrigálása az egymást követő képeken (lásd 4.1 képletet a 4.3.1 fejezetet). A foltok detektálása és a gradiens alapú mozgásbecslés érzékeny az archív filmekre jellemző villódzásra. 2. Foltok detektálása SROD eljárással a teljes képen (lásd 4.3.1 fejezetet). Az így kapott maszkot (ROI) jelölje R1, amely becslése az időben egymást követő képkockák I(x,y,t-1), I(x,y,t), I(x,y,t+1) intenzitásértékei alapján történik. A lehetséges folthibákat leíró képmaszkot r=0 paraméterrel (lásd 4.5 egyenletet) állítja elő, amely célja a magasabb felismerési arány elérése, mivel a következő lépések kizárólag a kapott R1 képmaszkon végzik a foltok detektálását. 3. Mozgás becslése és kompenzálása, többszintű, gradiens alapú mozgásbecslés segítségével az R1 képmaszk felhasználásával (lásd 4.3.2 fejezetet). A t-edik képhez viszonyított kétirányú mozgásbecslés alapján az I(x,y,t-1), I(x,y,t+1) képek mozgáskompenzált változatát jelölje I MC ( x, y, t − 1) és I MC ( x, y, t + 1) („motion compensation”, MC). 4. Foltok detektálása SROD eljárással és r=1 paraméterrel (lásd 4.5 egyenletet) a mozgáskompenzált I MC ( x, y, t − 1) , I MC ( x, y, t + 1) és I ( x, y, t ) képek alapján az
R1 képmaszk által megadott pozíciókban. Az SROD eljárás eredményét jelölje R2 amely csökkenti a mozgásból származó hamis pozitív találatok számát. A mozgáskompenzáció, illetve az SROD alapú detektálások sorrendje alapján a továbbiakban e módszer elnevezése SROD-MC-SROD eljárás. 5. Objektumok (foltok) osztályozása (lásd 4.3.3 fejezetet). Az R2 képmaszkon a fennmaradó hamis pozitív találatok kiszűrése a lehetséges foltok képi tulajdonságai alapján. A foltok korrigálása a kapott R3 képmaszk alapján történik.
79
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
Képsorozat
Villódzás korrigálása
Kiindulási maszk detektálása: R1
Hamis pozitív találatok csökkentése a mozgások kompenzálásával
Hamis pozitív találatok csökkentése objektum alapú osztályozással
Foltokat leíró képmaszk: R1
Foltok detektálása (SROD)
Mozgás becslése és kompenzálása a képmaszkon
Foltok objektum alapú osztályozása
Foltok detektálása (SROD)
képmaszk: R2
képmaszk: R3
4-1. ábra: A folthibát detektáló eljárás lépései
4.3.1 A villódzás filmhiba korrigálása és foltok detektálása SROD eljárással
A villódzás filmhiba az egymás követő képkockák intenzitásának véletlenszerű változása, amelyet a film hordozórétegének bomlása, illetve a korai kamerák esetén az expozíciós idő eltérései okozhatnak. A villódzás filmhiba leírható egy lineáris modellel [105]:
I ( x , y , t ) = a ( x, y , t ) ⋅ I ahol I
f
( x, y , t ) a
f
(x, y, t ) + b(x, y, t ),
(4.1)
megfigyelt (villódzás filmhiba) kép és I ( x, y, t ) a korrigált kép
intenzitása a t-edik képkocka (x,y) pozíciójában, továbbá a(x,y,t) és b(x,y,t) a korrekciót végző paraméterek. Az eljárás a modell paramétereinek hatékony számítása érdekében a képet vízszintesen wB, függőlegesen hB blokkra bontja fel, amelyek a blokk méretétől függően γ arányban átfedik egymást. Az I ( x, y, t ) kép blokkfelosztása alapján (m,n) pozíciójú blokkot jelölje Bt=Bt(m,n), ahol (x,y)∈Bt képpontokhoz konstans a és b 80
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
paraméter (lásd 4.1 képletet) tartozik a korrekció során: a(x,y,t)=am,n és b(x,y,t)=bm,n. Az tedik képkocka adott Bt=Bt(m,n) blokkjának a=am,n és b=bm,n paraméterei a legkisebb négyzetek módszere alapján számítható ki [105]: a=
Var[ Bt −1 ] b = E[ B ] − a ⋅ E[ B ] t −1 t Var[ Bt ] , ,
(4.2)
ahol E[.] és Var[.] az adott Bt és Bt-1 blokkhoz tartozó intenzitásértékek átlagát és szórásnégyzetet jelölik. Abban az esetben, ha az adott blokk nem tartalmaz textúrát, annak szórása alacsony, amely megbízhatatlanná teszi a paraméterek számítását a 4.2 képlet alapján. Adott t-edik képkocka Bt blokkjában a becsült paraméterek megbízhatósága jellemezhető Wt értékkel: 0 Wt = Var [Bt ] − Tn Tn
Var [Bt ] < Tn különben
(4.3) ,
ahol Tn küszöbszám határozza meg a blokk minimális szórását. A becslés megbízhatóságát befolyásolja a kamera mozgása, illetve a blokkon belüli lokális mozgás, amely módosíthatja a képterületen mérhető statisztikát és így a és b paraméterek értékét (lásd 4.2 képletet). A kamerakép globális mozgásának kompenzálása [5] biztosítja, hogy
Bt és Bt-1 blokkok azonos képterületet vizsgáljanak a kamera mozgása esetén. A Bt blokkon belüli lokális mozgás vizsgálata azon alapszik, hogy a lokális mozgás módosítja a kinyert statisztikákat (lásd 4.2 képletet), amely így eltérő módon korrigálja a blokkok átfedésében levő képpontok intenzitását (lásd 4.1 képletet). Ha a két blokk metszetében a 4.2 képlet alapján számított intenzitásértékek abszolút különbsége meghaladja Td küszöbszámot, és ez több mint Dmax képpontra teljesül, akkor az adott blokkokban lokális mozgás történt. Ekkor Bt intenzitása nem korrigálható megbízhatóan a 4.1 egyenlet alapján, ezért a blokkhoz tartozó megbízhatósági értéke: Wt = 0 . Mivel az egyes blokkokra számított a, illetve b paraméterek értéke a hiba jellege miatt folytonos függvénnyel írható le a térben [105], ha az adott blokk becslése nem megbízható ( Wt = 0 ), akkor a és b paraméterek értéke a szomszédos blokkok alapján becsülhetőek.
81
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
Az ún. SOR („successive overrelaxation”) becslés alapján [95] egy iteratív alul-áteresztő szűrő végzi a és b paraméterek becslését a szomszédos blokkok paraméterei alapján:
(
) (
)
rmk,+n1 = Wt m ,n a mk , n − a m0 ,n + λ 4a mk , n − a mk −1,n − a mk +1,n a mk , n −1 − a mk ,n +1 , a mk +, n1 = a mk , n − ω
k +1 m ,n
r
Wt m , n + 4 λ ,
(4.4) ,
ahol a blokkok felosztásában a vizsgált Bt blokk koordinátája (m,n), amelyhez tartozó
Wt m ,n megbízhatósági súlytényező határozza meg, hogy a k-adik iterációs lépés során a blokkhoz tartozó a mk ,n és bmk ,n értékek milyen súllyal szerepeljenek az interpoláció során. Továbbá az 4.4 képletben az ω és λ együtthatók határozzák meg a konvergencia sebességét és a szomszédos blokkok hatását az iterációs lépések során. A kísérletekben a 2K felbontású felvételeken Tn=10 (4.3 képlet), a blokkok felbontása wB=16 és hB=12, amelyek átfedése γ=30%, a mozgás detektálása Td =5 és
Dmax=40%. A SOR (lásd 4.4 egyenletet) eljárás 100 iterációs lépést hajt végre, amelyben ω=1 és λ=4. A kép blokkjaihoz tartozó am,n és bm,n paraméterekből a kép (x,y) képpontjára vonatkozó a(x,y,t) és b(x,y,t) paraméterek bicubic interpolációval kaphatóak meg [59], így korrigálható a teljes kép a 4.1 egyenlet alkalmazásával.
82
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
t-1 képkocka
t képkocka
t+1 képkocka
p4 r=1
p3
p1
p8 p5
I(z,t)
p7
p6 t-1 képkocka
r=0
p1
p2
p9
P10 t+1 képkocka
t képkocka
I(z,t)
p2
p1= I(z,t-1)
p2= I(z,t+1)
4-2. ábra: A módosított SROD eljárás által vizsgált képpontok pozíciói három egymást követő képkockán, r=0 és r=1 sugár esetén (lásd 4.5 képletet)
Adott képpont intenzitásának időbeni folytonossága alapján az SROD [105] eljárás végzi a foltok előzetes detektálását három egymást követő képkocka segítségével. A t-edik képkocka z=(x,y) pozíciója a folthiba része a következő feltételek teljesülése esetén:
min( pk ) − I ( z , t ) k SROD(t , z , r ) = I ( z , t ) − max( pk ) k 0
ha min ( pk ) − I ( z , t ) > 0 k
(4.5)
ha I ( z , t ) − max( pk ) > 0 k
különben
ahol az I(z,t) intenzitásérték a t-edik, míg pk a (t-1) és (t-2) képkockákról gyűjtött intenzitásértékek (lásd 4-2. ábrát), amelyek a z pozíció r sugarú környezetében találhatóak (4-szomszédság alapján). Az r=0 sugár esetén k=1,2 (lásd 4.5 képletet), ahol p1= I(z,t-1) és p2= I(z,t+1) (lásd 4-2. ábrát, r=0 esetre), míg r=1 esetén k=1,…,10 (lásd a 4-2. ábrán pk mintavételi pozícióit). Mivel az r=0 esetén a 4.5 képlet csak a z pozíció intenzitását vizsgálja az egymást követő képeken, ezért a foltok detektálása során nagyobb felismerési (igaz pozitív) és hibás pozitív találati arányt eredményez, míg az r sugár növelésével
83
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
csökken az igaz pozitív és hibás pozitív detektálás aránya. Az SROD(t,z,r) értéke (lásd 4.5 képletet) alapján állítható elő a folthibát meghatározó M(z,r) bináris képmaszk: 1 M (z, r ) = 0
ha
SROD(t , z , r ) > TM
különben
(4.6) ,
ahol TM küszöbszám adja meg a detektor érzékenységét. A TM küszöbszám csökkentésével növelhető a detektálás érzékenysége, mivel alacsonyabb SROD(t,z,r) értékek esetén is foltként ismeri fel az adott képpontot. 4.3.2 Hamis pozitív találatok csökkentése ROI alapú mozgásbecsléssel
A nagyfelbontású képsorozatokon a számítási igény csökkentése érdekében egy többszintű mozgásbecslő eljárás került bevezetésre, amely egy előzetes ROI információ (a 4.6 képlet által meghatározott bináris képmaszk) alapján csökkenti a feldolgozandó képpontok számát. A mozgásbecslő eljárás transzlációs mozgásmodellt alkalmaz az alacsony feldolgozási idő érdekében: I ( x, y, t ) = I (x − u x , y − u y , t − 1)
(4.7) ,
ahol I(x,y,t) a t-edik képkocka intenzitásértéke (x,y) pozíciókban és (ux,uy) az adott képpont mozgását írja le. Az optikai mozgásmező („optical flow”) robusztus számítása érdekében az z=(x,y) képponthoz tartozó u=[ux uy]T mozgásvektor, egy ún. integrációs ablakban számolható a következő egyenlet minimalizálásával:
ε ( z; u ) =
∑ (I (m, n, t ) − I (m − u ( )
, n − u y , t − 1)) , 2
x
(4.8)
m , n ∈P
ahol ε(z;u) az z pozícióban az u elmozduláshoz tartozó négyzetes hiba értéke Ρ integrációs ablakban, amely mérete (2wf+1)×(2wf+1) és középpontja az z pozíció. A wf értékének növelésével a mozgásbecslés kevésbé lesz érzékeny a képi zajokra, azonban a környező képpontok mozgása zavarja a lokális mozgásinformáció kinyerését. A 4.5.1 fejezetetben végzett kísérletek alapján az optimális ablakméret 9x9 (wf=4 a 2K felbontású képsorozatokon). 84
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
A gradiens alapú mozgásbecslés az intenzitásértékek téridő változásán alapszik, amely feltételezi, hogy a mozgást végző objektum intenzitása időben nem változik. Feltételezve, hogy (ux,uy) elmozdulás kismértékű, az I(x,y,t) Taylor-sorbafejtésével és a magasabb rendű tagok elhagyásával, a 4.7 egyenlet felírható a következő alakban [82]: u x ⋅ g x ( x, y, t ) + u y ⋅ g y ( x, y, t ) + g t ( x, y, t ) ≈ I ( x, y, t ) − I (x − u x , y − u y , t − 1),
(4.9)
ahol gx, gy és gt az I(x,y,t) kép intenzitásának térbeli (x és y változó szerinti) és időbeli parciális deriváltjai. Ezt a 4.8 egyenletbe behelyettesítve a következő lineáris egyenletrendszer írható fel [110,111]: A ⋅ u = b,
(4.10)
∑ g x2 (m, n ) A = ( m,n )∈P g x (m, n )g y (m, n ) ( m∑ ,n )∈P
∑ g (m, n )g (m, n ) , ∑ g (m, n ) x
y
( m ,n )∈P
2 y
( m ,n )∈P
− ∑ g x (m, n )g t (m, n ) = b1 , b = ( m,n )∈P − ∑ g y (m, n )g t (m, n ) b ( m,n )∈P 2 ahol u megoldás felírható: u = A−1b.
(4.11)
Az u mozgásvektor becslésének megbízhatóságát befolyásolja a 4.9 egyenlet gx és gy deriváltjainak értéke. Speciális esetben, mikor gx (gy) értéke nulla, adott irányban történő mozgás nem mérhető (apertúra probléma). Ezért a 4.10 egyenlet megoldása az A szimmetrikus mátrix sajátértékének és sajátvektorainak vizsgálata alapján történik. A szimmetrikus A mátrix λ± sajátértékei és egységre normált e± sajátvektorai a következő módon számíthatóak ki (e+ sajátvektorhoz tartozó sajátérték λ+):
λ± =
± 2b e±1 (a + c) ± d 1 = , ahol , e± = 2 2d (d ± (c − a )) d ± (c − a ) e±2
a=
∑ g (x, y ), c = ∑ g (x, y ), 2 x
( x , y )∈P
2 y
( x , y )∈P
f =
(4.12)
∑ g (x, y )g (x, y ), d = (a − c)
2
x
y
+4f 2
,
( x , y )∈P
85
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
ahol λ± sajátértékek jellemzik (λ+>0 és λ+>λ-), hogy a mért u mozgásvektor e± sajátvektor irányú komponensének becslése mennyire megbízható. Ezért a 4.10 egyenlet robusztus megoldása érdekében figyelembe kell venni λ± sajátértékeket. A 4.10 egyenlet u megoldása az egységre normált e± sajátvektorok (lásd 4.12 egyenlet) lineáris kombinációjaként állítható elő a λ- minimális és λ+ maximális sajátértékek vizsgálata alapján: [0 0]T u =e+α + / λ+ e+α + / λ+ + e−α − / λ−
λ+ < 1
(4.13)
λ + / λ − > 100 és λ + > 1 λ + / λ − ≤ 100 és λ+ > 1 .
α ± = (e±1b1 + e± 2 b2 ) / λ± Amennyiben a legnagyobb és a legkisebb sajátérték aránya nagyobb 100-nál, akkor a legnagyobb λ+ sajátérték és a hozzá tartozó e+ sajátvektor alapján határozható meg u mozgásvektor. Ha az arány kisebb, vagy egyenlő 100-nál, akkor mindkét sajátvektor részt vesz u mozgásvektor meghatározásában. Ha a maximális λ+ sajátvektor (λ+>λ-) értéke alacsony (kisebb 1-nél), akkor nem becsülhető meg biztonsággal u mozgásvektor értéke. A mozgáskompenzált I MC ( x, y, t − 1) kép előállítható az adott (x,y) pozícióhoz tartozó u mozgásvektor segítségével: I ( x, y, t ) ≈ I MC ( x, y, t − 1) = I (x − u x , y − u y , t − 1) . Ha a kapott
(x − u
x
, y − u y ) pozíció sub-pixeles pontosságú, akkor az intenzitásérték
újramintavételezése bilineáris felhasználásával
[59].
Ezzel
interpolációval analóg
módon
történik
a szomszédos
állítható
elő
az
képpontok
I MC ( x, y, t + 1)
mozgáskompenzált kép is. Mivel a 4.9 egyenlet csak kis (ux,uy) elmozdulások esetén érvényes, a mozgás becslése egy iteratív eljárás során, a kép alacsonyabb felbontású változatából kiindulva (amelyen a mozgás a méretaránynak megfelelően csökken az eredeti felbontáson mért mozgással összehasonlítva) pontosítható a nagyobb felbontású, egyre részletgazdagabb változatot felhasználva. Egy adott kép különböző felbontású változatai alkotják az ún. Gauss képpiramist [112] („Gaussian pyramid”), amely a következő módon építhető fel:
86
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
2
2
GL ( x, y, t ) = ∑ ∑ w(i, j )GL−1 (2 x + i,2 y + j , t ) i = −2 j = −2
(4.14) ,
ahol GL(x,y,t) a piramis L-edik szintjének intenzitása (x,y) pozícióban (L=0 a legnagyobb felbontású szintet jelöli, ahol I(x,y,t)=G0(x,y,t)), a képpiramis L-edik szintjén a felbontás feleakkora, mint az (L-1)-ik szinten. A képpiramis számítása során w konvolúciós mátrix 5×5 méretű, amely Ν(m,σ2) normális eloszlású (m: várható érték; σ2: szórásnégyzet) súlyokat tartalmaz, ahol m=0, σ=1.25. Az iteratív mozgásanalízis során a képpiramis L-edik szintjén történik UL(x,y)=[ux uy]T mozgás becslése a 4.10 egyenlet megoldásával (x,y) pozícióban, ahol GL(x,y,t)=GL(x−ux,y−uv,t+1) (ezzel analóg módon számíthatóak a mozgások a t és (t-1)-ik képkockák között). A képpiramis L-edik szintjén számított UL(x,y) mozgás felhasználható a
képpiramis
(L-1)-edik
szintjén
mérhető
Uˆ L −1 ( x, y )
mozgások
becslésére
a
mozgásvektorok kétszeresére történő nagyításával: 2 2 x+i y+ j Uˆ L −1 ( x, y ) = 2 ∑ ∑ w(i, j )U L , 2 . 2 i = −2 j = −2
Az
így kapott
Uˆ L −1 ( x, y )
mozgásvektorok
alapján
előállítható
(4.15)
GLMC −1 ( x, y, t + 1)
mozgáskompenzált kép, ahol G L −1 ( x, y, t ) = G LMC −1 (x − ∆u x , y − ∆u y , t + 1) megoldásával
[
meghatározható ∆U L −1 ( x, y ) = ∆u x ∆u y
]
T
mozgásvektor. Ekkor a piramis (L-1)-ik
szintjen mért mozgás: U L −1 ( x, y ) = Uˆ L −1 ( x, y ) + ∆U L−1 ( x, y ) . A 4.6 képletben meghatározott M(z,r) maszk alapján a képpiramis L szintjéhez megadható egy adott méretű ML(x,y) képmaszk (ROI): M 0 ( x, y ) = M ( z , r ) ,
(4.16)
M L +1 ( x, y ) = M L (2 x,2 y ), M L(1) ( x, y ) = M L ( x, y ) ⊕ B1 , M L( 2 ) ( x, y ) = M L ( x, y ) ⊕ B2 ,
87
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
ahol a képpiramis L szintjéhez tartozó M L(1) (x,y) és M L( 2) (x,y) képmaszkok az ML(x,y) képmaszk morfológiai dilatációjával állíthatóak elő ( ⊕ jelöli a morfológiai dilatációt a 4.16 egyenletben), B1 és B2 struktúraelemek azonos, egységnyi súlyú elemeket tartalmaznak, melyek mérete rendre 2nd1+1×2nd1+1 és 2nd2+1×2nd2+1 (nd1=2 és nd2=6 a 2K felbontású képsorozaton). Az így kapott M L(1) (x,y) és M L( 2) (x,y) képmaszkok által meghatározott pozíciókra szűkíthető le a mozgásmező számítása. A ROI alapú mozgásbecslés és mozgáskompenzáció algoritmusa t és t+1 képek között (ezzel analóg módon végezhető el t és t-1 képekre) a következő (lásd 4-3. ábra): 1.
L← Lmax (ahol Lmax a Gauss képpiramis szintjeinek a számát, míg L az aktuális szintet határozza meg).
2.
UL← 0 (ahol U L = U L (x, y ) a GL ( x, y, t ) és GL ( x, y, t + 1) képek között mért mozgásmező)
3.
while (L≥ Lmin) do (ahol Lmin az iteráció során a legutolsó, legnagyobb felbontású szintet jelöli, ahol az eljárás még elvégzi a mozgásmező kiszámítását) a. Uˆ L −1 becslése a 4.15 egyenlet alapján U L felhasználásával. b. GLMK −1 ( x, y , t + 1) mozgáskompenzált kép előállítása G L −1 ( x, y , t + 1) kép és Uˆ L −1 (x,y) mozgásvektorok alapján, azokban az (x,y) pozíciókban, ahol M L(1) ( x, y ) = 1 (lásd 4.16 képlet). c. gx, gy és gt parciális deriváltak számítása GLMK −1 ( x, y , t + 1) és G L −1 ( x, y, t ) felhasználásával (x,y) pozícióban, ahol M L( 2 ) ( x, y ) = 1 (lásd 4.16 képlet). d. ∆U L −1 ( x, y ) mozgás becslése a 4.9 - 4.13 egyenletek alapján azokban az (x,y) pozíciókban, ahol M L(1) ( x, y ) = 1 (lásd 4.16 képlet). e. U L −1 ( x, y ) ← Uˆ L −1 ( x, y ) + ∆U L −1 ( x, y ) f. U L −1
vektormezőn zajcsökkentés, 3x3 méretű aluláteresztő szűrő
alkalmazásával (Gauss eloszlású súlyok: Ν(m,σ2), m=0, σ=1.1). g. L← L-1 4.
end
88
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
5.
if (Lmin>0) then a. U 0 = Uˆ 0 , ekkor Uˆ 0 becslése U Lmin érték felhasználásával a 4.15 képlet alapján történik.
6.
end
7.
I MC ( x, y, t + 1) mozgáskompenzált kép előállítása U 0 (x,y) alapján, azokban az (x,y) pozíciókban, ahol M 0(1) ( x, y ) = 1 .
Foltok detektálása a többszintű mozgásbecslés előtt t-1 képkocka mozgáskompenzáció nélkül Mozgásbecslés (MB) Mozgáskompenzáció (MK)
t képkocka
Becsült mozgásmező
t+1 képkocka mozgáskompenzáció nélkül Folt
ROI
detektált foltmaszk
Mozgó objektum
piramis L+1 szintjén mért mozgásmező alapján becslés a következő szint mozgására
*2
szint: L+1
MB
ROI alapú mozgásbecslés
MK mozgáskompenzált t+1 képkocka t képkocka a kapott mozgásmező felhasználása az L-1 szinten
szint: L
t+1 képkocka mozgáskompenzáció nélkül
Foltok detektálása a többszintű mozgásbecslés után mozgáskompenzált t-1 képkocka
t képkocka
mozgáskompenzált t+1 képkocka
detektált foltmaszk
4-3. ábra: Hamis pozitív találatok csökkentése ROI („region of interest”) alapú mozgásbecslés és mozgáskompenzáció alkalmazásával (az ábra a t és t+1 képkockák között történő mozgásbecslés folyamatát részletezi a piramis adott szintjén)
89
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
A ROI alapú eljárásban a feldolgozandó képpontok száma tovább csökkenthető Lmin=1 esetén, mivel ekkor a képpiramisban a legnagyobb felbontású szinten (L=0) nem történik meg a mozgásbecslés finomítása a gradiens alapú eljárással, így U 0 vektormező becslése kizárólag a 4.15 egyenlet segítségével az U 1 vektormező alapján történik. 4.3.3 Hamis pozitív találatok csökkentése objektum alapú osztályozó eljárással
A mozgásbecslés hibája esetén a mozgásból származó hamis pozitív képpontok nem szűrhetőek ki. Ezért a képpontok mozgás alapú analízise után, a képpontokból álló, összefüggő objektumok képi jellemzőinek vizsgálatával javítható a detektálás hatékonysága. A képi jellemzők vizsgálata során felhasználhatóak a foltok általános jellemzői, a folton belüli, közel homogén textúra és az éles kontúr. Ennek mérése érdekében a foltgyanús pontokból álló összefüggő alakzat (objektum), illetve annak környezetében számított statisztikák hasonlíthatóak össze, amely alapján eldönthető, hogy a detektált objektum folthiba, vagy eredeti képi információ (hamis pozitív találat). Így az objektumok osztályozásával kiszűrhetőek a foltok korrekciója előtt a hamis pozitív területekhez tartozó képpontok. Az objektum pontjainak halmazát jelölje Ain, illetve annak környezetét Aout halmaz (lásd fehér és szürke területeket a 4-4. ábrán). Az objektumot befoglaló téglalappal azonos középpontú, de de-vel (de=2 képpont) megnövelt méretű téglalap pontjait jelölje Arect, ekkor Aout=Arect\Ain (lásd szürke területet a 4-4. ábrán). Az objektumok képpontjai (Ain), illetve annak környezetéhez (Aout) tartozó képpontok intenzitásértékei alapján a következő képi tulajdonságok nyerhetőek ki: •
Az objektum területén és környezetében mért intenzitásértékek alapján számított vízszintes (az objektumot befoglaló téglalap P2 P4 szimmetriatengely pozícióiban mért) és függőleges (az objektumot befoglaló téglalap P1 P3 szimmetriatengely pozícióiban mért) irányú gradiens abszolút értékének maximuma (lásd 4-4. ábrán).
•
Az objektum területén, illetve annak környezetében mért szórás.
90
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
•
Az objektum területén, illetve környezetében mért kontraszt (a maximális és minimális intenzitásérték különbsége).
•
Az objektum területén, illetve környezetében mért átlagos intenzitásérték különbségének abszolút értéke.
•
Az objektum területén, illetve környezetében mért szórás különbségének abszolút értéke.
•
Az objektum kerülete (8-szomszédság alapján).
Mivel a fenti paraméterekkel nem lehetséges egyértelmű modellt alkotni a különböző minőségű archív felvételek esetén, ezért célszerű egy osztályozó eljárás alkalmazása, amely egy előzetes tanítási fázis során automatikusan határozza meg a folthibák jellemző paramétereit.
P1 de Ain: objektum területe (fehér) Aout: objektum környezete (szürke) P2
P4
objektumot befoglaló téglalap Arect
P3 de
4-4. ábra: A vizsgálandó objektum területéhez (Ain) és annak környezetéhez (Aout) tartozó pozíciók
Az objektum alapú osztályozó eljárás tanítása két fő lépésből áll: 1) a lehetséges foltok automatikus detektálása; 2) az előzőleg detektált objektumokból folthiba és nem folthiba (eredeti képi információ) minták manuális kiválasztása a felügyelt tanításhoz. A minták
91
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
hatékony és gyors gyűjtése érdekében a felhasználó az SROD-MC-SROD (lásd 4.3 fejezetet) eljárás által detektált foltmaszkból választhatja ki a mintákat a két osztály számára (lásd 4-5. ábrán). A tanítás alatt a felhasználó kiválaszt egy képkockát (képkockákat), amelyen az eljárás automatikusan kijelöli a lehetséges foltokat, így a felhasználó - például az egérkurzor segítségével - kijelölheti a mintákat. A tanítás befejezésével
a
képsorozat
képkockáin
a
detektált
objektumok
osztályozása
automatikusan történik. A tanítás során a felhasználó közel azonos számú mintát választ ki a folthibákból, illetve a hamis pozitív találatokból. A tanítás befejezésével az eljárás megadja, hogy a kijelölt minták (tanító minták) hány százalékát osztályozta helyesen a tanuló rendszer (felismerési arány), illetve megjeleníti az osztályozás eredményét a kiválasztott képkockán (lásd 4-11. ábrán), amely alapján a felhasználó visszajelzést kap a tanítás hatékonyságáról. Amennyiben a felismerési arány nem megfelelő (a kísérletek során a felismerési arány 90% felett volt, lásd 4.5.2 fejezetet), a tanítás új mintákkal bővíthető.
4-5. ábra: A felhasználói felületen megjelenített lehetséges találatok, amelyek közül a felhasználó kijelöli a mintákat az objektum alapú osztályozó eljárás tanításához (folthibákat, illetve a nem folthibákat)
92
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
A vizsgált képi jellemzők osztályozása mesterséges, előrecsatolt neurális hálózattal („neural network”, NN) [113], illetve support vektor géppel („support vector machine”, SVM) történt [114]. A mesterséges neurális hálózat egy adaptív tanuló rendszer, amely - az emberi agy szerkezetét és működését alapul véve - egymással kapcsolatban álló elemi feldolgozó egységek (neuronok) hálózatából áll. Az egyes neuronokba érkező ingerektől függően, a megfelelő aktivációs szint elérésekor a neuron további neuronoknak adja át az ingerületet. A mesterséges neuronok esetén különböző matematikai modellek alapján határozzák meg a kimenetre adott választ. Az egyes neuronok közötti kapcsolatok erőssége súlyértékekkel adható meg, amelyek konfigurációja meghatározza a hálózat neuronjainak kimeneti értékét, különböző bemeneti értékek (ingerlés) esetén. Az 4-6. ábrán egy előrecsatolt, teljesen összekapcsolt hálózat felépítése látható, ahol az egyes neuronok 1D-s rétegekbe szerveződnek és csak az egymást követő rétegek között létezik egyirányú, soros kapcsolat. Az ingerület bemeneti réteg neuronjaitól halad az ún. rejtett rétegeken át a kimeneti rétegig (lásd 4-6. ábrán). A hálózat tanításának célja, a neuronok súlyértékeinek adaptív módosításával egy függvénykapcsolat meghatározása a bemeneti és kimeneti értékek között.
konstans 1 érték
konstans 1 érték
konstans 1 érték
rejtett rétegek
kimeneti réteg
neuron
bemeneti réteg
4-6. ábra: Teljesen összekapcsolt, előrecsatolt neurális hálózat két rejtett réteggel. A példában a neurális hálózatnak 3 bemeneti és 1 kimeneti értéke van, rejtett rétegei rendre 5 és 3 neuront tartalmaznak
93
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
Az egyes neuronok a következő számítási modell alapján vizsgálják a bejövő ingerek összegét: J
[k ] i
( )
= f S
[k ] i
n = f wi[0k ] + ∑ wij[ k ] J [jk −1] j =1 , [ k −1 ]
(4.17)
ahol S i[k ] a k-adik réteg (k=1,…,m; ahol m a rétegek száma a hálózatban és k=1 jelöli a bemeneti réteget) i-edik neuronja (i=1,…,n[k]; ahol n[k] a neuronok száma a k-adik rétegben) esetén a bemeneti értékek súlyozott összege, amely alapján az f∈R → R aktivációs függvény határozza meg a neuron J i[k ] kimeneti értékét. A k-adik réteg i-edik neuronja az előző (k-1)-ik réteg j-edik neuronjánanak kimeneti értékét wij[k ] súllyal veszi figyelembe. A wi[0k ] súly (lásd 4.18 képletet) az előző réteg neuronjaitól független, additív tagot jelöl S i[k ] számításánál, amely a modell egyszerűbb kezelhetősége érdekében egy konstans 1 bemeneti érték súlyozását végzi. Jelölje (sr,cr) a tanításhoz használt mintákat (r=1,…,ns; ahol ns a minták száma), ahol si∈Ru tulajdonságvektor (u a kivont képi jellemzők száma) és cr∈{0,1} a minta címkéje (cr=1 jelzi, hogy az adott objektum folthiba). Az sr vektor elemei [0,1] intervallumba normalizáltak, ahol normalizációs érték 255 (8 bit színmélység esetén), illetve 200 az objektum kerületének (2K felbontású kép esetén) vizsgálatakor (amennyiben a kerület meghaladja a 200-at, akkor a normalizált érték 1). A felügyelt tanítás során az egyes neuronok súlyértékeinek módosítása az ún. hiba-visszaterjesztés („back-propagation”) módszerével történik [115]. A módszer egy gradiens alapú optimalizáló eljárás, amely a k-adik réteg i-edik neuronján számolt lokális hiba alapján, visszafelé határozza meg a (k−1)-ik réteg neuronjainak lokális hibáját, majd ezt felhasználva a módosított súlyértékeket. A (k-1)-ik réteg lokális hibája kiszámítható a k-adik réteg lokális hibája alapján:
94
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
e
[ k −1] j
n[ k ]
( )⋅ ∑ e
= f′S
[k ] j
[k ] k
k =1
(4.18)
wkj[ k ]
,
ahol az f ′ az aktivációs függvény deriváltja, e[kj ] a k-adik réteg j-edik neuronjához tartozó lokális hiba. A számítás első lépésében a kimeneti réteg neuronjaiban a lokális hiba az alábbi módon határozható meg: ei[ m ] = c − J i[ m ] ,
(4.19)
ahol c a neurális hálózat kívánt kimeneti értéke (az adott (sr,cr) tanító minta alapján), míg J i[m ] a hálózat által becsült érték (lásd 4.18 képletet). A tanítás lépései: 1) lokális hiba
kiszámítása minden egyes neuron esetén ( ei[k ] ); 2) neuronok súlyértékeinek módosítása:
wij[ k ] ← wij[ k ] + ∆wij[ k ] . A kimeneti neuronokon számolt hiba (lásd 4.19 képletet) alapján a 4.18 képlettel számolható az ei[k ] (rejtett rétegek esetén k=1,…,m-1) lokális hiba visszafelé, egészen az első rejtett rétegig. Ezután számolhatóak ki a súlytényezőket módosító értékek az egyes neuronok esetén: ∆w
[k ] ij
τ ⋅ eik = k [ k −1] τ ⋅ ei ⋅ J j
ha j = 0
(4.20) ,
különben
ahol j a neuron bemenetének sorszámát jelöli és τ a tanulási együttható, amely meghatározza a tanulás sebességét. A tanító minták felhasználása ún. soros tanítással történik, ahol minden egyes tanítási lépés (epoch) után megtörténik a hálózat J i[m ] kimenetének (lásd 4.18 képletet) és a cr elvárt (lásd 4.19 képletet) eredmény összehasonlítása és a hálózat súlyértékeinek módosítása. A kísérletek során f (lásd 4.18 képletet) aktivációs függvény szigmoid karakterisztikájú volt: f(s) = 1 / (1 + e-s). A hálózat két rejtett réteget tartalmaz, mivel az ilyen struktúrájú hálózattal bármely függvénykapcsolat leírható, míg egy rejtett réteg alkalmazásával csak folytonos függvények közelíthetőek [116]. A teljesen összekapcsolt, előrecsatolt hálózat (lásd 4-6. ábrán) bemeneti rétege - a vizsgált képi jellemzők számának megfelelően – 8 neuront, két rejtett rétege 12, illetve 10 processzáló elemet, míg kimeneti
95
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
rétege egy neuront tartalmazott. A tanulási faktor τ=0.6, a tanítás egy ciklusában a tanító halmaz minden egyes elemét, adott sorrendben tanította, összesen 500 cikluson át. A tanítás során a súlyok kezdeti értéke wij[ k ] ∈ [−0.5,0.5] intervallumba eső egyenletes eloszlású véletlen számok. Amennyiben az osztályozás során a kimeneti réteg neuronjának kimenetén mért érték 1-hez van közelebb, akkor az adott mintához tartozó objektum folthiba, ha 0-hoz, akkor az objektum nem folthiba. Az SVM módszer lényege, hogy a tanító mintákat magasabb dimenziószámú tulajdonság-térbe transzformálja, amelyben azok már egyértelműen szeparálhatóak lineáris hipersíkokkal (elválasztó felületekkel). A hipersík optimális meghatározásának jellemzője, hogy a hozzá közel eső tanító minták, ún. szupport vektorok távolsága a lehető legnagyobb. Jelölje (sr,cr) a tanításhoz használt mintákat (r=1,…, ns; ahol ns a minták száma), ahol sr∈Ru tulajdonságvektor (u a kivont képi jellemzők száma) és cr∈{-1,1} a minta címkéje (cr=1 jelzi, hogy az adott objektum folthiba). Az sr vektor elemei [0,1] intervallumba normalizáltak hasonlóan a neurális hálózattal történő osztályozáshoz. Az SVM alapú osztályozás során az optimális hipersík meghatározása a következő optimalizációs feladatra vezethető vissza [117,118]: l 1 min w T w + C ∑ ξ i , w ,b ,ξ i =1 2
(
(4.21)
)
cr wT φ (sr ) + b ≥ 1 − ξ r , ahol φ∈Ru → Rv függvény (v>u) transzformálja sr mintákat, amelyek szeparálása w∈Rv és b∈Rv által leírt hipersíkkal történik, ξr ≥ 0 az osztályozás hibáját modellezi, amely súlya a C>0 együtthatóval szabályozható az optimalizáció során. Az φ függvény alapján K(sr,sq) ≡ φ(sr)T φ(sq) az ún. kernel függvény. Az osztályozáshoz szükséges optimális hipersík meghatározása (lásd 4.21 képletet) módosított SMO („Sequential Minimal Optimization”) eljárással [119] történt, amely c++ nyelvű implementációja megtalálható a LIBSVM [120] programozási könyvtárában. A kísérletek során az SVM osztályozás radiális bázisú („radial basis function”) kernel függvénnyel történt:
96
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
K (sr , sq ) = e
−γ sr − sq
2
(4.22)
ahol sr és sq a tanító mintákat jelöli és a kísérletek alapján γ kernel paraméter értéke 0.2, továbbá C=200 (lásd 4.21 és 4.22 képleteket).
4.4 Referencia képmaszk meghatározása fél-automatikus eljárással A foltok detektálási hatékonyságának objektív kiértékelése érdekében szükség van a vizsgált képkockán található valódi foltok elhelyezkedésének meghatározására egy referencia képmaszk („ground truth”) segítségével (lásd 4-6. ábrán). Általános módszer, hogy egy modell segítségével mesterségesen állítják elő a folthiba képét és helyezik el véletlenszerűen egy hibákat nem tartalmazó képkockán (nem archív felvételeket felhasználva), így létrehozva a tesztképet és a folthibát leíró referencia képmaszkot. Mivel a bemutatott objektum alapú osztályozó eljárás a foltok képi jellemzőit is felhasználja, a foltok képének mesterséges előállítása nem alkalmazható a kiértékelés során. Annak érdekében, hogy a kiértékelés – a valós felhasználási körülményeknek megfelelően – eredeti, archív képsorozaton történjen, egy fél-automatikus eljárással határozható meg a képkockához tartozó referencia képmaszk. Így az eljárás az eddigi módszerekkel (pl. a filmszalag infra tartományban történő letapogatása) szemben, bármely archív képsorozaton alkalmazható.
4-7. ábra: Eredeti képkocka (nagyítva) és a folthibák elhelyezkedését leíró képmaszk
97
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
Az adott képkockához tartozó képmaszk előállításakor a folthibához tartozó képpontok kézzel
történő
kijelölése
időigényes,
főleg
a
nagyfelbontású
(2K
felbontás)
képsorozatokon. Ezért a kijelölés felgyorsítása érdekében a foltokat leíró képmaszk előállítása az SROD eljárással (lásd 4.5 képletet) detektált képpontok alapján végezhető el. Az eljárás lépései a következők: 1) Az SROD eljárás (r=1 paraméterrel, lásd 4.5 képletet) alapján foltok automatikus detektálása az eredeti képkockákon. A képmaszk előállításakor (lásd 4.6 képletet) a detektálás érzékenysége a lehetséges maximális intenzitásérték 10%-a (TM=25 8 bit színmélységű képek esetén). 2) A detektált foltok megjelenítése a felhasználó számára. 3) A felhasználó bejelöli a valódi foltokat, amelyek meghatározzák a végleges referencia képmaszkot.
Amennyiben az eljárás nem detektálja a foltokat, az adott hiba bejelölése kézzel történik. A felhasználó a nem folthibákat (pl. karcok) nem jelöli be a folyamat során. A kapott képmaszkon morfológia alkalmazásával csökkenthetőek az alakzatokon belüli lyukak, amelyeket a különböző képi zajok, például a szemcsezaj okozhat. A detektált kisméretű foltok – amelyek kerülete kisebb, mint 10 képpont (2K felbontás esetén) – összehasonlíthatóak az archív filmekre jellemző szemcsezaj, illetve por és egyéb szennyeződéssel, ezért ezeket nem jeleníti meg az eljárás a felhasználó számára és így nem kerülnek a referencia képmaszkra. Az ilyen jellegű hibák hatékonyan detektálhatóak és javíthatóak például sorrendi szűrő alkalmazásával, mivel az esetleges hamis pozitív találatok javítása nem ad érzékelhető hibát [10,96]. E módszer előnye az eddigi eljárásokkal szemben (lásd 4-1. táblázatot), hogy az objektív kiértékelés eredeti archív képsorozatok folthibáin történik.
4.5 Kísérleti eredmények A kísérletekben az első színes magyar film a „Lúdas Matyi” (1949) nagyfelbontáson digitalizált (2K, 2000x1500 képpont), 5 különböző jelenetének 140 képkockája szerepelt, amelyekhez a foltok valódi elhelyezkedését leíró képmaszkok („ground truth”) a 4.4 98
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
fejezet alapján készültek. A képsorozatok tartalmaznak globális és lokális mozgásokat, például nem-merev mozgást, objektumok kitakarását, előtűnését, stb. (lásd 4-11. ábrákon). Az eljárások hatékonyságának kiértékelése a detektált és a referencia képmaszk összehasonlítása alapján, az igaz pozitív és hamis pozitív arányok kiértékelésével történik. Az igaz pozitív arány megadja a helyesen foltként minősített képpontok és a referencia folthibákhoz tartozó összes képpont arányát, míg a hamis pozitív arány a helytelenül foltként minősített képpontok és az összes nem referencia folthibához tartozó képpont hányadosát jelenti. A kiértékelés során – hasonlóan a valódi foltokat leíró képmaszk („ground truth”) előállításához – a detektált képmaszkon csak azok az objektumok kerülnek felhasználásra, amelyek kerülete nagyobb vagy egyenlő 10 képpontnál (2K felbontású képeken). 4.5.1 ROI alapú mozgásbecslő eljárás kiértékelése
A következő kísérletek megvizsgálják a bemutatott ROI alapú mozgásbecslést alkalmazó SROD-MC-SROD eljárás (lásd 4.3.2 fejezetet) pontosságát (lásd 4-8. és 4-9. ábrákat) és a feldolgozás sebességét (lásd 4-10. ábrán). Az egyes eljárások pontosságának összehasonlítása ROC („receiver operating characteristic”) görbe segítségével történik, amely a detektálási érzékenység különböző értékei mellett (TM=30,40,50,60 lásd 4-6 képletet) ábrázolja a kiszámított igaz pozitív és hamis pozitív arányokat. A ROC görbén egy eljárás nagyobb pontosságát az jelzi egy másik eljárással szemben, ha például azonos hamis pozitív arányhoz magasabb igaz pozitív arány, illetve azonos igaz pozitív arányhoz alacsonyabb hamis pozitív arány tartozik. A
4-8.,
4-9.
és
4-10.
ábrákon
bemutatott
MC-SROD
eljárás
a
mozgáskompenzációt az előfeldolgozás során alkalmazza a teljes képen, míg az SROD eljárás nem alkalmaz mozgásbecslést. A 4.3.2 fejezetben bemutatott SROD-MC-SROD eljárás a képpiramis legnagyobb felbontáshoz tartozó szintjén nem végez mozgásbecslést (lásd Lmin=1 a 4.3.2 fejezetetben). A 4-9. és 4-10. ábrákon az összehasonlítás érdekében az SROD-MC-SROD eljárás egy további változata is látható, amely a képpiramis legnagyobb felbontásán is végez mozgásbecslést (lásd Lmin=0 a 4.3.2 fejezetetben). 99
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
Az első kísérlet (lásd 4-8. ábrát) az SROD-MC-SROD eljárás pontosságát vizsgálja különböző (2wf+1)×(2wf+1) integrációs ablakméret esetén (lásd 4.8 képletet). A wf ablakméret 1 és 6 közötti értékeket vizsgál. A 4-8. ábrán látható, hogy wf érték növelésével a 9x9, 11x11 és 13x13 ablakméret hasonló hatékonyságot eredményez, ezért a további kíséreltekben 9x9 (wf =4) ablakméretet alkalmaz az eljárás.
4-8. ábra: A bemutatott SROD-MC-SROD eljárás pontosságának vizsgálata különböző, a mozgásbecslésnél alkalmazott (2wf+1)×(2wf+1) integrációs ablakméret esetén (lásd 4.8 képletet)
A 4-9. és 4-10. ábrák alapján belátható, hogy az SROD-MC-SROD eljárás változatai és az MC-SROD eljárás közel azonos hatékonyságot eredményezett, azonban a feldolgozási idő a bemutatott SROD-MC-SROD eljárással (lásd Lmin=1 a 4.3.2 fejezetetben) több mint 50%-kal lecsökkent. A kísérletek igazolták, hogy a bemutatott SROD-MC-SROD eljárással a számítási idő jelentős csökkenése mellett a foltok detektálásának hatékonysága nem csökkent számottevően. Ennek oka az archív filmekre jellemző képi zajok, például szemcsezaj, amely csökkenti a mozgásbecslés hatékonyságát a képpiramis L=0 szintjén (eredeti felbontáson), illetve az L>0 szinteken alkalmazott nagy pontosságú (sub-pixeles) mozgásbecslés (lásd 4.3.2 fejezetetben). A feldolgozási idő egy 3.4GHz-es PC-n kevesebb, mint 4.2 másodperc az ismertetett SROD-MC-SROD eljárással, míg az MC-SROD eljárással kevesebb, mint 8.8 másodperc volt, a detektálás TM=30 (lásd 4.6
100
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
képletet) érzékenysége mellett. A 4-9. ábrán megfigyelhető a mozgáskompenzációt nem alkalmazó SROD, illetve az SROD-MC-SROD és MC-SROD eljárással történő becslés pontossága közötti különbség, amely a képsorozatokon történő mozgással magyarázható. A 4.2 fejezetben ismertetett rekurzív, blokk alapú eljárással [108] két kép között számolt mozgásbecslés 60 másodpercet vett igénybe egy 700MHz órajelű PC-n és 2K felbontáson, míg az N-lépéses (log-D) blokk alapú keresés esetén [107] a feldolgozási idő 25 másodperc volt egy 2.4GHz-es PC-n és CIF felbontáson (352x288 képpont).
4-9. ábra: A bemutatott SROD-MC-SROD eljárás hatékonyságának összehasonlítása korábbi eljárásokkal
4-10. ábra: A bemutatott SROD-MC-SROD eljárás futási idejének összehasonlítása a korábbi eljárásokkal (3.4GHz órajelű PC-n)
101
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
4.5.2 A folthibák objektum alapú osztályozásának kiértékelése
Az objektum alapú osztályozás célja a tévesen foltként detektált objektumok kiszűrése, amely a 4.3.3 fejezetben leírt NN és SVM eljárásokkal történt. A kísérletek során két tanító halmaz készült, ahol az I. halmaz 168 folthibát és 168 nem folthiba objektumot tartalmazott, amelyeket a felhasználó jelölt ki a 4.3.3 fejezetben leírt módon. A tanítás befejezésével a tanító halmaz elemeinek 94.4%-át (NN alapú tanítás), illetve 93%-át (SVM alapú tanítás) osztályozta helyesen az eljárás. A II. halmaz tartalmazza a I. halmaz elemeit, kibővítve további 20 folthiba, illetve 20 nem folthiba mintával. A II. halmazzal végzett tanítás vizsgálja, hogyan módosul az osztályozás pontossága több tanító minta esetén. A minták gyűjtéséhez és a tesztekhez felhasznált képkockák különbözőek voltak. Az osztályozás pontosságának méréséhez a 4-2. táblázat hasonlítja össze az osztályozás előtti (SROD-MC-SROD) és utáni állapotot (SROD-MC-SROD-NN, illetve SROD-MC-SROD-SVM). A táblázat összefoglalja az átlagos hamis pozitív (HP) és az átlagos igaz pozitív (IP) arányokat és ezek változását az osztályozás elvégzésével. Az átlagos hamis pozitív és igaz pozitív arányok számításánál a különböző detektálási érzékenységgel kapott értékek (TM=30,40,50,60 lásd 4.6 képletet) átlaga szerepel. Az osztályozás során az IP és HP arányok változása (pl. lásd HPB/HPA hányadost a 4-2. táblázatban, ahol „A” az osztályozás előtti és „B” az osztályozás utáni értéket jelölik) az egyes képsorozatokra számolt hányadosok átlagát jelölik. Mindkét osztályozási eljárás jelentősen, 80 – 85%-kal csökkentette a hamis pozitív arányt, miközben az igaz pozitív arány 6 – 12%-kal csökkent. A 4-2. táblázatban megfigyelhető, hogy az NN alapú tanítás magasabb igaz pozitív és hamis pozitív arányt ért el, míg az SVM módszerrel mindkét statisztika alacsonyabb volt. A II. tanító halmazzal (az I. halmaz bővített változata) végzett tanítás során az igaz pozitív arány, illetve a hamis pozitív arány is növekedett. A képi jellemzők kinyerése és az osztályozás átlagosan 1.7 másodperc/képkocka, illetve 0.7 másodperc/képkocka volt (3.4GHz-es PC-n) a legalacsonyabb és a legmagasabb detektálási paraméter esetén (TM=30, illetve TM=60 lásd 4.6 képletet).
102
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
*
HP: hamis pozitív; IP: igaz pozitív HP / HP = 17.9 % azt jelenti, hogy „B” eljárás esetén a hamis pozitív arány csökkent 82.1%-kal az „A” eljáráshoz képest. B
A
Tanító halmaz
SROD-MCSROD
SROD-MC-SROD – NN
SROD-MC-SROD – SVM
Az 5 képsorozaton mért HP és IP arányok átlaga (%) HP A
IP A
HP B
IP B
HP C
IP C
I. halmaz
0.08
80.0
0.009
72.7
0.007
70.0
II. halmaz
0.08
80.0
0.010
74.9
0.008
72.5
Az egyes képsorozatokon mért HP, IP arányok hányadosai alapján számolt átlag (%)* HP B HP A
IP B IP A
HP C HP A
IP C IP A
I. halmaz
17.9
91.1
15.1
87.8
II. halmaz
20.1
93.8
16.0
90.7
4-2. táblázat: Átlagos hamis pozitív és igaz pozitív arányok változása az NN („neural network”), illetve SVM („support vector machine”) alapú osztályozással és két tanító halmaz felhasználásával
A 4-11. ábrán az objektum alapú osztályozásra (NN alapú osztályozással) látható néhány példa. A nagyított képrészleteken kör jelöli, hogy az adott objektumot az osztályozó eljárás folthibának ismerte fel, illetve téglalap mutatja, hogy az adott objektumot nem folthibának ismerte fel. A képeken számos példa látható komplex mozgásokra, ahol a téves mozgásbecslés számos hamis pozitív találatot eredményezett. A 4-11. ábrán látható számos példa nem merev mozgásokra (pl. az „A” képsorozat 17. és 19. képkockája), mozgó objektumok kitakarására/előtűnésére (pl. a „B” képsorozat 22. képkockáján a gyorsan mozgó pálca vagy a katona kabátjának gombjai), illetve a fényben felcsillanó tárgyakra (pl. az „A” képsorozat 15. képkockáján a katona fegyverén megcsillan a fény).
103
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
Az „A” jelű eredeti képsorozat 13., 15., 17., 19. képkockái.
Az „A” jelű eredeti képsorozat 13., 15., 17., 19. képkockáin végzett osztályozás eredménye (nagyításokkal).
Az „B” jelű eredeti képsorozat 16., 17., 21., 22. képkockái.
Az „B” jelű eredeti képsorozat 17., 21., 22. képkockáin végzett osztályozás eredménye (nagyításokkal).
4-11. ábra: Példák az objektum alapú osztályozásra különböző képkockákon. A felső sorban találhatóak a képsorozat eredeti képkockái, míg az alsó sorokban láthatóak az osztályozás eredményei (felhasználói felületen megjelenített képek megfelelő nagyításai). Az osztályozó körrel jelzi a folthibának azonosított, illetve téglalappal a nem folthibaként azonosított objektumokat
104
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
4.5.3 Az emberi beavatkozás mennyiségének objektív vizsgálata
Az objektum alapú osztályozó eljárás célja a hamis pozitív találatok csökkentése és ezzel a szükséges emberi beavatkozás mennyiségének minimalizálása az automatikus feldolgozást követően. Az eljárás hatékonyságának vizsgálata érdekében meg kell becsülni a kézi beavatkozás mennyiségét az osztályozás nélkül és annak alkalmazásával. A kísérletek során az NN és SVM eljárások tanítása a II. halmaz elemeivel történt (lásd 4.5.2 fejezetet), az automatikus kiértékelés pedig a detektált és a referencia foltmaszk összehasonlítása alapján készült. Az automatikus osztályozás alkalmazása nélkül a felhasználó az SROD-MCSROD (lásd 4.3.2 fejezetet) eljárás által detektált lehetséges foltokat vizsgálja meg, amelyet az eljárás megjelenít a felhasználói felületen, hasonlóan a tanító minták gyűjtésének folyamatához (lásd 4-5. ábrán). Ekkor a felhasználó a megjelenített objektumok közül kiszűri a hamis pozitív (tévesen folthibaként jelzett objektum) objektumokat. Ekkor a szükséges emberi beavatkozás mennyisége függ a megjelenített objektumok számától (a felhasználónak az összes lehetséges foltot, objektumot meg kell vizsgálnia), illetve a hamis pozitív objektumok számától, amelyeket kézzel kell korrigálnia. Az objektum alapú osztályozás alkalmazásakor (SROD-MC-SROD-NN vagy SROD-MC-SROD-SVM) az eljárás megjeleníti az SROD-MC-SROD által detektált objektumokat és bejelöli az osztályozás eredményét (lásd 4-11. ábrán). Ekkor a felhasználónak ki kell javítania az osztályozó hamis pozitív döntését (az eljárás tévesen folthibaként osztályozott egy objektumot), illetve annak hamis negatív (egy folthibát tévesen nem foltnak osztályozott az eljárás) döntését. Ekkor az emberi munka mennyisége függ a folthibaként osztályozott objektumok számától (ezek között keres a felhasználó hamis pozitív osztályozásokat) és a hamis pozitív osztályozások számától (ezeknek az osztályozását kell kézzel módosítani), illetve a nem folthibának osztályozott objektumok számától (ezek között keres a felhasználó hamis negatív osztályozásokat) és a hamis negatív osztályozások számától (amely döntéseket kézzel kell módosítania). A különböző tanuló eljárások esetén a szükséges emberi beavatkozások mennyiségét (a vizsgálandó objektumok száma és ezek közül a hamis pozitív, hamis 105
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
negatív döntések számát) a 4-3. táblázat foglalja össze. A táblázat az SROD-MC-SROD eljárás esetén megadja az igaz pozitív arányt (lásd 4-2. táblázatot) különböző detektálási érzékenység esetén (lásd TM paramétert a 4.6 képletben). Az SROD-MC-SROD-NN és SROD-MC-SROD-SVM osztályozások esetén a hamis negatív osztályozások (az osztályozó tévesen nem foltnak osztályozott egy folthibát) javításával érhető el a maximális igaz pozitív arány (lásd 4-3. táblázatot).
Például a 7.2 : 2.5 azt jelöli, hogy a vizsgálandó objektumok átlagos száma képkockánként 7.2, amelyből átlagosan 2.5 objektum téves osztályozását kell kézzel javítani TM: foltok detektálásának érzékenysége (lásd 4.6. képletet); IP: igaz pozitív; HP: hamis pozitív; HN: hamis negatív
SROD-MC-SROD
SROD-MC-SROD –
SROD-MC-SROD –
NN
SVM
TM
IP arány (%)
HP
HN
HP
HN
HP
30
90
39.6 : 34.4
32.4 : 0.6
7.2 : 2.5
34 : 1.2
5.6 : 1.6
40
83
18.7 : 14.3
12.9 : 0.4
5.8 : 1.7
13.9 : 0.8
4.8 : 1.2
50
77
11.6 : 7.9
6.8 : 0.2
4.8 : 1.3
7.4 : 0.5
4.2 : 1
60
70
7.9 : 4.8
3.9 : 0.1
4.0 : 0.9
4.3 : 0.2
3.6 : 0.7
4-3. táblázat: A szükséges emberi beavatkozás mennyisége az automatikus feldolgozást követően osztályozás nélkül (SROD-MC-SROD), illetve NN („neural network”) és SVM („support vector machine”) alapú osztályozással
A 4-3. táblázat alapján megfigyelhető, hogy az objektum alapú osztályozó nélkül (SRODMC-SROD), TM =30 esetén a felhasználónak képkockánként átlagosan 39.6 objektumot (lehetséges foltot) kell megvizsgálnia és ebből 34.4 hamis pozitív döntést kell módosítania. Az NN (SVM) alapú osztályozással a vizsgált objektumok száma 7.2-re (5.6-ra) csökken és átlagosan 2.5 (1.6) hamis pozitív döntést kell manuálisan korrigálni. Az SVM alapú osztályozó esetén kevesebb hamis pozitív döntést (1.6 objektum / képkocka) kell korrigálnia a felhasználónak, szemben az NN alapú eljárással (2.5 objektum / képkocka). Az SVM eljárás azonban képkockánként átlagosan 1.2 objektum hamis negatív osztályozását eredményezi, míg NN eljárás esetén ez az érték 0.6 objektum 106
4. Fejezet Tanítható folthiba-detektáló eljárás nagyfelbontású archív filmeken
képkockánként. Így megfigyelhető, hogy az NN eljárással kevesebb kézi beavatkozásra van szükség a maximális igaz pozitív arány eléréséhez, azonban a hamis pozitív arány csökkentéséhez az SVM alapú osztályozást követően van szükséges kevesebb munkára.
4.6 Összefoglalás A fejezet az archív felvételek egyik gyakori rendellenességének, a folthiba („blotch”) detektálásával foglalkozik. A folthiba korrekciója a sérült képpontok detektálásából, majd a hiányzó képi információ becsléséből áll. A detektálás főbb nehézségei: 1) a zajos archív felvételeken, illetve komplex mozgások esetén a mozgásbecslés nem ad megfelelő eredményt; 2) a foltok javítása során a tévesen foltnak detektált területek korrekciója nem megengedett, mivel az újabb hibákat eredményezhet a javított képterületen; 3) a nagyfelbontású képsorozatok (2000 képpont soronként) esetén a mozgásbecslés számításigényes. Ezért a bemutatott eljárás célja a mozgásbecsléshez szükséges feldolgozási idő csökkentése és a hamis pozitív találatok automatikus kiszűrése, amely így csökkenti az automatikus feldolgozást követő emberi beavatkozás mennyiségét és növeli a feldolgozás hatékonyságát. Ennek érdekében a hamis pozitív találatok csökkentése két lépcsőben történik: 1) a mozgásból származó téves találatok csökkentése, kizárólag a becsült ROI („region of interest”) pozíciókban; 2) a fennmaradó hamis pozitív objektumok kiszűrése azok képi jellemzőinek osztályozásával. A mozgásbecslést egy többszintű, gradiens alapú eljárás végzi a kijelölt ROI területeken, hatékonyan csökkentve a feldolgozási időt. Komplex mozgások, például nem merev mozgások esetén egy objektum alapú osztályozó eljárás szűri ki a téves találatokat azok képi jellemzői alapján. Az eljárás objektív kiértékelése valódi archív felvételeken történt, így biztosítva az eljárás valós felhasználói körülmények közötti vizsgálatát. A kísérletek megmutatták, hogy a feldolgozási idő és a hamis pozitív találatok száma hatékonyan csökkenthető a bemutatott eljárásokkal.
107
Összefoglalás
A disszertáció a videófeldolgozás néhány, a gyakorlati felhasználás szempontjából fontosnak tekinthető feladatával foglalkozik. A vizsgált feladatok mindegyikében a probléma megfogalmazása és a kutatás irányainak kijelölése a valós felhasználási körülmények vizsgálatával történt, amikor is a számítógépnek mozgóképek gyors analízise alapján kell döntéseket és beavatkozásokat végeznie adaptív és tanuló eljárások segítségével. Erre utal a disszertáció összefoglaló címe. A kézjelek interaktív tanítása és a bemutatott kamera-kivetítő környezet révén javítható az ember-gép kapcsolat minősége, ahol a tanítás a felhasználó és a számítógép közötti folyamatos kölcsönhatáson alapszik. Segítségével a felhasználó saját maga végezheti el a kézjelek tanítását és elegendő csak a tévesen felismert gesztusokat újratanítania. A bevezetett kamera-kivetítő környezet lehetővé teszi a kézjelek kontúr alapú felismerését speciális eszközök, például infra kamera alkalmazása nélkül, illetve függetlenül a felhasználó által viselt ruházattól. A bemutatott stabilizációs és folthiba-detektáló eljárások a költséghatékony restauráció érdekében növelik a feldolgozás sebességét, javítják a feldolgozás minőségét, és ezzel csökkentik a hibák korrigálásához szükséges emberi beavatkozások mennyiségét. A vizsgált eljárásokban az automatikus feldolgozás hibája és ezzel a kézi beavatkozás hatékonyan csökkenthető a bevezetett tanuló és adaptív eljárások segítségével. A bemutatott képstabilizáló eljárás a különböző mozgó területek elkülönítésével és mozgásuk vizsgálatával adaptívan jelöl ki egy képterületet, amely mozgása alapján elvégezhető a teljes képsorozat stabilizálása. A folthibák detektálása során a ROI („region of interest”) alapú mozgásbecslés és a folt-gyanús területek képi jellemzőinek osztályozásával hatékonyan növelhető a feldolgozás sebessége és csökkenthető az automatikus feldolgozás hibája. Az alkalmazott restauráló eljárások a robusztus feldolgozás érdekében figyelembe veszik, hogy a felvétel számos filmhibát, például villódzást tartalmazhat.
108
Téziscsoportok
1. Téziscsoport: interaktív tanító eljárást alkalmazó kézfelismerés kamera-kivetítő környezetben.
1.1
Bevezettem egy felhasználó adaptív kézfelismerő eljárást, amely a felhasználó és a
számítógép közötti folyamatos interakció segítségével javítja a gesztusok felismerési hatékonyságát. Tipikus probléma az elkülönített tanítási és felismerési fázist alkalmazó kézfelismerő eljárásokban, hogy ha egy adott felhasználó nem végzett előzetes tanítást, a kézjelek felismerési hatékonyság lecsökken [22,23]. Megmutattam, hogy amennyiben a felhasználó nem végez előzetes tanítást, a felismerési fázisba ágyazott interaktív tanító eljárással kijavíthatóak a tévesen felismert kézjelek. Kísérletileg igazoltam, hogy a módszer révén elegendő csak a tévesen detektált gesztusokat újratanítani a kézjelek használata közben, így nem szükséges az összes kézjel előzetes tanítását elvégezni az alkalmazott gesztusok megfelelő felismerési hatékonysága érdekében (Fejezet: 2.6, 2.7).
1.2
A kézjelek kontúr alapú osztályozására bevezettem egy Fourier leírókon alapuló
osztályozó eljárást, amely időben több egymást követő kontúr vizsgálatával a maximális valószínűség elve alapján végzi a kézjelek osztályozását. Megmutattam, hogy mivel a felhasználó egy minimális ideig ugyanazon gesztust formálja meg, a kézjelek időbeni vizsgálatával javítható a felismerés hatékonysága. Kísérletek során igazoltam, hogy a bevezetett kontúrleíró függvénnyel a Fourier leírókon alapuló osztályozó eljárás nagyobb felismerési hatékonyságot eredményez az eddig alkalmazott kontúrleíró metódusoknál. Az osztályozó és tanító eljárás fejlesztésénél figyelembe vettem, hogy a felhasználó és a számítógép közötti kapcsolatnak valós idejűnek kell lennie, ezért alacsony komplexitású műveletek szükségesek (Fejezet: 2.5, 2.7).
1.3
Bevezettem egy kar és kézszegmentáló eljárást, amely kinyeri a felhasználó
kézjelének kontúrját egy ún. kamera-kivetítő környezetben. 109
Megmutattam, hogy az eljárás segítségével a vetített képre mutató kar és kéz kontúrja meghatározható tetszőleges statikus, illetve változó háttérkép esetén. Az eljárás előnye, hogy a szegmentáció nem igényel speciális eszközöket, mint például infra kamerát és fényforrást. Kísérletekkel bizonyítottam, hogy a kéz szegmentálásának hatékonysága nem függ a felhasználó öltözetétől, amely révén kötetlenebb kommunikáció érhető el (Fejezet: 2.4, 2.7).
Kapcsolódó publikációk: [2,4,11].
2. Téziscsoport: archív felvételek képremegésének adaptív stabilizálása a vizsgált képterület (ROF, „region of fixation”) automatikus kiválasztásával.
2.1
Bevezettem egy képstabilizáló eljárást, amely adaptív módon a kép négyágú fa
(„quad-tree”) alapú térbeli szegmentációjával és mozgásvektorok időbeli analízisével választja ki a kép egy adott területét („region of fixation”, ROF), amely alapján becsülhető a képsorozat remegő mozgása. Megmutattam, hogy több mozgó objektum esetén a hibás stabilizáció oka a téves mozgásbecslés, mivel a teljes képterületet alkalmazásakor a becslés nem megbízható. A bemutatott eljárás a mozgás struktúrájától függően olyan képterületet határoz meg, amely mozgása megbízhatóan becsülhető és időben egyenletes mozgással jellemezhető. Kísérletekkel bizonyítottam, hogy az adaptív szegmentációs eljárás által meghatározott képterület mozgása alapján hatékonyan stabilizálhatóak a különböző komplexitású mozgásokat tartalmazó képsorozatok (Fejezet: 3.6, 3.7).
Kapcsolódó publikációk: [3,5,12].
3. Téziscsoport: folthibák detektálása nagyfelbontású, archív felvételeken minimális emberi beavatkozással.
110
3.1
Bevezettem egy eljárást a folthibák detektálására, amely csökkenti a mozgásból
származó hamis pozitív (tévesen foltnak azonosított) képpontok arányát a folt-gyanús területek mozgásának ROI („region of interest”) alapú becslésével és kompenzálásával. Megmutattam, hogy a lehetséges folt-gyanús területek előzetes kiválasztásával elegendő a mozgásbecslést a kiválasztott terület (ROI) alapján elvégezni, a teljes képterület alkalmazása helyett. Kísérletek alapján bebizonyítottam, hogy az eljárás a számítási komplexitás jelentős csökkentése mellett közel azonos felismerési hatékonyságot ért el, összehasonlítva a teljes képterületen mozgáskompenzációt végző metódussal. Új félautomatikus eljárást vezettem be a folthibák elhelyezkedését leíró referencia képmaszk („ground
truth”)
előállítására,
amely segítségével valódi
körülmények
között,
nagyfelbontású archív felvételeken tesztelhető a detektálás hatékonysága (Fejezet: 4.3.2, 4.4, 4.5).
3.2
Bevezettem egy eljárást a detektált folthibák hamis pozitív találatainak
csökkentésére, amely az előzőleg meghatározott folt-gyanús alakzatok osztályozásával szűri ki a nem valódi foltokat. Az archív felvételek filmhibái, az objektumok komplex mozgása esetén a lokális mozgáskompenzáció hibája hamis pozitív találatokat eredményez. Kísérletek alapján bizonyítottam, hogy a lehetséges folthibák és annak környezete alapján kinyert képi jellemzők osztályozásával hatékonyan csökkenthetőek a hamis pozitív találatok. Bevezettem egy új, a foltok detektálásának minőségét kiértékelő eljárást, amely alapja a felhasználó által végzett munka mennyiségének becslése, amely az automatikus feldolgozást követően az objektumok kézzel történő osztályozásához szükséges. Kísérletileg igazoltam, hogy a folt-gyanús területek neurális hálózat (NN, „neural network”) és support vektor gép (SVM, „support vector machine”) alapú osztályozásával hatékonyan csökkenthető a szükséges emberi munka mennyisége (Fejezet: 4.3.3, 4.5).
Kapcsolódó publikációk: [1,6,7,8,9].
111
Thesis groups
1. Thesis group: hand gesture recognition with interactive training in a camera-projector environment.
1.1
I introduced a user-adaptive gesture recognition method that improves the
recognition efficiency of gestures by continuous user-computer interaction. A typical problem of recognition methods which utilize separate training and recognition phases is that the recognition performance decreases when gestures are performed by users who did not train the system previously with their own gesture samples [22,23]. I showed that even if user does not accomplish preliminary training the falsely recognized gestures can be corrected by a novel interactive training method during the recognition phase. I experimentally proved that it is enough to retrain only the falsely recognized gestures by the proposed method without performing preliminary training of all gestures to ensure the suitable performance (Chapter: 2.6, 2.7).
1.2
I introduced a contour based recognition method of hand gestures by Fourier
descriptors, which analyzes several subsequent contours in time and classifies gestures by maximum likelihood estimation. I showed that temporal analysis of gestures improves the performance of the recognition since user usually performs the same gesture for a given time. I experimentally proved that the introduced contour signature function increases the performance of the Fourier descriptor based classification compared to previously applied functions. During the development of training and classification methods I also considered that low complexity operations are needed, due to the real-time interaction between human and computer (Chapter: 2.5, 2.7).
1.3
I introduced an arm and hand segmentation method that extracts hand contours in a
camera-projector environment.
112
I showed that the contour of the arm and the hand, which is pointed onto the projected image, can be extracted by the proposed method in case of any static or dynamic background. Its advantage is that the segmentation method does not need special devices such as infra cameras and specific light sources. I experimentally proved that the efficiency of the hand segmentation is not restricted by the clothes of users (Chapter: 2.4, 2.7).
Related publications: [2,4,11].
2. Thesis group: adaptive stabilization of image vibration on archive films by automatic selection of ROF (“region of fixation”).
2.1
I introduced an image stabilization method that adaptively selects an image region
(ROF) by spatial segmentation in a quad-tree manner and by temporal analysis of motion information to estimate the vibration of the image sequence. I showed that the improper results of stabilization are usually caused by complex and/or multiple object motions since the motion estimation, measured on the whole image region, is usually not reliable. The proposed method adaptively selects a ROF, depending on the complexity and structure of moving objects, where the motion estimation is reliable and the motion is relatively continuous. I experimentally proved that image sequences, with different complexity of motions, can be efficiently stabilized by motion parameters measured in the adaptively selected ROF (Chapter: 3.6, 3.7).
Related publications: [5,12,3].
3. Thesis group: detection of blotches on high resolution archive films with minimal human interaction.
113
3.1
I introduced a blotch detection method that reduces the false alarm rate of pixels
(wrongly classified as blotches) originating from motion by ROI (“region of interest”) based motion estimation and compensation on the region of blotch candidates. I showed that it is enough to estimate and compensate motions in the region of the preliminary selected blotch candidates (ROI) instead of the computation on the whole image. I experimentally showed that ROI based motion estimation considerably reduced the computation time without decreasing the performance of the detection compared to methods that compensate motions on the whole image region. I introduced a semiautomatic method to generate ground truth data sets of blotches that define positions of artifacts to be made possible the performance evaluation on original archive and high resolution images (Chapter: 4.3.2, 4.4, 4.5).
3.2
I introduced a method that reduces false alarm results by classification of the
preliminary determined blotch candidates and removing of non-blotch objects. The inaccurate motion estimation, which is caused by artifacts on archive films and complex object motions, results in several false alarms. I experimentally proved that classification of image features, extracted in regions of blotch candidates and their neighbors, significantly reduces false alarm results. I introduced a new evaluation technique of the performance of blotch detection that estimates the amount of the required human work, which is needed for manual classification of blotch candidates, following the automatic process. I experimentally proved that the proposed NN (“neural network”) and SVM (“support vector machine”) based classification of blotch candidates extensively decreased the amount of the necessary human work (Chapter: 4.3.3, 4.5).
Related publications: [1,6,7,8,9].
114
Új tudományos eredményekhez kapcsolódó publikációk
Nemzetközi SCI folyóirat
[1]
Licsár A., Szirányi T., Czúni L., Trainable blotch detection on high resolution archive films minimizing the human interaction, Machine Vision and Applications Journal, accepted, 2007. (IF: 0.667)
[2]
Licsár A., Szirányi T., User-adaptive hand gesture recognition system with interactive training, Image and Vision Computing, Vol. 23, No.12 , pp. 1102-1114, 2005. (IF: 1.159)
[3]
Czúni L., Hanis A., Kovács L., Kránicz B., Licsár A., Szirányi T., Kas I., Kovács Gy., Manno S., Digital Motion Picture Restoration System for Film Archives (DIMORF), SMPTE Motion Imaging Journal, Vol. 113, pp.170-176, 2004. (IF: 0.333)
Nemzetközi SCI periodika
[4]
Licsár A., Szirányi T., Hand Gesture Recognition in Camera-Projector System, International Workshop on Human-Computer Interaction, Lecture Notes in Computer Science, Vol. LNCS 3058, pp.83-93, 2004. (IF: 0.513)
[5]
A. Licsár, L. Czúni, T. Szirányi, Adaptive Stabilization of Vibration on Archive Films, Lecture Notes in Computer Science, CAIP’2003, Vol. LNCS 2756, pp. 230– 237, 2003. (IF: 0.515)
Hazai folyóirat
[6]
Czúni L., Licsár A., Szirányi T., Digitális filmjavító eljárások, Magyar Elektronika, (11), HU ISSN 0236-6134, pp. 44-46, 2005.
115
Nemzetközi konferencia
[7]
Licsár A., Szirányi T., Czúni L., Adaptive Blotch Detection in a Film Restoration Framework, ECCV Workshop on Applications of Computer Vision, Graz, 2006.
[8]
Licsár A., Czúni L., Szirányi T., Trainable Post-Processing Method To Reduce False Alarms In The Detection Of Small Blotches Of Archive Films, IEEE International Conference on Image Processing (ICIP), Genoa, Italy, September 1114, V.II. pp.562-565, 2005.
[9]
Licsár A., Szirányi T., Czúni L., Blotch Detection in Archive Film Restoration by Adaptive Learning, Workshop on Machine Learning Techniques for Processing Multimedia Content (MLMM), Bonn, August pp. 7-11, 2005.
[10] Czúni L., Császár G., Hanis A., Kovács L., Licsár A., Szirányi T., Semi Automatic Digital Motion Picture Restoration System with Learning Capabilities, Learning for Adaptable Visual Systems (LAVS), Cambridge, UK, 2004. [11] A. Licsár, T. Szirányi, Dynamic Training of Hand Gesture Recognition System, ICPR’04, Cambridge, UK, IEEE & IAPR, Vol. 4, pp.971-974, 2004. [12] Licsár A., Czúni L., Szirányi T., Stabilization Of Vibration On Archive Films By Automatic Multi-scale ROF Selection, Advanced Concepts for Intelligent Vision Systems (Acivs), Ghent, Belgium, pp. 260-266, 2003. [13] Bölecz M., Czúni L., Gál B., Hanis A., Kovács L., Kránicz B., Licsár A., Szirányi T., Kas I., Kovács Gy., Manno S., DIgital MOtion Picture Restoration System for Film Archives (DIMORF), A complex solution for film scanning, processing and recording, Conference of the International Broadcasting Convention, Amsterdam, pp. 509-517, 2003. [14] Licsár A., Szirányi T., Supervised training based hand gesture recognition system“, 16th ICPR, Vol. 3., IEEE & IAPR, pp. 999-1002, 2002. [15] Licsár A., Szirányi T., Hand-Gesture Based Film Restoration, 2nd Int. WS on Pattern Recognition in Inf. Systems (PRIS’02), IAPR, Alicante, Spain, pp. 95-103, 2002.
116
Irodalomjegyzék [16] Rabiner L.R., Juang B.H., Fundamentals of Speech Recognition, Prentice Hall, Englewood Cliffs, NJ, 1993. [17] Becchetti C., Ricotti L.P., Speech Recognition: Theory and C++ Implementation, New York: J. Wiley, 1999. [18] Sebe N., Cohen I., Garg A., Lew M.S., Huang T.S., Emotion Recognition Using a Cauchy Naive Bayes Classifier, International Conference on Pattern Recognition, Vol.1, pp. 17-20, 2002. [19] Sebe N., Sun Y., Bakker E., Lew M.S., Cohen I., Huang T.S., Towards Authentic Emotion Recognition, International Conference on Systems, Man, and Cybernetics (IEEE SMC'04), Netherlands, pp. 623-628, 2004. [20] Bartlett M.S., Littlewort G., Fasel I.R., Movellan J.R., Real time face detection and facial expression recognition: Development and applications to human computer interaction. IEEE International Conference on Computer Vision and Pattern Recognition, Madison, pp. 53-56, 2003. [21] Gary Bradski and James W. Davies, “Motion Segmentation and Pose Recognition with Motion History Gradients”, Machine Vision and Applications, Vol 13, #3, pp 174-184, July 2002. [22] Ramamoorthy A., Vaswani N., Chaudhury S., Bannerjee S., Recognition of dynamic hand gestures, Pattern Recognition, Vol. 36(9), pp. 2069-2081, 2003. [23] Raytchev B., Hasegawa O., Otsu N., User-independent online gesture recognition by relative motion extraction, Pattern Recognition Letters, Vol. 21(1), pp. 69-82, 2002. [24] Iwai Y., Watanabe K., Yagi Y., Yachida M., Gesture Recognition Using Colored Gloves, Int. Conf. on Pattern Recognition, Vol.1, pp.662-666, 1996. [25] Starner T., Pentland A., Visual recognition of American Sign Language using Hidden Markov Models, Int. Workshop on Automatic Face and Gesture Recognition, pp. 189-194, 1995. [26] Sturman D.J., Zeltzer D., A Survey of Glove-based Input, IEEE Computer Graphics and Applications, Vol. 14(1), pp. 30-39, 1994.
117
[27] Davis J., Shah M., Toward 3-D Gesture Recognition, Int'l Journal of Pattern Recognition and Artificial Intelligence, Vol. 13, No. 3, pp. 381-384, 1999. [28] Chang I.C., Huang C.L., Lien C.C., Posture Identification through Inverse Kinematics Method, Asian Conf. on Computer Vision, Taipei, Taiwan, pp. 53-56, 2000. [29] Chua C.S., Guan H.Y., Ho Y.K., Model-based 3D Hand Posture Estimation From A Single 2D Image, Image Vision and Computing, Vol. 20, pp. 191-202, 2002. [30] Imagawa K., Taniguchi R., Arita D., Matsuo H., Lu S., Igi S., Appearance-based recognition of hand shapes for sign language in low resolution image, Proc. of 4th Asian Conference on Computer Vision, pp. 943-948, 2000. [31] Schlenzig J., Hunter E., Jain R., Vision-based hand gesture interpretation using recursive estimation, Proc. of Asilomar Conf. Signals, Systems, and Computer, pp. 1267-1271, 1994. [32] Freeman W., Roth M., Orientation histograms for hand gesture recognition, Int. Workshop on Automatic Face and Gesture Recognition, pp. 296-301, 1995. [33] Cho K., Dunn M., Learning shape classes, IEEE Trans. on Pattern Analysis and Machine Intelligence, Vol. 16, pp. 882-888, 1994. [34] Segen J., A learning computer vision system that recognizes hand gestures, Machine Learning: A Multistrategy Approach, Vol. 4, pp. 621-634, 1994. [35] Zahn C.T., Roskies R.Z., Fourier descriptors for plane closed curves, IEEE Trans. on Computers C21, pp. 269-281, 1972. [36] Zhang D., Lu G., A comparative study of Fourier descriptors for shape representation and retrieval, Proc. of 5th. Asian Conference on Computer Vision, Melbourne, Australia, pp. 652-657, 2002. [37] Rui Y., She A., Huang T.S., A modified Fourier descriptor for shape matching in MARS, Image Databases and Multimedia Search, pp. 165-180, 1998. [38] Ortega M., Rui Y., Chakrabarti K., Mehrotra S., Huang T.S., Supporting Similarity Queries in MARS, ACM Multimedia, pp. 403-413, 1997. [39] Ng C.W., Ranganath S., Real-time gesture recognition system and application, Image and Vision Computing, Vol. 20, pp. 993-1007, 2002.
118
[40] Chen F.S., Fu C.M., Huang C.L., Hand gesture recognition using a real-time tracking method and Hidden Markov Models, Image and Vision Computing, Vol. 21, pp. 745-758, 2003. [41] Athitsos V., Sclaroff S., An appearance-based framework for 3D hand shape classification and camera viewpoint estimation, Proc. IEEE Int. Conf. on Automatic Face and Gesture Recogntion, pp. 45-50, 2002. [42] Lee H., Kim J., An HMM-based threshold model approach for gesture recognition, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 21(10), pp. 961-973, 1999. [43] Murakami K., Taguch H., Gesture recognition using recurrent neural networks, Proceedings of Human Factors in Computing Systems, pp. 237-242, 1991. [44] Min B.W., Yoon H.S., Soh J., Ohashi T., and Ejima T., Gesture-based editing system for graphic primitives and alphanumeric characters, Engineering Applications of Artificial Intelligence, Vol. 12 (4), pp. 429-441, 1999. [45] Alt F.L., Digital pattern recognition by moments, Optical Character Recognition, G.L. Fischer et al. Eds., pp. 240-258, 1962. [46] Linaje M., Perez R.M., Martinez P., Aguilar P.L., Classifying gestures by using a self-organizing neural network, Proc. Knowledge-Based Intelligent Engineering Systems and Allied Technologies, Vol. 2 , pp. 796-799, 2000. [47] Wang T., Shum H., Xu Y., Zheng N., Unsupervised Analysis of Human Gestures, IEEE Pacific Rim Conference on Multimedia, pp. 174-181, 2001. [48] Triesch J., Malsburg C., Robotic gesture recognition. Gesture Workshop, pp. 233244, 1997. [49] Freeman, W., Weissman, C. Television control by hand gestures. Intl. Workshop on Automatic Face and Gesture Recognition, pp. 179-183, 1995. [50] Streitz N.A., Geissler J., Haake J.M., Hol J., DOLPHIN: Integrated meeting support across liveboards, local and remote desktop environments, Proc. of the ACM CSCW, pp. 345-358, 1994. [51] Fraser Q.S., Robinson P., BrightBoard: A video-augmented environment, Proc. of Computer-Human Interaction, Vancouver, pp. 134-141, 1996.
119
[52] Leubner C., Brockmann C., Müller H., Computer-vision-based Human-Computer Interaction with a Back Projection Wall Using Arm Gestures, Euromicro Conference, pp. 308-314, 2001. [53] Koike H., Sato Y., Kobayashi Y., Tobita H., Kobayashi M., Interactive textbook and interactive Venn Diagram: natural and intuitive interface on augmented desk system, Proc. ACM Human Factors in Computing Systems, pp. 121-128, 2000. [54] Hall D., Gal C., Martin J., Chomat O., Crowley J.L., MagicBoard: A contribution to an intelligent office environment, Robotics and Autonomous Systems, Vol. 35, pp. 211-220, 2001. [55] Wellner P., Interacting with paper on the DigitalDesk, Communications of the ACM, Vol. 36(7), pp. 86-96, 1993. [56] Hardenberg C., Berard F., Bare-hand human-computer interaction, Proc. of ACM Workshop on Perceptive User Interface, Orlando, pp. 1-8, 2001. [57] Raskar R., Beardsley P., A Self-Correcting Projector, IEEE Computer Vision and Pattern Recognition, pp. 504-508, 2001. [58] Rehg J.M., Flagg M., Tat-Jen C., Sukthankar R., Sukthankar G., Projected light displays using visual feedback, International Conference on Control, Automation, Robotics and Vision, Vol. 2, pp. 926-932, 2002. [59] Pratt W.K, Digital Image Processing, Wiley-Interscience, New York, 2001. [60] Intel Open Source Computer Vision Library (2006.03.01): http://www.intel.com/technology/computing/opencv/index.htm [61] Nayar S.K., Peri H., Grossberg M.D., Belhumeur P.N., A Projection System with Radiometric Compensation for Screen Imperfections, Workshop on ProjectorCamera Systems, 2003. [62] Störring M., Andersen H.J., Granum E., Skin colour detection under changing lighting conditions, 7th Symposium on Intelligent Robotics Systems, Coimbra, Portugal, pp. 20-23, 1999. [63] Wren C.R., Azarbayejani A., Darrell T., Pentland A., Pfinder: Real-time tracking of the human body, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 19(7), pp. 780-785, 1997.
120
[64] Starner T., Pentland A., Real-time american sign language recognition using desk and wearable computer based video, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 20, pp. 1371-1375, 1998. [65] Tanibata N., Shimada N., Shirai Y., Extraction of Hand Features for Recognition of Sign Language Words, In International Conference on Vision Interface, pp.391-398, 2002. [66] Imagawa K., Taniguchi R., Arita D., Matsuo H., Lu S., Igi S., Appearance-based recognition of hand shapes for sign language in low resolution image, Proc. of 4th. Asian Conference on Computer Vision, pp. 943-948, 2000. [67] Read P., Meyer M.P., Restoration of Motion Picture Film, Butterworh-Heinemann, 2000. [68] Delaney B., Hoomans B., PrestoSpace User Requirements Feedback meeting in London, An integrated solution for Audio-visual preservation and access, 2004. [69] Crétual A., Chaumette F., Dynamic stabilization of a pan and tilt camera for submarine image visualization, Computer Vision and Image Understanding, Vol. 79(1), pp. 47-65, 2000. [70] Mech R., Wollborn M., A Noise Robust Method for 2D Shape Estimation of Moving Objects in Video Sequences Considering a Moving Camera, Signal Processing, Vol. 66(2), pp 203-217, 1998. [71] Colonnese S., Neri A., Russo G., Tabacco C., Adaptive Segmentation of Moving Object versus Background for Video Coding, Proc. of SPIE Annual Symposium, Vol. 3164, S. Diego, 1997. [72] Smolic A., Sikora T., Ohm J.R, Long-Term Global Motion Estimation and its Application for Sprite Coding, Content Description and Segmentation, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 9(8), pp. 12271242, 1999. [73] Duric Z., Rosenfeld A., Shooting a Smooth Video with a Shaky Camera, Machine Vision and Applications, Vol. 13, pp. 303-313, 2003. [74] Saito T., Komatsu T., Hoshi T., Ohuchi T., Image Processing for Restoration of Old Film Sequences, 10th International Conference on Image Analysis and Processing, pp. 709-714, 1999.
121
[75] Schallauer P., Pinz A., Haas W., Automatic restoration algorithms for 35mm film, VIDERE, MIT press, Vol. 1(3), pp. 60-85, 1999. [76] Shekarforoush H., Chellappa R., A multi-fractal formalism for stabilization, object detection and tracking in fiir sequences, IEEE Int. Conf. on Image Processing, Vol. 3, pp. 78-81, 2000. [77] Heeger D.J., Notes on motion estimation. Psych 267/CS 348D/EE 365, Department of Psychology, Stanford University, Stanford, 1998. [78] Censi A., Fusiello A., Roberto V., Image Stabilization by Features Tracking, International Conference on Image Analysis and Processing, Venice, Italy, pp. 665667, 1999. [79] Irani M., Rousso B., Peleg S., Recovery of Ego-Motion Using Region Alignment, IEEE Transactions on Pattern Analysis and Machine Intelligence, pp. 268-272, 1997. [80] Vlachos T., Simple Method for Estimation of Global Motion Parameters Using Sparse Translational Motion Vector Fields, Electronics Letters, pp. 60-62, 1998. [81] Wang D., Wang L., Global Motion Parameters Estimation Using a Fast and Robust Algorithm, IEEE Transactions on Circuits and Systems for Video Technology, pp. 823-826, 1997. [82] Bergen J.R., Burt P.J., Hingorani R., Peleg S., A Three-Frame Algorithm for Estimating Two-Component Image Motion, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 14(9), pp. 886-896, 1992. [83] Chang J.Y., Hu W.F., Cheng M.H., Chang B.S., Digital image translational and rotational motion stabilization using optical flow technique, IEEE Trans. Consumer Electron., Vol. 48 (1), pp. 108-115, 2002. [84] Digi Studio, Digital Video Stabilizer (2006.03.01): http://www.dv99.com [85] Dynapel, Steadyhand (2006.03.01): http://www.dynapel.com/products/steadyhand_overview.shtml [86] Hill L., Vlachos T., On the Estimation of Global Motion using Phase Correlation for Broadcast Applications, Proc. of the IEEE International Conference on Image Processing and it's Applications (IPA), pp. 721-725, 1999.
122
[87] Kuglin C.D., Hines D.C., The phase correlation image alignment method, Proc. of International Conference on Cybernetics and Society, pp. 163-165, 1975. [88] Reddy B.S., Chatterji B.N., An FFT-Based Technique for Translation, Rotation, and Scale-Invariant Image Registration, IEEE Trans. on Image Processing, pp. 12661271, 1996. [89] Wu Y., Suter D., Noisy Image Sequence Registration and Segmentation, Proc. of Second Asian Conference on Computer Vision, ACCV'95, Singapore, pp. 15331537, 1995. [90] Erturk S., Image sequence stabilization by low-pass filtering of interframe motion, Proc. SPIE, Visual Communication and image Processing, Vol. 4310, pp. 434-442, 2001. [91] Tenze L., Ramponi G., Carrato S., A complete system for old motion picture restoration, Proc. of EVA 2002 - Electronic Imaging and the Visual Art, pp. 110114, 2002. [92] Litvin A., Konrad J., Karl W., Probabilistic video stabilization using kalman filtering and mosaicking, IS&T/SPIE symposium on Electronic Imaging, Image and Video Communication and Proc., pp. 663-674, 2003. [93] Jin J.S., Zhu Z., Xu G., Digital Video Sequence Stabilization Based on 2.5D Motion Estimation and Inertial Motion Filtering, Real-Time Imaging, Vol. 7(4), Academic Press, pp. 357-365, 2001. [94] Oppenheim A.V., Schafer R.W., Buck J.R., Discrete Time Signal Processing, second ed., Prentice Hall, New Jersey, 1999. [95] Press W.H., Numerical Recipes, The art of Scientific Computing, Cambridge University Press, 1988. [96] Kokaram A.C., On missing data treatment for degraded video and film archives: a survey and a new Bayesian approach, IEEE Transactions on Image Processing, Vol. 13(3), pp. 397-415, 2004. [97] Ghaderi M., Kasaei S., Novel Post-Processing Methods Used in Detection of Blotches in Image Sequences, AEÜ – International Journal of Electronics and Communications, Vol. 58, pp. 58-64, 2004.
123
[98] Naranjo V., Albiol A., Mossi J.M., Albiol A., Morphological Lambda Reconstruction applied to restoration of blotches in old films, Proc. of the 4th IASTED Int.. Conference on Visualization, Imaging and Image Processing, Spain, 2004. [99] Joyeux L., Boukir S., Besserer B., Buisson O., Reconstruction of degraded image sequences, Application to film restoration, Image and Vision Computing (IMAVIS), Vol. 19(8), pp. 503-516, 2001. [100] Tenze L., Ramponi G., Carrato S., Blotches correction and contrast enhancement for old film pictures, Proc. Int. Conference on Image Processing, ICIP, Canada, pp. 660-663, 2000. [101] Paisan F., Crise A., Restoration of signals degraded by impulsive noise by means of a low distortion, nonlinear filter, Signal Process., Vol. 6, pp. 67-76, 1984. [102] Kokaram A.C., Motion Picture Restoration: Digital Algorithms for Artifact Suppression in Degraded Motion Picture Film and Video, Springer Verlag, 1998. [103] Kokaram A.C., Morris R., Fitzgerald W., Rayner P., Detection of missing data in image sequences, IEEE Trans. on Image Processing, Vol. 4(11), pp. 1496-1508, 1995. [104] Nadenau M.J., Mitra S.K., Blotch and scratch detection in image sequences based on rank ordered differences, Time-Varying Image Processing and Moving Object Recognition, Elsevier, pp. 27-35, 1997. [105] Lagendijk R.L., Roosmalen P.M.B., Biemond J., Video Enhancement and Restoration, Handbook of Image & Video Processing, Academic Press, San Diego, pp. 227-242, 2000. [106] Tenze L., Ramponi G., Carrato S., Robust detection and correction of blotches in old films using spatio-temporal information, Proc. SPIE Intern. Symp. Electronic, pp. 348-357, 2002. [107] Gangal A., Kayikcioglu T., Dizdarogle B., An improved motion-compensated restoration method for damage color motion picture film, Signal Proc.: Image Communication, Vol. 19, pp. 353-368, 2004. [108] Buisson O., Boukir S., Besserer B., Motion compensated film restoration, Machine Vision and Applications, Springer-Verlag, Vol. 13(4), pp. 201-212, 2003.
124
[109] Tilie S., Laborelli L., Bloch I., Blotch Detection for Digital Archives Restoration based on the Fusion of Spatial and Temporal Detectors, The 9th International Conference on Information Fusion, Florence, Italy, pp. 1-8, 2006. [110] Horn B.K.P., Robot Vision, MIT Press, Cambridge, MA, 1986. [111] B.K.P., Horn, B.G., Schunck, Determining optical flow, Artificial Intelligence, Vol. 17, 1981, pp. 185-203. [112] Burt P.J., Adelson E.H., The Laplacian Pyramid as a Compact Image Code, IEEE Transactions on Communication 31, No. 4, pp. 532-540, 1983. [113] K. Fukushima, Cognitron: A Self-Organizing Multilayered Neural Network, Biological Cybernetics, Vol. 20, pp. 121–136, 1975. [114] Müller K.R., Mika S., Rätsch G., Tsuda K., Schölkopf B., An Introduction to Kernel-Based Learning Algorithms, IEEE Transactions on Neural Networks, Vol. 12(2), pp. 181-201, 2001. [115] Rumelhart D., Hinton G., Williams R., Learning internal representations by error propagation, MIT Press, Cambridge, MA, 1986. [116] G. Cybenko, "Approximation by Superposition of a Sigmoidal Function", Mathematics of Control, Signals, and Systems, Vol. 2, 1989, pp. 303-314. [117] Boser B., Guyon I., Vapnik V., A training algorithm for optimal margin classifiers, In Proc. of the Fifth Annual Workshop on Computational Learning Theory, pp. 144–152, 1992. [118] Cortes C., Vapnik V., Support-vector network, Machine Learning, Vol. 20, pp. 273– 297, 1995. [119] Fan R.E., Chen P.H., Lin C.J., Working set selection using the second order information for training SVM, Journal of Machine Learning Research, Vol. 6, pp. 1889-1918, 2005 [120] Chang C.C., Lin C.J., LIBSVM: a library for support vector machines, 2005. http://www.csie.ntu.edu.tw/~cjlin/libsvm
125