Statistické modely tvaru a vzhledu

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

2D transformací. červen Odvození transformačního klíče vybraných 2D transformací Metody vyrovnání... 2

Přednáška 13 Redukce dimenzionality

VI. Derivace složené funkce.

7. Derivace složené funkce. Budeme uvažovat složenou funkci F = f(g), kde některá z jejich součástí

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

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.

Matematika I 12a Euklidovská geometrie

Geometrické transformace pomocí matic

Klasifikace a rozpoznávání. Lineární klasifikátory

1. Náhodný vektor (X, Y ) má diskrétní rozdělení s pravděpodobnostní funkcí p, kde. p(x, y) = a(x + y + 1), x, y {0, 1, 2}.

ANALÝZA A KLASIFIKACE DAT

Lineární zobrazení. 1. A(x y) = A(x) A(y) (vlastnost aditivity) 2. A(α x) = α A(x) (vlastnost homogenity)

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

CVIČNÝ TEST 15. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 15 IV. Záznamový list 17

11 Analýza hlavních komponet

Regresní analýza 1. Regresní analýza

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ

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

1 Projekce a projektory

1 Tyto materiály byly vytvořeny za pomoci grantu FRVŠ číslo 1145/2004.

Odhad parametrů N(µ, σ 2 )

AVDAT Mnohorozměrné metody, metody klasifikace

Rovinné přetvoření. Posunutí (translace) TEORIE K M2A+ULA

0.1 Úvod do lineární algebry

ANALYTICKÁ GEOMETRIE LINEÁRNÍCH ÚTVARŮ V ROVINĚ

Aplikovaná numerická matematika

Obecný Hookeův zákon a rovinná napjatost

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Eva Fišerová a Karel Hron. Katedra matematické analýzy a aplikací matematiky Přírodovědecká fakulta Univerzity Palackého v Olomouci.

3. Vícevrstvé dopředné sítě

AVDAT Nelineární regresní model

Numerická stabilita algoritmů

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

2.5 Rovnováha rovinné soustavy sil

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci

Vlastní čísla a vlastní vektory

Poznámka. V některých literaturách se pro označení vektoru také používá symbolu u.

14. přednáška. Přímka

Globální matice konstrukce

příkladů do cvičení. V textu se objeví i pár detailů, které jsem nestihl (na které jsem zapomněl) a(b u) = (ab) u, u + ( u) = 0 = ( u) + u.

III. MKP vlastní kmitání

Numerické metody a programování. Lekce 8

l, l 2, l 3, l 4, ω 21 = konst. Proved te kinematické řešení zadaného čtyřkloubového mechanismu, tj. analyticky

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

, = , = , = , = Pokud primitivní funkci pro proměnnou nevidíme, pomůžeme si v tuto chvíli jednoduchou substitucí = +2 +1, =2 1 = 1 2 1

Nejdřív spočítáme jeden příklad na variaci konstant pro lineární diferenciální rovnici 2. řádu s kostantními koeficienty. y + y = 4 sin t.

1. Přednáška. Ing. Miroslav Šulai, MBA

PRAVDĚPODOBNOST A STATISTIKA

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

4EK213 LINEÁRNÍ MODELY

1. července 2010

Afinní transformace Stručnější verze

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

5. cvičení z Matematiky 2

Pravděpodobnost v závislosti na proměnné x je zde modelován pomocí logistického modelu. exp x. x x x. log 1

19 Eukleidovský bodový prostor

aneb jiný úhel pohledu na prvák

A[a 1 ; a 2 ; a 3 ] souřadnice bodu A v kartézské soustavě souřadnic O xyz

PRAVDĚPODOBNOST A STATISTIKA

Úvod do vícerozměrných metod. Statistické metody a zpracování dat. Faktorová a komponentní analýza (Úvod do vícerozměrných metod)

Numerické metody a programování. Lekce 4

Regresní a korelační analýza

PRAVDĚPODOBNOST A STATISTIKA

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

