PRACA DOKTORSKA Metoda automatycznej autentykacji osób
Transkrypt
PRACA DOKTORSKA Metoda automatycznej autentykacji osób
Politechnika Częstochowska Wydział Inżynierii Mechanicznej i Informatyki Instytut Informatyki Teoretycznej i Stosowanej Mgr inż. Szymon Rydzek PRACA DOKTORSKA Metoda automatycznej autentykacji osób oparta na pomiarze charakterystyk asymetrii oczu i/lub ust Promotor Prof. dr hab. inż. Leonid Kompanets Częstochowa, 2007 Spis treści 1. Sformułowanie problemu rozpoznawania osób na bazie charakterystyk asymetrii frontalnego obrazu twarzy 3 1.1. Przegląd analityczny biometrycznych metod rozpoznawania twarzy . . . . . 3 1.2. Cel i teza pracy, bronione rozwiązania naukowe . . . . . . . . . . . . . . . . 23 2. Szkic metody EM-Asym.Auth autentykacji osób na bazie charakterystyk asymetrii oczu i/lub ust 24 2.1. Wymagania funkcjonalne do metody EM-Asym.Auth . . . . . . . . . . . . . 24 2.2. Idea pomiaru i kodowania charakterystyk asymetrii oczu i ust . . . . . . . . 27 3. Opracowanie funkcjonalnych procedur-składników metody 30 3.1. Procedura automatycznej lokalizacji twarzy z wstępnym wyznaczeniem położenia oczu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3.2. Algorytmy automatycznej ekstrakcji charakterystyk oczu i ust (LM, ILP, RGBG, RGBG-CSM ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.3. Konstruowanie wektora charakterystyk twarzy i kalibracja parametrów . . . 50 4. Opracowanie systemu programowego EM-Asym.Auth 4.1. Specyfikacja systemu EM-Asym.Auth 60 . . . . . . . . . . . . . . . . . . . . . 60 4.2. Przykłady funkcjonowania systemu w trybach ekstrakcji charakterystyk i symulacji procesu autentykacji . . . . . . . . . . . . . . . . . . . . . . . . . . 64 5. Eksperymentalne oszacowanie błędów automatycznej autentykacji osób 73 5.1. Specyfika baz twarzy FaDAB (Politechnika Częstochowska) i AR-Face Database (CVC, Universitat Autònoma de Barcelona) . . . . . . . . . . . . . 73 5.2. Analiza skuteczności metody za pomocą systemu EM-Asym.Auth . . . . . . 75 1 Wnioski końcowe 88 Literatura 90 Dodatek 98 Summary 103 2 1. Sformułowanie problemu rozpoznawania osób na bazie charakterystyk asymetrii frontalnego obrazu twarzy Omówiono zagadnienia i problemy związane z rozpoznawaniem twarzy. Scharakteryzowano etapy procesu rozpoznawania osób na podstawie obrazu twarzy oraz omówiono specyfikę wykorzystania informacji o asymetrii w zagadnieniu rozpoznawania twarzy. Przedstawiono przegląd metod rozpoznawania twarzy. 1.1. Przegląd analityczny biometrycznych metod rozpoznawania twarzy Istnieje wiele wysoko skutecznych metod identyfikacji użytkownika w oparciu o charakterystyki biometryczne takie jak: odciski linii papilarnych, charakterystyki siatkówki czy tęczówki, geometrię dłoni i inne, jednak metody te zwykle należą do grupy metod inwazyjnych co oznacza, że w celu poprawnego wydobycia charakterystyk konieczna jest współpraca osoby testowanej. Systemy rozpoznawania twarzy (FR – Face Recognition) znajdują szerokie możliwości zastosowań w systemach kontroli dostępu, głównie ze względu na bezinwazyjność - nie wymagają interakcji, a nawet proces rozpoznawania może odbywać się bez wiedzy osoby poddawanej testowi. W zależności od przeznaczenia wśród systemów FR można wyróżnić aplikacje realizujące proces identyfikacji lub autentykacji. W pierwszym przypadku system nie zna a priori tożsamości osoby badanej i jego zadaniem jest ustalenie jej na podstawie dostępnej bazy. W tym przypadku zachodzi relacja typu jeden do wielu co oznacza, że wśród charakterystyk przechowywanych w bazie poszukiwana jest najbardziej zbliżona (wg. ustalonych kryteriów) do pochodzącej z obrazu wejściowego. W przypadku autentykacji system ma za zadanie zweryfikować czy charakterystyki osoby podającej określoną tożsamość są zgodne z tymi w bazie danych, które są przyporządkowane dla sprawdzanej tożsamości (relacja jeden do jednego). 3 Zdolność postrzegania twarzy przez człowieka jest rutynowym zadaniem ludzkiego systemu percepcji, jednakże budowa systemu komputerowego o podobnej efektywności ciągle leży w dziedzinie badan naukowych. Pomimo zainteresowania specjalistów wielu dziedzin (przetwarzanie i rozpoznawanie obrazów, sztuczne sieci neuronowe [23], problematyki interakcji człowieka i komputera [62], psychologii [22], [17], [25]) jak dotąd nie udało się skonstruować systemu równie wydajnego co ludzki umysł. Problem rozpoznawania twarzy sformułowano jako: dany jest nieruchomy obraz bądź sekwencja wideo zawierająca wizerunki jednej lub wielu twarzy, należy odnaleźć w obrazie twarze oraz, w oparciu o przechowywaną bazę, zidentyfikować (lub przeprowadzić autentykację) jednej lub wielu osób [92]. Pierwsze publikacje dotyczące rozpoznawania twarzy w kontekście psychologicznym powstały w latach pięćdziesiątych ubiegłego wieku [11] natomiast w literaturze technicznej w latach sześćdziesiątych [6]. Zagadnienie rozpoznawania stanów emocjonalnych na podstawie wyrazu twarzy poruszył Darwin w 1972 roku [16]. Badania nad problemem automatycznego rozpoznawania twarzy rozpoczęto w 1970 roku [28], [30]. W ciągu ostatnich piętnastu lat badania skoncentrowano się na budowie w pełni automatycznego systemu rozpoznawania twarzy łączącego metody lokalizacji twarzy w danym obrazie bądź sekwencji wideo oraz ekstrakcji charakterystyk twarzy takich jak rozmiar i kształt oczu, ust, nosa czy sylwetki twarzy. Znaczące postępy osiągnięto w badaniach nad rozpoznawaniem twarzy z wykorzystaniem klasyfikatorów holistycznych. Wysoka skuteczność metod eigenfaces [31], [78] oraz fisherfaces [4], [20], [90] została potwierdzona badaniami w oparciu o obszerne bazy twarzy. Efektywną realizację metody opartej na strukturalnym opisie charakterystyk przedstawiono w [83]. W porównaniu z podejściem holistycznym analiza cech twarzy jest mniej wrażliwa na takie czynniki jak zmiany oświetlenia, zmiany perspektywy z jakiej obrazowana jest twarz czy niedokładności procesu lokalizacji twarzy w obrazie. Można wyróżnić dwa typy przetwarzania obrazu w metodach rozpoznawania twarzy: podejście holistyczne oraz bazujące na strukturalnej analizie cech twarzy (feature–based approach). Podejście holistyczne jest najstarszą technologicznie spośród technik identyfikacji twarzy i jest ono oparte na globalnej reprezentacji twarzy, twarz nie jest traktowana jako suma poszczególnych elementów (np. eigenfaces). W przypadku technik typu feature– based analizie poddawane są indywidualne cechy (oczy, nos, usta oraz obszary gdzie ulega zmianie krzywizna kości - np. broda). 4 W procesie projektowania systemu rozpoznawania twarzy należy uwzględnić istotne zagadnienia związane z procesem rozpoznawania twarzy przez człowieka [92]. Rozpoznawanie twarzy jako proces specjalizowany W badaniach wykazano, że proces rozpoznawania twarzy jest zadaniem odmiennym od rozpoznawania innych obiektów, tezę tą potwierdzono wynikami eksperymentów [19]: twarze przedstawiane w pozycji frontalnej są łatwiej zapamiętywane niż inne obiekty; Pacjenci cierpiący na prosopagnozję (szczególny przypadek agnozji - niemożność rozpoznania dobrze znanych twarzy, w tym własnej) potrafią stwierdzić czy dany obiekt jest twarzą czy nie, natomiast osoby mogą być rozpoznawane tylko na podstawie charakterystycznych cech np. koloru włosów czy ubrania. W odróżnieniu od identyfikacji innych obiektów, w przypadku twarzy wyróżniono kilka czynników mających istotny wpływ na proces rozpoznawania: – charakterystyczne cechy opisywalne werbalnie, – wrażliwość na zmiany kontrastu, oraz jasności oświetlenia (odpowiednik problemu zmienności oświetlenia w przypadku rozpoznawania przez komputer), – różnice skali (problem normalizacji rozmiaru obrazu), – obrót w trzech wymiarach (problem zmienności pozycji rozpoznawanej twarzy), – obrót w płaszczyźnie (pochylenie twarzy, odbicie lustrzane). Pomimo różnic w procesach rozpoznawania twarzy oraz innych obiektów przez człowieka, w przypadku systemu komputerowego istnieje możliwość użycia tego samego schematu kodowania charakterystyk dla twarzy co dla klasy obiektów o podobnych własnościach. Natura holistyczna i szczegółowa procesu postrzegania twarzy Stwierdzono, że zarówno informacje holistyczne jak również o cechach są istotne dla poprawnego wyniku rozpoznania twarzy. Badania nad rozpoznawaniem twarzy wykazały, iż ludzie szybko skupiają uwagę na cechach nietypowych jak duże uszy, krzywy nos czy duże oczy [92]. Twarz wyróżniająca się w ten sposób jest znacznie łatwiej zapamiętywana. Na tej podstawie można stwierdzić, że indywidualne cechy są istotne w procesie rozpoznawania. Na korzyść podejścia holistycznego przemawiają wyniki eksperymentu zaprezentowane w [2]. W doświadczeniu tym wykorzystano efekt “Tatcher” (Tatcher Illusion) - obraz twarzy został poddany przekształceniu poprzez wycięcie i odwrócenie w pionie obszarów ust, lewego oraz prawego oka. Po takim przekształceniu otrzymano nienaturalnie wygląda- 5 jący portret, gdy jednak oba obrazy (przed i po transformacji) obrócono w pionie różnica między nimi była prawie niezauważalna. Stopień wpływu poszczególnych cech na wynik procesu rozpoznawania twarzy Włosy, kształt twarzy, oczy oraz usta zostały uznane za cechy mające największy wpływ na proces postrzegania i zapamiętywania twarzy [67], natomiast nos jest cechą najmniej znaczącą (taki stan rzeczy ma miejsce w przypadku rozpoznawania twarzy przedstawionej frontalnie lub z półprofilu, w przypadku profilu kształt nosa jest dominującą cechą) [10]. Wykazano również, że w przypadku prezentowanych wcześniej nieznanych twarzy cechy “zewnętrzne” i “wewnętrzne” są tak samo ważne, natomiast w przypadku twarzy łatwo rozpoznawanych (np. znanych osób) większą role odgrywają cechy “wewnętrzne”. Ponadto stwierdzono, że największe znaczenie w procesie rozpoznawania ma górna część twarzy [67]. Prowadzono także badania nad wpływem walorów estetycznych takich jak atrakcyjność, piękno czy miła aparycja. Z eksperymentów tych wyciągnięto wnioski, iż najłatwiej są rozpoznawane twarze najbardziej atrakcyjne, nieco mniej skutecznie twarze zaliczane do najmniej atrakcyjnych, natomiast najtrudniej twarze o przeciętnych walorach [92]. Na podstawie powyższych stwierdzeń można dojść do następujących wniosków: – Twarze o charakterystycznych cechach są łatwiej zapamiętywane oraz lepiej rozpoznawane niż twarze typowe; – Proces rozpoznawania twarzy różni się od rozpoznawania innych obiektów; – Zakłócenia w postaci niejednorodnego oświetlenia, oraz przekształceń obrazu mają znaczący wpływ na poprawność rozpoznawania; – Najlepszym rozwiązaniem byłoby zaprojektowanie systemu hybrydowego, poddającego analizie holistycznej obraz twarzy, z którego niemożliwe było wydobycie indywidualnych charakterystyk. W procesie rozpoznawania twarzy wyróżniono trzy podstawowe etapy: detekcję twarzy w obrazie (etap ten może również obejmować wstępną obróbkę obrazu oraz normalizację obszaru twarzy); ekstrakcję charakterystyk twarzy; identyfikację twarzy na podstawie dostępnej bazy. W wielu przypadkach etapy te nie są całkowicie oddzielone – proces detekcji twarzy jest często połączony z procesem wyodrębnienia opisu cech twarzy, lub charakterystyki (jak oczy, nos i usta) są używane do realizacji procesu detekcji twarzy (template-based 6 face detection). W dalszej części rozdziału przedstawiono przegląd dostępnych metod realizacji poszczególnych etapów. Detekcja twarzy w obrazie Najczęściej stosowanymi technikami detekcji twarzy w obrazie są metody bazujące na analizie koloru (skin-like color detection). W metodach tych obraz wejściowy reprezentowany jest w określonej przestrzeni barw, w której klasyfikator podejmuje decyzję czy określony piksel obrazu ma być sklasyfikowany jako należący do obszaru twarzy czy nie. W modelu RGB na każdy piksel obrazu składają się trzy wartości określające intensywność każdej z trzech barw – czerwonej, zielonej i niebieskiej. Przestrzeń ta stanowi najprostszą formę reprezentacji obrazu bazującą na idei uzyskiwania określonych kolorów poprzez mieszanie barw podstawowych. Za pomocą przekształcenia r= R G B , g= , b= R+G+B R+G+B R+G+B (1.1) zdefiniowano znormalizowaną przestrzeń RGB. Ponieważ r + g + b = 1, trzeci komponent jest często pomijany, a używane są tylko r i g. Taka reprezentacja barw posiada godną uwagi własność odporności na zmiany orientacji matowych powierzchni względem źródła światła [69]. Przestrzeń HSI, HSV, HSL – Hue, Saturation, Intensity (Value, Lightness) opisuje barwę za pomocą trzech intuicyjnych wartości. Komponent H (Hue – odcień) definiuje dominujący kolor danego obszaru, S (Saturation – nasycenie) określa stopień nasycenia barwy obszaru, I(V, L) (Intensity, Value, Lightness – intensywność) jest miarą luminancji (jasności) [79]. Ideą tego modelu jest możliwość wyodrębnienia odmiennych cech obrazu – barwy, nasycenia i jasności, co umożliwia przetwarzanie np. w kryterium barwy i nasycenia a niezależnie od jasności. Konwersję z przestrzeni RGB do HSI opisują poniższe zależności. I = 1 3 · (R + G + B) S = 1− min(R,G,B) I H = arc cos √ 1 ((R−G)+(R−B)) 2 ((R−G)2 +(R−B)(G−B)) 7 (1.2) Przestrzeń YCrCb oparta jest na idei zapisu barw RGB w postaci ważonej sumy składowych R, G i B (składowa Y , nazywana również luma – charakteryzuje luminancję) oraz dwóch różnic wartości R, B i luminancji Y . Y = 0.299 · R + 0.587 · G + 0.114 · B Cr = R − Y (1.3) Cb = B − Y Łatwość transformacji oraz jawne wydzielenie składowych luminancji (Y ) i chrominancji (Cr i Cb) powoduje, że przestrzeń ta jest bardzo użyteczna do celów modelowania koloru skóry [1], [79], [40]. W metodach typu skin-like color detection określa się klasyfikatory jako jawnie zdefiniowane granice klas kolorów skóry w pewnej przestrzeni barw. W [59] piksel w przestrzeni RGB jest zaliczany do klasy kolorów skóry jeśli spełnia następujące warunki: R > 95 i G > 40 i b > 20 i max{R, G, B} − min{R, G, B} > 15 i (1.4) |R − G| > 15 i R > G i R > B Wadą takiej definicji klasy kolorów skóry jest podatność na zmieniające się warunki oświetleniowe, jednak przy założeniu funkcjonowania systemu przy stałym oświetleniu klasyfikatory tego typu charakteryzują się dużą skutecznością i prostotą realizacji. Techniki segmentacji k-means i rozrostu obszaru (region growing) zostały omówione w pracy [57]. Autor eksperymentalnie zbadał wpływ parametrów początkowych oraz ilości iteracji techniki k-means na otrzymane rezultaty. Przedstawiono szczegółowy opis dwóch wersji metody rozrostu obszru – półautomatyczną z wyborem ziaren, oraz automatyczną bez wyboru ziaren (rozrost regionu przez agregację pikseli). Zaprezentowane wyniki dowodzą, że algorytm segmentacji może być odporny na wpływ zakłóceń w postaci cieni występujących w obrazie, przy zachowaniu zalety łatwości praktycznej implementacji tej klasy algorytmów. Autor zwrócił uwagę, że do realizacji konkretnych zagadnień istnieje konieczność doboru określonej przestrzeni barw oraz techniki segmentacji, żadne z dostępnych podejść nie jest rozwiązaniem uniwersalnym. Główną ideą metod modelowania nieparametrycznego jest oszacowanie rozkładu koloru skóry na podstawie zestawu uczącego bez jawnego definiowania klasy barw. Rezultatem 8 działania tych metod jest utworzenie mapy prawdopodobieństwa (SPM – Skin Probability Map), w której każdemu punktowi zdyskretyzowanej przestrzeni barw przyporządkowuje się wartość prawdopodobieństwa przynależności do klasy kolorów skóry [7]. W wielu algorytmach detekcji oraz śledzenia twarzy w celu segmentacji kolorów wykorzystano analizę histogramu [88], [12], [66], [68]. W takim podejściu przestrzeń barw (zazwyczaj tylko w zakresie chrominancji) jest kwantyzowana na pewną liczbę przedziałów a każdemu z nich odpowiadają określone zakresy wartości par komponentów przestrzeni. W ten sposób zostaje utworzony dwuwymiarowy histogram, a dla każdego z tych przedziałów przyporządkowana jest liczba wystąpień określonego koloru w zestawie uczącym – tworzona jest tablica LUT (Look-Up Table). Po zakończeniu procesu uczenia histogram jest normalizowany w celu uzyskania dyskretnego rozkładu prawdopodobieństwa: Pskin (c) = skin[c] Norm (1.5) gdzie skin[c] jest wartością histogramu dla przedziału odpowiadającego kolorowi c natomiast Norm oznacza współczynnik normalizacji – największą wartość dla wszystkich przedziałów histogramu [88], bądź sumę wartości wszystkich przedziałów [27]. Wartość Pskin (c) można również zapisać jako P (c |skin) – jest to prawdopodobieństwo zaobserwowania koloru c wiedząc, że dany piksel należy do obszaru skóry. Znormalizowane wartości tablicy LUT określają stopień podobieństwa danej barwy do koloru skóry. W przypadku klasyfikatora Bayes’a zastosowano bardziej odpowiednią dla potrzeb detekcji twarzy miarę niż (1.5) – prawdopodobieństwo zaobserwowania koloru należącego do obszaru skóry dla danej wartości obserwowanej barwy otrzymane przy wykorzystaniu reguły Bayes’a [79]: P (skin |c) = P (c |skin) · P (skin) P (c |skin) · P (skin) + P (c |¬skin) · P (¬skin) (1.6) gdzie P (c |skin) i P (c |¬skin) są wyznaczane bezpośrednio z histogramów zgodnie z (1.5). Prawdopodobieństwa P (skin) i P (¬skin) mogą być wyznaczone z calości próbek zawierających obraz skóry i nie-skóry w zestawie uczącym [27], [88]. Jako reguła decyzyjna zaklasyfikowania danej barwy do obszaru skóry może być użyta nierówność P (skin |c) Θ gdzie Θ stanowi wartość progową [27]. W realizacji zadań detekcji twarzy znajdują również zastosowanie sztuczne sieci neuronowe (Artificial Neural Networks), a jednym z najczęściej stosowanych typów jest SOM 9 (Self Organizing Map) zaproponowana przez Kohonena w latach osiemdziesiątych ubiegłego wieku. Sieć SOM jako detektor obszarów skóry został zaproponowany w [9]. Zaprojektowaną sieć trenowano zestawem 500 obrazów, a testowano zarówno przy użyciu zestawu uczącego/testującego autorów jak również bazy obrazów skóry Compaq [27]. Przeprowadzone testy przy użyciu kilku przestrzeni barw wykazały, że zastosowanie określonej przestrzeni nie ma znaczącego wpływu na wydajność klasyfikatora. Autorzy opracowania podkreślili, że metody detekcji obszarów skóry oparte na SOM mogą być wydajnie zaimplementowane w systemach czasu rzeczywistego ze względu na powszechność sprzętowych realizacji sieci SOM (rozważono wykorzystanie procesora równoległego AXEON wykonującego 1 milion klasyfikacji na sekundę). W pracy [82] udowodniono że zagadnienie klasyfikacji obrazów kolorowych można efektywnie zrealizować przy wykorzystaniu sieci neuronowych w połączeniu z logiką rozmytą przy reprezentacji barw w przestrzeni CIE. Obraz kolorowy przekształcany był w zbiór rozmyty przy wykorzystaniu trójkąta chromatyczności CIE ze zdefiniowanymi funkcjami przynależności rozmywającymi wyróżnione obszary barwne. Następnie otrzymany zbiór rozmyty był klasyfikowany do określonej klasy przy wykorzystaniu systemu wnioskującego zbudowanego na bazie systemu rozmytego, sieci neuronowej i systemu rozmytoneuronowego. Wnioskowanie można prowadzić jedną z wybranych metod lub kilku metodami równolegle. Działanie systemu zweryfikowany przy wykorzystaniu dwóch zestawów testowych. Pierwszy składał sie z 12 jednobarwnych obrazów stanowiących wzorce klas oraz 38 wielobarwnych próbek. W skład drugiego zestawu jako wzorce 12 klas włączono obrazy płytek wzorcowych ASTM (używanych do oceny korodującego działania produktów naftowych na metale) oraz 25 wielobarwnych obrazów próbek. Metody nieparametryczne mają dwie podstawowe zalety: są szybkie zarówno w procesie uczenia jak i weryfikacji; teoretycznie są niezależne od kształtu rozkładu kolorów skóry (co nie jest prawdą w przypadku jawnie zdefiniowanego przedziału kolorów oraz metod parametrycznych). Do wad tej klasy metod należą wymagania pamięciowe oraz brak zdolności interpolacji czy uogólniania danych uczących. Rozważając przestrzeń RGB kwantyzowaną z rozdzielczością 8 bitów dla każdej barwy, dla przechowania prawdopodobieństw SPM potrzebna jest tablica 224 elementów. W celu zredukowania wymagań pamięciowych w przestrzeni barw stosuje się próbkowanie z większym przedziałem: 128×128×128 (poziomów na składową RGB), 64×64×64 lub 32×32×32 [79]. W [27] dowiedziono, że najlepszą wydajność zapewnia próbkowanie z rozdzielczością 32×32×32. 10 Nieparametryczne metody modelowania rozkładu kolorów bazujące na analizie histogramu wymagają znacznej przestrzeni do przechowywania parametrów uzyskanych w procesie uczenia, a ich efektywność bezpośrednio zależy od doboru zestawu uczącego. Metody należące do klasy modelowania parametrycznego posiadają zdolność uogólnienia i interpolacji danych pochodzących z zestawu uczącego [79]. Rozkład barw skóry może być modelowany za pomocą eliptycznej Gaussowskiej funkcji gęstości prawdopodobieństwa (pdf – probability density function) zdefiniowanej jako: p(c |skin) = 1 1 2π |Σs | 1 2 T · e− 2 (c−µs ) −1 s (c−µs ) (1.7) gdzie c jest wektorem koloru, a µs i Σs są parametrami rozkładu (odpowiednio wektorem wartości średnich i macierzą kowariancji). Parametry rozkładu są wyznaczane z zestawu uczącego zgodnie z zależnościami: µs = n 1 cj ; n j=1 Σs = n 1 (cj − µs )(cj − µs )T n − 1 j=1 (1.8) gdzie n jest całkowitą liczbą próbek koloru skóry cj . Prawdopodobieństwo p(c |skin) może być bezpośrednio użyte jako miara podobieństwa wektora koloru c do koloru skóry [49]. W [72] zaproponowano miarę Mahalanobis odległości wektora koloru c od wektora wartości średnich µs daną wzorem: λs (c) = (c − µs )T Σ−1 s (c − µs ) (1.9) Jeżeli macierz kowariancji Σs będzie macierzą jednostkową to miara ta przyjmie postać odległości Euklidesowej. Modelowanie za pomocą pojedynczego rozkładu Gaussa zostało również wykorzystane w [26], [65], [85]. W modelu, w którym wykorzystano złożenie dystrybucji Gaussa funkcja pdf przyjmuje postać: p(c |skin) = k πi · pi (c |skin) (1.10) i=1 gdzie: k jest liczbą komponentów składowych, πi – parametry złożenia, pi (c |skin) – Gaussowskimi funkcjami pdf (każda ze swoim wektorem wartości średnich i macierzą kowariancji). Trening takiego modelu przeprowadzany jest przy wykorzystaniu techniki iteracyjnej Expectation Maximization (EM), przy znanej liczbie k komponentów składowych. Szcze- 11 góły treningu modelu złożonych dystrybucji Gaussa przy wykorzystaniu algorytmu EM można odnaleźć w [86], [72]. Klasyfikacja w tym modelu odbywa się poprzez porównanie wartości p(c |skin) z pewną, ustaloną wartością progową. Duże znaczenie ma właściwy dobór liczby komponentów (k) tak aby uzyskać kompromis pomiędzy wydajnością a skutecznością systemu. Liczba komponentów używanych w pracach badawczych różni się znacząco – od k = 1 w [86] do k = 16 w [27]. W opracowaniu [72] uznano wartość k = 8 jako “dobry kompromis pomiędzy dokładnością oszacowania dystrybucji a obciążeniem obliczeniowym”. Przybliżenie klasy kolorów skóry przy użyciu trójwymiarowego rozkładu Gaussa w przestrzeni YCbCr przedstawiono w [61]. Trening w tym modelu przeprowadzono przy wykorzystaniu odmiany algorytmu analizy skupień k-means dla grup rozkładów Gaussa (kmeans clustering algorithm). Piksel klasyfikuje się jako należący do obszaru skóry jeśli odległość Mahalanobis pomiędzy wektorem koloru c a środkiem najbliższego rozkładu Gaussa osiąga wartość poniżej ustalonego progu. W pracy [42] przeanalizowano rozkłady kolorów należących oraz nienależących do obszaru skóry oraz wyciągnięto wniosek, że rozkład kolorów zaliczanych do obszaru skóry, który w przybliżeniu przyjmuje kształt elipsy nie jest wystarczająco dobrze aproksymowany poprzez rozkład Gaussa. Ze względu na asymetrię rozkładu kolorów skóry użycie symetrycznego modelu Gaussa prowadzi do dużej liczby fałszywych klasyfikacji (FP – False Positives). Zaproponowano eliptyczny model granic, który jest porównywalny w prostocie implementacji i szybkości procesu treningu z, zarówno pojedynczym, jak i złożonym modelem rozkładu Gaussa oraz osiąga znacznie lepsze wyniki w badaniach przeprowadzonych na bazie Compaq [27], [79]. Eliptyczny model granic zdefiniowano jako: Φ(c) = (c − φ)T Λ−1 (c − φ) (1.11) Procedura treningu w tym modelu odbywa się w dwóch etapach: przetwarzanie wstępne – do 5% próbek kolorów o niskiej częstotliwości zostaje usuniętych w celu eliminacji zakłóceń; oszacowanie parametrów modelu wg. zależności: φ= n 1 ci ; n i=1 Λ= n 1 fi · (ci − µ)(ci − µ)T ; N i=1 (1.12) µ= 1 N n i=1 fi ci ; N= n i=1 12 fi gdzie: n – całkowita liczba wektorów kolorów ci w zestawie uczącym zawierającym kolory skóry, fi – liczba próbek koloru skóry zawierających wektor ci . Piksel koloru c klasyfikuje się jako należący do obszaru skóry jeśli Φ(c) < Θ przy czym Θ jest wartością progową. Większość metod parametrycznych operuje w dziedzinie chrominancji przestrzeni barw ignorując informacje o luminancji. Poprawność klasyfikacji w dużej mierze zależy od kształtu rozkładu, a więc od użytej przestrzeni barw. Zależność ta została udowodniona w pracach [72], [42], w których skuteczność modelu zmieniała się wraz ze zmianą przestrzeni barw. Autorzy niektórych prac umieścili teoretyczne uzasadnienie użycia danego modelu rozkładu barw w opracowanej metodzie. W [85] wykazano, że rozkład kolorów skóry jednej osoby, w niezmiennych warunkach oświetleniowych, przy reprezentacji obrazu w znormalizowanej przestrzeni RGB pokrywa się z rozkładem Gaussa. Yang i Ahuja w pracy [86] przy wykorzystaniu statystycznych testów Hawkinsa uzasadnili użycie złożonego (z k = 2 komponentów) modelu Gaussa w przestrzeni CIELuv do celu modelowania koloru skóry. W celu poprawnego oszacowania skuteczności metod detekcji twarzy (lub ogólnie – kolorów skóry) w obrazie należałoby porównać wyniki uzyskane w oparciu o tą samą bazę twarzy, jednak większość autorów testuje swoje metody na własnej, utworzonej w tym celu bazie. W tabeli 1.1 zestawiono wydajność niektórych napotkanych metod. Skuteczność metody opisują dwie wartości: TP (True Positives) – procent prawidłowych klasyfikacji; oraz FP (False Positives) – procent klasyfikacji niewłaściwych kolorów do grupy kolorów skóry (należy dążyć do maksymalizacji TP oraz ograniczenia FP). Najlepszą skuteczność osiągnięto dla realizacji Skin Probability Map z klasyfikatorem Bayesa, przy reprezentacji obrazu w przestrzeni barw RGB. W porównaniu z innymi metodami parametrycznymi, złożony model Gaussa [27] wykazuje się wysoką skutecznością. Wynika to z faktu modelowania funkcjami pdf zarówno p(RGB |skin) jak i p(RGB |¬skin) oraz użycia stosunkowo dużej liczby komponentów składowych (k = 16). Autorzy nie podali reguły z jakiej wyliczano prawdopodobieństwo, można się domyślać, iż użyto reguły Bayesa (1.6). Metoda ta stanowi więc odmianę SPM z klasyfikatorem Bayesa [79]. 13 Tabela 1.1. Zestawienie porównawcze skuteczności metod detekcji kolorów skóry (wyniki podane przez autorów) Metoda TP FP SPM z klasyfikatorem Bayesa w przestrzeni RGB [27] 90% 14.2% SPM z klasyfikatorem Bayesa w przestrzeni RGB [7] 93.4% 19.8% Złożony model Gaussa w przestrzeni RGB [27] 90% ∼15.5% SOM w przestrzeni TS [9] 78% 32% Eliptyczny model granic w przestrzeni CIE-xy [42] 90% 20.9% Pojedynczy rozkład Gaussa w przestrzeni CbCr [42] 90% 33.3% Wyodrębnienie charakterystyk twarzy Skuteczność zastosowanej metody ekstrakcji cech twarzy często decyduje o wydajności całego systemu rozpoznawania twarzy. Również w metodach należących do klasy holistycznych (np. Eigenfaces [78], Fisherfaces [3]) konieczne jest wyznaczenie kluczowych charakterystyk jak oczy, nos i usta w celu dokonania normalizacji odnalezionego obszaru twarzy [46], [84]. Wiele metod lokalizacji oczu i źrenic opracowano do zastosowania w systemach śledzenia kierunku wzroku (EGT – Eye Gaze Trackers). Do najdokładniejszych należą metody inwazyjne, które wymagają zastosowania specjalnych procedur lub urządzeń. W [64] zaproponowano użycie małej cewki umieszczonej wewnątrz soczewki kontaktowej ściśle przywierającej do źrenicy oka. Kierunek wzroku oszacowano na podstawie pomiaru napięcia wyindukowanego w cewce pod wpływem zewnętrznego pola magnetycznego. Metoda ta wymaga kosztownych urządzeń jednak stanowi najdokładniejsze rozwiązanie (rzędu 0.08◦ ). Inne metody związane są z pomiarem potencjału elektrycznego na powierzchni skóry – w pracy [29] przedstawiono system do komunikacji z komputerem za pomocą ruchu oczu. Dokładność tego systemu wyniosła około 2◦ . Opracowano również wiele metod bezinwazyjnych, aktywnych, w których obraz twarzy pozyskuje się na przykład oświetlając twarz światłem podczerwonym (promienie podczer- 14 wone o długości fali 880 nm są niewidzialne dla człowieka, a wykrywalne dla większości kamer), co powoduje zwiększenie kontrastu pomiędzy źrenicą a tęczówką [52]. Wyróżniono trzy grupy metod bezinwazyjnego wyodrębniania charakterystyk: bazujące na zagadnieniach przetwarzania obrazów jak detekcja krawędzi obszarów czy progowanie; oparte na wzorcach cech, w takim przypadku zdefiniowano np. wzorzec oka jako elipsę i okrąg; oraz strukturalne, w których istotną informacją są geometryczne zależności pomiędzy charakterystycznymi punktami twarzy. W starszych opracowaniach autorzy koncentrowali się na indywidualnych charakterystykach, na przykład w [24] zaproponowano metodę detekcji oczu we frontalnym obrazie twarzy w oparciu o zdefiniowany wzorzec oka. W pracy [87] przedstawiono realizację zagadnienia detekcji oczu i ust bazującą na dopasowaniu parametrycznych wzorców charakterystyk do obrazu twarzy. Dla dwóch wzorców zdefiniowano funkcję energii – zależność pomiędzy wartościami ekstremalnymi wykresu intensywności obrazu oraz odpowiadającymi im punktami we wzorcach. Następnie dążono do minimalizacji tej funkcji poprzez iteracyjne zmiany wartości parametrów, uzyskując najlepsze dopasowanie wzorców do obrazu. Podejścia bazujące na dopasowaniu wzorców w przypadku braku współpracy osoby poddawanej rozpoznawaniu mogą być podatne na znaczne zmiany wyglądu charakterystyk (problem powstaje gdy na przykład oczy są zamknięte). W celu zwiększenia niezawodności systemów FR zaproponowano metodę strukturalnego dopasowania wzorców [14] Active Shape Model (ASM – model aktywnego kształtu), która jest bardziej odporna na zmiany własności obrazu (np. jasności) oraz wyglądu charakterystyk (zamknięte oczy lub szeroko otwarte usta). W celu udoskonalenia ASM pod względem odporności na zmiany wyglądu powierzchni opracowano modele aktywnego wyglądu: Flexible Appearance Model (FAM) [41] oraz Active Appearance Model (AAM) [13]. AAM posiada zdolność oszacowania położenia charakterystyk, które mogą nie być widoczne w przypadku znacznej zmiany położenia głowy. Lokalizacja niewidocznych cech może być realizowana przy wykorzystaniu własności symetrii twarzy lub informacji nabytych przez system w procesie uczenia. W [15] zaproponowano rozwiązanie umożliwiające lokalizację cech twarzy nawet w przypadku obrazu profilu twarzy. Metoda ta stanowi połącznie narzędzia zdolnego do modelowania zmiennego kształtu (ASM) oraz modelu zmiennego wyglądu powierzchni ze znormalizowanym kształtem. Użyto zestawu uczącego składającego się z 400 obrazów twarzy, na każdym 15 oznaczono ręcznie 68 charakterystycznych punktów. Obrazy te próbkowano z rozdzielczością około 10000 wartości luminancji. Identyfikacja twarzy Opracowywane metody rozpoznawania twarzy można zaklasyfikować do jednej z trzech kategorii: 1. Metody holistyczne. Metody te oparte są na globalnej reprezentacji twarzy jako niepodzielnej całości. Region twarzy reprezentuje się najczęściej jako obrazy własne (eigenpictures [31]) bazujące na analizie głównych komponentów (PCA – Principal Component Analysis). 2. Metody bazujące na analizie cech (strukturalne). Z obrazu wyodrębniane są lokalne charakterystyki twarzy, których geometryczne zależności są następnie przekazywane do klasyfikatora strukturalnego. 3. Metody hybrydowe, w których do identyfikacji twarzy są używane zarówno informacje o lokalnych charakterystykach jak i o całym regionie twarzy. Metody tej kategorii pod względem funkcjonalnym są teoretycznie najbardziej zbliżone do ludzkiego systemu percepcji. Jedną z najpowszechniej wykorzystywanych metod holistycznych jest analiza głównych komponentów PCA. W [78] przedstawiono technikę lokalizacji i identyfikacji twarzy przy wykorzystaniu obrazów własnych (eigenpictures lub eigenfaces). Każdą twarz w bazie reprezentowano jako wektor wag uzyskanych w wyniku operacji iloczynu (projekcji) obrazu z komponentami twarzy własnych. W trybie rozpoznawania nowa twarz była reprezentowana przy pomocy wektora wag, a następnie odnajdowano w bazie obraz, którego wektor był najbardziej zbliżony do badanego. Własność różnicy pomiędzy wynikami projekcji obrazów zawierających i niezawierających twarze wykorzystano w celu stwierdzenia obecności twarzy na badanym zdjęciu. Metodę zademonstrowano przy użyciu zestawu 2500 zdjęć twarzy 16 osób dla trzech położeń głowy, trzech rozmiarów twarzy oraz dla trzech różnych warunków oświetlenia. Analiza głównych komponentów była również wykorzystywana do realizacji zagadnień rozpoznawania odcisków dłoni [53], obiektów trójwymiarowych w przestrzeni [54], oraz w robotyce przemysłowej [55] i mobilnej [81]. W pracy [51] zastosowano probabilistyczną miarę Bayesa podobieństwa wektorów zamiast klasycznej odległości Euklidesowej. Wadą tej metody jest konieczność oszacowania rozkładu prawdopodobieństwa w wielowymiarowej przestrzeni przy ograniczonej liczbie 16 próbek dla każdej klasy. W celu uniknięcia tej niedogodności zdefiniowano dwie wzajemnie niezależne klasy: ΩI , reprezentującą zmienność wielu obrazów tej samej osoby (Intrapersonal ), oraz ΩE , reprezentującą zmienność obrazów różnych osób (Extrapersonal ). Przy założeniu, że obie klasy maja dystrybucję Gaussa zaproponowano funkcje podobieństwa P (∆ | ΩI ) i P (∆ | ΩE ) dla danej różnicy intensywności ∆ = I1 − I2 . Przy tak zdefiniowanych funkcjach podobieństwa, dwa obrazy twarzy uznano za należące do tej samej osoby jeśli P (∆ | ΩI ) > P (∆ | ΩE ). Stwierdzono znaczny wzrost wydajności metody probabilistycznej w porównaniu z podejściem klasycznym. Podejściem o zbliżonej wydajności jest LDA (Linear Discriminant Analysis, znane również pod nazwą fisherfaces) [3], [20], [90]. Dla próbek wszystkich klas zdefiniowano dwie miary: – wewnątrzklasową macierz rozproszenia (within-class scatter matrix ) daną jako: Sw = Ni c j=1 i=1 (xji − µj )(xji − µj )T (1.13) gdzie: xji – i-ta próbka klasy j, µj – wektor średni klasy j, c – liczba klas, Nj liczba próbek w klasie j; – międzyklasową macierz rozproszenia (between-class scatter matrix ) Sb = c (µj − µ)(µj − µ)T (1.14) j=1 gdzie µ reprezentuje wektor średni wszystkich klas. W celu identyfikacji twarzy należy dążyć do maksymalizacji miary międzyklasowej przy jednoczesnej minimalizacji miary wewnątrzklasowej. Aby to osiągnąć należało odnaleźć det |Sb | największą wartość współczynnika . det |Sw | W pracy [71] zaproponowano analizę LDA cech własnych do badania przynależności obrazu do klasy (np. obiektów będących twarzami) a także do identyfikacji osoby wewnątrz klasy obrazów zawierających twarze. Wyniki eksperymentów przedstawione w [70] uzyskano przy wykorzystaniu zestawu uczącego składającego się z 800 obrazów. W skład klasy obrazów zawierających twarze wchodziły zdjęcia 356 osób. Procent poprawnych klasyfikcji (przy użyciu obrazów nie zawartych w zestawie uczącym) wynosił 91% dla 78 obrazów zawierających twarze i 87% dla 37 obrazów nie zawierających twarzy. 17 W celu poprawienia wydajności systemów bazujących na LDA w [90] oraz [91] zaproponowano połączenie koncepcji LDA i PCA. Autorzy zaprezentowali wyniki testów skuteczności systemu przeprowadzonych przy wykorzystaniu bazy 738 obrazów twarzy: 85.3% dla wszystkich obrazów i 95.1% dla frontalnych zdjęć twarzy. Ponadto wykazano dobre zdolności uogólniania – poprawnie klasyfikowane były obrazy nowych klas lub osób (nie znajdujących sie w zestawie uczącym) bez konieczności ponownego treningu systemu. W [43] przedstawiono w pełni automatyczny system detekcji/rozpoznawania twarzy oparty na sztucznej sieci neuronowej PDBNN (Probabilistic Decision Based Neural Network ) składający się z trzech modułów: lokalizacji twarzy; lokalizacji oczu; rozpoznawania twarzy. W przeciwieństwie do większości metod, region twarzy określono jako obejmujący brwi, oczy i nos, ale nie usta. Taki wybór obszaru twarzy uzasadniono potrzebą uodpornienia systemu na czynniki zmienności wyrazu twarzy w okolicy ust pod wpływem emocji (podobną reprezentację obszaru twarzy zaproponowano w [31]). Szczególną cechą sieci PDBNN jest jej modularna struktura – dla reprezentacji każdej rozpoznawanej klasy/osoby PDBNN przeznacza jedną podsieć. Struktura taka (OCON one-class-onenetwork ) posiada znaczną przewagę nad strukturą ACON (all-classes-in-one-network ) charakterystyczną dla klasycznego perceptrona wielowarstwowego. W przypadku struktury ACON charakterystyki wszystkich rozpoznawanych klas są zawarte w jednej sieci, potrzeba więc dużej liczby jednostek w warstwach ukrytych i zbieżność procesu uczenia osiągana jest bardzo wolno. Struktury OCON składają się z podsieci, w skład których wchodzi niewielka liczba jednostek ukrytych, przez co konwergencja osiągana jest szybciej oraz system charakteryzuje się lepszą zdolnością uogólniania. System oparty na PDBNN ma lepsze charakterystyki błędów FAR/FRR w porównianiu z większością metod, w których przynależność do danej klasy definiowana jest przy pomocy funkcji. Ponadto architektura taka może być wydajnie zaimplementowana sprzętowo przy wykorzystaniu przetwarzania rozproszonego. Najwcześniejsze opracowania z dziedziny FR oparte były na analizie geometrycznych własności lokalnych charakterystyk twarzy [28], [30]. Jednym z najbardziej skutecznych systemów jest Elastic Bunch Graph Matching (EBGM), w którym reprezentacja lokalnych charakterystyk oparta jest na transformacie falkowej Gabora. Splot w jednym punkcie falek o różnej orientacji i częstotliwości nazwano strumieniem (jet) i opisano za jego pomocą rozkład intensywności obrazu I(p) na obszarze wokół danego piksela p = (x, y). 18 Jet zdefiniowano jako: Jj (p) = I(p)ψj (p − p )d2 p (1.15) przy transformacie falkowej Gabora określonej przez: k2 k 2 x2 ψj (p) = j2 exp − j 2 σ 2σ σ2 exp (ikj p) − exp − 2 (1.16) Dla utworzenia wektora fali kj ograniczonego oknem Gaussa zastosowano 5 wartości częstotliwości (indeks ν = 0, . . . , 4) oraz 8 orientacji (indeks µ = 0, . . . , 7): ⎛ ⎞ ⎛ ⎞ kjx ⎟ ⎜ kν cos φµ ⎟ π − ν+2 kj = ⎜ ⎝ ⎠=⎝ ⎠ , kν = 2 2 π, φµ = µ 8 kjy kν sin φµ (1.17) gdzie j = µ + 8ν [56], [83]. Ten sposób wyznaczania współczynników falek jest odporny na zmiany oświetlenia, przesunięcia, zniekształcenia, obrót oraz zmianę skali. Zdefiniowano model twarzy w postaci grafu, w którego węzłach znajdowały się zbiory jet-ów utworzone na podstawie analizy pewnej liczby obrazów. Krawędziami grafu były odległości pomiędzy charakterystycznymi punktami reprezentowanymi przez jet-y. Opis danej twarzy uzyskano poprzez wyznaczenie współczynników jet-ów oraz wartości odległości pomiędzy określonymi punktami twarzy. Systemy oparte na EBGM zastosowano do realizacji zagadnień detekcji twarzy, określenia pozy twarzy, rozpoznawania twarzy. W przypadku podejść hybrydowych, za istotne uznawane są zarówno charakterystyki lokalne jak i globalne. Metoda modular eigenfaces [60] stanowi rozszerzenie wcześniejszego opracowania [78] o możliwość reprezentacji lokalnych charakterystyk jako eigenfeatures (każda cecha reprezentowana była oddzielnie – stworzono opisy eigeneyes, eigenmouth itd). Testy przeprowadzone na zbiorze zdjęć 45 osób (po dwa zdjęcia w różnych wariantach – dwoma różnymi wyrazami twarzy np. złość i neutralny) wykazały wyższą skuteczność podejścia eigenfeatures dla zbiorów wejściowych o dużej zmienności cech. Wykorzystanie charakterystyk asymetrii twarzy Zjawisko asymetrii twarzy przez długi czas wykorzystywane było w psychologii i antropologii jako czynnik oceny atrakcyjności twarzy [76] oraz jako podstawa do rozpoznawania 19 ekspresji emocji [63]. Zaproponowano wykorzystanie charakterystyk asymetrii twarzy jako informacji pomocnej w procesie rozpoznawania twarzy [33], [36], [35], [38]. Wrodzona asymetria jest podatna na wiele czynników takich jak wzrost twarzy, urazy oraz zmiany związane ze starzeniem, jednak jest indywidualną charakterystyką pozwalającą na odróżnienie z pozoru identycznych bliźniaków [48]. Wykazano, że usunięcie asymetrii twarzy z fotografii osób [77] spowodowało niewielki, aczkolwiek statystycznie znaczący spadek skuteczności rozpoznawania twarzy. Na tej podstawie można dojść do wniosków, że jawna reprezentacja charakterystyk asymetrii spowoduje wzrost skuteczności technik rozpoznawania twarzy. W celu zobrazowania zjawiska asymetrii oryginalny obraz twarzy zestawiono z dwoma sztucznie utworzonymi obrazami: skomponowanym z lewej połówki twarzy i jej lustrzanego odbicia, oraz analogicznie uzyskanym obrazem z prawej połówki twarzy. Wynik powyższego postępowania zilustrowano na rys. 1.1. Rys. 1.1. Ilustracja zjawiska asymetrii twarzy, z lewej – oryginalny obraz, w środku – obraz utworzony z lewej połówki twarzy oraz jej lustrzanego odbicia, z prawej – obraz twarzy utworzony z prawej połówki i jej lustrzanego odbicia Tezę o przydatności zjawiska asymetrii twarzy w biometrii poparto również wynikami badań na podstawie których wykazano, że twarze o wyglądzie ocenianym jako atrakcyjny są łatwiej rozpoznawane. Uwzględniając fakt wykorzystania asymetrii jako miary atrakcyjności uzyskano związek pomiędzy charakterystyką asymetrii a skutecznością rozpoznawania twarzy. W pracach [44], [45], [50] zaproponowano wykorzystanie holistycznych reprezentacji charakterystyk asymetrii twarzy jako czynnik wspomagający rozpoznawanie twarzy (a także identyfikację emocji) w połączeniu z dostępnymi metodami (autorzy wykorzysta- 20 li metodę PCA). W fazie przetwarzania wstępnego cyfrową reprezentację twarzy poddano przekształceniom afinicznym mającym na celu zdefiniowaną przez autorów normalizację obrazu. Fotografię obrócono tak aby prosta przechodząca przez wewnętrzne kąciki oczu (C1 , C2 ) była ustawiona poziomo, następnie, obraz przekształcono tak aby punkt wyznaczony u podstawy nosa (C3 ) był umieszczony na prostej prostopadłej do prostej przechodzącej przez C1 i C2 i przecinającej ją w połowie odległości między tymi punktami. Celem powyższych transformacji było uzyskanie dla każdej fotografii znormalizowanego obrazu twarzy o rozmiarach 128 × 128 pikseli, na którym punkty wykorzystane do normalizacji znajdują się we współrzędnych: C1 = [40, 48], C2 = [88, 48], C3 = [64, 84]. Autorzy przyjęli dwie miary AsymFaces charakterystyk asymetrii: D-face (Density Difference) jako miarę różnic luminancji obrazu oryginalnego i jego lustrzanego odbicia względem pionowej osi, zdefiniowaną następującą zależnością D(x, y) = I(x, y) − I (x, y) (1.18) oraz S-face (Edge Orientation Similatrity) opartą na pomiarze orientacji krawędzi, daną jako: S(x, y) = cos(φIe (x,y),Ie (x,y) ) (1.19) gdzie: I,I – odpowiednio, tablica luminancji obrazu znormalizowanego oraz jego lustrzanego odbicia, Ie , Ie – obrazy po dokonaniu detekcji krawędzi w obrazie oryginalnym i jego lustrzanym odbiciu. Na rys. 1.2 przedstawiono ilustracje opisu charakterystyk asymetrii przy wykorzystaniu miar D-face i S-face. Autorzy przeprowadzili eksperymenty mające na celu potwierdzenie przydatności powyższych miar zarówno w zadaniach klasyfikacji ekspresji emocji [50], jak i w przypadku identyfikacji twarzy osoby niezależnie od wyrazu twarzy [44], [45]. W obu przypadkach miary charakterystyk asymetrii zastosowano w fuzji z techniką fisherfaces. W tabeli 1.2 przedstawiono wyniki klasyfikacji ekspresji twarzy do jednej z trzech klas. W badaniach użyto zestawu zdjęć 55 osób wykonanych w kontrolowanych warunkach – użyto równomiernego oświetlenia, dla każdej osoby wykonano fotografie z wyrazem trzech emocji: radości, gniewu i obrzydzenia. 21 Rys. 1.2. Reprezentacja charakterystyk asymetrii; z lewej – znormalizowany obraz oryginalny, w środku – ilustracja miary D-face, z prawej – ilustracja miary S-face [50] Tabela 1.2. Wyniki klasyfikacji wyrazu twarzy przy wykorzystaniu informacji o asymetrii [50] Wykorzystana metoda FisherFaces D-faces S-faces AsymFaces (D+S -faces) Fuzja FF i AF Rodzaj błędu FRR FAR FRR FAR FRR FAR FRR FAR FRR FAR Radość [%] 6.80 2.30 25.80 19.80 15.60 7.10 11.60 4.90 1.80 0.30 Gniew [%] 19.40 8.30 42.80 17.20 17.80 8.10 14.60 6.20 3.80 2.60 Obrzydzenie [%] 17.60 11.30 41.60 18.10 20.00 11.50 13.40 8.70 5.20 2.50 Wartość średnia [%] 14.60 7.30 36.73 18.36 17.80 8.90 13.20 6.60 3.60 1.80 Najlepsze wyniki uzyskano dla fuzji metod fisherfaces i AsymFaces, w przypadku obu metod stosowanych oddzielnie zaobserwowano spadek skuteczności, przy czym dla AsymFaces wykazano znacznie większy poziom błędów niż dla fisherfaces. 22 1.2. Cel i teza pracy, bronione rozwiązania naukowe Informacje przedstawione w przeglądzie istniejących rozwiązań pozwalają stwierdzić, że charakterystyki asymetrii twarzy są istotne i były wykorzystywane w biometrii. Dotychczas jednak informacje te znalazły zastosowanie w badaniach technik interakcji człowieka z komputerem – w szczególności w aplikacjach rozpoznawania emocji. Celem pracy jest opracowanie metody autentykacji osoby na podstawie kolorowego obrazu twarzy, opartej na tezie: Wykorzystanie automatycznie wyznaczonych, strukturalnych charakterystyk asymetrii twarzy (w szczególności oczu i/lub ust jako najbardziej informatywnych części twarzy) jest przesłanką do potencjalnej poprawy skuteczności biometrycznych systemów autentykacji osób. Skuteczność opracowanej metody EM-Asym.Auth (Eyes and Mouth Asymmetry Authentication) musi być potwierdzona eksperymentalnie na podstawie analizy wyników funkcjonowania opracowanego systemu EM-Asym.Auth. Musi być również przeprowadzony eksperymentalny dobór optymalnych parametrów procedur automatycznej ekstrakcji charakterystyk, a także wartości progowych procedur klasyfikacji. Bronione rozwiązania naukowe 1. Metoda EM-Asym.Auth autentykacji osób, na bazie charakterystyk asymetrii oczu i ust. 2. Procedura ekstrakcji charakterystyk twarzy w obrazie kolorowym, przy wykorzystaniu automatycznych technik lokalizacji twarzy oraz oczu. 3. Procedury opisu cech tęczówek oraz kształtu krawędzi powiek LM, ILP, RGBG. Modyfikacja metody opisu charakterystyk ust – RGBG-CSM. 4. Automatyczna technika normalizacji pomiarów z wykorzystaniem jednostki [Muld]. Procedura pomiaru i kodowania charakterystyk asymetrii oczu i ust, procedura konstruowania wektora charakterystyk, algorytm porównywania wektorów charakterystyk. 5. Eksperymentalne potwierdzenie skuteczności metody EM-Asym.Auth przy wykorzystaniu opracowanego systemu programowego i symulacji procesu autentykacji użytkownika. 23 2. Szkic metody EM-Asym.Auth autentykacji osób na bazie charakterystyk asymetrii oczu i/lub ust Sformułowano wymagania sprzętowe do implementacji metody oraz założenia określające środowisko pracy systemu, format danych wejściowych i typy możliwych reakcji systemu. Określono funkcjonalne etapy metody. Zdefiniowano opracowaną technikę opisu charakterystyk asymetrii. 2.1. Wymagania funkcjonalne do metody EM-Asym.Auth Dla potrzeb implementacji metody określono wymagania sprzętowe, które obejmują system komputerowy klasy PC wraz z systemem operacyjnym oraz kamerą/aparatem cyfrowym umożliwiającym pozyskanie obrazu o rozdzielczości nie mniejszej niż 640 × 480 pikseli. Ze względu na badawczy charakter opracowania (na tym etapie nie założono implementacji metody jako aplikacji czasu rzeczywistego) nie określono szczegółowych wymagań sprzętowych dotyczących częstotliwości taktowania/wydajności procesora, ilości dostępnej pamięci operacyjnej oraz wydajności karty graficznej. W celu poprawnego działania metody przejęto założenia wstępne dotyczące akceptowanych danych wejściowych, środowiska pracy oraz możliwości praktycznej implementacji metody. Jako podstawowe dane wejściowe niezbędne do prawidłowej pracy metody określono tablicę zawierającą 24-bitowe (po 8 bitów na każdą składową) wartości RGB poszczególnych pikseli obrazu. W zależności od implementacji tablica wejściowa może być pozyskana z pliku graficznego określonego formatu bądź za pośrednictwem sterownika kamery/aparatu. Założono praktyczne zastosowanie metody do weryfikacji tożsamości użytkownika, więc można założyć, że fotografie stanowiące informację wejściową powinny być wykonane w kontrolowanych, jednolitych warunkach oświetlenia. Zmiana tych warunków 24 może wymagać ponownej kalibracji systemu, bądź przebudowy bazy wyznaczonej w etapie treningu systemu. Implementacja metody jako systemu autentykacji użytkownika, oprócz danych w postaci cyfrowej reprezentacji obrazu twarzy wymaga podania przez użytkownika identyfikatora, którym może być nazwa użytkownika, lub np. informacja zapisana na karcie inteligentnej (Smart Card ). Na podstawie danych wejściowych system ma za zadanie przeprowadzić klasyfikację oraz wyświetlić informację o wyniku weryfikacji tożsamości, lub przekazać informację dotyczącą wyniku weryfikacji do systemu realizującego dostęp do chronionego zasobu. Na rys. 2.1 przedstawiono schemat funkcjonalnych etapów metody EM-Asym.Auth w fazie uczenia systemu oraz w fazie testowania. Rys. 2.1. Schemat funkcjonalnych etapów metody EM-Asym.Auth 25 Pozyskany obraz w reprezentacji cyfrowej poddano przetwarzaniu wstępnemu obejmującemu powiększenie rozdzielczości do wartości 960 × 720 oraz resamplingowi w celu poprawy jakości. Tablicę wartości RGB uzyskaną w wyniku przetwarzania wstępnego następnie należy poddać procesom prowadzącym do wydzielenia opisu charakterystyk czyli kolejno realizującym: – Wyznaczenie obszaru twarzy. W tym etapie należy wyodrębnić prostokątną ramkę zawierającą obraz twarzy, dalsze przetwarzanie zostanie ograniczone do tego obszaru, więc procedura powinna być odporna na zakłócenia w postaci kolorowych obiektów w tle. Algorytm oparty został na procedurach segmentacji obrazu kolorowego w przestrzeni barw RGB. – Określenie położenia oczu. Należy wyznaczyć punkty określające przybliżone położenie oczu. Za satysfakcjonujący wynik uznano odnalezienie punktów znajdujących się wewnątrz zarysu źrenic. Wykorzystano procedurę trzystopniowego przetwarzania informacji o gradiencie luminancji. – Wydzielenie obszaru wokół zlokalizowanych oczu. W celu dokładnego pomiaru charakterystyk oczu wydzielono prostokątne ramki zawierające obraz oczu. – Dokładne określenie środka oraz promienia okręgu opisującego tęczówkę. Założono, że pomiar charakterystyk twarzy zostanie dokonany przy wykorzystaniu uniwersalnej jednostki Muld wyznaczonej na podstawie średnicy tęczówek oczu, więc dokładność tego etapu ma duży wpływ na dalsze pomiary i efektywność systemu. Zastosowano procedury progowania obrazu, wyznaczania krawędzi obiektów oraz wyznaczania okręgu najlepiej dopasowanego do krawędzi tęczówki. – Określenie położenia punktów opisujących krawędzie powiek oraz punktów określających położenie kącików oczu. Zbiór punktów wyznaczonych na krawędzi powiek jest podstawą do aproksymacji kształtu powiek. Punkty przecięcia aproksymowanych wielomianów wyznaczają położenie kącików oczu. Wykorzystano procedury segmentacji obrazu dostosowane do specyfiki kontrastu barw w okolicy krawędzi powiek. Wielomiany aproksymowano przy wykorzystaniu metody minimum sumy kwadratów błędów. – Określenie i wydzielenie obszaru zawierającego obraz ust. Przy wykorzystaniu zależności anatomicznych budowy twarzy wyznaczono prostokątną ramkę przybliżającą położenie obszaru ust. 26 – Wyznaczenie punktów określających kształt krawędzi i położenie kącików ust. W tym kroku wykorzystano zmodyfikowaną metodę segmentacji obrazu opartą na przetwarzaniu w przestrzeni barw (RG/BG). Wynikiem powyższego przetwarzania jest zbiór współrzędnych określających położenie charakterystycznych punktów, oraz wartości współczynników wielomianów opisujących kształt krawędzi powiek. Dane te należy przetworzyć na formę opisującą charakterystyki niezależnie od skali i przyjętego układu współrzędnych oraz zapisać w formie wektora, którego budowa umożliwi porównywanie opisów charakterystyk różnych twarzy. W tym celu opracowano metodyki pomiaru charakterystyk przy wykorzystaniu uniwersalnej jednostki miary (Muld ) i z uwzględnieniem informacji o asymetrii twarzy. Następnie, utworzony wektor opisu charakterystyk twarzy, w zależności od trybu pracy systemu powinien zostać zapisany w wewnętrznej bazie systemu (w trybie uczenia), lub porównany z wektorem pobranym z bazy systemu przy wykorzystaniu identyfikatora użytkownika (tryb weryfikacji). Opracowano procedury porównywania wyznaczonych wektorów charakterystyk, oraz eksperymentalnie wyznaczono wagi z jakimi uwzględniano pomiary poszczególnych cech. 2.2. Idea pomiaru i kodowania charakterystyk asymetrii oczu i ust Przyjęto założenie, że w pomiarach asymetrii uwzględnione zostaną charakterystyki oparte na wyznaczonych cechach w rejonie oczu oraz ich zależności z cechami w obszarze ust. Zdefiniowano charakterystyki asymetrii oczu wyznaczone na podstawie położenia kącików: asymetria na bazie odległości kącików oczu, asymetria położenia zewnętrznych kącików oczu względem wewnętrznych, asymetria położenia zewnętrznych kącików oczu względem kącików ust; oraz charakterystyki bazujące na opisie kształtu krawędzi powiek. Do wyznaczenia wartości charakterystyk asymetrii bazujących na położeniu kącików oczu oraz ust wykorzystano zależność opartą na prawie Webera-Fechnera F FAsym (F, L) = ln . L (2.1) gdzie F i L – wyniki pomiaru charakterystyk (odległości między określonymi punktami wyrażone w [Muld]). 27 Pomiar charakterystyk kształtu krawędzi powiek, został przeprowadzony przy wykorzystaniu deskryptora kształtu w postaci dyskretnej funkcji odległości granic obszaru x(t) od centroidu (xc , yc )[89], [58]. Współrzędne środka centroidu wyznaczono z: xc = −1 1 N x(t), N t=0 yc = −1 1 N y(t) N t=0 (2.2) gdzie t = 0, 1, . . . , N −1, N – liczba punktów wyznaczonych na granicy obszaru, (x(t), y(t)) – współrzędne punktu na granicy obszaru. Dyskretna funkcja odległości granic obszaru przyjmuje postać: [x(t) − xc ]2 + [y(t) − yc ]2 , r(t) = t = 0, 1, . . . , N − 1 (2.3) Dla prawego oka odległości punktów krawędzi obszaru wyznaczano lewoskrętnie począwszy od wewnętrznego kącika oka, podczas gdy w przypadku lewego oka, odległości wyznaczano prawoskrętnie (również zaczynając od wewnętrznego kącika). Na rys. 2.2 przedstawiono wykresy dyskretnych funkcji opisujących kształt prawego i lewego oka. Na wykresie można zauważyć różnice w pomiarach kształtu, które przyjmują największe wartości dla górnej powieki. Charakterystykę asymetrii zdefiniowano jako zbiór różnic wartości odległości krawędzi obszaru od centroidu prawego i lewego oka: d(t) = |rR (t) − rL (t)|, t = 0, 1, . . . , N − 1 (2.4) gdzie rR (t) i rL (t) – dyskretne funkcje odległości krawędzi odpowiednio dla prawego i lewego oka. Wykres wartości różnic charakterystyk prawego i lewego oka d(t) dla przykładu z rys. 2.2 zilustrowano na rys. 2.3. Analizując charakterystyki przedstawione na powyższych wykresach można dojść do wniosku, że informacje o asymetrii oczu kodowane za pomocą przedstawionej metody stanowią indywidualne charakterystyki i mogą być wykorzystane w procesie autentykacji użytkownika. Wyniki eksperymentu potwierdzającego to założenie przedstawiono w rozdziale 5.2. 28 65 Right Eye Left Eye 60 55 r(t) [pixel] 50 45 40 35 30 25 20 0 20 40 60 t=(0,..,127) 80 100 120 Rys. 2.2. Eksperymentalne wartości deskryptorów kształtu krawędzi powiek pawego i lewego oka dla obrazu M 009 01 7 Right-Left Distance 6 r(t) [pixel] 5 4 3 2 1 0 0 20 40 60 t=(0,..,127) 80 100 120 Rys. 2.3. Eksperymentalne wartości charakterystyki asymetrii kształtu powiek prawego i lewego oka dla obrazu M 009 01 29 3. Opracowanie funkcjonalnych procedur-składników metody Opisano procedurę lokalizacji twarzy z wykorzystaniem algorytmów segmentacji obrazu w przestrzeni I2, oraz autorskie metody określenia pozycji tęczówek i ekstrakcji charakterystyk oczu i ust. Przedstawiono metodę opisu wyodrębnionych cech twarzy przy uwzględnieniu możliwości wykorzystania informacji o asymetrii twarzy. 3.1. Procedura automatycznej lokalizacji twarzy z wstępnym wyznaczeniem położenia oczu Pierwszym etapem działania systemu jest określenie pozycji twarzy oraz oczu w obrazie wejściowym [73], [74], [75]. Wynikiem poniższych procedur będzie określenie obszarów zawierających oczy oraz dokładnego położenia tęczówek (środków oraz promieni okręgów opisanych wokół tęczówek), co jest niezbędne do dalszego przetwarzania celem wyodrębnienia charakterystyk oczu. Zgodnie z definicją metody opisu charakterystyk (rozdział 2.2.) średnica tęczówki stanowi podstawową jednostkę pomiarową, więc jej dokładne wyznaczenie ma duży wpływ na poprawność wyniku działania metody. Założono, że obraz wejściowy reprezentowany jest w przestrzeni RGB z 24-bitową głębią kolorów i zawiera frontalny portret. Procedura lokalizacji twarzy realizowana jest w przestrzeni I2 [40], która pozwala na wydzielenie kolorów zbliżonych do koloru skóry z zadowalającą skutecznością. Elementami przestrzeni barw I2 są różnice składowych R i B odpowiednich pikseli obrazu w reprezentacji RGB. Ponieważ założono, że głębia kolorów dla wejściowego obrazu wynosi 24 bity, elementy przestrzeni I2 będą przyjmowały wartości z zakresu 0-255. Transformację z RGB do I2 zdefiniowano jako: IRB [x][y] = IR [x][y] − IB [x][y], f or gdzie: 30 ⎧ ⎪ ⎨ x = 0...w ⎪ ⎩ y = 0...h (3.1) w, h – szerokość i wysokość obrazu wejściowego w pikselach, IR , IB – składowe R i B w reprezentacji RGB, IRB – macierz różnic stanowiąca reprezentację obrazu wejściowego w przestrzeni I2. W celu wydzielenia obszarów o kolorze zbliżonym do barwy skóry, w przestrzeni I2 przeprowadzono progowanie zgodnie z regułą: ⎧ ⎪ ⎨ 255 f or IRB [x][y] > T ⎩ 0 f or IRB [x][y] T I [x][y] = ⎪ (3.2) gdzie: x = 0 . . . w, y = 0 . . . h – współrzędne piksela, IRB – wejściowa macierz reprezentacji obrazu w przestrzeni I2, w, h – liczba kolumn i wierszy w macierzy IRB , I – wyjściowy obraz po przeprowadzeniu progowania, T – wartość progu. Na 3.1 przedstawiono oryginalny obraz wejściowy oraz obraz uzyskany w wyniku działania procedury progowania zgodnie z (3.2). Kolor biały oznacza wartość 255 (przekroczona wartość progu). Rys. 3.1. Oryginalny obraz wejściowy i rezultat działania procedury progowania z przyjętym progiem T = 37 Na dalszy proces lokalizacji twarzy mogą mieć wpływ zakłócenia wokół obszaru twarzy oraz obiekty tła zawarte w obrazie otrzymanym po progowaniu. Aby wyeliminować te czynniki obraz poddano filtracji przy użyciu filtru medianowego. Proces filtracji zdefiniowano za pomocą formuł: 31 S(x, y) = I [x][y] = i=−2 j=−2 2 I [x + i][y + j] (3.3) 2 ⎧ ⎪ ⎨ 255 f or S(x, y) > 3315 ⎪ ⎩ 0 f or S(x, y) 3315 (3.4) gdzie: x = 2 . . . w − 2, y = 2 . . . h − 2 – współrzędne analizowanego piksela, w, h – liczba kolumn i wierszy w macierzy I , S(x, y) – suma wartości 25 pikseli sąsiadujących z analizowanym, I – wejściowa macierz reprezentacji obrazu w przestrzeni I2 po dokonaniu progowania, I – wyjściowy, filtrowany obraz. W procedurze filtracji sumowane są wartości pikseli sąsiadujących z pikselem analizowanym (3.3). Jeżeli więcej niż połowa otaczających pikseli jest biała (wartość sumy przekracza 3315) pikselowi przypisywana jest wartość 255 (kolor biały), w przeciwnym wypadku piksel zostaje ustawiony jako czarny (3.4). W wyniku działania procedury filtracji medianowej w 10 przebiegach uzyskano obraz przedstawiony na Rys. 3.2. Rys. 3.2. Obraz wejściowy oraz wynik działania procedury filtracji medianowej przy 10 powtórzeniach W procedurze wyznaczania obszaru twarzy jako górną granicę przyjęto wiersz, w którym liczba białych pikseli (występujących w ciągu) wzrosła powyżej określonej wartości, natomiast dolną granicę – linię, w której liczba takich pikseli spadła poniżej zadanej wartości. Jako granice pionowe przyjmuje się najbardziej wysunięte na lewo i prawo białe piksele (w zakresie wyznaczonym przez górną i dolną granicę). 32 W wyniku działania powyższej procedury, dla rozważanego obrazu wyznaczono granice przedstawione na Rys. 3.3. Rys. 3.3. Obraz po filtracji medianowej z wyznaczonymi granicami obszaru twarzy Wyznaczenie położenia oczu odbywa się przy wykorzystaniu opracowanej procedury bazującej na metodzie GMIP [40]. W pierwszym etapie określa się przybliżone pionowe położenie oczu zgodnie z zależnością: H1 [y] = w−1 |Igray [x][y] − Igray [x + 1][y]| (3.5) x=0 gdzie Igray jest badanym obrazem reprezentowanym w 256 odcieniach szarości. Największa wartość projekcji (H1max ) określa przybliżoną współrzędną pionową oczu. Transformację obrazu z przestrzeni RGB do skali szarości zdefiniowano jako: Igray [x][y] = 77 · IR [x][y] + 151 · IG [x][y] + 28 · IB [x][y] . 256 (3.6) Wyznaczona współrzędna H1max określa w istocie “uśrednione” położenie obu oczu i może być wykorzystana w celu określenia pozycji oczu tylko w przypadku fotografii z dokładnie pionowo położoną twarzą. Na Rys. 3.4 przedstawiono przykład wyznaczenia maksymalnej wartości projekcji poziomej dla obrazu niewyrównanej twarzy. 33 Rys. 3.4. Maksimum projekcji poziomej dla obrazu niewyrównanej twarzy Aby procedura była odporna na zmiany położenia twarzy zastosowano metodę projekcji pionowej w otoczeniu wyznaczonej uprzednio wartości H1max . Postępowanie to można opisać wzorem (3.7). H1max +20 V [x] = y=H1max −20 |Igray [x][y] − Igray [x][y + 1]| (3.7) Dwie największe wartości projekcji w zakresie H1max −20÷H1max +20 określają poziome położenie oczu. Ostatnim etapem procedury określenia położenia oczu jest wyznaczenie gradientów poziomych dla każdego oka osobno, w zakresie ±20 pikseli od współrzędnych poziomych Vmax1 i Vmax2 uzyskanych w wyniku projekcji pionowej: HR [y] = Vmax1 +20 y=Vmax1 −20 |Igray [x][y] − Igray [x + 1][y]| (3.8) HL [y] = Vmax2 +20 y=Vmax2 −20 |Igray [x][y] − Igray [x + 1][y]| gdzie Vmax1 i Vmax2 – poziome współrzędne odpowiednio prawego i lewego oka. Największe wartości w tablicach HR [x] i HL [x] wyznaczają pionowe położenie prawego oraz lewego oka. W wyniku działania powyższej procedury otrzymano współrzędne oczu: R Eye = (Vmax1 , HRmax ) dla prawego oka, oraz L Eye = (Vmax2 , HLmax ) dla lewego oka. Rys. 3.5 przedstawia ilustrację działania metody lokalizacji oczu. Rys. 3.5. Ilustracja wyniku działania procedury lokalizacji oczu 34 Wyznaczone współrzędne punktów nie oznaczają dokładnie środków tęczówek, w istocie punkty te zawierają się wewnątrz konturów tęczówek oczu. Aby określić dokładnie środek oraz promień okręgu opisującego tęczówkę dalszemu przetwarzaniu poddano obszary w granicach ±75 pikseli wokół wyznaczonych punktów (Rys. 3.6). Rys. 3.6. Obszary wyznaczone do przetwarzania w celu scharakteryzowania tęczówek W celu wyznaczenia okręgów opisujących tęczówki oczu na obszarze 151 × 151 pikseli opracowano metodę IFE (Iris Feature Estimation). Etapy funkcjonowania metody IFE sformułowano w następujących krokach: 1 – Segmentacja obrazu z automatycznie dobranym poziomem progowania, oraz detekcja krawędzi metodą Canny Edge Detection W celu dokonania segmentacji obrazu, wartość poziomu progowania dobrano jako średnią wartość obrazu przedstawionego w skali szarości powiększoną o stałą wartość. Procedurę wyznaczania wartości progu sformułowano jako: w h 1 T =σ+ I[x][y] w · h x=0 y=0 (3.9) gdzie σ = 10 jest eksperymentalnie dobraną, stałą wartością. Po dokonaniu segmentacji, obraz poddano filtracji medianowej zgodnie z (3.3) i (3.4). Rys. 3.7 przedstawia wejściowy obraz w 8-bitowej skali szarości, obraz po przeprowadzeniu segmentacji (z automatycznie dobraną wartością progu T ), oraz wyjściowy obraz poddany filtracji medianowej. Na obrazie wynikowym filtracji medianowej przeprowadzono detekcję krawędzi metodą Canny Edge Detection [18]. Z uwagi na zbytnią redukcję ostrości obrazu pominięto etap filtracji Gaussa. Wynik działania procedury Canny Edge zilustrowano na Rys. 3.8. 35 T=101 1x Rys. 3.7. Ilustracja wyniku segmentacji z automatycznie dobranym progiem (wartość T = 101) oraz jednoprzebiegowej filtracji medianowej Rys. 3.8. Ilustracja wyniku działania procedury detekcji krawędzi metodą Canny Edge Detection 2 – Odnalezienie punktów na brzegu tęczówki oraz wyznaczenie najlepiej dopasowanego okręgu W celu dokonania detekcji brzegu tęczówki wyznaczono 10 promieni wychodzących z punktów R Eye oraz L Eye skierowanych pod kątem 340◦, 350◦ , 0◦ , 10◦ , 20◦ oraz 160◦ , 170◦, 180◦ , 190◦, 200◦ do osi poziomej. Następnie w zakresie 20 ÷ 65 pikseli od punktów R Eye i L Eye poszukiwano pierwszego wystąpienia czarnego piksela wyznaczając w ten sposób brzeg tęczówki. Na Rys. 3.9 zilustrowano wyznaczone promienie oraz odnalezione punkty na krawędzi tęczówki. Rys. 3.9. Ilustracja sposobu wyznaczania punktów zawartych w brzegu tęczówki 36 Kolejnym krokiem było określenie, które spośród punktów krawędzi tęczówki mogą przynależeć do tego samego okręgu (z zadaną dokładnością). Aby to osiągnąć, sformułowano poniższy algorytm: WE: Zestaw 10 punktów – kandydatów do utworzenia okręgu opisującego tęczówkę; żądana dokładność σ określająca stopień podobieństwa okręgów. WY: Współrzędne środka oraz promień okręgu opisującego tęczówkę. 1: Wyznaczyć równania 6 okręgów na podstawie trójek punktów: C1 (P5 , P7 , P1 ) C2 (P6 , P8 , P2 ) C3 (P7 , P9 , P3 ) C4 (P0 , P2 , P6 ) C5 (P1 , P3 , P7 ) C6 (P2 , P4 , P8 ) gdzie: Ci , (i = 1 . . . 6) – wyznaczone równania okręgów; Pj , (j = 0 . . . 9) – punkty na krawędzi tęczówki, punkty numerowano lewoskrętnie poczynając od położonego na promieniu nachylonym pod kątem 340◦ 2: Porównać ze sobą wszystkie okręgi. Jako kryterium porównawcze przyjąć sumę odległości środków oraz modułu różnicy długości promieni (3.10). Jeżeli wyznaczona wartość d mieści się w zadanej dokładności (d < σ) zwiększyć rankingi obu okręgów. d= (x1 − x2 )2 + (y1 − y2 )2 + |r1 − r2 | (3.10) gdzie: x1 , y1 oraz x2 , y2 – współrzędne środków porównywanych okręgów; r1 , r2 – długości promieni porównywanych okręgów. 3: Okrąg o największym rankingu przyjąć jako najlepiej opisujący tęczówkę. Na Rys. 3.10 przedstawiono przykładowy rezultat wyznaczania okręgów opisujących tęczówki oczu. W wyniku działania powyższej procedury otrzymano dokładny opis położenia i rozmiaru tęczówek oczu, co stanowi podstawę funkcjonowania opracowanej metody. Korzystając z faktu, że średnica tęczówki stanowi jedyną stałą wielkość ludzkiego ciała, stworzono jednostkę Muld ([M], nazwę zaproponowano od nazwiska Ernest’a Muldashev’a) co 37 Rys. 3.10. Rezultat działania procedury lokalizacji okręgu opisującego tęczówkę umożliwiło bezwzględny pomiar charakterystyk bez konieczności wstępnego przetwarzania obrazów celem normalizacji wielkości [32], [37], [34]. 3.2. Algorytmy automatycznej ekstrakcji charakterystyk oczu i ust (LM, ILP, RGBG, RGBG-CSM ) Kolejnym etapem po określeniu pozycji i kształtu tęczówek jest wydobycie charakterystyk oczu – określenie kształtu górnej i dolnej powieki. Przyjęto założenie, że kształt krawędzi obu powiek będzie aproksymowany wielomianami trzeciego stopnia. Dla powyższego zagadnienia, próby wykorzystania technik segmentacji obrazu nie przyniosły oczekiwanych rezultatów. W przypadku segmentacji opartej na informacji o jasności (segmentacja obrazu w 8-bitowej skali szarości) występowanie ciemnych obszarów w pobliżu kącików oczu powodowało błędne określenie kształtu powieki (Rys. 3.11). W celu wyodrębnienia krawędzi powiek zaproponowano metody bazujące na przetwarzaniu informacji o luminancji obrazu – LM i ILP (Luminance Minimum, Interval Luminance Projection), a także oparte na analizie w przestrzeni (R/G, B/G) – RGBG. Informacje o luminancji zostały pozyskane z obrazu reprezentowanego w przestrzeni RGB zgodnie z regułą: Y = 0.299 · R + 0.587 · G + 0.114 · B (3.11) Przy takiej reprezentacji obszaru oka, łatwo można wyróżnić krawędź powieki wyszukując najmniejszych wartości luminancji w pobliżu tęczówki. Na Rys. 3.12 przedstawiono wykres wartości luminancji obszaru oka. Jak można zauważyć na wykresie, na podstawie 38 Rys. 3.11. Ilustracja segmentacji obrazu oka w 8-bitowej skali szarości – błędne określenie położenia kącików oczu informacji o najmniejszych wartościach luminancji możliwe jest dokładne wyznaczenie krawędzi tylko dla górnej powieki, dla dolnej różnica wartości luminancji nie jest wystarczająca. 160 Luminance 250 200 150 100 50 0 140 120 100 80 0 20 y 60 40 60 80 x 40 100 120 20 140 160 0 Rys. 3.12. Ilustracja poziomów luminancji obszaru prawego oka dla obrazu M 001 01 Wyodrębnienie kształtu powiek przy wykorzystaniu procedur LM (określenia kształtu krawędzi górnej powieki) oraz ILP i RGBG (określenia kształtu krawędzi dolnej powieki) zdefiniowano w następujących krokach: 1 – Wstępna lokalizacja kącików oczu 39 Do poszukiwania zewnętrznego i wewnętrznego kącika oka wyznaczono oddzielne obszary. Na obszary te składają się elementy macierzy dla których: ⎧ ⎪ ⎨ Iris y − Iris r j Iris y + Iris r ⎪ ⎩ Iris x − P (3.12) i Iris x + P gdzie: P = Iris x − Iris r 2 − (j − Irisy )2 ; Iris x, Iris y, Iris r – odpowiednio, współrzędne środka oraz promień okręgu opisującego tęczówkę; i, j – odpowiednio, numer kolumny i numer wiersza w macierzy luminancji (współrzędne x i y obrazu). Na Rys. 3.13 białą ramką oznaczono obszary przeszukiwane w celu lokalizacji kącików oka. Rys. 3.13. Ilustracja obszarów przeszukiwanych w celu wyznaczenia kącików oczu Jako zewnętrzny kącik (Co; rozważając obszar prawego oka) przyjęto najbardziej na lewo wysunięty punkt o najmniejszej wartości luminancji. Postępując analogicznie wyznaczono punkt wewnętrznego kącika oka (Ci). Rys. 3.14 oraz Rys. 3.15 przedstawiają ilustrację wyniku wyszukiwania kącików oczu. 160 Luminance 250 200 150 100 50 0 140 120 100 80 0 20 y 60 40 60 80 x 40 100 120 20 140 160 0 Rys. 3.14. Ilustracja poziomów luminancji obszaru oka oraz minimalne wartości luminancji wyznaczające kąciki oka 40 Rys. 3.15. Ilustracja wyniku wyszukiwania kącików na obrazie oka 2 – Wyznaczenie punktów na krawędzi górnej powieki przy wykorzystaniu procedury LM W celu wyznaczenia punktów położonych na krawędzi górnej powieki, w macierzy wartości luminancji poszukiwano lokalnych minimów wychodząc z punktu określającego zewnętrzny kącik oka. Wyznaczanie lokalnych ekstremów realizowane jest poprzez przeszukiwanie kolumn macierzy, w zakresie < YP − 5, YP + 15 >, gdzie YP to współrzędna ekstremum uzyskana przy przeszukiwaniu poprzedniej kolumny (dla pierwszej kolumny przyjęto współrzędną kącika oka). W wyniku działania powyższej procedury otrzymano zbiór n punktów, przy czym n = Cox − Cix jest liczbą kolumn zawartych między kącikami oka. Wynik działania procedury wyznaczania punktów na krawędzi górnej powieki przedstawiono na Rys. 3.16. 3 – Wyznaczenie punktów na krawędzi dolnej powieki – procedury ILP i RGBG Mała różnica wartości luminancji w dolnej części obszaru oka uniemożliwia zastosowanie postępowania analogicznego do użytego w przypadku wyznaczania krawędzi górnej powieki. W celu wyznaczenia punktów na krawędzi dolnej powieki zaproponowano dwa podejścia: bazujące na wykorzystaniu informacji o gradiencie luminancji w określonych przedziałach (ILP); oraz oparte na analizie składowych w przestrzeni (R/G, B/G). W procedurze ILP obszar oka podzielono na pięć przedziałów po 30 kolumn. Następnie zgodnie z (3.13) przeprowadzono projekcję gradientu wartości luminancji w każdym z zakresów. 41 160 Luminance 250 200 150 100 50 0 140 120 100 80 0 y 60 20 40 60 80 x 40 100 120 20 140 160 0 Rys. 3.16. Ilustracja wyniku działania procedury wyszukiwania minimalnych wartości luminancji – punktów na krawędzi górnej powieki Cy ILP [y] = |Ilum [Si + x][y] − Ilum [Si + x + 1][y]| (3.13) Cy −1.5·Iris r gdzie Ilum oznacza tablice wartości luminancji; Cy – pionową współrzędną zewnętrznego kącika oka; Si określa początkową wartość i-tego przedziału (i = 1 . . . 5). Wiersz zawierający punkt krawędzi dolnej powieki w danym przedziale określony jest przez największą wartość w tablicy ILP , jako kolumnę zawierającą ten punkt przyjęto połowę danego przedziału. Otrzymano pięć punktów, na podstawie których będzie aproksymowany kształt powieki. Na Rys. 3.17 przedstawiono wykres wartości luminancji z wyznaczonymi punktami określającymi krawędź dolnej powieki. Ze względu na zawodność metody w przypadku obrazów o niewielkich różnicach wartości luminancji na krawędzi oka zaproponowano wykorzystanie procedury RGBG, bazującej na przetwarzaniu obrazu w przestrzeni (R/G, B/G). Podobne podejście zastosowano w [80] przy określaniu konturu ust. Oryginalny obraz RGB obszaru oka konwertowany jest do przestrzeni (R/G, B/G) zgodnie z (3.14). 42 160 Luminance 250 200 150 100 50 0 140 120 100 80 0 20 y 60 40 60 80 40 100 x 120 20 140 160 0 Rys. 3.17. Ilustracja wyniku działania procedury ILP wyznaczania punktów o największym gradiencie luminancji określających krawędź dolnej powieki ⎧ ⎪ ⎨ ⎪ ⎩ IRG [x][y] = IR [x][y]/IG [x][y] IBG [x][y] = IB [x][y]/IG [x][y] , f or ⎧ ⎪ ⎨ x = 0...w ⎪ ⎩ y = 0...h (3.14) gdzie: w, h – szerokość i wysokość obrazu wejściowego w pikselach, IR , IB – składowe R i B w reprezentacji RGB, , IBG – składowe R/G i B/G w reprezentacji obrazu w przestrzeni (R/G, B/G). IRG Analiza składowych takiej przestrzeni pozwala na dokładne wyodrębnienie obszarów o określonej barwie, zależnie od przyjętych wartości progowych. W celu realizacji detekcji krawędzi oka zastosowano poniższą zależność z eksperymentalnie dobranymi wartościami progowymi T1 = 1.34 i T2 = 0.82. ⎧ ⎪ ⎨ 255 if IRG [x][y] < T1 and IBG [x][y] > T2 ⎩ 0 if IRG [x][y] T1 or IBG [x][y] T2 I [x][y] = ⎪ ⎧ ⎪ ⎨ x = 0...w , f or ⎪ ⎩ y = 0...h (3.15) gdzie: w, h – szerokość i wysokość obrazu wejściowego w pikselach, IRG , IBG – składowe R/G i B/G w reprezentacji obrazu w przestrzeni (R/G, B/G), 43 T1 , T2 – wartości progowe. Na Rys. 3.18 przedstawiono ilustrację wyniku działania procedury progowania w przestrzeni (R/G, B/G). Rys. 3.18. Oryginalny obraz obszaru oka i ilustracja wyniku działania procedury progowania w przestrzeni (R/G, B/G) z wartościami progowymi T1 = 1.34 oraz T2 = 0.82 Po dokonaniu progowania w przestrzeni (R/G, B/G) zgodnie z powyższą procedurą, wyznaczenie punktów krawędzi dolnej powieki sprowadza się do odnalezienia granicy obszaru (na Rys. 3.18 oznaczonego kolorem białym) pomiędzy kącikami oka i poniżej prostej łączącej oba kąciki. 4 – Aproksymacja kształtu krawędzi powiek Założono, że w celu opisu charakterystyk oczu kształt krawędzi dolnej i górnej powieki będzie aproksymowany wielomianem trzeciego stopnia. Postępowanie takie zasadne jest ze względu na występowanie pojedynczych, nieprawidłowo wyznaczonych punktów na krawędziach powiek, aproksymacja wielomianem pozwala wyeliminować niedokładności. Ponadto punkty przecięcia wielomianów określają położenie kącików oczu. W przypadku próby ręcznego określenia położenia kącików oczu (szczególnie wewnętrznych) napotkać można na problem z jednoznacznym wyznaczeniem punktu kącika, kształt wewnętrznego kącika oka utrudnia jednoznaczne zdefiniowanie takiego punktu. Przy zastosowaniu wielomianów do modelowania kształtu powiek, przyjęcie punktów przecięcia wielomianów pozwala na jednoznaczne zdefiniowanie położenia kącika oka. Przy wykorzystaniu metody minimum sumy kwadratów błędów (metoda najmniejszych kwadratów [8]) na podstawie punktów odnalezionych za pomocą procedur LM i RGBG wyznaczono wielomiany przybliżające kształt krawędzi powiek. 44 W metodzie najmniejszych kwadratów dąży się do minimalizacji wielkości χ2 (3.16). χ2 = n (ŷi − f (xi ))2 σi2 i=1 (3.16) gdzie: ŷi , f (xi ) – wartość oczekiwana oraz wartość funkcji dla i-tego punktu, σi2 – odchylenie standardowe dla i-tego punktu, n – liczba punktów. Ze względu na mniejszą dokładność wyznaczenia punktów w pobliżu kącika niż na środku krawędzi powieki w procedurze przyjęto indywidualne wartości σ 2 dla każdego z danych punktów, co umożliwiło aproksymację z różnymi wagami. Dla punktów w pobliżu kącików przyjęto większe wagi niż dla pozostałych. Miarą jakości dopasowania wyznaczonego wielomianu do danych punktów jest wielkość χ2 [8]. Na Rys. 3.19 i 3.20 przedstawiono przykładowe wykresy punktów krawędzi powieki oraz funkcji wyznaczonych przy wykorzystaniu metody najmniejszych kwadratów. Dla 100 Lid points Polynomial 95 y 90 85 80 75 70 0 20 40 60 x 80 100 120 140 Rys. 3.19. Wykres punktów i wielomianu trzeciego stopnia wyznaczonego przy użyciu metody najmniejszych kwadratów z dokładnością χ2 = 16.03 punktów z pierwszego wykresu (współrzędne punktów zawiera Tabela 3.1) wyznaczono wielomian f1 (x) = −0.0000081·x3 +0.0099962·x2 −1.3370900·x+99.6577500. Miara jakości dopasowania dla tego wielomianu wynosi χ2 = 16.03, co świadczy o dobrym dopasowaniu krzywej do punktów. W drugim przypadku (współrzędne punktów zawiera Tabela 3.1), 45 100 Lid points Polynomial 95 90 85 y 80 75 70 65 60 55 50 20 40 60 80 100 120 140 160 x Rys. 3.20. Wykres punktów i wielomianu trzeciego stopnia wyznaczonego przy użyciu metody najmniejszych kwadratów z dokładnością χ2 = 389.01 wyznaczono wielomian f2 (x) = −0.0000721·x3 +0.0282618·x2 −3.1300670·x+160.3877000, dla którego χ2 = 389.01. Wysoka wartość χ2 świadczy o mniej dokładnym odwzorowaniu położenia punktów. Rozkład punktów jak na Rys. 3.20 świadczy o wystąpieniu błędów przy ich wyznaczaniu, aproksymacja wielomianem trzeciego stopnia nie jest podatna na wpływ pojedynczych, źle wyznaczonych punktów. Po wyznaczeniu wielomianów dla górnej i dolnej powieki, jako kąciki oka przyjmuje się najbliższe źrenicy punkty przecięcia wielomianów (Rys. 3.21). Na Rys. 3.21 przedstawiono ilustrację wyniku aproksymacji kształtu krawędzi powiek wielomianem trzeciego stopnia. Rys. 3.21. Ilustracja wyniku działania metody najmniejszych kwadratów w aproksymacji kształtu krawędzi powiek Kolejnym etapem procesu wyodrębniania cech twarzy jest określenie kształtu ust. Podobny problem rozwiązano w pracy [39]. W zaproponowanej metodzie CSM (Color 46 Tabela 3.1. Współrzędne punktów dla których wyznaczono wielomiany f1 (x) i f2 (x) Wielomian f1 (x) Rys. 3.19 (18, 77) (78, 97) (22, 80) (82, 97) (26, 83) (86, 98) (30, 85) (90, 97) (34, 87) (94, 96) (38, 88) (98, 95) (42, 92) (102, 93) (46, 94) (106, 91) (50, 95) (110, 89) (54, 95) (114, 86) (58, 96) (118, 83) (62, 97) (122, 81) (66, 99) (126, 78) (70, 98) (130, 73) (74, 97) Wielomian f2 (x) Rys. 3.20 (146, 54) (86, 96) (142, 60) (82, 94) (138, 70) (78, 95) (134, 73) (74, 96) (130, 79) (70, 95) (126, 82) (66, 95) (122, 86) (62, 93) (118, 89) (58, 90) (114, 89) (54, 88) (110, 90) (50, 86) (106, 87) (46, 84) (102, 93) (42, 82) (98, 93) (38, 79) (94, 94) (34, 76) (90, 96) and Shape of Mouth) wyznaczano krawędzie i kąciki ust w realizacji zagadnienia rozpoznawania mowy. Autor przetwarza obraz obszaru ust określony na podstawie uprzednio wyznaczonych współrzędnych oczu. W pracy przyjęto kryterium progowania obrazu barwnego pozwalające na wyodrębnienie obszaru ust na podstawie analizy składowych RGB. Kryterium to opisuje poniższa zależność: ⎧ ⎪ ⎪ ⎪ ⎪ ⎨ B − G < T1 reg ust = ⎪ R − B < T 2 ⎪ ⎪ ⎪ ⎩ (3.17) R − G < T3 W pracy [39] autor doświadczalnie określił wartości progów jako: T 1 ∼ = 20, T 2 ∼ = 40, T3 ∼ = 40. W przypadku zastosowanej do badań bazy obrazów twarzy wartości powyższe nie były skuteczne, co więcej wymagane było wyznaczanie indywidualnych wartości progów dla każdego zdjęcia. W celu eliminacji powyższych niedogodności opracowano modyfikację metody CSM polegającą na zastosowaniu progowania w przestrzeni (R/G, B/G) określoną zależnością (3.15). Dzięki takim zmianom możliwe stało się dobranie uniwersalnych wartości progów T1 = 1.64 i T2 = 0.69 dla obszaru ust, zapewniających wydzielenie konturu dla wszystkich zdjęć w bazie z zadowalającą dokładnością. 47 Jako fragment obrazu twarzy zawierający obszar ust przyjęto prostokąt ograniczony pionowymi prostymi: xR = RIrisx i xL = LIrisx ; oraz poziomymi: yU i yD . Zależności zastosowane do wyznaczenia granic obszaru ust zilustrowano na Rys. 3.22. xL =LIris x xR =RIrisx y =E_ctry 0.8 · d d 1.5 · d yU yD Rys. 3.22. Ilustracja zależności wykorzystanych do wyznaczenia granic obszaru ust Po dokonaniu progowania w przestrzeni (R/G, B/G), wyznaczono dolną i górną granicę konturu ust. Wykorzystano procedurę analogiczną do metody określenia granic obszaru twarzy. Jako górną granicę przyjęto wiersz, w którym liczba występujących w ciągu białych pikseli przekracza zadaną wartość, jako dolną – wiersz, w którym liczba ta spada poniżej zadanej wartości. Kąciki ust wyznaczono odnajdując położenia skrajnych pikseli konturu ust. Na podstawie położenia kącików, wyznaczono punkt centralny konturu ust Mctr , z którego poprowadzono 16 promieni o długości R = 0.6·corn dist, gdzie corn dist to odległość pomiędzy lewym i prawym kącikiem ust. Następnie poruszając się wzdłuż kolejnych promieni (zaczynając od punktu Mctr ) analizowano barwę pikseli obrazu, co pozwoliło na określenie krawędzi ust. Na Rys. 3.23 przestawiono obraz uzyskany w wyniku progowania RGBG z naniesioną siatką promieni oraz punktami określającymi krawędź ust. Rys. 3.24 ilustruje położenie wyznaczonych punktów krawędzi ust na oryginalnym obrazie obszaru ust. 48 Rys. 3.23. Wynik działania procedury wyznaczania krawędzi ust na obrazie progowanym w przestrzeni (R/G, B/G) Rys. 3.24. Ilustracja wyznaczonych punktów krawędzi ust na obrazie oryginalnym Sformułowano algorytm RGBG-CSM określenia kształtu ust: WE: Kolorowy obraz RGB twarzy, współrzędne środków okręgów opisujących tęczówki. WY: Zbiór 16 punktów określających kształt krawędzi ust, z których dwa wyznaczają kąciki ust. 1: Określić pionowe granice obszaru ust jako środki okręgów opisujących tęczówki: xR = RIrisx , xL = LIrisx . gdzie: RIrisx i LIrisx – współrzędne środków okręgów opisujących tęczówki odpowiednio, prawego i lewego oka. 2: Określić poziome granice obszaru ust jako (Rys. 3.22): yU = E ctry + S1 · d, yD = E ctry + S2 · d, gdzie: S1 = 0.8, S2 = 1.5, d = 12 (RIrisx + LIrisx ). 3: Dokonać transformacji obszaru ust do przestrzeni (R/G, B/G) zgodnie z (3.14). 49 4: Dokonać progowania obszaru ust w przestrzeni (R/G, B/G) zgodnie z (3.15) dla wartości progowych T1 = 1.64 i T2 = 0.69 oraz przeprowadzić dwukrotnie filtracje medianową uzyskanego obrazu. 5: Wyznaczyć poziome granice konturu ust, oraz jako kąciki przyjąć najbardziej na lewo i prawo wysunięte piksele konturu. 6: Wyznaczyć punkt Mctr centrum konturu ust, zgodnie z zależnościami: Mctr x = Rcornx + Lcornx , Mctr 2 y = Rcorny + Lcorny 2 gdzie: Rcorn i Lcorn – współrzędne odpowiednio prawego i lewego kącika ust. 7: Określić kąt nachylenia prostej przechodzącej przez oba kąciki ust korzystając ze wzoru: α = arctg( Lcorny − Rcorny ) Lcornx − Rcornx oraz wyznaczyć siatkę 16 promieni wychodzących z punktu Mctr . Kąty nachylenia promieni zwiększyć o wartość α, aby dwa z nich przecinały kąciki ust Rcorn i Lcorn wyznaczone w kroku 5. γi = i · π + α, i = 1 . . . 16 8 gdzie: γi – kąt nachylenia i-tego promienia. 8: Dla każdego promienia, zaczynając od punktu Mctr , wyznaczyć punkt krawędzi obszaru ust. 3.3. Konstruowanie wektora charakterystyk twarzy i kalibracja parametrów W wyniku działania procedur lokalizacji cech twarzy uzyskano informacje dotyczące opisu charakterystyk (kształt krawędzi powiek, kształt ust, średnice tęczówek) oraz położenia określonych punktów (środki tęczówek, kąciki ust i oczu). Na podstawie tych informacji zbudowano wektor opisu charakterystyk twarzy. Przy projektowaniu struktury wektora postawiono następujące warunki: 50 1. Wszystkie zależności położenia punktów charakterystycznych mierzone będą przy wykorzystaniu uniwersalnej jednostki Muld; 2. Oprócz miar położenia charakterystyk, w wektorze znajdą się informacje opisujące asymetrię określonych cech; 3. W strukturze wektora zawarte zostaną informacje dotyczące występowania opisu charakterystyk, które w określonych warunkach mogą nie występować (np. brak opisu kształtu ust w przypadku fotografii osoby z zasłoniętymi ustami); 4. Wektory charakterystyk będą wykorzystane do obliczenia wartości podobieństwa porównywanych twarzy według określonego kryterium; 5. Składowe wektora w etapie porównywania uwzględniane będą z określonymi wagami. Wartości tych wag dobrane zostaną w oparciu o wyniki eksperymentów przy wykorzystaniu bazy twarzy. Uwzględniając powyższe założenia zaproponowano strukturę wektora opisu charakterystyk przedstawioną w tabelach 3.2 i 3.3. P oM przyjmuje wartości: < 0 jeśli wektor nie zawiera opisu charakterystyk ust, 0 jeśli wektor zawiera pełne informacje opisu ust, > 0 jeśli w wektorze zawarte są tylko informacje o położeniu kącików ust. Wartości pomiarów charakterystyk kształtu powiek, wyznaczone zgodnie z ideą przedstawioną w rozdziale 2.2, włączono do wektora jako składowe REye i LEye, natomiast wartości charakterystyki asymetrii kształtu powiek – jako składową aElid. Wartości pozostałych charakterystyk asymetrii (aRL, aRL ax, aRLM) wyznaczono zgodnie z (2.1) przyjmując kolejno: aRL = Asym(dR, dL), aRL ax = Asym(RE ax, LE ax), aRLM = Asym(REM, LEM). Ostatnim etapem procesu uczenia systemu jest wyznaczenie wartości określających stopień podobieństwa wektorów opisu charakterystyk. Zadanie to zrealizowano porównując wyznaczone wektory każdy z każdym, wartości różnic zdefiniowano jako odległości euklidesowe wartości poszczególnych charakterystyk. Dla charakterystyk, których opis stanowi tablica wartości, jako różnice przyjęto średnią kwadratową odległości poszczególnych elementów tablicy. Wartość określająca podobieństwo wektorów jest obliczana jako średnia ważona wartości wyznaczonych różnic, poddanych uprzednio skalowaniu. Wartości wag dla charakterystyk wyznaczono eksperymentalnie. Proces skalowania wartości różnic jest niezbędny ze względu na zróżnicowanie zakresu zmienności pomiarów określonych charakterystyk. W tabelach 3.4 i 3.5 przedstawiono przykładowe wartości wyznaczonych różnic 51 Tabela 3.2. Nazwy składowych wektora charakterystyk twarzy oraz ich definicje Nazwa składowej Definicja P oM Wartość całkowita określająca obecność opisu charakterystyk ust dI Wartość zmiennoprzecinkowa określająca odległość między środkami tęczówek dR Wartość zmiennoprzecinkowa określająca odległość między wewnętrznym i zewnętrznym kącikiem prawego oka dL Wartość zmiennoprzecinkowa określająca odległość między wewnętrznym i zewnętrznym kącikiem lewego oka dE Wartość zmiennoprzecinkowa określająca odległość między wewnętrznymi kącikami oczu RE ax Wartość zmiennoprzecinkowa określająca odległość zewnętrznego kącika prawego oka od prostej przechodzącej przez kąciki wewnętrzne LE ax Wartość zmiennoprzecinkowa określająca odległość zewnętrznego kącika lewego oka od prostej przechodzącej przez kąciki wewnętrzne REM Wartość zmiennoprzecinkowa określająca odległość zewnętrznego kącika prawego oka od prawego kącika ust LEM Wartość zmiennoprzecinkowa określająca odległość zewnętrznego kącika lewego oka od lewego kącika ust składowych wektora opisu charakterystyk dla dwóch porównywanych wektorów oraz wartości odchylenia standardowego wyznaczonego dla 3000 losowo wybranych par wektorów. W przykładzie uwzględniono wektory zawierające informacje o położeniu kącików ust. Na podstawie powyższych danych stwierdzono zróżnicowanie zakresów zmienności wyników porównań charakterystyk, np. wartości aRL zmieniają się z dokładnością 0.01 i jako największą wartość przyjmuje 0.166, podczas gdy wartości REM z dokładnością 1 przy największej wartości równej 22.836. Założono, że wartości skalujące składowe wektora zostaną dobrane tak, aby wartość odchylenia standardowego dla określonej składowej zawierała sie w przedziale 1 σ 10. Uwzględniając założenia przyjęto wartości skalujące przedstawione w tab. 3.6. 52 Tabela 3.3. Nazwy składowych wektora charakterystyk twarzy oraz ich definicje (c.d.) Nazwa składowej Definicja aRL Wartość zmiennoprzecinkowa pomiaru charakterystyk asymetrii na bazie odległości kącików oczu (dR, dL) aRL ax Wartość zmiennoprzecinkowa pomiaru charakterystyk asymetrii na bazie odległości zewnętrznych kącików oczu od prostej przecinającej kąciki wewnętrzne (RE ax, LE ax) aRLM Wartość zmiennoprzecinkowa pomiaru charakterystyk asymetrii na bazie odległości kącików oczu od kącików ust (REM , LEM ) aElid Tablica wartości zmiennoprzecinkowych pomiaru charakterystyk asymetrii na bazie opisu kształtu powiek (REye, LEye) REye Tablica wartości zmiennoprzecinkowych – charakterystyk kształtu powiek prawego oka LEye Tablica wartości zmiennoprzecinkowych – charakterystyk kształtu powiek lewego oka M outh Tablica wartości zmiennoprzecinkowych – charakterystyk kształtu ust Ostatecznie, w wyniku porównania “wektorów każdy z każdym”, dla wszystkich fotografii zawartych w bazie utworzono tablicę zawierającą wartości określające stopień podobieństwa danej osoby do wszystkich pozostałych. Wartości te wyznaczono z poniższej zależności: d f ace = n wi · si · d f eature · i=1 1 n (3.18) gdzie: d f ace – wielkość określająca podobieństwo opisów twarzy, s – wektor wartości skalujących, w – wektor wag, d f eature – wektor wartości pomiarów różnic charakterystyk, n – liczba charakterystyk. System po procesie uczenia zawiera w bazie n wektorów wartości opisujących charakterystyki twarzy (gdzie n – liczba fotografii, dla których trenowano system). Rozszerzenie zdolności rozpoznawania o nowe osoby nie wymaga przebudowy całej bazy, a jedynie dopisania nowego wektora charakterystyk. Decyzja o zaklasyfikowaniu obrazu twarzy jako zgodnego z obrazem odniesienia jest podejmowana przez system na podstawie wyniku porównania wektora opisu charaktery- 53 Tabela 3.4. Wyznaczone wartości różnic charakterystyk dla przykładowych par wektorów, oraz wartości: odchylenia standardowego (σ), średniej kwadratowej (RM S) oraz maksymalnej wielkości dla 3000 losowo wybranych par wektorów dI [M uld] dR [M uld] dL [M uld] dE [M uld] RE ax [M uld] LE ax [M uld] aRL [M uld] 0.025 0.010 0.199 0.109 0.179 0.181 0.183 1.059 1.332 0.421 0.157 0.556 0.006 0.219 0.083 0.379 0.119 0.502 0.281 0.265 0.190 1.172 1.224 0.853 0.603 1.011 0.746 0.015 0.154 0.546 0.596 0.189 0.703 0.081 0.006 0.310 0.210 0.264 0.247 0.274 0.128 0.434 0.490 0.259 0.028 0.426 0.567 0.601 0.419 0.183 0.363 0.009 0.191 0.023 0.008 0.114 0.075 0.283 0.241 0.167 0.179 0.122 0.353 0.361 0.271 0.893 0.117 0.016 0.307 0.451 0.088 0.562 0.158 0.141 0.116 0.029 0.208 0.199 0.760 0.759 0.486 0.326 0.360 0.081 0.334 0.051 0.157 0.252 0.191 0.112 0.083 0.280 0.269 0.080 0.072 0.170 0.123 0.128 0.776 0.239 0.334 0.377 0.360 0.118 0.581 0.121 1.349 1.199 0.553 0.107 0.604 0.515 0.866 0.272 0.329 0.190 0.040 0.132 0.372 0.360 1.169 1.069 0.939 0.448 1.263 1.098 0.036 0.040 0.113 0.422 0.493 0.790 0.121 0.034 0.319 0.505 0.202 0.101 0.276 0.068 0.099 0.036 0.655 0.113 0.055 0.113 0.084 0.117 0.242 0.074 0.315 0.163 0.073 0.497 0.155 0.326 0.001 0.112 0.317 0.083 0.027 0.513 0.370 0.076 0.398 0.359 0.135 0.183 0.175 0.074 0.929 0.706 0.406 0.315 0.300 0.233 0.163 0.439 0.355 0.345 0.231 0.376 0.160 0.350 0.043 0.327 0.266 0.281 0.224 0.215 0.085 0.214 0.165 0.140 0.246 0.420 0.233 0.748 0.007 0.005 0.050 0.062 0.041 0.013 0.028 0.025 0.016 0.107 0.012 0.034 0.007 0.041 0.033 0.025 0.035 0.011 0.012 0.031 0.028 0.027 0.017 0.040 0.040 0.006 0.021 0.023 0.041 0.039 0.032 0.034 0.018 σ = 0.597 RM S = 0.952 M AX = 3.443 0.228 0.372 1.697 0.272 0.445 1.696 0.606 0.958 3.422 0.233 0.347 1.853 0.203 0.316 1.401 0.031 0.048 0.166 styk wyznaczonego na podstawie obrazu wejściowego (w etapie weryfikacji) z wektorem przechowywanym w bazie. Jeśli różnica między wartością wyznaczoną na podstawie pomiaru, a wartością określoną dla obrazu odniesienia (wyznaczoną w etapie uczenia) nie 54 Tabela 3.5. Wyznaczone wartości różnic charakterystyk dla przykładowych par wektorów, oraz wartości: odchylenia standardowego (σ), średniej kwadratowej (RM S) oraz maksymalnej wielkości dla 3000 losowo wybranych par wektorów (c.d.) aRL ax [M uld] REye [M uld] LEye [M uld] aElid [M uld] REM [M uld] LEM [M uld] aRLM [M uld] 0.571 0.569 0.912 0.589 1.131 0.493 0.254 1.145 0.471 1.252 0.157 1.064 0.639 0.928 0.850 1.324 0.017 0.877 0.064 0.928 0.063 0.237 0.961 0.744 0.614 2.437 0.803 0.663 0.505 0.303 0.890 0.262 1.853 5.157 7.694 3.124 2.824 4.824 4.886 2.608 1.880 3.456 5.463 2.788 2.569 1.729 6.671 1.721 2.744 3.047 2.442 2.942 1.925 3.051 7.190 6.159 6.379 6.389 3.600 4.401 3.139 5.518 4.418 3.810 8.305 9.384 4.452 8.437 6.220 3.443 4.435 4.230 3.179 5.077 5.066 4.520 3.398 4.270 4.015 6.933 2.766 2.808 3.300 2.548 4.780 3.992 3.912 7.710 7.440 5.679 4.879 4.911 4.087 3.821 3.149 5.776 3.823 11.037 7.583 1.931 2.375 2.250 2.092 1.934 3.252 1.590 2.266 2.442 2.363 1.834 2.283 2.047 2.380 2.140 2.186 2.165 1.941 2.558 1.883 1.592 1.418 2.680 1.451 1.745 2.669 1.597 1.293 3.377 2.117 2.090 1.868 4.029 1.454 1.719 0.475 1.778 1.448 0.499 0.237 0.610 0.345 1.807 0.808 1.157 2.314 2.149 2.155 1.431 1.034 0.670 1.168 0.052 0.375 0.353 0.160 0.039 0.646 0.180 0.038 1.829 1.438 1.514 1.024 1.921 0.897 1.329 1.333 0.476 1.922 1.558 0.007 0.272 0.014 0.059 2.213 1.410 0.944 2.466 2.298 2.284 1.400 1.114 0.690 1.165 0.427 0.541 0.080 0.189 0.325 1.017 0.135 0.217 2.422 1.810 1.691 0.996 2.267 0.745 0.012 0.036 0.000 0.008 0.004 0.042 0.041 0.051 0.033 0.033 0.047 0.019 0.009 0.008 0.007 0.003 0.001 0.002 0.001 0.033 0.008 0.029 0.022 0.024 0.026 0.002 0.015 0.051 0.028 0.010 0.003 0.027 0.014 σ = 1.051 RM S = 1.574 M AX = 4.603 2.150 5.182 14.847 2.056 5.201 13.240 0.973 2.819 8.445 6.853 9.052 22.836 7.583 14.942 32.818 0.135 0.178 0.386 przekracza zadanego progu, to system klasyfikuje obraz twarzy jako poprawnie zweryfikowany. 55 Tabela 3.6. Wartości skalujące przyjęte dla poszczególnych charakterystyk Charakterystyka dI dR dL dE RE ax LE ax aRL Wartość skalująca 10 10 10 10 10 10 100 Charakterystyka aRL ax REye LEye aElid REM LEM aRLM Wartość skalująca 10 1 1 1 1 1 10 Określono procedury kalibracji systemu mające na celu wyznaczenie parametrów: wartości wag pomiaru różnic charakterystyk i wartości progu klasyfikacji. Zgodnie z (3.18) wartość określająca stopień podobieństwa twarzy wyznaczono jako średnią różnic wartości opisu charakterystyk, przy uwzględnieniu ich z określonymi wagami. Istotnym etapem procesu kalibracji systemu jest określenie wartości wag, które po dobraniu na początku procesu uczenia systemu nie powinny być modyfikowane i muszą spełniać swoje zadanie również dla twarzy nowo dodawanych do bazy. Procedurę eksperymentalnego doboru wag przeprowadzono dla dwóch zestawów danych: – dla wektorów opisujących charakterystyki tych samych osób (Zestaw I ), jednak przedstawionych na różnych ujęciach (wykluczono możliwość porównania jednakowych wektorów, nie uwzględniono wektorów nie zawierających opisu charakterystyk ust). W tym przypadku należy dążyć do takiego doboru wag, aby wynik porównania przyjmował jak najmniejszą wartość. – dla wektorów opisujących charakterystyki różnych osób (wykluczono możliwość porównania wektorów tych samych osób). Dążono do wyznaczenia takich wartości wag, aby wynik porównania przyjmował jak największą wartość (Zestaw II ). Dobór wag miał na celu optymalizację wartości średniej kwadratowej wyników porównania wektorów dla określonego zestawu danych, czyli: dW eq = n d i=1 f ace2i · 1 n (3.19) gdzie: dW eq – miara określająca poziom poprawności dobranych wag, d f ace – wynik porównania wektorów opisu charakterystyk tej samej osoby, n – liczba porównań wektorów 56 w zestawie danych. dW dif f = k d f ace2j · j=1 1 k (3.20) gdzie: dW dif f – miara określająca poziom poprawności dobranych wag, d f ace – wynik porównania wektorów opisu charakterystyk różnych osób, k – liczba porównań wektorów w zestawie danych. Tabele 3.7, 3.8, 3.9 i 3.10 zawierają losowo wybrane wektory różnic charakterystyk wykorzystane do wyznaczenia wartości wag oraz średnią dla wektora wag wyznaczonego po trzykrotnym powtórzeniu procedury dla obu zestawów danych (wartości wag zawarto w tabeli 3.11). Tabela 3.7. Tablice różnic wartości opisu charakterystyk (Zestaw I ) wykorzystane do wyznaczenia wartości wag ID M 016 01-M M 052 14-M M 036 01-M W 017 14-W M 069 01-M M 047 01-M W 002 01-W W 004 01-W M 033 14-M M 031 14-M M 022 14-M M 030 14-M M 048 01-M M 071 14-M W 009 01-W M 013 14-M M 056 14-M M 038 14-M M 067 01-M W 016 14-W 016 052 036 017 069 046 002 004 033 031 022 030 048 071 009 013 056 038 067 016 14 01 14 01 14 14 14 14 01 01 01 01 14 01 14 01 01 01 14 01 dI [M uld] 0.028 0.121 0.092 0.186 0.075 0.284 0.201 0.135 0.043 0.224 0.141 0.390 0.091 0.250 0.001 0.052 0.016 0.221 0.383 0.144 dR [M uld] 0.121 0.062 0.215 0.080 0.214 0.001 0.068 0.120 0.015 0.253 0.315 0.270 0.023 0.208 0.098 0.272 0.087 0.039 0.179 0.118 dL [M uld] 0.036 0.098 0.231 0.063 0.106 0.019 0.006 0.113 0.269 0.163 0.109 0.528 0.021 0.196 0.276 0.238 0.102 0.217 0.279 0.704 57 dE [M uld] 0.025 0.257 0.208 0.338 0.012 0.126 0.407 0.199 0.021 0.204 0.154 0.860 0.027 0.491 0.083 0.288 0.095 0.378 0.229 0.421 RE ax [M uld] 0.161 0.326 0.505 0.376 0.089 0.400 0.046 0.303 0.072 0.287 0.377 0.020 0.158 0.325 0.352 0.037 0.155 0.104 0.167 0.077 LE ax [M uld] 0.028 0.171 0.323 0.054 0.371 0.260 0.203 0.294 0.022 0.345 0.366 0.033 0.147 0.009 0.068 0.140 0.495 0.177 0.216 0.083 aRL [M uld] 0.036 0.007 0.003 0.031 0.002 0.005 0.013 0.025 0.047 0.019 0.044 0.051 0.008 0.000 0.075 0.010 0.002 0.047 0.025 0.152 aRL ax [M uld] 0.609 0.857 1.526 0.841 0.992 2.344 0.322 1.467 0.015 1.982 2.309 0.836 0.975 0.130 1.437 0.023 1.140 1.462 0.860 1.219 Tabela 3.8. Tablice różnic wartości opisu charakterystyk (Zestaw I ) wykorzystane do wyznaczenia wartości wag (c.d.) oraz średnia ważona dla wartości wag zawartych w tabeli 3.11 ID M 016 01-M M 052 14-M M 036 01-M W 017 14-W M 069 01-M M 047 01-M W 002 01-W W 004 01-W M 033 14-M M 031 14-M M 022 14-M M 030 14-M M 048 01-M M 071 14-M W 009 01-W M 013 14-M M 056 14-M M 038 14-M M 067 01-M W 016 14-W 016 052 036 017 069 046 002 004 033 031 022 030 048 071 009 013 056 038 067 016 14 01 14 01 14 14 14 14 01 01 01 01 14 01 14 01 01 01 14 01 REye [M uld] 3.679 2.056 2.201 2.448 2.055 3.258 2.646 2.319 4.227 4.034 1.741 3.871 1.588 2.519 2.231 1.916 4.296 2.193 1.316 3.279 LEye [M uld] 2.000 2.692 4.048 2.385 2.528 3.451 1.029 3.042 4.749 4.524 2.329 4.659 1.976 2.467 2.556 1.925 4.911 2.779 2.253 3.832 aElid [M uld] 1.731 1.551 3.602 1.900 1.654 2.142 2.479 2.048 2.345 1.746 2.802 1.768 2.009 1.800 3.905 1.643 2.132 1.655 2.218 2.274 REM [M uld] 0.514 0.040 0.432 0.597 0.427 1.368 0.282 0.014 0.298 0.527 0.149 0.464 0.156 0.686 0.191 0.182 0.265 0.046 0.365 0.359 LEM [M uld] 0.506 0.091 0.501 0.738 0.114 1.315 0.067 0.458 0.323 0.397 0.106 0.250 0.239 0.692 0.278 0.330 0.004 0.034 0.424 0.336 aRLM [M uld] 0.000 0.003 0.005 0.019 0.025 0.001 0.017 0.024 0.003 0.006 0.024 0.018 0.007 0.002 0.007 0.014 0.024 0.007 0.003 0.002 dW eq d f ace [M uld] 0.729 0.641 1.068 0.772 0.665 1.152 0.598 0.811 0.957 1.131 0.842 1.077 0.571 0.752 0.889 0.543 1.054 0.719 0.686 1.000 3.47 Tabela 3.9. Tablice różnic wartości opisu charakterystyk (Zestaw II ) wykorzystane do wyznaczenia wartości wag ID M 036 14-M M 025 01-M M 054 14-M M 054 14-M M 060 14-M M 040 01-W M 031 14-M M 030 14-M M 026 14-M M 046 01-W M 017 14-M M 039 14-M M 014 14-M M 014 01-M M 004 14-M M 049 01-W M 059 01-M M 065 14-M M 046 01-W M 018 01-M 049 008 005 008 016 017 019 033 010 017 072 017 003 073 019 017 061 019 017 005 14 14 01 14 01 14 01 14 14 14 01 14 14 01 01 14 14 01 01 01 dI [M uld] 0.439 1.886 1.574 1.380 0.299 2.068 1.808 0.504 0.332 0.347 0.234 2.115 1.305 1.284 0.456 1.671 1.441 1.822 0.161 0.821 dR [M uld] 0.346 0.722 0.833 0.533 0.127 0.277 0.073 1.017 0.509 0.005 0.067 0.270 0.303 0.018 0.308 0.297 0.224 0.458 0.085 0.505 dL [M uld] 0.284 0.396 0.250 0.218 0.340 0.295 0.118 0.264 0.757 0.372 0.312 0.391 0.730 0.061 0.952 0.549 0.567 0.218 0.436 0.005 58 dE [M uld] 0.031 1.463 1.237 0.866 0.371 1.926 1.935 0.001 0.974 0.953 0.022 2.340 0.983 1.163 1.310 2.246 1.558 1.458 0.615 0.916 RE ax [M uld] 0.387 0.456 0.207 0.131 0.127 0.176 0.112 1.620 0.028 0.207 0.233 0.173 0.423 0.050 0.218 0.359 0.604 0.197 0.583 0.130 LE ax [M uld] 0.049 0.332 0.000 0.441 0.975 0.628 0.698 0.891 0.314 0.067 0.416 0.087 0.234 0.243 0.118 0.147 0.140 0.066 0.013 0.048 aRL [M uld] 0.015 0.034 0.024 0.030 0.033 0.003 0.044 0.022 0.049 0.063 0.052 0.029 0.086 0.017 0.026 0.038 0.078 0.055 0.032 0.044 aRL ax [M uld] 2.409 1.051 0.571 1.889 0.786 0.256 0.674 0.962 0.647 0.015 3.229 0.059 0.115 1.663 0.448 1.096 1.060 0.899 0.826 2.112 Tabela 3.10. Tablice różnic wartości opisu charakterystyk (Zestaw II ) wykorzystane do wyznaczenia wartości wag (c.d.) oraz średnia ważona dla wartości wag zawartych w tabeli 3.11 ID M 036 14-M M 025 01-M M 054 14-M M 054 14-M M 060 14-M M 040 01-W M 031 14-M M 030 14-M M 026 14-M M 046 01-W M 017 14-M M 039 14-M M 014 14-M M 014 01-M M 004 14-M M 049 01-W M 059 01-M M 065 14-M M 046 01-W M 018 01-M 049 008 005 008 016 017 019 033 010 017 072 017 003 073 019 017 061 019 017 005 14 14 01 14 01 14 01 14 14 14 01 14 14 01 01 14 14 01 01 01 REye [M uld] 5.264 6.389 6.114 3.850 5.438 4.602 6.321 6.523 4.521 7.565 4.125 5.908 4.661 3.611 10.73 7.617 6.029 3.634 8.748 8.190 LEye [M uld] 5.553 2.719 1.656 4.881 5.528 3.879 4.611 4.121 6.845 7.924 4.685 4.756 4.265 4.185 10.088 9.078 6.184 3.972 8.911 6.081 aElid [M uld] 3.407 3.680 3.033 2.559 1.790 1.189 1.702 2.289 3.430 1.389 2.328 2.973 2.057 2.139 4.143 1.955 2.491 1.284 1.578 2.990 REM [M uld] 0.023 1.456 0.644 0.953 0.989 3.162 0.349 2.305 1.002 1.862 1.642 0.009 0.821 0.607 0.381 1.187 1.433 2.120 1.266 0.174 LEM [M uld] 1.078 1.233 1.250 0.754 1.527 3.708 0.214 1.038 0.690 2.463 1.206 0.537 0.067 1.386 0.255 1.696 1.981 1.696 1.725 0.907 aRLM [M uld] 0.073 0.012 0.050 0.015 0.043 0.063 0.042 0.043 0.026 0.065 0.037 0.027 0.070 0.035 0.036 0.056 0.025 0.033 0.047 0.041 dW dif f d f ace [M uld] 5.771 7.823 5.976 6.484 5.470 8.205 5.725 7.898 6.383 6.337 6.536 5.991 5.432 5.277 7.808 8.689 7.823 6.688 6.722 6.565 6.685 Tabela 3.11. Wartości wag wyznaczona na podstawie dwóch zestawów wektorów różnic charakterystyk opisu twarzy Charakterystyka Waga Charakterystyka dI 6.5 aRL ax dR 15 REye dL 15 LEye dE 8 aElid RE ax 8 REM 8 LEM LE ax aRL 11 aRLM 59 Waga 9 2.5 2.5 3.2 9 4 6 4. Opracowanie systemu programowego EM-Asym.Auth Omówiono szczegóły implementacji systemu programowego do realizacji metody EMAsym.Auth oraz wyniki funkcjonowania systemu na każdym z etapów. Przedstawiono wymagania do struktury systemu określające możliwość wykorzystania implementacji metody PCA w celu porównania efektywności z metodą EM-Asym.Auth. Scharakteryzowano środowisko programistyczne zastosowane do realizacji sytemu. 4.1. Specyfikacja systemu EM-Asym.Auth W celu zbadania efektywności metody EM-Asym.Auth opracowano i zaimplementowano system programowy przy następujących założeniach: 1. System nie będzie aplikacją czasu rzeczywistego i może wymagać ingerencji użytkownika, bądź ręcznej kalibracji na niektórych etapach funkcjonowania. 2. Dane wejściowe dla aplikacji będą stanowić pliki graficzne zawierające kolorowe fotografie twarzy. 3. Bazę wiedzy systemu mają stanowić pliki tekstowe z zapisanymi wektorami charakterystyk twarzy, a także pliki tekstowe zawierające wartości określające podobieństwo danej twarzy do wszystkich pozostałych zawartych w bazie (wynik porównania każdej twarzy ze wszystkimi pozostałymi), w formacie zgodnym z danymi wynikowymi systemu weryfikacji metod rozpoznawania twarzy The CSU Face Identification Evaluation System [5] 4. W trybie weryfikacji tożsamości aplikacja powinna symulować proces autentykacji użytkownika na podstawie określonego identyfikatora i fotografii twarzy. Wiarygodne oszacowanie efektywności metody rozpoznawania twarzy wymaga porównania wyników funkcjonowania systemu z danymi o efektywności innych metod, a najlepiej, aby metoda stanowiąca odniesienie była przetestowana na tym samym zestawie danych. Do uzyskania danych pomocnych przy zbadaniu efektywności metody Fae-Asym ID użyto systemu The CSU Face Identification Evaluation System [5] opracowanego w celu 60 umożliwienia porównania dowolnej, projektowanej metody z metodami takimi jak Eigenfaces czy LDA. System ten został opracowany do współpracy z bazą FERET, jednak łatwo można go adaptować do użycia z dowolną bazą twarzy. System CSU wykorzystano do zbadania efektywności metody PCA (Eigenfaces) na bazie twarzy AR Face Database, użytej do testowania systemu EM-Asym.Auth. Wynikiem funkcjonowania systemu CSU jest zestaw plików tekstowych zawierających odległości – wartości określające stopień podobieństwa między twarzami z testowanego zestawu. Przyjęto, że zestaw wyników procesu uczenia systemu EM-Asym.Auth będzie zapisany w takiej samej formie, tak aby umożliwić przeprowadzenie symulacji procesu autentykacji użytkownika na danych uzyskanych jako wynik uczenia obu metod (PCA i EM-Asym.Auth). System EM-Asym.Auth składa się z trzech modułów: – ekstrakcji opisu charakterystyk, – porównywania wektorów opisu charakterystyk, – oszacowania błędów przy wykorzystaniu symulacji procesu autentykacji. Modułowa budowa systemu oraz zapisywanie danych z poszczególnych modułów umożliwia zbadanie poprawności funkcjonowania systemu na każdym z etapów przetwarzania, oraz porównanie uzyskanych wyników pośrednich z danymi wzorcowymi. Strukturę zaimplementowanego systemu badawczego przedstawiono na rys. 4.1 Podczas wczytywania plików z bazy AR Face Database jako ID użytkownika przyjęto pierwsze 5 znaków nazwy pliku ponieważ, stanowią one unikatowy identyfikator osoby przedstawionej na zdjęciu (jest zgodny dla różnych wariantów fotografii tej samej osoby, patrz rozdział 5.1). W etapie wydzielenia opisu charakterystyk twarzy zastosowano algorytmy przetwarzania obrazu mające na celu uzyskanie: współrzędnych określających położenie środków tęczówek, wartości promieni okręgów opisujących tęczówki, współrzędnych punktów kącików oczu, wartości współczynników wielomianów aproksymujących kształt krawędzi powiek, współrzędne kącików i punktów określających krawędzie ust. W wyniku działania tego etapu wyznaczone charakterystyki zapisano w plikach tekstowych. Rys. 4.2 przedstawia etapy przetwarzania prowadzące do pozyskania opisu charakterystyk twarzy. W Dodatku przedstawiono zawartość trzech plików opisu charakterystyk dla fotografii M 025 01. W plikach *.dsc zapisano współrzędne charakterystycznych punktów, oraz średnicę okręgu opisującego tęczówki oczu – przyjętą jednostkę Muld. Pierwsze trzy wiersze sta- 61 Rys. 4.1. Schemat systemu badawczego opracowanego do porównania efektywności metod EM-Asym.Auth i PCA nowią nagłówek pliku definiujący kolejność zapisanych charakterystyk, potem następują ich wartości. Wartość Muld jest wyznaczana jako wartość średnia długości średnic lewego i prawego oka, jeśli w procesie automatycznego wyznaczania charakterystyk różnica długości średnicy dla lewego i prawego oka przekracza określoną wartość progową, system przyjmuje, że średnice zostały wyznaczone błędnie i wymaga manualnego określenia średnicy. W przypadku plików * mouth.dat zawartość stanowią współrzędne punktów określających położenie kącików, a także krawędzi ust. Pierwszy wiersz stanowi nagłówek definiujący kolejność punktów zapisanych w wierszach 2-4: lewego i prawego kącika, a także wyznaczonego środka ust. Od wiersza 6 zapisano punkty wyznaczone na krawędzi ust. 62 Rys. 4.2. Etapy procesu ekstrakcji charakterystyk Pliki * poly.dat zawierają wartości współczynników wielomianów opisujących kształt górnych i dolnych powiek obu oczu. W nagłówku pliku zawarto informacje o kolejności zapisu wielomianów w pliku, a także o kolejności zapisu współczynników wielomianów. Wartości współczynników zapisano z dokładnością odpowiadającą liczbom typu double. Wartości charakterystyk zawarte w opisanych plikach stanowią informacje wejściowe dla modułu realizującego proces konstruowania wektorów charakterystyk (zgodnie ze specyfikacją zawartą w rozdziale 3.3, tabele 3.2 i 3.3) oraz porównywanie wektorów. Jako wynik porównania wektorów charakterystyk z uwzględnieniem wartości skalujących oraz wyznaczonych wartości wag otrzymano zbiór plików. Dla każdego pliku zawierającego obraz twarzy utworzono plik tekstowy zawierający odległości określające stopień podobieństwa do wszystkich pozostałych zawartych w bazie. Struktura danych wyjściowych jest wzorowana na danych uzyskanych w wyniku działania systemu CSU. W Dodatku umieszczono fragmenty plików odległości uzyskanych w procesie treningu systemów CSU i EM-Asym.Auth. Moduł realizujący oszacowanie efektywności systemu opracowano tak, aby wczytywał dane wejściowe z plików zawierających odległości określające stopień podobieństwa badanych twarzy, a następnie przeprowadził symulację autentykacji użytkowników w liczbie powtórzeń zadanych na początku procesu. Program w pierwszej kolejności z dowolnego pliku z odległościami wczytuje listę wszystkich użytkowników, dla których przeprowadzono trening systemu (każdy plik z odległościami zawiera dane dotyczące wszystkich twarzy). Następnie losowany jest jeden identyfikator spośród wszystkich wczytanych, a dla niego wybiera się losowo zestaw 10 identyfikatorów 63 (wykluczono możliwość wylosowania tych samych identyfikatorów). W kolejnym kroku, z pliku odpowiadającego pierwszemu identyfikatorowi program wczytuje odległości do 10 pozostałych. Procedura ta symuluje próbę 10-krotnej próby autentykacji dla określonego, wzorcowego identyfikatora. Po wczytaniu danych aplikacja przeprowadza klasyfikację z zadaną wartością progową oraz zapisuje dane dotyczące liczby poprawnych, niepoprawnych, a także wszystkich przeprowadzonych klasyfikacji. Procedura losowania identyfikatorów i klasyfikacji powtarzana jest zadaną liczbę razy. Na podstawie statystyk klasyfikacji program wyznacza wartości błędów FAR i FRR. Do implementacji systemu EM-Asym.Auth wykorzystano środowisko programistyczne Borland C++ Builder 6 (na licencji Personal, oprogramowanie zostało darmowo udostępnione do zastosowań niekomercyjnych) pracujące pod kontrolą systemu operacyjnego Microsoft Windows XP. Wykorzystano testową wersję biblioteki OptiVec do realizacji aproksymacji krawędzi powiek wielomianami, a także implementację filtru Mitchell do poprawy rozdzielczości obrazu. W systemie zaimplementowano algorytmy przetwarzania obrazu wykorzystywane w procedurach ekstrakcji charakterystyk twarzy (m.in. Canny Edge Detection, przekształcenia między przestrzeniami barw, algorytmy filtracji), a także autorskie algorytmy (LM, ILP, RGBR, RGBG-CSM ). 4.2. Przykłady funkcjonowania systemu w trybach ekstrakcji charakterystyk i symulacji procesu autentykacji System EM-Asym.Auth składa się z trzech programów realizujących zadania omówionych modułów. Aplikacje te mogą funkcjonować niezależnie pod warunkiem zachowania spójności danych wejściowych. Pierwsza aplikacja realizująca funkcje modułu ekstrakcji charakterystyk odpowiada za lokalizację obszaru twarzy, oczu, ust, oraz za lokalizację zdefiniowanych punktów (np. określających krawędzie powiek, kąciki oczu i ust). Dane wejściowe dla tego programu stanowi obraz w formacie .bmp zapisany z 24-bitową głębią kolorów. Rys. 4.3 przedstawia widok głównego okna programu. Po wczytaniu obraz jest skalowany proporcjonalnie tak, aby jego szerokość wynosiła 1200 pikseli. Skalowanie obejmuje proces resamplingu obrazu przy wykorzystaniu filtru Mitchell w celu zwiększenia rozdzielczości. 64 Rys. 4.3. Widok głównego okna programu po wczytaniu i przeskalowaniu obrazu Na tym etapie pracy systemu możliwe jest manualne oznaczenie charakterystyk na obrazie, bądź przeprowadzenie automatycznej lokalizacji. W przypadku przetwarzania automatycznego, system w pierwszej kolejności dokonuje lokalizacji obszaru twarzy przy wykorzystaniu implementacji metody segmentacji obrazu w przestrzeni I2 (patrz rozdział 3.1). Lokalizacja obszaru twarzy przeprowadzana jest na obrazie pomniejszonym proporcjonalnie do obrazu o szerokości 400 pikseli. Zwiększenie rozdzielczości nie wpływało na wynik procesu lokalizacji, natomiast znacznie wydłużało czas przetwarzania. Po wyznaczeniu obszaru twarzy program określa położenie oczu oraz wydziela fragmenty obrazu zawierające oczy. W przypadku niewłaściwego określenia obszaru twarzy użytkownik może skorygować wartość progową, jednak dla badanych obrazów wartość domyślna (RBT rsh = 37) była poprawna. Rys. 4.4 przedstawia widok okna lokalizacji twarzy i ekstrakcji charakterystyk oczu, a także fragmenty okna dla różnych trybów wyświetlania wyznaczonego obszaru twarzy. Wyznaczone obszary oczu poddawane są dalszemu przetwarzaniu w celu określenia szczegółowych charakterystyk. Użytkownik może ingerować w proces przetwarzania poprzez modyfikację automatycznie dobranego progu segmentacji obrazu oka (dobór progu 65 Rys. 4.4. Widok okno lokalizacji twarzy i ekstrakcji charakterystyk oczu. Przykłady różnych trybów wyświetlania wyznaczonego obszaru twarzy opisuje zależność (3.9)), ręczny dobór paramterów progowania w przestrzeni (R/G, B/G) w etapie wyznaczania krawędzi powiek, oraz modyfikację położenia punktów krawędzi powiek. W celu kontroli procesu automatycznej ekstrakcji charakterystyk możliwe jest określenie sposobu wizualizacji charakterystyk. Rys. 4.5 przedstawia fragment okna lokalizacji twarzy i detekcji charakterystyk na kolejnych etapach przetwarzania obszaru oczu. Wynikiem tego etapu jest wyznaczenie wielomianów przybliżających kształt krawędzi powiek. Po prawidłowym wyznaczeniu charakterystyk oczu przenoszone są one na obraz w głównym oknie programu. 66 Rys. 4.5. Widok fragmentu okna automatycznej lokalizacji charakterystyk oczu w kolejnych etapach przetwarzania Wizualizacja wyników procesu lokalizacji charakterystyk dokonywana jest, w zależności od etapu funkcjonowania, na obrazach przedstawionych w różnej skali, jednak współrzędne wyznaczonych punktów oraz wartości współczynników wielomianów przeliczane są tak, aby odpowiadały obrazowi w oryginalnej skali. W kolejnym etapie, przy wykorzystaniu implementacji metody RGBG-CSM wyznaczany jest obszar ust, a także współrzędne punktów położonych na krawędziach ust. Możliwa jest modyfikacja parametrów segmentacji obrazu w przestrzeni (R/G, B/G). Rys. 4.6 i 4.7 przedstawiają okno lokalizacji charakterystyk ust po wyznaczeniu obszaru ust oraz po zlokalizowaniu punktów krawędzi. Po zakończeniu przetwarzania charakterystyki przenoszone są na obraz w głównym oknie programu. Na rys. 4.8 przedstawiono główne okno programu z wyznaczonymi charakterystykami oczu i ust. Aplikacja umożliwia również oznaczenie charakterystyk twarzy, które obecnie nie są uwzględniane przy budowie wektora opisu charakterystyk twarzy (np. kształt brwi, kształt sylwetki twarzy). Wyznaczone charakterystyki są automatycznie zapisywane do plików (patrz rozdział 4.1, Dodatek A). Program umożliwia wczytanie zapisanych charakterystyk, oraz charakterystyk wzorcowych (FG-NET, patrz rozdział 5.2). Zadaniem drugiej aplikacji wchodzącej w skład systemu, jest utworzenie wektorów charakterystyk oraz porównanie wszystkich utworzonych wektorów ze sobą (patrz rozdział 3.3). Użytkownik wybiera pliki .dsc, które mają być porównane (pliki * mouth.dat i * poly.dat są ładowane automatycznie). Po załadowaniu plików program na bieżąco 67 Rys. 4.6. Widok fragmentu okna automatycznej lokalizacji charakterystyk ust po wyznaczeniu obszaru ust Rys. 4.7. Widok fragmentu okna automatycznej lokalizacji charakterystyk ust po zlokalizowaniu krawędzi wyświetla wyniki pomiary charakterystyk oraz wyniki porównania wektorów. Rys. 4.9 i 4.10 przedstawiają okno programu na etapie wyboru plików z charakterystykami oraz 68 Rys. 4.8. Widok głównego okna programu z automatycznie wyznaczonymi charakterystykami oczu i ust po zakończeniu procesu porównywania. Pliki zawierające odległości określające stopień podobieństwa twarzy są zapisywane automatycznie w trakcie przetwarzania. Trzecia aplikacja wchodząca w skład systemu umożliwia symulację procesu autentykacji użytkownika. Dane wejściowe stanowią pliki utworzone przez aplikację realizującą zadania modułu porównywania wektorów charakterystyk. Użytkownik wskazuje jeden plik do wczytania, z którego program pobiera listę plików dostępnych do przetwarzania (przykład plików wejściowych dla tego etapu zawarto w Dodatku). Program akceptuje również pliki utworzone przy wykorzystaniu systemu CSU. Wskazanie przez użytkownika pliku inicjuje symulację, więc należy wcześniej określić parametry takie jak liczbę prób dla jednego identyfikatora, liczbę wszystkich powtórzeń, wartości progowe dla danej metody rozpoznawania twarzy. Z listy dostępnych identyfikatorów program wybiera losowo IDwz (w danej iteracji ten identyfikator traktowany jest jako wzorcowy, podany przez użytkownika przy próbie autentykacji), następnie dla danego IDwz losowany jest IDtest i przeprowadzana jest klasyfikacja zgodnie z regułami (4.1). 69 Rys. 4.9. Widok okna programu tworzącego wektory charakterystyk w etapie wyboru plików charakterystyk Rys. 4.10. Widok okna programu tworzącego wektory charakterystyk po zakończeniu procesu porównywania 70 if IDwz = IDtest and dist(IDwz , IDtest ) > T then F RR = F RR + 1 if IDwz = IDtest and dist(IDwz , IDtest ) T then F AR = F AR + 1 if IDwz = IDtest and dist(IDwz , IDtest ) T then COR = COR + 1 if IDwz = IDtest and dist(IDwz , IDtest ) > T then COR = COR + 1 (4.1) gdzie: IDwz , IDtest – wylosowane identyfikatory wzorcowy i testowy, dist(IDwz , IDtest ) – stopień podobieństwa dla IDwz wczytany z pliku odpowiadającego IDtest , F AR, F RR, COR – liczniki, odpowiednio ilości wystąpień błędu fałszywej akceptacji, ilości wystąpień błędu fałszywego odrzucenia, ilości poprawnych klasyfikacji. W zależności od wyniku klasyfikacji program zwiększa licznik błędów FAR, FRR lub prawidłowych klasyfikacji oraz licznik wszystkich przeprowadzonych klasyfikacji. Procedura losowania IDtest i porównywania z IDwz powtarzana jest w ilości określonej przez parametr “Tests per ID” w oknie programu. Procedura losowania identyfikatora wzorcowego IDwz powtarzana jest w ilości określonej w oknie programu przez paramter “Number of tests”. W programie zaimplementowano fuzję metod EM-Asym.Auth i PCA. Regułę umożliwiającą hybrydowe przetwarzanie przedstawiono w rozdziale 5.2 (5.1). W takim przypadku uwzględniane są wartości progowe podane dla obu metod oddzielnie. Po zakończeniu symulacji program wyświetla wyznaczone wartości błędów FAR/FRR, procent poprawnych klasyfikacji oraz liczbę wszystkich porównań. Rys. 4.11 i 4.12 przedstawiają okno programu w trybie symulacji dla danych z systemu EM-Asym.Auth, oraz w trybie hybrydowym. 71 Rys. 4.11. Widok okna programu symulacji procesu autentykacji dla danych z systemu EM-Asym.Auth Rys. 4.12. Widok okna programu symulacji procesu autentykacji w trybie hybrydowym 72 5. Eksperymentalne oszacowanie błędów automatycznej autentykacji osób W rozdziale scharakteryzowano bazy twarzy użyte do testowania zaimplementowanych procedur. Przedstawiono metodyki prowadzonych doświadczeń, wyniki eksperymentów a także potwierdzono efektywność metody na podstawie uzyskanych wyników. 5.1. Specyfika baz twarzy FaDAB (Politechnika Częstochowska) i AR-Face Database (CVC, Universitat Autònoma de Barcelona) Do celu zbadania poprawności funkcjonowania procedur opracowanej metody wykorzystano dwie bazy zawierające fotografie twarzy. Pierwsza z nich, FaDab, opracowana została w ramach projektu badawczego w Instytucie Informatyki Teoretycznej i Stosowanej Politechniki Częstochowskiej. Baza zawiera 150 zdjęć przedstawiających twarze 83 kobiet i 67 mężczyzn (łącznie 150 osób, zdjęcia wykonane zostały w jednej sesji). Zdjęcia o rozmiarach 400 × 300 pikseli zapisano w plikach formatu .bmp. W pracy wykorzystano wersję bazy z kolorowymi fotografiami, zdjęcia zapisano z 24-bitową głębią koloru (wersja bazy FaDab ze zdjęciami w 256-bitowej skali szarości dostępna jest na stronie http://icis.pcz.pl/∼januszb/baza.htm). Wiek osób przedstawionych na fotografiach zawiera się w przedziale 18 ÷ 60 lat. Zdjęcia zostały wykonane w zróżnicowanych warunkach oświetleniowych. Baza FaDab wykorzystana została do zbadania poprawności funkcjonowania procedur określenia położenia oczu, oraz obszaru twarzy. Główną cechą stanowiącą o przydatności bazy do wyżej wymienionego celu jest niejednorodność teł na jakich wykonane zostały fotografie. Rys. 5.1 przedstawia przykładowe fotografie kolorowe z bazy FaDab. Drugą bazą wykorzystaną w procedurze testowania jest AR Face Database [47], która została opracowana w Computer Vision Center of Universitat Autònoma de Barcelona i udostępniona nieodpłatnie do celów badawczych. Baza zawiera ponad 4000 kolorowych fotografii twarzy 126 osób (56 kobiet i 70 mężczyzn). Wszystkie zdjęcia wykonane zostały 73 Rys. 5.1. Przykładowe kolorowe fotografie z bazy FaDab w ściśle określonych i kontrolowanych warunkach, jednak podczas ich wykonywania nie określono wymogów odnośnie ubioru, makijażu ani dodatkowych elementów jak okulary. Istotne jest, że dla każdej osoby wykonano serię zdjęć w dwóch sesjach z 14-dniową przerwą, dzięki czemu przy weryfikacji systemu rozpoznawania wykorzystane różne fotografie przedstawiające tą samą osobę. Zdjęcia w bazie zapisano w plikach formatu .raw o rozmiarach 768 × 576 pikseli z 24-bitową głębią koloru. Zależnie od płci, wyrazu twarzy osoby przedstawionej na zdjęciu oraz warunków wykonania fotografii zastosowano następującą konwencję nazw: pliki F-xxx-yy.raw zawierają zdjęcia kobiet, natomiast M-xxx-yy.raw mężczyzn; xxx to unikatowy identyfikator osoby (przyjmuje wartości od 001 ÷ 056 dla kobiet i 001 ÷ 070 dla mężczyzn); yy określa pozę i wyraz twarzy przedstawiony na fotografii zgodnie z Tabelą 5.1. Tabela 5.1. Konwencja nazw plików zależnie wyrazu twarzy oraz warunków wykonania fotografii Wartość yy Pierwsza sesja Druga sesja 01 14 02 15 03 16 04 17 05 18 06 19 07 20 08 21 09 22 10 23 11 24 12 25 13 26 Warunki wykonania fotografii Neutralny wyraz twarzy, równomierne oświetlenie Uśmiech Złość Krzyk Oświetlenie z lewej strony Oświetlenie z prawej strony Oświetlenie z obu stron Fotorafia z okularami przeciwsłonecznymi j.w. przy oświetleniu z lewej strony j.w. przy oświetleniu z prawej strony Dolna część twarzy zasłonięta szalikiem j.w. przy oświetleniu z lewej strony j.w. przy oświetleniu z prawej strony 74 Wszystkie zdjęcia wykonane zostały na jednolitym, białym tle, co uniemożliwia uzyskanie wiarygodnych wyników przy badaniu procedury określenia obszaru twarzy. Fakt wykonania zdjęć w dwóch sesjach powoduje, że zdjęcia z bazy doskonale sprawdzają się przy testowaniu metod rozpoznawania twarzy, gdzie istotone jest aby porównywane twarze osób były przedstawione na różnych zdjęciach. Na Rys. 5.2 przedstawiono przykładowe warianty zdjęć z bazy AR Face Database jakie wykorzystano w badaniach. Rys. 5.2. Fotografie z bazy AR Face Database (zdjęcia tej samej osoby wykonane w dwóch sesjach) 5.2. Analiza skuteczności metody za pomocą systemu EM-Asym.Auth Poprawność funkcjonowania opracowanych i zaimplementowanych procedur zweryfikowano przy pomocy eksperymentów mających na celu zbadanie: 1. poprawności określenia położenia twarzy w obrazie oraz wstępnego oszacowania położenia oczu, 2. dokładności lokalizacji charakterystycznych punktów na obrazie twarzy, 3. poprawności opracowanej metody kodowania charakteryetyk asymetrii kształtu powiek, 75 4. efektywności systemu w zadaniu weryfikacji tożsamości na podstawie wyznaczonych wektorów charakterystyk. Skuteczność wyznaczania obszaru twarzy oraz położenia oczu zbadano na podstawie obserwacji wyników działania procedury lokalizacji twarzy (opisanej w rozdziale 3.1). Testy przeprowadzono przy wykorzystaniu 150 kolorowych fotografii zawartych w bazie FaDab. Bez względu na występowanie elementów zakłócających w tle, oraz warunki oświetleniowe, dla wszystkich zdjęć z bazy zarówno obszar twarzy jaki i położenie oczu zostały wyznaczone poprawnie. Podobne rezultaty uzyskano przeprowadzając badania z wykorzystaniem bazy AR Face Database, jedynym problemem jaki zaobserwowano były problemy z dokładną lokalizacją oczu w przypadku wykonanych z nieregularnym oświetleniem zdjęć osób noszących okulary. Sytuacja ta wynika z powstawania mocnych refleksów świetlnych w błyszczących oprawkach, na co metoda bazująca na gradiencie luminancji nie jest odporna. Przykładowe wyniki funkcjonowania procedury zawarto w tabeli 5.2. W etapie badania poprawności funkcjonowania procedury automatycznego wyznaczania punktów charakterystycznych twarzy jako wzorzec przyjęto zbiór ręcznie wyznaczonych charakterystyk dla bazy AR Face Database. Zestaw punktów opracowany został przez grupę roboczą do badań technik rozpoznawania twarzy oraz gestów FG-NET (Face & Gesture Recognition Working Group) [21] powołaną w ramach europejskiego programu Information Society Technologies. Zbiór zawiera współrzędne 22 charakterystyk dla fotografii wariantów 01, 02, 03, 05, obejmuje więc tylko pierwszą sesję, jednak w celu weryfikacji poprawności lokalizacji charakterystyk, zbiór ten jest wystarczający. W wyniku działania procedur automatycznej ekstrakcji charakterystyk opisanych w rozdziale 3 otrzymano m.in. zbiór punktów – charakterystyk twarzy. Tabela 5.3 zawiera oznaczenia oraz opis punktów wyznaczonych automatycznie. Jako miarę δ dopasowania punktów wyznaczonych do wzorcowych przyjęto pierwiastek ze średniego odchylenia kwadratowego metryk euklidesowych (wyrażonych w pikselach) poszczególnych punktów. W tabelach 5.4-5.6 zawarto przykładowe zestawienia współrzędnych punktów wyznaczonych automatycznie oraz punktów wzorcowych, a także miary dopasowania. W przypadku fotografii osoby noszącej okulary powodujące występowanie refleksów (nie w każdym przypadku oprawki powodowały zakłócenia, uzależnione to jest od warun- 76 Tabela 5.2. Przykładowe wyniki działania procedury lokalizacji twarzy przy wykorzystaniu bazy FaDab Obraz oryginalny Obszar twarzy – ilustracja na obrazie progowanym obrazie oryginalnym ków oświetlenia), zaobserwowano niedokładności lokalizacji charakterystyk oczu, w związku z czym miara δ przyjmuje większą wartość niż w przypadku zdjęć poprawnie przetworzonych (tabela 5.7). Badanie poprawności lokalizacji charakterystyk przeprowadzono na 238 fotografiach z bazy AR Face Database, średnia wartość dopasowania wyniosła δ̂ = 33.24. Uwzględ- 77 Tabela 5.3. Oznaczenia i opis charakterystyk wyznaczonych w procedurze automatycznej ekstrakcji Oznaczenie RIris LIris Rcrn.out Rcrn.inn Lcrn.out Lcrn.inn MouthRcrn MouthLcrn Opis charakterystyki Środek prawej tęczówki Środek lewej tęczówki Zewnętrzny kącik prawego oka Wewnętrzny kącik lewego oka Zewnętrzny kącik prawego oka Wewnętrzny kącik lewego oka Prawy kącik ust Lewy kącik ust Tabela 5.4. Zestawienie punktów wyznaczonych oraz wzorcowych dla fotografii M 002 01 Charakterystyka RIris LIris Rcrn.out Rcrn.inn Lcrn.out Lcrn.inn MouthRcrn MouthLcrn δ Współrzędne punktów wyznaczonych wzorcowych (FG-NET) (416, 583) (416, 576) (673, 572) (679, 566) (358, 591) (360, 584) (470, 583) (472, 584) (733, 575) (731, 566) (621, 579) (609, 576) (452, 856) (468, 856) (661, 848) (663, 849) 9.21 Tabela 5.5. Zestawienie punktów wyznaczonych oraz wzorcowych dla fotografii M 048 02 Charakterystyka RIris LIris Rcrn.out Rcrn.inn Lcrn.out Lcrn.inn MouthRcrn MouthLcrn δ Współrzędne punktów wyznaczonych wzorcowych (FG-NET) (425, 592) (425 583) (687, 589) (691 581) (366, 596) (363 591) (485, 596) (475 586) (748, 590) (730 581) (633, 598) (639 590) (463, 880) (467 880) (661, 877) (654 880) 11.03 niając rozdzielczość badanych obrazów (768 × 576 pikseli) błąd procedur automatycznej ekstrakcji charakterystyk wyznaczono na poziomie Elok = 3.46%. Na uwagę zasługuje fakt subiektywnej oceny położenia charakterystyk w przypadku ręcznego ich oznaczania – brak jednoznacznej definicji położenia np. kącików oczu (w przypadku automatycznej ekstrakcji przyjęto punkty przecięcia wielomianów). Problem powyższy zilustrowano na rys 5.3. 78 Tabela 5.6. Zestawienie punktów wyznaczonych oraz wzorcowych dla fotografii M 053 01 Charakterystyka RIris LIris Rcrn.out Rcrn.inn Lcrn.out Lcrn.inn MouthRcrn MouthLcrn δ Współrzędne punktów wyznaczonych wzorcowych (FG-NET) (501, 581) (501, 579) (773, 584) (776, 579) (435, 586) (444, 578) (561, 584) (558, 582) (840, 586) (836, 572) (716, 589) (722, 593) (520, 857) (519, 853) (745, 862) (758, 853) 9.53 Tabela 5.7. Zestawienie punktów wyznaczonych oraz wzorcowych dla fotografii M 007 01 Charakterystyka RIris LIris Rcrn.out Rcrn.inn Lcrn.out Lcrn.inn MouthRcrn MouthLcrn δ Współrzędne punktów wyznaczonych wzorcowych (FG-NET) (372, 435) (401, 464) (644, 527) (643, 594) (314, 420) (325, 455) (442, 427) (438, 459) (722, 529) (717, 584) (586, 533) (567, 584) (423, 825) (448, 812) (669, 804) (640, 813) 45.12 Rys. 5.3. Punkty charakterystyczne wyznaczone automatycznie (×), oraz oznaczone ręcznie (+) na zdjęciach z bazy AR Face Database. Położenie manulanie wyznaczonych punktów nie zawsze dokładnie określa lokalizację charakterystyk W tabeli 5.8 zawarto porównanie wyników procedury automatycznej lokalizacji charakterystyk (×) z danymi FG-NET (+). 79 Tabela 5.8. Przykładowe wyniki automatycznej lokalizacji charakterystyk (×) oraz punkty wyznaczone na podstawie danych FG-NET (+) Pomimo nieodporności na warunki oświetleniowe w przypadku fotografii osób noszących okulary dokładność procedur automatycznej ekstrakcji charakterystyk uznano za wystarczającą do budowy wektora opisującego charakterystyki twarzy. 80 W rozdziale 2.2 zdefiniowano metodę kodowania charakterystyk asymetrii twarzy. Miarę asymetrii kształtu powiek określono jako wektor różnic wartości poszczególnych odległości środka centroidu do krawędzi powieki wyznaczonych dla prawego i lewego oka (patrz równanie (2.4)). W celu zbadania poprawności tej metody opisu charakterystyk porównano reprezentację graficzną wektorów pomiarów asymetrii dla tej samej osoby przedstawionej na różnych fotografiach. Na rysunkach 5.4-5.9 zestawiono przykładowe wykresy wartości wektorów asymetrii. Łatwo można zauważyć, że dla fotografii tej samej osoby wykresy są do siebie podobne i różnią się w przypadku fotografii różnych osób, więc taka metoda opisu charakterystyk asymetrii kształtu oczu jest skuteczna i dostarcza informacji przydatnych do identyfikacji osoby. [Muld] Rys. 5.4. Wykresy charakterystyk asymetrii kształtu powiek dla fotografii M 013 01 i M 013 11 81 [Muld] Rys. 5.5. Wykresy charakterystyk asymetrii kształtu powiek dla fotografii M 014 01 i M 014 14 [Muld] Rys. 5.6. Wykresy wykresów charakterystyk asymetrii kształtu powiek dla fotografii M 017 01 i M 017 14 82 [Muld] Rys. 5.7. Wykresy charakterystyk asymetrii kształtu powiek dla fotografii M 019 11 i M 019 14 [Muld] Rys. 5.8. Wykresy charakterystyk asymetrii kształtu powiek dla fotografii M 023 01 i M 023 11 83 [Muld] Rys. 5.9. Wykresy charakterystyk asymetrii kształtu powiek dla fotografii M 037 01 i M 019 14 W wyniku działania systemu EM-Asym.Auth w fazie uczenia dla fotografii z bazy twarzy AR Face Database uzyskano zestaw plików zawierających odległości określające stopień podobieństwa wszystkich fotografii z bazy. Następnie przeprowadzono badanie efektywności systemu przy wykorzystaniu symulacji procesu autentykacji. Symulowano 10-krotną próbę autentykacji użytkownika o określonym identyfikatorze (procedurę opisano w rozdziale 4.1). Do badania wykorzystano dwa zestawy plików odległości: uzyskane w procesie treningu systemu EM-Asym.Auth oraz w wyniku treningu metody PCA zaimplementowanej w systemie CSU. Wyniki w postaci wartości błędów FAR i FRR dla określonych wartości progu klasyfikacji (przedstawione w tab. 5.9 i 5.10) uzyskano powtarzając testy 10000 razy dla każdego identyfikatora, w bazie znajdowały się charakterystyki uzyskane z 750 fotografii. Wykresy charakterystyk FAR/FRR dla obu metod przedstawiono na rys. 5.10 i 5.11. Uzyskane wyniki świadczą o nieco większej efektywności systemu EM-Asym.Auth względem implementacji metody PCA. Wartość błędu EER (Equal Error Rate) wyznaczona w punkcie przecięcia charakterystyk FAR i FRR wynosi 0.49% dla metody EMAsym.Auth i 0.63% dla metody PCA. Zakładając restrykcyjne warunki pracy systemu 84 polegające na eliminacji błędu fałszywej akceptacji, wartości błędów fałszywego odrzucenia również były korzystniejsze w przypadku metody EM-Asym.Auth (0.6%, przy czym dla PCA FRR=0.72%). Tabela 5.9. Wartości błędów FAR i FRR uzyskane dla odpowiednich wartości progu klasyfikacji przy wykorzystaniu systemu EM-Asym.Auth Wartość progowa 4.50 4.25 4.00 3.75 3.50 3.25 3.00 2.75 2.50 2.25 2.00 1.75 1.50 1.25 1.00 0.75 Klasyfikacje Poprawne [%] 32.43 38.98 45.36 53.05 61.75 68.65 74.36 82.01 87.79 92.43 95.81 98.10 99.02 99.32 99.41 99.40 FAR [%] 67.57 61.01 54.62 46.92 38.20 31.24 25.48 17.79 11.98 7.23 3.77 1.43 0.49 0.09 0.01 0.00 FRR [%] 0.00 0.01 0.02 0.03 0.05 0.11 0.16 0.20 0.23 0.34 0.42 0.47 0.49 0.59 0.58 0.60 Tabela 5.10. Wartości błędów FAR i FRR uzyskane dla odpowiednich wartości progu klasyfikacji dla metody PCA przy wykorzystaniu systemu CSU Wartość progowa 175.0 162.5 150.0 137.5 125.0 112.5 100.0 87.5 75.0 62.5 50.0 37.5 25.0 Klasyfikacje Poprawne [%] 1.23 4.16 7.48 18.47 37.80 51.90 70.10 82.30 92.47 96.64 98.32 99.13 99.28 85 FAR [%] 98.77 95.84 92.52 81.50 62.11 47.88 29.69 17.34 7.26 2.89 1.06 0.20 0.00 FRR [%] 0.00 0.00 0.00 0.03 0.09 0.22 0.21 0.36 0.27 0.47 0.62 0.67 0.72 FAR FRR 100 FAR / FRR [%] 10 1 0.49 0.1 0.01 0.5 1 1.5 2 2.5 3 Clasification threshold [Muld] 3.5 4 4.5 Rys. 5.10. Wykres zależności charakterystyk błędów FAR i FRR od wartości progu klasyfikacji dla metody EM-Asym.Auth FAR FRR FAR / FRR [%] 100 10 1 0.63 0.1 0.01 40 50 60 70 80 Clasification threshold 90 100 110 Rys. 5.11. Wykres zależności charakterystyk błędów FAR i FRR od wartości progu klasyfikacji dla metody PCA 86 120 W celu zbadania wpływu charakterystyk asymetrii na efektywność procesu rozpoznawania twarzy dokonano fuzji metody PCA z EM-Asym.Auth. Połączenie metod osiągnięto na etapie klasyfikacji przy użyciu reguły umożliwiającej uwzględnienie informacji uzyskanych w wyniku funkcjonowania obu metod. Badana twarz była klasyfikowana jako odpowiadająca danemu identyfikatorowi jeśli spełniony był poniższy warunek dasym Tasym OR dP CA TP CA (5.1) gdzie: dasym , dP CA – wartości określające stopień podobieństwa twarzy uzyskane odpowiednio dla metod EM-Asym.Auth i PCA; Tasym , TP CA – wartości progowe dla obu metod wyznaczone poziomu błędów FAR=0. Zgodnie z uzyskanymi charakterystykami błędów wartości te wynosiły: Tasym = 0.75 i TP CA = 25.0. Przy takich założeniach przeprowadzono analogiczny eksperyment jak w przypadku obu metod badanych oddzielnie. Dla liczby 10000 powtórzeń 10-krotnej próby autentykacji uzyskano 100% efektywność procesu autentykacji. Wynik ten potwierdza przydatność charakterystyk asymetrii dla poprawy efektywności rozpoznawania twarzy. 87 Wnioski końcowe Celem pracy było opracowanie metody EM-Asym.Auth autentykacji osób na podstawie frontalnego obrazu twarzy przy założeniu, że automatycznie wyznaczone charakterystyki asymetrii oczu i ust mogą być wykorzystane do poprawy efektywności biometrycznych systemów rozpoznawania osób. Założono, że do pomiaru charakterystyk posłuży uniwersalna jednostka [Muld] utworzona w oparciu o średnicę tęczówki jako jedyną niezmienną wielkość na twarzy człowieka. Zrealizowano zadania: 1. Opracowano metodę EM-Asym.Auth wraz z programową implementacją, do autentykacji osób. 2. Opracowano techniki składowe IFE, LM, ILP, RGBG automatycznej lokalizacji i pomiaru charakterystyk twarzy, oraz modyfikację RGBG-CSM metody ekstrakcji charakterystyk ust. 3. W oparciu o bazę twarzy FaDab, zbadano skuteczność opracowanych technik automatycznego określania obszaru twarzy oraz położenia oczu. 4. Zbadano poprawność funkcjonowania technik automatycznej ekstrakcji charakterystyk z wykorzystaniem bazy twarzy AR Face Database oraz zbioru kontrolnego ręcznie oznaczonych charakterystyk FG-NET. 5. Opracowano procedury pomiaru i kodowania charakterystyk asymetrii oczu i ust oraz strukturę wektora charakterystyk twarzy, wyznaczono wartości wag składowych wektora oraz opracowano technikę porównywania wektorów. 6. Zbadano charakterystyki błędów metody EM-Asym.Auth przy wykorzystaniu symulacji autentykacji w odniesieniu do wyników uzyskanych za pomocą implementacji metody PCA z użyciem bazy twarzy AR Face Database. 7. Zbadano skuteczność fuzji metod EM-Asym.Auth i PCA. 88 Opracowano nowatorskie rozwiązania: 1. W oparciu o aproksymację wielomianami trzeciego stopnia opracowano techniki opisu cech twarzy co pozwoliło na jednoznaczne zdefiniowanie charakterystyk oczu (kąciki oczu zdefiniowano jako punkty przecięcia wielomianów). 2. Zdefiniowano jednostkę [Muld] jako wielkość średnicy tęczówki, co umożliwiło dokładną normalizację skali na etapie pomiaru charakterystyk, a nie na etapie przetwarzania wstępnego. 3. Opracowano procedury umożliwiające pomiar i kodowanie asymetrii charakterystyk twarzy – oczu i ust. W badaniu skuteczności opracowanej metody uzyskano wyniki porównywalne z dostępnymi rozwiązaniami. Poziomy błędów dla metody EM-Asym.Auth były nieznacznie lepsze niż dla metody PCA. Osiągnięto wartości EER = 0.49% dla metody EM-Asym.Auth i EER = 0.63% dla metody PCA. Dla wartości błędu F AR = 0 poziomy F RR wynosiły: 0.6% dla EM-Asym.Auth i 0.72% dla PCA. Zdecydowaną poprawę efektywności odnotowano w badaniu fuzji obu metod (przy 100000 prób żaden obraz nie został błędnie zaklasyfikowany), co potwierdza postawioną tezę o przydatności charakterystyk asymetrii do poprawy skuteczności procesu rozpoznawania twarzy. Dalszą poprawę skuteczności metody EM-Asym.Auth można osiągnąć udoskonalając proces automatycznej ekstrakcji charakterystyk. W obecnej implementacji mogą zaistnieć okoliczności wymagające ingerencji użytkownika (np. w przypadku fotografii osób w okularach). Automatyzacja kalibracji procedur przetwarzania obrazu pozwoli na zmniejszenie błędów lokalizacji charakterystyk. Badana fuzja metod EM-Asym.Auth i PCA wykazała się znaczącą efektywnością, jednak czas przetwarzania potrzebny do uzyskania wyniku porównania obrazów może utrudnić praktyczną implementację metody hybrydowej. Wynika to z założenia funkcjonowania obu metod odrębnie, a fuzja dokonywana jest na etapie klasyfikacji. Odpowiednia konstrukcja metody hybrydowej oraz dobór paramterów przetwarzania dla obu metod składowych powinien prowadzić do opracowania systemu biometrycznego charakteryzującego się wysoką skutecznością i możliwością implementacji w systemach czasu rzeczywistego. 89 Literatura [1] J. Ahlberg. A system for face localization and facial feature extraction. Report no.lith-isy-r2172, Linkoping University, 1999. [2] J. Bartlett, J. Searcy. Inversion and configuration of faces. Cognitive Psychology, 25:281–316, 1993. [3] P. Belhumeur, J. Hespanha, D. Kriegman. Eigenfaces vs. fisherfaces: Recognition using class-specific linear projection. PAMI, 19(7):711–720, July 1997. [4] P. N. Belhumeur, D. J. Kriegman. What is the set of images of an object under all possible lighting conditions? CVPR ’96: Proc. of the 1996 Conference on Computer Vision and Pattern Recognition (CVPR ’96), strona 270, Washington, DC, USA, 1996. IEEE Computer Society. [5] J. Beveridge, D. Bolme, B. Draper, M. Teixeira. The csu face identification evaluation system: Its purpose, features, and structure. MVA, 16(2):128–138, February 2005. [6] W. Bledsoe. The model method in facial recognition. Technical report pri:15, Panoramic Research Inc., Paolo Alto, CA., 1964. [7] J. Brand, J. Mason. A comparative assessment of three approaches to pixel-level human skin-detection. ICPR00, wolumen 1, strony 1056–1059, 2000. [8] S. Brandt. Analiza danych. Metody statystyczne i obliczeniowe. Wydawnictwo naukowe PWN, 1999. [9] D. Brown, I. Craw, J. Lewthwaite. A som based approach to skin detection with application in real time systems. Proc. of the British Machine Vision Conference BMVC’01, 2001. [10] V. Bruce. Recognizing faces. Lawrence Erlbaum Associates, London, U.K, 1988. [11] I. Bruner, R. Tagiuri. The perception of people. Handbook of Social Psychology, wolumen 2, strony 634–654. Addison-Wesley, 1954. [12] Q. Chen, H. Wu, M. Yachida. Face detection by fuzzy pattern matching. ICCV95, strony 591–596, 1995. [13] T. Cootes, G. Edwards, C. Taylor. Active appearance models. PAMI, 23(6):681–685, June 2001. 90 [14] T. Cootes, C. Taylor, D. Cooper, J. Graham. Active shape models: Their training and application. CVIU, 61(1):38–59, January 1995. [15] T. Cootes, G. Wheeler, K. Walker, C. Taylor. View-based active appearance models. IVC, 20(9-10):657–664, August 2002. [16] C. Darwin. The expression of the emotions in man and animals. John Murray, London, UK., 1972. [17] M. de Haan, M. H. Johnson, D. Maurer, D. I. Perrett. Recognition of individual faces and average face prototypes by 1- and 3-month-old infants. Cognitive Development, wolumen 16, strony 659–678. Elsevier Science, April 2001. [18] L. Ding, A. Goshtasby. On the canny edge detector. PR, 34(3):721–725, March 2001. [19] H. Ellis. Introduction to aspects of face processing: Ten questions in need of answers. H. Ellis, M. Jeeves, F. Newcombe, A. Young, redaktorzy, Aspects of Face Processing, strony 3–13. Kluwer Academic Publishers, 1986. [20] K. Etemad, R. Chellappa. Discriminant analysis for recognition of human face images (invited paper). AVBPA ’97: Proc. of the First International Conference on Audioand Video-Based Biometric Person Authentication, strony 127–142, London, UK, 1997. Springer-Verlag. [21] FGnet. The european working group on face and gesture recognition, available at http://www-prima.inrialpes.fr/fgnet/. [22] R. L. Goldstone. Do we all look alike to computers? Trends in Cognitive Sciences, 7(2):55–57, February 2003. [23] Q. Gu, S. Li. Combining feature optimization into neural network based face detection. ICPR00, wolumen 2, strony 814–817, 2000. [24] P. Hallinan. Recognizing human eyes. SPIE, 1570:214–226, 1991. [25] J. V. Haxby, E. A. Hoffman, M. I. Gobbini. The distributed human neural system for face perception. Trends in Cognitive Sciences, 4(6):223–233, June 2000. [26] R. Hsu, M. Abdel-Mottaleb, A. Jain. Face detection in color images. Proc. of the International Conference on Image Processing (ICIP’01), wolumen 1, strony 1046– 1049, 2001. [27] M. J. Jones, J. M. Rehg. Statistical color models with application to skin detection. Proc. of the CVPR’99, wolumen 1, strony 274–280, 1999. [28] T. Kanade. Computer recognition of human faces. Interdisciplinary Systems Research, 47, 1973. 91 [29] A. Kaufman, A. Bandopadhay, B. Shaviv. An eye tracking computer user interface. Proc. of the Research Frontier in Virtual Reality Workshop, strony 78–84. IEEE Computer Society Press, 1993. [30] M. D. Kelly. Visual identification of people by computer. Praca doktorska, 1971. [31] M. Kirby, L. Sirovich. Application of the karhunen-loeve procedure for the characterization of human faces. IEEE Trans. Pattern Anal. Mach. Intell., 12(1):103–108, 1990. [32] L. Kompanets, M. Kubanek, Sz. Rydzek. Czestochowa precise model of a face based on the facial asymmetry, opthalmogeometry, and brain asymmetry phenomena: the idea and algorithm sketch. A. P. Jerzy Pejaś, redaktor, Enhanced Methods in Computer Security, Biometric and Artificial Intelligence Systems, Fast Computers, rozdzia/l 2, strony 239–254. Kluwer Academic Publishers, Springer Science + Business Media, New York, 2005. [33] L. Kompanets, Sz. Rydzek. Opracowanie pseudoinformacyjnej metody biometrycznych pomiarów asymetrii twarzy. Informatyka Teoretyczna i Stosowana, Wydawnictwo Politechniki Częstochowskiej, (3):57–64, 2002. [34] L. Kompanets, Sz. Rydzek. Czestochowa–faces. Computing, Multimedia and Intelligent Techniques, 1(1):51–60, June 2005. [35] L. Kompanets, T. Valchuk, R. Wyrzykowski, M. Kubanek, Sz. Rydzek, B. Makowski. Based on pseudo–information evaluation, facial asymmetry and ophthalmologic geometry techniques for human–computer interaction, person psyche type identification, and other applications. Proc. of the 7–th Intern. Multi–Conf. on Systemics, Cybernetics and Informatics SCI’03 and 9–th Intern. Conf. on Information Systems Analysis and Synthesis ISAS’03, wolumen 12, strony 235–240, 2003. [36] L. Kompanets, T. Valchuk, R. Wyrzykowski, Sz. Rydzek, A. Krzemiński. Biometryczna metoda identyfikacji użytkownika oparta na informacjach o asymetrii twarzy i mimice. Proc. of the Intern. Conference IT.FORUM SECURE 2002, wolumen 2, strony 31–40. Wydawnictwo NASK, 2002. [37] M. Kompanets, L.and Kubanek, Sz. Rydzek. Czestochowa–faces and biometrics of asymmetrical face. Proc. of the 7th Intern. Conference of Artificial Intelligence and Soft Computing, ICAISC 2004, wolumen LNAI 3070, strony 742–747. Springer– Verlag Berlin Heildelberg, 2004. 92 [38] M. Kopmanets, L.and Kubanek, Sz. Rydzek. Częstochowa’s precise model of a face based on the face asymmetry, ophthalmo–geometry, and brain asymmetry phenomena: the idea and algorithm sketch. Proc. of the 10th Intern. Conference on Advanced Computer Systems: Artificial Intelligence, Biometrics, Information Technology Security– AIBITS, 2003. [39] M. Kubanek. Metoda rozpoznawania audio-wideo mowy polskiej w oparciu o ukryte modele Markowa. Praca doktorska, Politechnika Częstochowska, 2005. [40] G. Kukharev, K. A. Techniki biometryczne czesc I - metody rozpoznawania twarzy. Politechnika Szczecinska, Wydzial Informatyki, 2003. [41] A. Lanitis, C. Taylor, T. Cootes. Automatic face identification system using flexible appearance models. IVC, 13(5):393–401, June 1995. [42] J. Lee, S. Yoo. An elliptical boundary model for skin color detection. Proc. of the 2002 International Conference on Imaging Science, Systems and Technology, 2002. [43] S. Lin, S. Kung, L. Lin. Face recognition/detection by probabilistic decision-based neural-network. TNN, 8(1):114–132, January 1997. [44] Y. Liu, K. Schmidt, J. Cohn, S. Mitra. Facial asymmetry quantification for expression invariant human identification. AFGR02, strony 198–204, 2002. [45] Y. Liu, R. Weaver, K. Schmidt, N. Serban, J. Cohn. Facial asymmetry: A new biometric. CMU-RI-TR, 2001. [46] A. Martinez. Recognizing imprecisely localized, partially occluded, and expression variant faces from a single sample per class. PAMI, 24(6):748–763, June 2002. [47] A. Martinez, R. Benavente. The AR face database. Raport instytutowy, Purdue University, 1998. [48] L. Mealey, R. Bridgstock, G. Townsend. Symmetry and perceived facial attractiveness: A monozygotic co-twin comparison. Journal of Personality and Social Psychology, 76(1):151–158, 1999. [49] B. Menser, M. Wien. Segmentation and tracking of facial regions in color image sequences. VCIP, strony 731–741, 2000. [50] S. Mitra, Y. Liu. Local facial asymmetry for expression classification. Proc. of the 2004 IEEE Conference on Computer Vision and Pattern Recognition (CVPR’04), June 2004. [51] B. Moghaddam, A. Pentland. Probabilistic visual learning for object representation. PAMI, 19(7):696–710, July 1997. 93 [52] C. Morimoto, M. Mimica. Eye gaze tracking techniques for interactive applications. CVIU, 98(1):4–24, April 2005. [53] H. Murase, F. Kimura, M. Yoshimura, Y. Miyake. An improvement of the autocorrelation matrix in pattern matching method and its application to handprinted HIRAGANA. Transactions on IECE, J64-D(3), 1981. [54] H. Murase, S. K. Nayar. Visual learning and recognition of 3-d objects from appearance. Int. J. Comput. Vision, 14(1):5–24, 1995. [55] S. Nayar, S. Nene, H. Murase. Subspace methods for robot vision. RA, 12(5):750–758, October 1996. [56] K. Okada, J. Steffens, T. Maurer, H. Hong, E. Elagin, H. Neven, C. von der Malsburg. The Bochum/USC Face Recognition System And How it Fared in the FERET Phase III test. H. Wechsler, P. J. Phillips, V. Bruce, F. F. Soulié, T. S. Huang, redaktorzy, Face Recognition: From Theory to Applications, strony 186–205. Springer-Verlag, 1998. [57] H. Palus. Color image processing: methods and applications: Color Image Segmentation: Selected Techniques, rozdzia/l 5. CRC press, 2006. [58] T. Pavlidis. Algorithms for Graphics and Image Processing. Computer Science Press, Rockville, MD, 1982. [59] P. Peer, J. Kovac, F. Solina. Human skin colour clustering for face detection. submitted to EUROCON 2003 – International Conference on Computer as a Tool, 2003. [60] A. Pentland, B. Moghaddam, T. Starner. View-based and modular eigenspaces for face recognition. CVPR94, strony 84–91, 1994. [61] S. Phung, A. Bouzerdoum, D. Chai. A novel skin color model in ycbcr color space and its application to human face detection. ICIP02, wolumen 1, strony 289–292, 2002. [62] R. Picard, J. Klein. Computers that recognise and respond to user emotion: theoretical and practical implications. Interacting with Computers, 14(2):141–169, 2002. [63] C. Richardson, D. Bowers, R. Bauer, K. Heilman, C. Leonard. Digitizing the moving face during dynamic displays of emotion. Neuropsychologia, 38(7):1028–1039, 2000. [64] D. Robinson. A method of measuring eye movements using a scleral search coil in a magnetic field. IEEE Trans. Biomed. Eng., (10):137–145, 1963. [65] E. Saber, A. Tekalp. Frontal-view face detection and facial feature extraction using color, shape and symmetry based cost functions. PRL, 19(8):669–680, June 1998. 94 [66] R. Schumeyer, K. Barner. Color-based classifier for region identification in video. Proc. of the SPIE Visual Communications Image Processing, wolumen 3309, strony 189–200. [67] J. Shepherd, G. Davies, H. Ellis. Studies of cue saliency. S. J. Davies G.M., Ellis H.D., redaktor, Perceiving and Remembering Faces, strony 105–131. Academic Press, London, 1981. [68] L. Sigal, S. Sclaroff, V. Athitsos. Estimation and prediction of evolving color distributions for skin segmentation under varying illumination. CVPR00, wolumen 2, strony 152–159, 2000. [69] W. Skarbek, A. Koschan. Colour image segmentation — a survey. Raport instytutowy, Institute for Technical Informatics, Technical University of Berlin, October 1994. [70] D. Swets, J. Weng. Discriminant analysis and eigenspace partition tree for face and object recognition from views. Proc. of the IEEE Int. Conf. on Automatic Face and Gesture Recognition, strony 192–197, October 1996. [71] D. Swets, J. Weng. Using discriminant eigenfeatures for image retrieval. PAMI, 18(8):831–836, August 1996. [72] J. Terrillon, M. Shirazi, H. Fukamachi, S. Akamatsu. Comparative performance of different skin chrominance models and chrominance spaces for the detection of human faces in color images. AFGR00, strony 54–61, 2000. [73] Sz. Rydzek. Exact iris shape determination in face image with complex background. Computing, Multimedia and Intelligent Techniques, 1(1):191–200, June 2005. [74] Sz. Rydzek. Iris shape evaluation in face image with complex background. K. Saed, R. Mosdorf, J. Pejaś, P. Hilmola, Z. Sosnowski, redaktorzy, Image Analysis, Computer Graphics, Security Systems and Artificial Intelligence Applications, wolumen 1, strony 419–428, 2005. [75] Sz. Rydzek. Iris shape evaluation in face image with simple background. R. M. K. Saeed, J. Pejaś, redaktor, Biometrics, Computer Security Systems and Artificial Intelligence Applications, strony 79–88. Springer Science + Business Media, 2006. [76] R. Thornhill, S. Gangestad. Facial attractiveness. Trans. in Cognitive Sciences, 3(12):452–460, December 1999. [77] N. Troje, H. Buelthoff. How is bilateral symmetry of human faces used for recognition of novel views? Vision Research, 38(1):79–89, 1998. 95 [78] M. Turk, A. Pentland. Eigenfaces for recognition. CogNeuro, 3(1):71–96, 1991. [79] V. Vezhnevets, V. Sazonov, A. Andreeva. A survey on pixel-based skin color detection techniques. Proc. of the Graphicon-2003, strony 85–92, 2003. [80] V. S. Vezhnevets, S. Soldatov, A. Degtarieva. Automatic extraction of frontal facial features. Proc. of the Sixth Asian Conference on Computer Vision (ACCV04), wolumen 2, strony 1020–1025, 2004. [81] J. Weng. Crescepton and SHOSLIF: Towards comprehensive visual learning. S. Nayar, T. Poggio, redaktorzy, Early Visual Learning, strony 183–214. Oxford Univ. Press, 1996. [82] K. Wiaderek. Klasyfikacja obrazów barwnych przy wykorzystaniu sieci neuronowej i logiki rozmytej. Praca doktorska, Politechnika Częstochowska, 2000. [83] L. Wiskott, J.-M. Fellous, N. Krüger, C. von der Malsburg. Face recognition by elastic bunch graph matching. G. Sommer, K. Daniilidis, J. Pauli, redaktorzy, Proc. of the 7th Intern. Conf. on Computer Analysis of Images and Patterns, CAIP’97, Kiel, number 1296, strony 456–463, Heidelberg, 1997. Springer-Verlag. [84] M. Yang, D. Kriegman, N. Ahuja. Detecting faces in images: A survey. PAMI, 24(1):34–58, January 2002. [85] M.-H. Yang, N. Ahuja. Detecting human faces in color images. Proc. of the International Conference on Image Processing (ICIP’98), wolumen 1, strony 127–130, 1998. [86] M.-H. Yang, N. Ahuja. Gaussian mixture model for human skin color and its application in image and video databases. Proc. of the Conf. on Storage and Retrieval for Image and Video Databases (SPIE’99), wolumen 3656, strony 458–466, 1999. [87] A. Yuille, D. Cohen, P. Hallinan. Feature extraction from faces using deformable templates. IJCV, 8(2):99–111, August 1992. [88] B. Zarit, B. Super, F. Quek. Comparison of five color models in skin pixel classification. ICCV 99 Int’l Workshop on Recognition, Analysis and Tracking of Faces and Gestures in Real-Time systems, strony 58–63, 1999. [89] D. Zhang, G. Lu. A comparative study of curvature scale space and fourier descriptors for shape-based image retrieval. Journal of Visual Communication and Image Representation, 14(1):39–57, March 2003. [90] W. Zhao, R. Chellappa, A. Krishnaswamy. Discriminant analysis of principal components for face recognition. 3rd International Conference on Automatic Face and 96 Gesture Recognition, strony 336–341, 1998. [91] W. Zhao, R. Chellappa, P. Phillips. Subspace linear discriminant analysis for face recognition. Raport instytutowy CAR-TR-914, Center for Automation Research, University of Maryland, College Park, 1999. [92] W. Zhao, R. Chellappa, A. Rosenfeld, P. Phillips. Face recognition: A literature survey. ACM Computing Surveys, 35(4):399–458, 2003. 97 Dodatek Przedstawiono przykładowe pliki wygenerowane przez program automatycznej ekstrakcji charakterystyk oraz pliki zawierające wartości określające podobieństwo twarzy wygenerowane przez systemy EM-Asym.Auth i CSU. Strukturę plików omówiono szczegółowo w rozdziale 4.1. Zawartość pliku M 025 01.dsc. Pierwsze trzy wiersze stanowią nagłówek pliku definiujący kolejność zapisanych charakterystyk, potem następują ich wartości: Muld, RIris, LIris, Rcrn.out, Rcrn.inn Lcrn.out, Lcrn.inn, MouthRcrn, MouthLcrn Values 27.00 439 585 689 572 389 590 500 592 740 584 623 577 472 867 664 864 Zawartość pliku M 025 01 mouth.dat. Pierwszy wiersz to nagłówek definiujący kolejność punktów zapisanych w wierszach 2-4 (lewego i prawego kącika, a także wyznaczonego środka ust). Od wiersza 6 zapisano punkty wyznaczone na krawędzi ust: Right Corner, Left Corner, Center 472 867 664 864 568 857 Edge 486 857 521 838 544 835 560 838 568 839 578 835 98 591 606 646 629 597 583 567 553 532 503 838 837 856 882 889 896 896 895 891 882 Zawartość pliku M 025 01 poly.dat. Nagłówek pliku zawiera informacje o kolejności wielomianów w pliku i kolejności współczynników wielomianów. right up, right down, left up, left down; A*x^3+B*x^2+C*x+D 0.0000132047462102 -0.0081660971045494 -0.5884028673171997 1277.338623046875 0.000103806014522 -0.1420866250991821 64.490325927734375 -9106.431640625 0.00002675014548 -0.0471919253468513 27.0153427124023438 -4404.31494140625 -0.0000247705447691 0.0457472056150436 -27.6916904449462891 6063.7529296875 Fragment zawartości pliku M 025 01.sfi. W pliku znajdują się wartości określające podobieństwo twarzy o identyfikatorze M 025 01 do wszystkich pozostałych, uzyskane przy wykorzystaniu systemu CSU w procesie treningu metodą PCA: M M M M M M M M M M M M M M M M M M M M M M M 001 001 001 002 002 002 003 003 003 004 004 004 005 005 005 006 006 006 007 007 007 008 008 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 60.43404386 104.75461510 56.73150204 76.94206719 131.40178578 75.71101176 95.05994473 141.29938987 89.25400342 89.68452798 118.87782519 86.01632071 123.67132174 145.96681418 104.93417170 78.93931512 120.19092543 62.64344870 113.56371894 142.52486559 86.38155930 112.87578485 139.52123876 99 M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M 008 009 009 009 010 010 010 011 011 012 012 012 013 013 013 014 014 014 015 015 015 016 016 016 017 017 017 018 018 019 019 019 020 020 020 021 021 021 022 022 022 023 023 023 024 025 025 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 11.sfi 14.sfi 01.sfi 01.sfi 14.sfi 98.14827790 86.90156289 135.64933812 110.52105373 58.06038245 118.24809290 58.16370611 118.99820005 145.55345653 70.36388499 113.86813690 58.48246805 76.02248197 106.32660362 50.48634666 110.80593240 139.97940649 97.44492619 84.97845832 124.91388435 76.50994075 111.23051867 139.33997596 91.57125522 121.90339051 154.78455912 100.89155125 86.31401292 77.33191116 136.20420993 158.29784888 128.58420015 82.49163381 109.17252243 75.36523155 62.47735706 116.53885678 71.79355876 75.88194198 133.15377335 72.46036356 79.29663043 119.04874768 74.79217816 83.30891450 0.00000000 40.38350756 100 Fragment zawartości pliku M 025 01.dst. W pliku znajdują się wartości określające podobieństwo twarzy o identyfikatorze M 025 01 do wszystkich pozostałych, uzyskane przy wykorzystaniu systemu Asym-Auth w procesie treningu: M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M 001 001 001 002 002 002 003 003 003 004 004 004 005 005 005 006 006 006 007 007 007 008 008 008 009 009 009 010 010 010 011 011 012 012 012 013 013 013 014 014 014 015 015 015 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 1.23139318 4.21146655 1.27697605 1.41180887 4.57256786 1.48153672 1.14326605 3.97769538 0.91797996 1.99008243 4.10612430 2.07750071 2.10153966 4.57411462 2.02803211 1.72005927 5.19514794 1.94790376 1.68457362 5.67726721 2.08434314 1.64260012 4.64065754 1.55920724 1.29592024 4.06163623 0.92020795 1.66007849 4.65733095 1.59373847 1.67541475 3.78733041 1.51818499 4.92407989 1.33570593 1.37775803 4.26202585 1.36994818 1.48962224 4.47580888 1.62712636 1.46403535 4.06871115 1.35946206 101 M M M M M M M M M M M M M M M M M M M M M M M M M M 016 016 016 017 017 017 018 018 019 019 019 020 020 020 021 021 021 022 022 022 023 023 023 024 025 025 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 11.dst 14.dst 01.dst 01.dst 14.dst 0.97851029 4.44584114 1.23753310 1.21162005 4.43262786 1.51425151 1.25474385 1.20588695 1.74546183 4.93607175 1.70788870 1.31841996 4.11219174 1.54610515 1.09618488 4.69419949 1.11942728 1.28598674 4.46787245 0.94799527 1.48747811 5.30168462 2.11969489 1.55552899 0.00000000 0.82852215 102 Summary A method to automatically authenticate a person based on the asymmetry measurements of the eyes and/or mouth. The work deals with the problem of improving effectiveness of the biometrical authentication systems with the use of the effect of face asymmetry. The aim of the dissertation was to work out the technique of automatic authentication of a person with assumption that the use of automatically extracted, structural characteristics of the face asymmetry (in particular within the eyes and mouth regions as the most informative parts of the face) leads to improvement of the biometrical authentication systems. The dissertation consists of six chapters, one appendix and the bibliography. The first, introductory chapter contains analytical comparison of the face recognition methods. The example of asymmetry-based methods of recognition of facial expressions was brought up. The goal and the thesis of the work are placed at the end of this chapter. The second chapter contains the sketch of the EM-Asym.Auth method as well as the functional prerequisites concerning acceptable input data and possibility of practical implementation of the method. The idea of measuring the face asymmetry was presented in the second section of the chapter. Developed techniques of the extraction of the face features are described in details in the third chapter. The process of the automatic face feature extraction includes procedures of localising the face region, the centre and the diameter of the iris, the shape of the eyelids and mouth. Also the structure of the vector describing the face features was defined in this chapter. The fourth and fifth chapter contains the description of implemented research system and results of performed experiments. The system has been used to evaluate the effectiveness of developed method in comparison with the PCA face recognition method. The EM-Asym.Auth method was examined at the stages of the face region localisation and the features extraction. To evaluate the effectiveness of the method in the task of a person authentication the simulation of this case was performed. Results of the experiment were compared with those obtained using the PCA method (both methods were tested using the same face database). The effectiveness of the EM-Asym.Auth method was slightly better than the PCA (EER = 0.49% for EM-Asym.Auth and EER = 0.63% for PCA). Significant improvement of the effectivenes was observed performing experiment with hybrid of EM-Asym.Auth and PCA methods. The conclusions and feature works are included in the last chapter. 103