Efektivní vyhledávání v kolekcích obrázků tváří Michal KRÁTKÝ, Tomáš SKOPAL, Václav SNÁŠEL Katedra informatiky, VŠB-Technická univerzita Ostrava 17. listopadu 15, 708 33 Ostrava {michal.kratky,tomas.skopal,vaclav.snasel}@vsb.cz Abstrakt. Významným problémem světa informačních technologií je uložení a efektivní dotazování velkých kolekcí multimediálních dokumentů. Oblast zabývající se touto problematikou se nazývá information retrieval, informační systémy řešící takové úlohy nazýváme Dokumentografické informační systémy. Tyto systémy pracují nejen s dokumenty textovými, ale i s obrázky, zvukovými či video záznamy. Jako databázové informační systémy i tyto systémy slouží pro ukládání a manipulaci s daty. Uložení dat musí být takové, aby bylo později možné s daty efektivně pracovat (např. vyhledávat), takové uložení dat nazýváme indexování. V tomto článku je prezentován přístup pro efektivní vyhledávání v kolekcích obrázků tváří. Přístup využívá pro rozpoznávání tváří analýzu hlavních komponent, která redukuje původní prostor obrázků a poskytuje velmi rozumnou extrakci rysů. Pro efektivní dotazování takto získaných vektorů je použita metrická datová struktura M-strom. Příspěvek tedy popisuje řešení problému efektivního vyhledávání v kolekcích tváří, od extrakce rysů až k vyhledávání. Snaží se ukázat řešení efektivního vyhledávání ve velkých kolekcích dat, které v současné době, při často používaném sekvenčním prohledávání kolekce, není možné realizovat. Klíčová slova: information retrieval, rozpoznávání obrázků tváří, indexování vícerozměrných dat, metrické datové struktury, zpracování obrazu, analýza hlavních komponent, M-strom 1 Úvod Významným problémem světa informačních technologií je uložení a efektivní dotazování velkých kolekcí multimediálních dokumentů. Oblast zabývající se touto problematikou se nazývá information retrieval [18,26,2,16]. Informační systémy řešící takovéto úlohy nazýváme Dokumentografické informační systémy. Tyto systémy nepracují pouze s dokumenty textovými, ale i s obrázky, zvukovými či video záznamy. Jako databázové informační systémy i tyto systémy slouží pro ukládání a manipulaci s daty. Uložení dat musí být takové, aby bylo později možné s daty efektivně pracovat (např. vyhledávat), takové uložení dat nazýváme indexování. Indexování multimediálních dat před nás staví celou řadu problémů, které nejsou klasickou databázovou (ať již relační, objektově-relační, či objektovou) technologií řešitelné a vyžadují speciální přístupy, datové struktury a algoritmy. Praktickou úlohou je identifikace osob dle zvoleného biometrického rysu [1], jako je oční duhovka, otisky prstů či rysy tváře. Příspěvek popisuje přístup pro efektivní Lubos Popelínský (ed.), DATAKON 2003, Brno, 18.-21. 10. 2003, pp. 1-11.
2 Efektivní vyhledávání v kolekcích obrázků tváří vyhledávání v rozsáhlých kolekcích obrázků tváří. Využíváme existujícího přístupu pro rozpoznávání tváří, kterým je analýza hlavních komponent (PCA) [14]. Získané redukované vektory jsou vloženy do metrické datové struktury M-strom [7], tak aby bylo možné efektivně vyhledávat ve velkých kolekcích obrázků. Snažíme se tedy o propojení dvou oblastí, rozpoznávání obrázků tváří [12] a indexování vícerozměrných dat [27,5]. V případě rozpoznávání tváří se autoři často zaměřují na samotné rozpoznávání tváří, problém efektivního vyhledání ve velkých kolekcích většinou není řešen. V existujících přístupech jsou často tváře hledány sekvenčním průchodem kolekcí, což je pro velké množství dat nerealizovatelné. Vezměme v úvahu úmysl vlády USA zálohovat fotky všech návštěvníků tohoto státu. Je nutné si uvědomit, že i kdyby se porovnání dvou obrázků provedlo za 10ms, sekvenční vyhledání vstupního obrázku v kolekci 10 8 obrázků by trvalo téměř 11.5dne. Naproti tomu, z pohledu vícerozměrných indexovacích struktur a algoritmů, je získání indexovací informace z indexovaného objektu (tzv. extrakce rysů [5]) nezajímavé. Výsledkem extrakce rysů je vektor prvek mnohorozměrného prostoru. V případě indexování obrázků je pro extrakci rysů často použit histogram, což je ovšem informace nerelevantní pro měření podobnosti obrázků. V tomto příspěvku využíváme pro extrakci rysů z obrázků tváří analýzu hlavních komponent, která redukuje původní vícerozměrný prostor obrázků. V kapitole 2 budou krátce popsány existující přístupy pro rozpoznávání tváří a především využití PCA k rozpoznávání tváří. Výstupem této metody jsou redukované vektory, jejichž vzdálenost (tedy podobnost původních obrázků) měříme pomocí metrik. Získané vektory můžeme tedy indexovat pomocí metrických datových struktur, jedna z těchto struktur M-strom je popsána v kapitole 3. V kapitole 4 je shrnut přístup pro efektivní vyhledávání ve velkých kolekcích obrázků. Kapitola 5 obsahuje výsledky experimentů provedených s použitím popisovaných přístupů. V závěru bude shrnut obsah článku a ukázány další možnosti budoucí práce. 2 Využití analýzy hlavních komponent pro rozpoznávání obrázků tváří 2.1 Rozpoznávání a detekce tváří Oblast detekce a rozpoznávání tváří [12] má za sebou mnohaletý vývoj, během kterého bylo vyvinuto mnoho přístupů. První přístupy se začaly objevovat již na počátku 70.let 20.století, jednalo se o jednoduché heuristické a antropometrické techniky. Tyto přístupy byly velmi závislé na podmínkách vzniku fotografie a často byly schopny pracovat pouze s typicky pasovými fotkami. Rozvoj této oblasti počítačových věd je datován na počátek 90.let 20.století. V [12] jsou přístupy pro detekci a rozpoznávání tváří rozděleny na přístupy založené na rysech tváře a přístupy založené na zpracování obrazu. Přístupy založené na rysech tváře Tyto přístupy byly často vyvinuty v raných dobách vývoje oblasti rozpoznávání tváří a proto existuje velké množství publikovaných článků. Využívají znalosti o obličeji a jeho rysech a aplikují různé metody pro získání těchto rysů, jako jsou např.
Vybraný příspěvek 3 nízko-úrovňová analýza provádějící segmentaci vizuálních rysů [6] či aktivní tvarové modely (tzv. snakes) [10]. Přístupy založené na zpracování obrazu Tyto přístupy chápou řešený problém jako obecný rozpoznávací problém (pattern recognition problem). Detekce obličeje pomocí přesného modelování rysů obličeje je nepředvídatelná právě kvůli možnému chování tváře a vlivu okolí (např. světlost, pozadí). Přístupy založené na zpracování obrazu často klasifikují tváře bez nutnosti hledání rysů a mohou tak řešit i složitější problémy, jako je např. detekce více tváří v silně nečistém prostředí. Mezi tyto přístupy patří např. vyhledávání šablon (template matching) [13], lineární podprostorové metody či neuronové sítě. Lineární podprostorové metody chápou kolekci obrázků tváří jako vektory podprostoru v prostoru všech obrázků, což umožňuje aplikovat rozmanité algebraické metody jako jsou analýza hlavních komponent (PCA) či analýza lineárních diskriminantů (LDA). 2.2 Analýza hlavních komponent V [19] je popsána metoda využívající analýzu hlavních komponent [14] k efektivní reprezentaci lidské tváře. Autoři v [23,24,15] popisují použití PCA pro rozpoznávání a detekci obrázků tváří, na tomto přístupu je založeno velmi mnoho později publikovaných technik pro rozpoznávání a detekci tváří. Pro zpracování velkých kolekcí dat je důležité, že tato metoda vykonává automatizovanou extrakci rysů. Získané vektory je potom možné využít pro vyhledávání ve velkých kolekcích dat s využitím vícerozměrných datových struktur (viz kapitola 3). Nechť je obrázek velikosti w h 2-rozměrné pole intenzit I(x,y), n-rozměrný vektor obrázku Γ (n = w h) můžeme vytvořit položením jednotlivých řádků obrázku za sebe. Kolekce obrázků je tak modelována jako množina bodů ve vysocedimenzionálním prostoru. Obrázky tváří jsou si ovšem podobné a proto nejsou náhodně distribuovány v tomto prostoru. Hlavní myšlenkou PCA (také Karhunen- Loeve expanze) je nalézt vektory, které nejlépe popisují distribuci obrázků tváří v celém prostoru obrázků. Tyto vektory dimenze n definují podprostor, který nazýváme prostor obrázků tváří (face space) a jsou lineární kombinací původních vektorů. Protože tyto vektory jsou vlastní vektory kovarianční matice korespondující k původním obrázkům a protože jsou podobné obrázkům tváří, nazýváme je eigenfaces (pozn. pojem vlastní tváře je nevhodný, proto budeme dále používat pojmu anglického). Podobnost redukovaných obrázků měříme Euklidovskou metrikou. Nechť máme kolekci obrázků Γ 1,Γ 2,...,Γ m. Průměrný obrázek tváře je spočítán takto: m 1 Ψ = Γ (1) m i= 1 Na obrázku 1(a) vidíme testovací kolekci obrázků tváří a na obrázku 1(b) průměrný obrázek této kolekce. Vektory Φ i získáme odečtením průměrného obrázku Ψ od obrázku Γ i : Φ i = ( Γi Ψ ) (2) Takto získaná množina vektorů je vstupem do analýzy hlavních komponent, která hledá množinu n ortonormálních vektorů u i, které nejlépe popisují distribuci dat. i
4 Efektivní vyhledávání v kolekcích obrázků tváří Vektory u k a skaláry λ k jsou vlastní vektory (též hlavní komponenty) resp. vlastní čísla kovarianční matice: 1 C = m m T 1 T Φ iφ i = AA (3) m i= 1 (a) (b) Obr. 1. (a) Testovací kolekce obrázků tváří. (b) Průměrný obrázek tváře. Matice A=[Φ 1 Φ 2...Φ m ] je řádu n m (je tvořena sloupcovými n-rozměrnými vektory Φ i, 1 i m). Matice C je řádu n n. Autoři uvádí, že výpočet vlastních čísel takovéto matice je nezvládnutelný, proto v [23] popisují techniku jejich výpočtu pomocí lineární kombinace vektorů získaných řešením výpočtu vlastních čísel matice řádu m m. Autoři ovšem předpokládají m << n, tedy že počet obrázků je daleko menší než dimenze prostoru. V tom případě by byl tento přístup nepoužitelný pro indexování velkých kolekcí obrázků, pro které se dá naopak předpokládat m >> n. V současné době je však výpočet vlastních čísel a vektorů matice n n výpočetně řešitelný. Jelikož je ale takový výpočet náročný, je významné že existují numerické metody jako je např. Lancoszova metoda [9], které počítají postupně vlastní vektory příslušející k vlastním číslům dle jejich velikosti. Můžeme proto vypočítat pouze relevantní vlastní vektory. k, k n, vybraných vlastních vektorů (příslušejících ke k největším vlastním číslům) nazýváme eigenfaces, tyto vektory tvoří bázi redukovaného prostoru obrázků. Po jejich vytvoření se úloha identifikace tváře stává úlohou rozpoznávání vzorů. Pomocí těchto n-rozměrných vektorů můžeme redukovat původní n-dimenzionální prostor obrázků na prostor k-rozměrný. Počet eigenfaces (tedy hodnotu k) je možné heuristiky určit dle hodnot vlastních čísel, malá vlastní čísla přispívají málo k popisu odchylek mezi obrázky a příslušné vlastní vektory můžeme tudíž ignorovat. Na obrázku 2 vidíme ukázku 200 prvních eigenfaces kolekce o větším počtu obrázků. Eigenfaces nám reprezentují významné (tedy společné) rysy obrázků (v tomto případě tváří). Zároveň vidíme význam použití vlastních vektorů příslušejících
Vybraný příspěvek 5 k největším vlastním číslům ty nejlépe charakterizují zpracovávanou sadu obrázků. Pomocí eigenfaces jsme schopni redukovat původní n-rozměrný prostor na k- rozměrný promítnutím n-rozměrného vektoru Γ do prostoru obrázků tváří (jinými slovy transformovat jej do eigenfaces komponent) výpočtem k skalárů: ω = ( Γ Ψ ), i = 1, K k (4) u T i i, T Ω = ω ω Kω ] (5) [ 1 2 k Obr. 2. Ukázka eigenfaces uspořádaných dle velikosti příslušných vlastních čísel. T Ω je redukovaný k-rozměrný vektor, který je nazýván vektor tvaru vah. Vektor vyjadřuje příspěvek každého vlastního vektoru pro reprezentaci obrázku, vlastní vektory tedy tvoří základní množinu kolekce obrázků tváří. Takto získaný vektor použijeme pro nalezení tváře uložené v databázi (pokud taková existuje) výpočtem Euklidovské vzdálenosti promítnutého vektoru od všech projekcí vektorů obrázků z databáze (jejich počet je m): 2 2 ε = Ω Ω, i = 1, K m (6) i i, Tvář z databáze je identifikována pokud je hodnota ε i minimální a zároveň ε i < θ ε (zvolená prahová hodnota). Jelikož mnoho obrázků odlišných od obrázků tváří je promítnuto na stejný redukovaný vektor, je vhodné vypočítat i tzv. DFFS (distance from face space): 2 2 DFFS = Φ Φ r (7) k Φ = ω u (8) r i= 1 DFFS (též rekonstrukční chyba) tedy vyjadřuje vzdálenost mezi obrázkem a jeho projekcí do redukovaného prostoru, můžeme ji chápat též jako vzdálenost obrázku od redukovaného prostoru tváří. Zatímco vektor tvaru vah je aproximací, DFFS umožňuje přesně rozpoznávat obrázek tváře (vektor Φ r je neredukovaný). Obou hodnot (ε i i DFFS) využijeme při rozpoznávání tváří, mohou nastat tyto čtyři případy: 1. Nějaký obrázek z databáze je blízký (podobný) - hodnota ε i, rovněž prostor je blízký hodnota DFFS vstupní obrázek je obrázkem tváře a byl identifikován v databázi. 2. Žádný obrázek není podobný, ale prostor je blízký vstupní obrázek je obrázkem tváře, který není v databázi. i i
6 Efektivní vyhledávání v kolekcích obrázků tváří 3. Nějaký obrázek z databáze je podobný, ale prostor je vzdálený vstupní obrázek není obrázkem tváře. Vidíme jak se tato metoda umí vypořádat s chybně rozpoznanými obrázky. 4. Žádný obrázek není podobný, rovněž prostor je vzdálený. Pro rozpoznání obrázků tváří musíme stanovit prahové hodnoty θ DFFS a θ ε. Hodnota θ DFFS určuje maximální hodnotu DFFS pro kterou budeme považovat vstupní obrázek za obrázek tváře. Rozpoznání obrázků probíhá tak, že vypočteme vzdálenosti všech redukovaných vektorů obrázků v databázi od redukovaného dotazovacího vektoru. Pokud nalezená minimální vzdálenost < θ ε pak je vstupní obrázek identifikován. Pro velké kolekce dat je takovýto postup nerealizovatelný, v kapitole 4 prezentujeme přístup pro efektivní vyhledávání obrázků ve velkých kolekcích dat. Autoři v [15] uvádí použití vlastních vektorů významných rysů tváře jako jsou oči, nos a ústa (které jsou nazvány eigeneyes, eigennose a eigenmouth, dohromady pak eigenfeatures) k rozpoznávání tváří. V tomto případě jsou schopni dokonce rozpoznat obličej se změněnou mimikou, plnovousem atd. V [8] autoři popisují techniku detekce jednotlivých rysů obličeje založenou právě na eigenfeatures. Dalším využitím algebraických metod redukce je přirozeně i ztrátová komprese. 3 Indexování vícerozměrných prostorů Vícerozměrné datové struktury slouží pro indexování vícerozměrných prostorů [27]. Rozlišujeme datové struktury pro indexování vektorových a metrických prostorů. Zjednodušeně řečeno máme v případě vektorových prostorů k dispozici kompletní informaci o umístění bodu v prostoru (tedy jeho souřadnici), v případě metrických prostorů rozlišujme pouze vzdálenost (podobnost) bodů, kterou měříme metrikou. Příkladem struktur pro indexování vektorových prostorů je např. R-strom [11] a UBstrom [3], strukturou pro indexování metrických prostorů je např. M-strom [7]. Jelikož při rozpoznávání obrázků tváří využíváme Euklidovské metriky počítáme vzdálenosti vektorů obrázků, pro efektivní vyhledávání obrázků využíváme metrické datové struktury M-strom. 3.1 M-strom Datová struktura M-strom představená v [7], využívá pro indexování objektů vlastností metrických prostorů. Vnitřní strukturou je to perzistentní stránkovaný strom, podobně jako klasický B-strom [25]. Rozdíl spočívá v obsahu uzlů a listů stromu. Indexované objekty (ground objects) jsou uloženy v listech stromu, nelistové uzly obsahují tzv. směrovací objekty (routing objects). Záznam směrovacího objektu O r v uzlu obsahuje: indexovaný objekt O r, odkaz ptr(t(o r )) na svůj podstrom T(O r ) tzv. pokrývající strom (covering tree), hodnotu r(o r ) - tzv. pokrývací poloměr (covering radius), hodnotu d(o r,p(o r )) - vzdálenost od rodičovského směrovacího objektu P(O r ).
Vybraný příspěvek 7 Záznam ground objektu vypadá podobně, ovšem místo odkazu na pokrývající strom a poloměru obsahuje oid(o j ) identifikátor celého objektu uloženého mimo M- strom v datovém souboru. Princip hierarchie M-stromu spočívá v rozdělení prostoru do metrických regionů (ty nemusí být nutně disjunktní). K tomu slouží směrovací objekty a to tak, že všechny ground objekty, které obsahuje pokrývající strom T(O r ) směrovacího objektu O r, jsou ve vzdálenosti maximálně r(o r ) od O r. Na obrázku 3 je schématicky znázorněna struktura stromu a vztahy mezi směrovacími objekty (regiony). Obr. 3. (a) Struktura M-stromu. (b) Odpovídající dělení metrického prostoru. Při operacích nad M-stromem počítáme se dvěma faktory složitosti. Prvním je klasický počet přístupů na diskové stránky (resp. počet prohledávaných regionů), druhým je počet výpočtů vzdáleností mezi objekty, což může být výpočetně náročná operace. Snahou je oba tyto faktory minimalizovat. Zajímavou vlastností M-stromů je fakt, že jimi lze indexovat prakticky cokoliv na čem může být nadefinována metrika. Použití ovšem není úplně univerzální, uvědomme si například jaká bude efektivita vyhledávání, pokud budou všechny indexované objekty ležet stejně daleko od sebe. Obecnost M-stromů je vykoupena dosti složitým managementem štěpení a slučování regionů při základních operacích tak, aby zůstala zachována vysoká efektivita. V metrických stromech se setkáváme se dvěma typy rozsahových dotazů. Dotazy na vzdálenost vyhledají ty objekty, které leží do určité vzdálenosti od dotazovaného objektu. Dotazy na k-nejbližších sousedů (k-nn - k-near neighbours query) zase vyhledají k dotazovanému objektu k jeho nejbližších sousedů. Pro zlepšení vlastností M-stromu (optimalizace překryvů regionů atd.) využíváme vlastních algoritmů publikovaných v [20]. 4 Efektivní vyhledávání v kolekcích obrázků tváří Při rozpoznávání tváří autoři často prochází sekvenčně celou kolekci, popř. provádí jednoduché shlukování [22], které ovšem není hierarchizováno a nesnižuje tedy příliš složitost vyhledávání. V našem přístupu využíváme strukturu M-strom, která hierarchizuje shluky do stromové struktury a poskytuje tak v ideálním případě složitost vyhledávání blízkou logaritmické. Celý proces vyhledávání je následující: 1. Využíváme pouze kanonického tvaru tváře [22], která obsahuje pouze významné rysy tváře: oči, ústa a nos. Takto potlačujeme nesignifikantní informace, především vliv okolí. Zároveň snížíme rozlišení obrázku, např. konvolucí
8 Efektivní vyhledávání v kolekcích obrázků tváří s gausiánem [21], takto jsou potlačeny nevýznamné vazby mezi pixely. Každá tvář je pak reprezentována obrázkem o velikosti 20 20 pixelů. 2. Získané obrázky jsou podrobeny výše popsané metodě PCA. 3. Dle hodnot získaných vlastních čísel, je vybráno k vlastních vektorů. Původní 400-rozměrné vektory jsou transformovány na vektory k-rozměrné. Takto získané vektory jsou vloženy do datové struktury M-strom. 4. Vstupní obrázek je opět transformován na 400-rozměrný vektor a redukován. Pomocí hodnoty DFFS a prahové hodnoty θ DFFS nejprve zjistíme zda se jedná o obrázek tváře. Pokud ano, pomocí dotazu na jednoho nejbližšího souseda najdeme nejpodobnější obrázek tváře. Pokud je vzdálenost <θ ε, je tvář osoby ze vstupního obrázku identifikována v databázi. 5 Výsledky experimentů Experimenty byly provedeny s databází 230 obrázků tváří. Obrázky byly podrobeny metodě PCA. Pro výpočet kovarianční matice je významné, že rozdílová matice A je sice hustá, ale obsahuje asi 0.1% nulových hodnot. Kovarianční matice C je hustá. Výpočet 400 vlastních čísel kovarianční matice 400 400 trval 3s (testováno na počítači Intel Pentium 4 2.4GHz, 512MB operační paměti). Testovací obrázky jsou prezentovány na obrázku 4. V případě obrázku (a), který není obrázkem tváře, získáme pro 90 vybraných vlastních vektorů náležících k největším vlastním číslům (k=90) hodnotu DFFS = 1407.3. V případě obrázků (b) a (c) získáme hodnoty 919.7 resp. 837.14. Nastavením prahové hodnoty θ DFFS např. na hodnotu 1100.0 odhalíme, že obrázek (a) není obrázkem tváře. Redukované vektory byly vloženy do datové struktury M-strom, jejíž charakteristiku vidíme v tabulace 1. (a) (b) (c) Obr. 4. Dotazovací obrázky. Počet diskových přístupů a operací výpočtu metriky naměřených při vykonávání dotazů 4(b) a (c) je prezentován na obrázku 5. Počet diskových přístupů i počet operací v závislosti na dimenzi redukovaného prostoru (tedy počtu vybraných vlastních vektorů) je porovnáván se sekvenčním průchodem kolekcí. Pro každou dimenzi byl znovu vytvořen M-strom. Pro dotazovací obrázek 4(b), který je uložen v databázi, vidíme že počet diskových přístupů a operací při dotazu na 1 nejbližšího souseda je v porovnání se sekvenčním průchodem až 4 resp. 10 nižší. Tab. 1. Charakteristika vytvořeného M-stromu. dimenze: 50 100 velikost uzlu [B]: 1572 2972 utilizace: 62.4% 67.9% velikost položky [B]: 220 420 arita: 7
Vybraný příspěvek 9 Nyní vezměme dotazovací obrázek 4(c), který je obrázkem osoby uložené v databázi, ale je mírně otočen. Metoda PCA je schopna nalezením závislostí mezi pixely rozpoznat i takové obrázky. Při velké redukci prostoru dostaneme jako nejbližšího souseda chybný vektor (tzv. špatný výběr). V tomto případě dostaneme správný výsledek pro dotazovací obrázek 4(c) až pro k = 90. Realizace tohoto dotazu v případě větší redukce musí být provedena širším dotazem hledáním k nejbližších sousedů, kde k > 1. Pravou osobu pak můžeme identifikovat výpočtem vzdáleností neredukovaných vektorů Φ r z rovnice 7 takto získané množiny vektorů. Přílišná redukce prostoru nám tedy zhoršuje přesnost, na druhou stranu vzrůstající dimenze zhoršuje efektivitu vyhledávání v metrické datové struktuře (vliv tzv. prokletí dimensionality [27]). Musíme tedy volit kompromis významnou redukci prostoru, ale takovou abychom mohli použít dotaz na menší počet nejbližších sousedů. Ovšem z výsledků experimentů vidíme, že efektivita vyhledávání v metrické datové struktuře je jednoznačně lepší než při sekvenčním průchodu kolekcí. (a) (b) Obr. 5. (a) Počet diskových přístupů při vykonávání dotazů. (b) Počet operací výpočtu metriky při vykonávání dotazů. 6 Závěr V tomto článku byl prezentován přístup pro vyhledávání tváří ve velkých kolekcích obrázků. V oblasti zpracování obrazu vznikla celá řada technik pro rozpoznávání a detekci tváří. Použitá analýza hlavních komponent redukuje původní mnohorozměrný prostor obrázků. V článku byla navržena metoda využívající metrické datové struktury pro indexování takto získaných redukovaných vektorů. Z experimentů vidíme, že použití metrické datové struktury pro rozpoznávání obrázků tváří poskytuje velmi dobré složitosti v porovnání se sekvenčním průchodem. Analýza hlavních komponent poskytuje velmi smysluplnou extrakci rysů sady obrázků, která je částečně odolná proti vnějším vlivům jako je např. natočení obrázku. V budoucí práci bychom chtěli zdokonalit samotné rozpoznávání tváří a extrakci rysů. Nabízí se celá řada algebraických metod pro redukci dimenze, jako např. singulární rozklad (Singular Value Decomposition - SVD) [9]. Singulární rozklad je již používán v
10 Efektivní vyhledávání v kolekcích obrázků tváří information retrieval pro redukci prostoru textových dokumentů jako jedna z metod indexování latentní sémantiky (Latent Semantic Index - LSI) [4]. Využití singulárního rozkladu pro rozpoznávání obrázků bylo publikováno v [17]. V naší budoucí práci chceme především testovat popsaný přístup na velké kolekci obrázků tváří. Námi prezentovaný přístup využívající robustní perzistentní datovou strukturu M-strom je určen právě pro takové kolekce. Literatura 1. Ashbourn, J.: Biometrics, Advanced Identity Verification. Springer Verlag, New York, ISBN 1-85233-243-3, 2000. 2. Baeza-Yates, R., Ribeiro-Neto, B.: Modern Information Retrieval. Addison Wesley, New York, 1999. 3. Bayer, R.: The Universal B-Tree for multidimensional indexing: General Concepts. In: Proc. of World-Wide Computing and its Applications'97, WWCA'97, Tsukuba, Japan, 1997. 4. Berry, M.W., Browne, M.: Understanding Search Engines, Mathematical Modeling and Text Retrieval. Siam, 1999. 5. Böhm, C., Berchtold, S., Keim, D.A.: Searching in High-dimensional Spaces - Index Structures for Improving the Performance Of Multimedia Databases. ACM, 2002. 6. Brunelli, R., Poggio, T.: Face recognition: Feature versus templates. In: Proc. of IEEE Trans. Pattern Anal. Mach. Intell, 15, pages 1042 1052, 1993. 7. Ciaccia, P., Pattela, M., Zezula, P.: M-tree: An Efficient Access Method for Similarity Search in Metric Spaces. In: Proc. of 23rd International Conference on VLDB, Athens, Greece, pages 426 435,1997. 8. Demirel, H., Clarke, T. J., Cheung, P.J.K.: Adaptive automatic facial feature segmentation. In: Proc. 2nd International Conference on Automatic Face and Gesture Recognition, Vermont, pages 277 282, 1996. 9. Golub, G.H., Van Loan, C.F.: Matrix Computations. Johns Hopkins, 1996. 10. Gunn, S.R., Nixon, M.S.: A dual active contour for head and boundary extraction. In: Proc. IEEE Colloquium on Image Processing for Biometric Measurement, London, Great Britain, 1994. 11. Guttman, A.: R-Trees: A Dynamic Index Structure for Spatial Searching. In: Proc. of ACM SIGMOD 1984, Annual Meeting, Boston, USA, June 1984, pages 47 57, ACM Press. 12. Hjelmås, E., Low, B.K.: Face Detection: A Survey. Computer Vision and Image Understanding, Volume 83, Issue 3, pages 236 274, Elsevier Science, 2001. 13. Holst, G.: Face detection by facets: Combined bottom-up and top-down search using compound templates. In: Proc. of the 2000 International Conference on Image Processing, pages TA07.08, 2000. 14. Hyvärinen, A., Karhunen, J., Oja, E.: Independent Component Analysis. Wiley- Interscience, ISBN 047140540X, 2001.
Vybraný příspěvek 11 15. Pentland, A., Moghaddam, B., Starner, T.: View-based and Modular Eigenspaces for Face Recognition. In: Proc. of IEEE Conference on Computer Vision and Pattern Recognition (CVPR'94), Seattle, WA, June, 1994. 16. Pokorný, J., Snášel, V., Húsek, D.: Dokumentografické informační systémy. Karolinum, Praha, 1998. 17. Praks, P., Dvorský, J., Snášel, V.: Latent Semantic Indexing for Image Retrieval Systems. In: Proc. SIAM Conference on Applied Linear Algebra 2003, LA'03. Williamsburg, USA, The College of William and Mary, 2003. 18. Salton, G., McGill, M.J.: Introduction to Modern Information Retrieval. McGraw Hill Publications, 1st edition, 1983. 19. Sirovich L., Kirby, M.: Low-dimensional procedure for the characterization of human faces. Journal of Optical Society of America, pages 519 524, 1987. 20. Skopal, T. Pokorný, J., Krátký, M., Snášel, V.: Revisiting M-tree Building Principles. In: Proc. of Advances in Databases and Information Systems, ADBIS 2003, 7th East European Conference, Dresden, Germany, Springer Verlag, 2003. 21. Sojka, E.: Digitální zpracování obrazu a analýza obrazu a počítačového vidění. VŠB-Technická univerzita Ostrava, 2000. 22. Sung, K.K., Poggio, T.: Example-Based Learning for View-Based Human Face Detection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 20(1), pages 39 51, 1998. 23. Turk, M., Pentland, A.: Eigenfaces for recognition. Journal of Cognitive Neuroscience Volume 3, Number 1. pages 71 86, 1991. 24. Turk, M., Pentland, A.: Face recognition using eigenfaces. In: Proc. IEEE Conference on Computer Vision and Pattern Recognition, Maui, Hawaii, 1991. 25. Wirth, N.: Algorithms and Data Structures. Prentice Hall, 1984. 26. Witten, I.H., Moffat, A., Bell, T.C.: Managing Gigabytes, Compressing and Indexing Documents and Images. Van Nostrand Reinhold, New York, USA, 1994. 27. Yu, C.: High-Dimensional Indexing. Springer Verlag, LNCS 2341, 2002. Annotation: Efficient Searching in Face Collections A problem of storage and efficient searching in large multimedia document collections is solved in information retrieval. In the paper we present an approach for efficient searching in face image collections. The approach uses the principal component analysis for face recognition, which reduces original face space and provides useful feature extraction. Acquired vectors are inserted into M-tree metric data structure and the faces are searched with better complexity than linear. So the approach is suitable for efficient searching in large face collections.