Optimální rozdělující nadplocha 4. Support vector machine. Adaboost.

Filip Hroch. Astronomické pozorování. Filip Hroch. Výpočet polohy planety. Drahové elementy. Soustava souřadnic. Pohyb po elipse

vyjádřete ve tvaru lineární kombinace čtverců (lineární kombinace druhých mocnin). Rozhodněte o definitnosti kvadratické formy κ(x).

7. Analýza rozptylu.

a vlastních vektorů Příklad: Stanovte taková čísla λ, pro která má homogenní soustava Av = λv nenulové (A λ i I) v = 0.

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

= = 2368

0.1 Úvod do lineární algebry

Derivace funkcí více proměnných

VÍCEKRITERIÁLNÍ ROZHODOVANÍ

Základy navrhování průmyslových experimentů DOE

Value at Risk. Karolína Maňáková

CVIČNÝ TEST 19. OBSAH I. Cvičný test 2. Mgr. Kateřina Nováková. II. Autorské řešení 5 III. Klíč 13 IV. Záznamový list 15

Statika. fn,n+1 F = N n,n+1

Učební texty k státní bakalářské zkoušce Matematika Skalární součin. študenti MFF 15. augusta 2008

Statistické metody a zpracování dat. IX Faktorová a komponentní analýza (Úvod do vícerozměrných metod) Petr Dobrovolný

CVIČNÝ TEST 5. OBSAH I. Cvičný test 2. Mgr. Václav Zemek. II. Autorské řešení 6 III. Klíč 17 IV. Záznamový list 19

Parametry hledáme tak, aby součet čtverců odchylek byl minimální. Řešením podle teorie je =

OPTIMALIZACE. (přehled metod)

CVIČNÝ TEST 51. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 15 IV. Záznamový list 17

4. Statika základní pojmy a základy rovnováhy sil

Numerické řešení diferenciálních rovnic

LINEÁRNÍ MODELY. Zdeňka Veselá

Lineární algebra : Metrická geometrie

3.2. ANALYTICKÁ GEOMETRIE ROVINY

Bézierovy křivky Bohumír Bastl KMA/GPM Geometrické a počítačové modelování Bézierovy křivky GPM 1 / 26

Numerické metody a programování

9.5. Soustavy diferenciálních rovnic

ALGEBRA. Téma 5: Vektorové prostory

Faktorová analýza (FACT)

6 Ordinální informace o kritériích

Metody lineární optimalizace Simplexová metoda. Distribuční úlohy

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

Matematika I, část I. Rovnici (1) nazýváme vektorovou rovnicí roviny ABC. Rovina ABC prochází bodem A a říkáme, že má zaměření u, v. X=A+r.u+s.

Transkript:

Kapitola 1 Statistické modely tvaru a vzhledu V této kapitole nastíním problematiku statistických modelů tvaru, jejich využití a metod potřebných pro jejich výpočet a použití. Existují dvě hlavní metody; Active Shape Model, který využívá pouze informaci o tvaru objektu, a Active Appearance model, který přidává navíc informaci o textuře objektu. 1.1 Statistické modely tvaru Statistické modely tvaru se využívají k reprezentaci objektů v obrázcích. Statistická analýza se aplikuje na data reprezentující určitý tvar za účelem nalezení a vytvoření jeho modelu. 1.1.1 Významné body Existuje více možností jak reprezentovat tvar. Pro účely statistických modelů tvaru je dobré použít významných bodů, které jsou dobře odlišitelné od okolí a vyskytují se ve všech obrazech z trénovací množiny. Příkladem takovýchto bodů je konec prstu nebo koutek úst. Na souřadnicích těchto bodů lze provádět statistickou analýzu. Tvar objektu pak dostaneme vhodným propojením bodů. Takovýto tvar je velmi hrubý a lze ho tedy doplnit i méně významnými body ležícími mezi body významnými, reprezentující například hrany objektu (Obrázek 1.1). Pro zjištění vzájemné závislosti mezi pohybem jednotlivých bodů využijeme Analýzy hlavních komponent. 1.1.2 Analýza hlavních komponent Analýza hlavních komponent (Principal Component Analysis, dále jen PCA) slouží k dekorelaci dat a je často využívána k redukci dimenze dat s možností ovlivnění množství ztracené informace. Jedná se v podstatě o ortogonální transformaci množiny pozorování na soubor lineárně nezávislých proměnných. Transformace je definována tak, že vektory prvků s největší variancí jsou první. PCA je možné vypočítat několika různými způsoby. 1

