Efektivní vyhledávání v kolekcích obrázků tváří



Podobné dokumenty
Geometrické indexování a dotazování multimediálních dat

Metrické indexování vektorových modelů v oblasti information retrieval

Využití LSI a M-stromu při indexování a vyhledávání obrázků

Vícerozměrný přístup pro netriviální vyhledávání termů

Využití SVD pro indexování latentní sémantiky

Datové struktury. Zuzana Majdišová

Prohledávání dokumentů ve vektorovém modelu

Stromové struktury v relační databázi

Fakulta chemicko-technologická Katedra analytické chemie. 3.2 Metody s latentními proměnnými a klasifikační metody

Odečítání pozadí a sledování lidí z nehybné kamery. Ondřej Šerý

Návrh a implementace algoritmů pro adaptivní řízení průmyslových robotů

Úloha - rozpoznávání číslic

Klasifikační metody pro genetická data: regularizace a robustnost

SIFT: Scale Invariant Feature Transform Automatické nalezení korespondencí mezi dvojicí obrázků

Klasifikace a rozpoznávání. Extrakce příznaků

Datové struktury 2: Rozptylovací tabulky

Text Mining: SAS Enterprise Miner versus Teragram. Petr Berka, Tomáš Kliegr VŠE Praha

Úlohy nejmenších čtverců

Modely vyhledávání informací 4 podle technologie. 1) Booleovský model. George Boole Aplikace booleovské logiky

Singulární rozklad aplikace v image deblurring

Numerické metody a programování

Robust 2014, ledna 2014, Jetřichovice

Zpracování digitalizovaného obrazu (ZDO) - Popisy III

Umělá inteligence a rozpoznávání

Extrakce a selekce příznaků

1 Linearní prostory nad komplexními čísly

Statistické modely tvaru a vzhledu

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Profilování vzorků heroinu s využitím vícerozměrné statistické analýzy

KMA/PDB. Karel Janečka. Tvorba materiálů byla podpořena z prostředků projektu FRVŠ č. F0584/2011/F1d

Dolování dat z multimediálních databází. Ing. Igor Szöke Speech group ÚPGM, FIT, VUT

k-dimenzionálním prostoru. problém: Zkonstruovat strom, který rozděluje prostor polorovinami

Rozpoznávání v obraze

Numerické metody a programování. Lekce 4

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí:

NAIL072 ROZPOZNÁVÁNÍ VZORŮ

1 Projekce a projektory

Strojové učení se zaměřením na vliv vstupních dat

TSO NEBO A INVARIANTNÍ ROZPOZNÁVACÍ SYSTÉMY

Vojtěch Franc Centrum strojového vnímání, Katedra kybernetiky, FEL ČVUT v Praze Eyedea Recognition s.r.o MLMU

Úvodem Dříve les než stromy 3 Operace s maticemi

Databázové a informační systémy Jana Šarmanová

SIMULACE OBRAZOVÉHO KODÉRU NA BÁZI 3D KLT

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

Michal Krátký. Tvorba informačních systémů, 2008/2009. Katedra informatiky VŠB Technická univerzita Ostrava. Tvorba informačních systémů

APROXIMACE KŘIVEK V MATLABU NEWTONŮV INTERPOLAČNÍ POLYNOM CURVE FITTING IN MATLAB NEWTON INTERPOLATION POLYNOMIAL

Využití metod strojového učení v bioinformatice David Hoksza

Vizualizace v Information Retrieval

ELIMINACE VLIVU DRUHÉ ROTACE PŘI AFINNĚ INVARIANTNÍM 2D ROZPOZNÁVÁNÍ

Vědecký tutoriál, část I. A Tutorial. Vilém Vychodil (Univerzita Palackého v Olomouci)

Michal Krátký, Miroslav Beneš

Tvorba informačních systémů

Binární vyhledávací stromy pokročilé partie

Univerzita Pardubice 8. licenční studium chemometrie

ANALÝZA A KLASIFIKACE BIOMEDICÍNSKÝCH DAT. Institut biostatistiky a analýz

Strojové učení Marta Vomlelová

11 Analýza hlavních komponet

SVD rozklad a pseudoinverse

Michal Krátký. Úvod do programování. Cíl kurzu. Podmínky získání zápočtu III/III

13 Barvy a úpravy rastrového

ZPRACOVÁNÍ OBRAZU PRO VYHODNOCENÍ SEGREGACE DRÁTŮ

Datové struktury pro prostorové vyhledávání

Ing. Václav Eksler Ústav telekomunikací FEKT VUT v Brně

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.

Přednáška 13 Redukce dimenzionality

Databázové a informační systémy

Bezpečnostní seminář BIG DATA, Policejní akademie ČR v Praze

VYHLEDÁNÍ NEJDELŠÍHO SHODNÉHO PREFIXU V FPGA

POKROČILÉ POUŽITÍ DATABÁZÍ

Kybernetika a umělá inteligence, cvičení 10/11

0.1 Úvod do lineární algebry

SHLUKOVÁNÍ A TEXTOVÉ DOKUMENTY

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:

Aplikace obrazové fúze pro hledání vad

Převedení okrajové úlohy na sled

MODEL VÁRKOVÉ LINKY NA VÝROBU CHLORIDU ŽELEZNATÉHO PRO FARMACEUTICKÉ ÚČELY. Vladimír Hanta

METODY DOLOVÁNÍ V DATECH DATOVÉ SKLADY TEREZA HYNČICOVÁ H2IGE1

Arnoldiho a Lanczosova metoda

Marta Vomlelová

Algoritmy a struktury neuropočítačů ASN P9 SVM Support vector machines Support vector networks (Algoritmus podpůrných vektorů)

Moderní systémy pro získávání znalostí z informací a dat

Vlastní čísla a vlastní vektory

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.

Vícerozměrné metody. PSY117/454 Statistická analýza dat v psychologii Přednáška 12. Schematický úvod

Návrh na zahájení habilitačního řízení Ing. Radima Bači, Ph.D. v oboru Informatika na FEI VŠB-TU Ostrava

Unstructured data pre-processing using Snowball language

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky

Image search: kde slova nestačí Petra Budíková, ÚVT a FI MU

Formální konceptuální analýza

Klasická a robustní ortogonální regrese mezi složkami kompozice

odlehlých hodnot pomocí algoritmu k-means

Metody analýzy dat I. Míry a metriky - pokračování

Státnice odborné č. 20

Ing. Petr Hájek, Ph.D. Podpora přednášky kurzu Aplikace umělé inteligence

Informační systémy 2008/2009. Radim Farana. Obsah. Obsah předmětu. Požadavky kreditového systému. Relační datový model, Architektury databází

AVDAT Mnohorozměrné metody metody redukce dimenze

Transformace obrazu Josef Pelikán KSVI MFF UK Praha

Hierarchický model Josef Pelikán CGG MFF UK Praha. 1 / 16

Cvičná bakalářská zkouška, 1. varianta

Využití RPS pro potlačování šumu v řečových signálech

Transkript:

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.