Obrázek 1.1: Významné body Jedním z nejpoužívanějších je metoda kovariance. Před vlastním výpočtem seřadíme data jednotlivých měření do řádkových vektorů a vytvoříme matici, kde každý řádek reprezentuje konkrétní měření. C(i, j) = (x i µ i )(x j µ j ) T (1.1) Prvky kovarianční matice C vypočteme podle vzorce 1.1, kde x i a x j jsou i-tý a j-tý vektor dat a µ je příslušná střední hodnota. Z kovarianční matice vypočteme použitím dostupného algoritmu matici vlastních vektorů Φ a vlastní čísla. Velikost vlastních čísel udává významnost příslušných vlastních vektorů. Pokud vydělíme vlastní čísla jejich celkovým součtem, dostaneme jejich procentuální hodnotu. Díky tomu můžeme redukovat počet vlastních vektorů takovým způsobem, kdy zachováme například 99% rozptylu dat (je zvykem zachovávat 95% či 99%). Procentuální hodnoty vlastních čísel pak sčítáme dokud nedostaneme požadovanou hodnotu a ostatní vlastní čísla a k nim náležící vektory vypustíme. Obrázek 1.2: PCA [1] Samotná PCA byla vymyšlena v roce 1901 anglickým matematikem Karlem Pearsonem. Nyní se používá především pro účely průzkumné analýzy dat a pro prediktivní modely. Její nespornou výhodou je její šetrnost k relativnímu měřítku souboru dat. Jedná se také o jednu z nejjednodušších vícerozměrných analýz vlastních vektorů. 2

1.1.3 Lineární diskriminační analýza Lineární diskriminační analýza (Linear discriminant analysis, dále jen LDA) je jednou z metod mnoharozměrné statistické analýzy a slouží k nalezení lineární kombinace příznaků, kterými lze charakterizovat daný soubor dat. LDA se opětovně používá k redukci dimenze dat. LDA se, na rozdíl od PCA, která se snaží nalézt podprostor tak, aby jeho základní vektory odpovídali směrům s největší variancí v původním prostoru (ty které nejlépe popisují množinu dat), snaží nalézt takové vektory, které nejlépe diskriminují jednotlivé třídy (viz obrázek 1.3). LDA je hojně využívána při úlohách typu face recognition a to pro redukci velikosti příznakového vektoru. Obrázek 1.3: PCA vs LDA 1.1.4 Lineární model tvaru Výpočet tvaru probíhá podle vzorce 1.2. x = x + Φb (1.2) Φ je matice vlastních vektorů trénovacích dat tvaru, x je střední hodnota trénovacích 3

dat tvaru, b je vektor parametrů modelu a x je vypočtený tvar. Z tohoto vzorce vyplývá, že výsledný tvar může být měněn pomocí změny parametrů modelu b. 1.1.5 Nasazení modelu do nových bodů Pozice bodů modelu v obraze není určena pouze parametry modelu b, ale také translací po osách x a y, rotací θ a mírou s. Pokud shrneme všechny tyto parametry do jedné funkce T dostaneme rovnici modelu ve tvaru x = T Xt,Y t,s,θ(x + Φb) (1.3) Pro dva body x a y si lze transformační funkci představit takto ( ) ( ) ( ) ( ) x Xt s cos θ s sin θ x T Xt,Yt,s,θ = + y s sin θ s cos θ y Y t (1.4) Pokud nyní chceme najít takové parametry b, pomocí kterých vypočteme tvar x odpovídající požadovaným bodům v obraze Y, minimalizujeme vlastně výraz Tento postup se dá vyjádřit iterativním procesem: 1. Nastavení parametrů b = 0 2. Výpočet tvaru z rovnice modelu x = x + Φb Y T Xt,Y t,s,θ(x + Φb) 2 (1.5) 3. Nalezení parametrů (X t, Y t, s, θ), které nejlépe mapují x do bodů Y 4. Promítnutí bodů Y do souřadné soustavy 5. Aktualizace parametrů modelu y = T 1 X t,y t,s,θ (Y ) (1.6) b = Φ T (y x) (1.7) 6. Pokud se parametry b výrazně liší od původních návrat na krok 2. Zastavovací podmínka v posledním bodě se realizuje porovnáním nových hodnot a hodnot z předchozího kroku. Rozdíl se uvažuje v předem zvolené přesnosti. Pokud je v této přesnosti rozdíl nulový, algoritmus se zastaví. 4

1.2 Statistické modely vzhledu K vytvoření kompletního obrazu objektu nestačí pouze informace o jeho tvaru, ale je třeba také modelovat texturu v oblasti ohraničené tvarem. V této kapitole bude vysvětleno, jak lze vytvořit statistický model reprezentující jak tvar, tak texturu objektu. Texturou je zde myšlen soubor intenzit reprezentující barvy v obraze. K vytvoření modelu jsou potřeba trénovací obrazy s vyznačenými významnými body. Z dostupných dat můžeme po výpočtu střední hodnoty tvaru vytvořit warpováním(1.2.1) tvarově nezávislou texturu z každého trénovacího obrazu. Na tyto textury lze aplikovat PCA(1.1.2) podobně jako u modelů tvaru. Předpokladem je, že existuje závislost mezi tvarem a příslušnou texturou a lze tedy vytvořit kombinovaný model tvaru a textury. 1.2.1 Warpování obrazů Warpování obrazů označuje mapování textury jednoho objektu na jiný objekt. Dochází tedy ke změně tvaru původní textury na tvar požadovaný. Nejjednodušším způsobem warpování je triangulace souřadnic. Oba objekty nejdříve rozdělíme na stejný počet trojúhelníků. Pro každý trojúhelník cílového objektu najdeme příslušný trojúhelník výchozího objektu. Pro každý bod cílového trojúhelníku najdeme příslušný bod výchozího trojúhelníku. Tímto způsobem, kdy hledáme příslušný bod pro každý bod cílového tvaru, nevznikne situace, kdy by zůstal některý bod prázdný. Při hledání souřadnic využíváme toho, že poloha bodu v trojúhelníku se dá vyjádřit pomocí souřadnic jeho vrcholů. [ ] [ ] [ ] [ ] x x1 x2 x3 = α + β + γ (1.8) y y 1 V této rovnici jsou x 1,x 2 a x 3 vrcholy trojúhelníku a x je souřadnice bodu vyjádřená pomocí těchto vrcholů. Parametry α,β a γ vypočteme z rovnic: y 2 y 3 α = 1 (β + γ) (1.9) β = yx 3 yx 1 x 3 y 1 xy 3 + x 1 y 3 + xy 1 x 2 y 3 + x 2 y 1 + x 1 y 3 + x 3 y 2 x 3 y 1 x 1 y 2 (1.10) γ = xy 2 xy 1 x 1 y 2 yx 2 + x 2 y 1 + yx 1 x 2 y 3 + x 2 y 1 + x 1 y 3 + x 3 y 2 x 3 y 1 x 1 y 2 (1.11) x a y jsou souřadnice cílového bodu a x i a y i jsou souřadnice vrcholů cílového trojúhelníku. Souřadnice hledaného bodu získáme dosazením vrcholů výchozího trojúhelníku do rovnice 1.8. 5

1.2.2 Lineární model textury Aplikací PCA na nawarpované textury můžeme podobně jako u modelu tvaru vytvořit lineární model textury. g = g + Φ g b g (1.12) Φ g je matice vlastních vektorů trénovacích dat textury, g je střední hodnota trénovacích dat textury, b g je vektor parametrů modelu textury a g je vypočtená textura. 1.2.3 Kombinovaný model K vytvoření kombinovaného modelu musíme nejdříve zjistit závislost mezi parametry modelu tvaru a textury. Pro každý trénovací obraz provedeme zpětný výpočet příslušných parametrů. Výsledné parametry seřadíme do vektorů a provedeme na nich PCA. ( ) ( Ws b s Ws Φ T ) s (x x) b = = Φ T g (g g) b g (1.13) b je vektor parametrů složený z parametrů modelu textury b g a parametrů modelu tvaru b s. W s je váhová matice sloužící k usměrnění parametrů modelu tvaru tak, aby je bylo možné dát do jednoho vektoru s parametry modelu textury (souřadnice vs. pixely). Jednoduchý způsob výpočtu této matice je W s = ri, kde r 2 je poměr absolutní variance intenzit v texturách ku absolutní varianci souřadnic tvarů. Φ s a Φ g jsou vlastní vektory kovariančních matic trénovacích dat tvaru a textury. x jsou skutečné souřadnice pro daný obraz, x je střední hodnota trénovacích dat tvaru. g je tvarově nezávislá textura příslušného obrazu a g je střední hodnota trénovacích dat textury. Po provedení PCA lze stanovit kombinovaný model jako b = Φ c c (1.14) P c jsou vlastní vektory kovarianční matice parametrů obou modelů a c je vektor parametrů kombinovaného modelu. Pomocí parametrů c lze tedy kontrolovat jak tvar tak texturu vypočítaného objektu. Jelikož je model lineární, lze vyjádřit jak tvar tak texturu přímo pomocí parametrů c x = x + Φ s W s 1 Φ cs c (1.15) kde g = g + Φ g Φ cg c (1.16) Φ c = ( Φcs Φ cg ) (1.17) 6

1.3 Active Shape Model Active Shape Model, dále jen ASM, je statistická metoda modelů tvarů, které se iterativně deformují za účelem nalezení nelepší shody v pozorovaném obraze. Předpokládejme, že na počátku je dostupný hrubý odhad polohy hledaného objektu v obraze. V takovémto případě můžeme najít model, který bude možné nasadit na hledaný objekt. Pomocí rovnice 1.3 můžeme vytvořit instanci modelu X, definováním pozice, rotace a míry. K vylepšení přesnosti nasazení využijeme následující iterativní postup: 1. Prozkoumáme okolí každého bodu X i a najdeme nejlepší možný bod X i, kam by se měl bod X i přesunout 2. Aktualizujeme parametry (X t, Y t, s, θ, b), tak aby co nejlépe seděli na nové body X 3. Opakujeme proces dokud nedokonverguje k řešení V praxi hledáme vhodné body k přesunu na normálách hran vypočteného tvaru procházejících významnými body. Nejlepším způsobem jak zjistit, který bod je nejvhodnější, je získat tuto informaci z množiny trénovacích dat. Jednoduše lze tento problém řešit vytvořením statistického modelu profilů v jednotlivých bodech. 1.3.1 Modelování profilů V každém bodě navzorkujeme v obou směrech k hodnot pixelů ležících na normále hrany tvaru. Dostaneme tedy 2k + 1 vzorků z nichž vytvoříme vektor g. K potlačení vlivu osvětlení v obraze uvažujeme pouze změnu intenzity vůči bodu k + 1. Zopakujeme tento proces pro každý bod v každém trénovacím obraze. Pro každý bod pak můžeme vypočíst střední hodnotu profilu g a kovarianci S g. Kvalita nasazení nového profilu g s, na model profilu se pak vypočte jako Mahalanobisova vzdálenost f(g s ) = (g s g) T S 1 g (g s g) (1.18) Během hledání navzorkujeme v aktuálním bodě m hodnot pixelů(m > k). Pro každý bod 2(m k) + 1 vypočteme kvalitu nasazení a místo kde dostaneme nejmenší hodnotu (největší shodu) zvolíme jako nový bod. Proces se opakuje, dokud nedostaneme lepší souřadnice pro každý bod tvaru. Poté aplikujeme jednu iteraci algoritmu uvedeného v sekci 1.1.5. 1.4 Active Appearance Model Active Appearance model, dále jen AAM, vychází z ASM, ale navíc pracuje s informací o textuře objektu. V této sekci popíši algoritmus, který generuje obrázek co nejpodobnější cílovému obrázku. Předpokladem je opět rozumně zvolená startovací pozice. 7

1.4.1 Vyhledávání v AAM K určení správnosti vyhledávání potřebujeme stanovit kritérium kvality nasazení modelu na skutečný tvar. Toto kritérium lze jednoduše definovat jako vektor rozdílů δi = I i I m (1.19) kde I i je vektor intenzit obrazu a I m je vektor intenzit textury vytvořené ze současných parametrů modelu. K nalezení nejlepší shody chceme minimalizovat velikost = δi 2 změnou parametrů modelu c. Vzhledem k velkému počtu parametrů se toto může zdát jako složitá úloha, ale lze si všimnout, že každý pokus o nasazení instance modelu do obrazu je v podstatě stejná optimalizační úloha. Natrénováním informace o tom jak se mají pro různé δi změnit parametry modelu c můžeme dostat časově efektivní algoritmus vyhledávání. 1.4.2 Natrénování úprav parametrů modelu Rozdíl mezi námi vygenerovanou texturou a texturou nacházející se v obraze se dá vyjádřit jako r(p) = g s g m (1.20) kde p je vektor parametrů p T = (c T t T ). c je vektor parametrů kombinovaného modelu a t je vektor parametrů rotace, translace a míry. Taylorovým rozvojem prvního řádu rovnice 1.20 dostaneme r(p + δp) = r(p) + r δp (1.21) p Při hledání nejlepší pozice máme k dispozici residuum r. Chceme získat δp takové, aby minimalizovalo výraz r(p + δp) 2. Položením rovnice 1.21 rovné nule dostaneme δp = Rr(p) kde R = ( r p T r p T r ) 1 p (1.22) Při standartní optimalizaci by bylo nutné pokaždé přepočítat r. Nicméně předpokládáme, p že trénovací data jsou normalizována a lze tedy tuto informaci natrénovat z jejich množiny. Při trénování systematicky odchylujeme jednotlivé parametry p od jejich známých optimálních hodnot a počítáme pro každou odchylku residuum r. Matici R pak vypočteme jako R = r(p) 1 δp (1.23) 8

1.4.3 Řešení optimalizačního problému g s Z počátečních parametrů c 0 vytvoříme na startovní pozici instanci modelu s texturou Výpočet chybového vektoru δg 0 = g s g m Výpočet chyby E 0 = δg 0 2 Výpočet odchylky nových parametrů, δc = Rδg 0 Nastavení k = 1 c 1 = c 0 kδc Vytvoření instance modelu pomocí parametrů c 1, výpočet nového chybového vektoru δg 1 a chyby E 1 Když je E 1 < E 0 přijmeme c 1 jako nové parametry modelu V jiném případě zkoušíme k = 1.5, k = 0.5, k = 0.25 atd 9

Literatura [1] Matthias, S.. Approaches to analyse and interpret biological profile data, POTSDAM UNIVERSITY, 2006, Potsdam, Germany [2] Cootes, T. F. and Taylor, C. J.. Statistical Models of Appearance for Computer Vision, Manchester, 2004. [3] Aleix, M.. PCA versus LDA, IEEE, 1999. 10