Hauptseminar: Digitale Medien Thema 20: Vergleich von Gesichtserkennungsverfahren Bearbeiter: Peter Hamm Betreuer: Dipl.-Ing. Peter Dunker Betreuender Professor: Prof. Dr.- Ing. Karlheinz Brandenburg 11. Juli 2005 Peter Hamm
GLIEDERUNG I Einführung - Gesichtserkennung II Einführung - Gesichtserkennung mittels Hauptachsentransformation II.0 Bildtransformation II.1 PCA / Eigenfaces II.2 LDA / Fisherfaces II.3 small sample size problem III Erweiterte Methoden III.1 Maximum Uncertainty LDA III.2 Direct Fractional LDA IV Klassifikationsergebnis / Zusammenfassung 2 Peter Hamm Gliederung
I GESICHTSERKENNUNGSVERFAHREN lokalisierung Vergleichen Der Merkmale Merkmals- extraktion Normalisierung Gesicht/Gesichter im Bild finden Gesicht zurecht rücken: skalieren, drehen, helligkeit anpassen etc. MERKMALSEXTRAKTION: entscheidung, aufgrund welcher merkmale man versucht, die Gesichter zu unterscheiden. das ist auch das Modul, in dem sich alles nun folgende abspielt = Klassifikation 3 Peter Hamm Einführung - Gesichterkennung
I GESICHTSERKENNUNGSVERFAHREN Mögliche Unterscheidungsmerkmale Konturen (active shape model) Gesichtsproportionen „THREE APPROACHES FOR FACE RECOGNITION“ – V.V. Starovoitov, D.I Samal, D.V. Briliuk HIER: merkmale, die direkt aus dem Erscheinugsbild ersichtlich sind!!!! . Gesichtsmerkmale werden zu rate gezogen. Blablabla AUCH FARBE/TEINT MÖGLICH - Aber: wie geht man mit unterschiedlichen Lichtverhältnissen um? In meinem Vortrag nun geht es jedoch um die Merkmalsgewinnung, die sich nicht direkt auf die sichtbaren Erscheinung bezieht. Und weil Einzelne Gesichtsbereiche wie Nase, Mund etc. (template matching ) 4 Peter Hamm Einführung - Gesichterkennung
I GESICHTSERKENNUNGSVERFAHREN Merkmalsextraktion - Hauptachsentransforamtion - gesamtes Gesicht wird analysiert - lineare Transformation der Bilder in _einen Unterraum - Transformationsmatrix: Berechnung _ über Eigenvektoren der Kovarianzmatrix _ der Bilder Lineare Transformation so wie FFT od. DCT Aufgrund der Werte im Unterraum, die nicht direkt einem Bildpunkt zugeordnet werden können, werde die Unterscheidung vorgenommen. Affine Abbildung Eine affine Abbildung (auch affine Transformation oder lineare Transformation) ist eine Abbildung zwischen zwei Vektorräumen (oder affinen Räumen), die Kollinearitäten und Abstandsverhältnisse bewahrt. Erklärung: Bewahrung der Kollinearität bedeutet, dass die Bilder von Punkten, die auf einer Geraden liegen (d.h. kollinear sind), wieder auf einer Geraden liegen. Ebenso sind die Bilder paralleler Geraden wieder parallel. Spezialfälle: Wenn die Abbildung bijektiv (umkehrbar eindeutig) ist, heißt sie Affinität (Mathematik). Eine abstandsbewahrende Affinität heißt Bewegung. Eine Abbildung ist umkehrbar, wenn die Determinante der Abbildungsmatrix ungleich 0 ist. - Vergleich anhand der neuen Werte 5 Peter Hamm Einführung - Gesichterkennung
II BILDTRANSFORMATION Was soll eine Bildtransformation erreichen? 2-Pixel-Bilder = Objekt mit 2 Merkmalen 256 x 256 px = Objekt mit 65.536 Merkmalen HOHER RECHENAUFWAND ! Reduktion der Objektmerkmale ____ ohne große Informationsverluste !!! Diskriminierung der Objekte ____ durch Finden der Variationen im Bilddatensatz 6 Peter Hamm Bildtransformation mittels Hauptachsentransformation
II BILDTRANSFORMATION Reduktion: bsp: von 65000 auf vielleicht erträgliche 40 oder noch weniger??? Diskrimierung: d.h. die objekte im image space so „wie“t wie möglich von ein andere zu trennen --> weit im Sinne von: objekte lassen sich trennen Hier: MATRIX-SCHREIBWEISE N = Anzahl der Objekte M=Länge des jeweiligen Bildvektors W ist die Projektionsmatrix, die den Bildraum x in den transformierten unterraum y abbildet 7 Peter Hamm Bildtransformation mittels Hauptachsentransformation
principle components: II EIGENFACES Sirovich / Kirby, 1987; Turk / Pentland, 1991 Transformation des Trainingssatzes mittels _ _ _ Principle Component Analysis – PCA https://www.eng.man.ac.uk/mech/merg/Research/datafusion.org.uk/pca.html PC 1 PC 2 principle components: orthogonale Vektoren ,die die Richtungen der größten Varianz beschreiben = neue Achsen Letztendlich ein Art, neue Hauptachsen festzulegen. Deshlab auch Hauptachsentransformation genannt die Hauptachsen werden so gedreht, dass sie die Richtung der grössten Varianz darstellen 8 Peter Hamm Eigenfaces / PCA
II EIGENFACES Trainingsdatensatz: image mean Abweichung H x B = N B H Letztendlich ein Art, neue Hauptachsen festzulegen. Deshlab auch Hauptachsentransformation genannt die Hauptachsen werden so gedreht, dass sie die Richtung der grössten Varianz darstellen N x M Abweichung 9 Peter Hamm Eigenfaces / PCA
II EIGENFACES PCs = Eigenvektoren der Kovarianzmatrix der _ _ _ _ _ _ _ _ _ gesamten Bildmatrix Kovarianzmatrix: Abweichung eines Gesichts ______________vom Durchschnittsgesicht (image mean) - Problem: C hat die Dimension N x N ! L weil: die anzahl der Gesichter M ist kleiner als die Anzahl der Eigenvektoren nur M Eigenvektoren sind nützlich!!!!! Die anderen liegen mach um NULL! - Es existieren nur M sinnvolle Eigenvektoren - Eigenvektoren von = Eigenvektoren von C 10 Peter Hamm
II EIGENFACES Transformationsmatrix: - W sind die sog. Eigenfaces - Anzahl gewählten Eigenfaces = Dimension der Unterraumvektoren Eigenfaces nach Ordnung gegliedert 1 2 3 4 15 100 200 250 300 Eigenfaces weil: Haben die Dimension N^2 x M d.h. die gleichen Dimensionen wie die Bildvektoren und lassen sich deshalb grafisch darstellen 11 Peter Hamm
II EIGENFACES Klassifizierung: 1 Transformation des Testbilddatensatzes: 2 Transformation des Query-Bildes: 3 Euklidische Distanz berechenen: Eigenfaces weil: Haben die Dimension N^2 x M d.h. die gleichen Dimensionen wie die Bildvektoren und lassen sich deshalb grafisch darstellen 12 Peter Hamm
II FISHERFACES PCA lässt Klasseninformation außer Acht Fisher 1936; Belhumeur, Hespanha, Kriegmann 1997 PCA lässt Klasseninformation außer Acht Linear Discriminant Analysis - LDA LDA: - vergrößert die Streuung zwischen den Klassen - verkleinert die Streuung innerhalb der Klassen Fisher‘s criterion Fishercriterium: zähler: Streuung/ Varianz nach der Transformation soll gross sein nenner: Streuung der S within soll nach der Transformation klein sein W*S*W == Determinate von S - W über Lösen des Eigensystem 13 Peter Hamm Fisherfaces / LDA
II FISHERFACES 14 Fisherfaces / LDA Belhumeur: Eigenfaces vs. Fisherfaces: Recognition Using Class Specific Linear Projektion 14 Peter Hamm Fisherfaces / LDA
II SMALL SAMPLE SIZE PROBLEM Trainingsdatensatz: N >> M - Bilder einer Person << Pixel pro Bild (features) - schlechte Repräsentation der gesamten Klasse - Kovarianzmatrix kann singulär sein Determinate = 0 schlechte Repräsentation der gesamten Klasse führt zu Klassifikationsfehlern Singulär: - Spalten oder Zeile sind Null - Spalten sind linaer Abhängig bei S within sind nur M-Klassen Anzahl unabhängig N x M 15 Peter Hamm Small sample size problem
III ERWEITERTE METHODEN Belhumeur (LDA) Schritt vor der LDA: Dimensionsreduktion mittels PCA auf M bis minimal (M – Klassenanzahl) Die beste Lösung wäre: mehr trainingsamples - is aber nicht vorhanden schlechte Repräsentation der gesamten Klasse führt zu Klassifikationsfehlern Singulär: Klassifikation schlechter gegenüber „reiner“ LDA ! 16 Peter Hamm Erweiterte Mehtoden
III ERWEITERTE METHODEN Maximum Uncertainty LDA Thomasz, Gillies 2004 - Löst Singularitätsproblem - Modifizierte S BETWEEN - Addition mit einer gewichteten Einheitsmatrix Modifiziert, um der Sigularität aus dem Weg zu gehen !!!! K ist Mit: und: 17 Peter Hamm Erweiterte Mehtoden
III ERWEITERTE METHODEN Maximum Uncertainty LDA - Modifiziertes Fisher-Kriterium: 18 Peter Hamm Erweiterte Mehtoden
III ERWEITERTE METHODEN Direct Fractional Linear Discriminent Analysis - DF-LDA Lu, Plataniotis, Venetsanopoulos, 2002 - Löst Singularitätsproblem und verbessert die Klassifizierung 3 Schritte: 1 Einführung von Gewichtsfunktionen in die LDA um Kein PCA = kein Informationsverlust durch Pre-Dimension-Reduction 2 Direct = keine PCA vor der LDA anwenden 3 Fractional = Dimensionsreduktion durch LDA in Schritten 19 Peter Hamm Erweiterte Mehtoden
III ERWEITERTE METHODEN Direct Fractional Linear Discriminent Analysis - DF-LDA 1 Berechnung der Eigenwerte der gewichteten S BETWEEN Alles unter der Wurzel ist die Gewichtung: ist monoton steigend und eine Funktion der Distanz zwischen den Klassen-Means. P= 2,3… Klassen die nachbeieinnander stehen sollen so getrennt werden! Gewichtsfunktion 20 Peter Hamm Erweiterte Mehtoden
III ERWEITERTE METHODEN Direct Fractional Linear Discriminent Analysis - DF-LDA 2 direct LDA: - Maximieren des modifizierten Fisher‘s Criteriums S tot statt S within um dem SSS, also singuläre Matrix, aus dem Weg zu gehen! 21 Peter Hamm Erweiterte Mehtoden
III ERWEITERTE METHODEN Direct Fractional Linear Discriminent Analysis - DF-LDA 3 Fractional Step zur weiteren Dimensionsreduzierung: + schrittweise Reduzierung der Dimension in r>1 Schritten + Transformationmatrix durch Maximierung der S BETWEEN + Neuberechnung der S nach jedem Schritt BETWEEN 22 Peter Hamm Erweiterte Mehtoden
III KLASSIFIKATIONSERGEBNISSE Die beste Lösung wäre: mehr trainingsamples - is aber nicht vorhanden schlechte Repräsentation der gesamten Klasse führt zu Klassifikationsfehlern Singulär: Belhumeur: Eigenfaces vs. Fisherfaces: Recognition Using Class Specific Linear Projektion 23 Peter Hamm
III KLASSIFIKATIONSERGEBNISSE Die beste Lösung wäre: mehr trainingsamples - is aber nicht vorhanden schlechte Repräsentation der gesamten Klasse führt zu Klassifikationsfehlern Singulär: Chengjun Liu; Harry Wechsler; Enhanced Fisher Linear Discriminant Models for Face Recognition 24 Peter Hamm
III KLASSIFIKATIONSERGEBNISSE Ergebnisse: MAXIMUM UNCERTAINTY LDA (NLDA) Die beste Lösung wäre: mehr trainingsamples - is aber nicht vorhanden schlechte Repräsentation der gesamten Klasse führt zu Klassifikationsfehlern Singulär: ORL – Olivetti-Oracle Research Lab FERET- Face Recognition Technology 25 Peter Hamm
III KLASSIFIKATIONSERGEBNISSE Ergebnisse: Direct Fractional-LDA (DF-LDA) Projektionen von 5 Personen: Die beste Lösung wäre: mehr trainingsamples - is aber nicht vorhanden schlechte Repräsentation der gesamten Klasse führt zu Klassifikationsfehlern Singulär: PCA D_LDA DF_LDA 26 Peter Hamm
III KLASSIFIKATIONSERGEBNISSE Ergebnisse: Direct Fractional-LDA (DF-LDA) Die beste Lösung wäre: mehr trainingsamples - is aber nicht vorhanden schlechte Repräsentation der gesamten Klasse führt zu Klassifikationsfehlern Singulär: 27 Peter Hamm
III KLASSIFIKATIONSERGEBNISSE - Viele verschiedene Testdatenbanken: - Olivetti Oracle Research Lab DB (ORL) Face Recognition Technology DB (FERET) UMIST Database - YALE Database YALE Die beste Lösung wäre: mehr trainingsamples - is aber nicht vorhanden schlechte Repräsentation der gesamten Klasse führt zu Klassifikationsfehlern Singulär: FERET 28 Peter Hamm
IV Zusammenfassung Gesichtserkennung mittels Hauptachsen-Transformtionen relativ unempfindlich gegenüber schlechter Auflösung LDA unempfindlicher gegenüber PCA bezüglich Helligkeitsschwankung, Mimik, Gesichtsposition Fortgeschrittene LDA-Methoden können Fehlererkennungsrate senken Anwendungerfolge bei verschiedenen Testdatenbanken fallen unterschiedlich aus Die beste Lösung wäre: mehr trainingsamples - is aber nicht vorhanden schlechte Repräsentation der gesamten Klasse führt zu Klassifikationsfehlern Singulär: 29 Peter Hamm
FRAGEN ? Dank an die Zuhörer für die Aufmerksamkeit und Danke an Peter Dunker für die Unterstützung FRAGEN ? Peter Hamm
Add-on: Matrixmultiplikation Zusatzfolien Add-on: Matrixmultiplikation Bsp.: Projektion von Bildmatrix in Unterraum: Z 1 Peter Hamm
Add-on: Lösung des Eigenwertsystems der Kovarianzmatrix Zusatzfolien Add-on: Lösung des Eigenwertsystems der Kovarianzmatrix Z 2 Peter Hamm
Add-on: Kovarianzmatrix Zusatzfolien Add-on: Kovarianzmatrix - Abweichung vom arithmetischen Mittelwert - Diagonale: Varianz innerhalb der jeweiligen Klasse - Elemente ausserhalb der Diagonale: Kovarianzen Z 3 Peter Hamm
Verdunklung um 40 Grauwertstufen Add-on: II BILDTRANSFORMATION Facial Recognition as a Pattern Recognition Problem; Wang, ECE 407NA 2005 Verdunklung um 40 Grauwertstufen WARUM? Steht für: Warum vergleichen wir nicht pixel für pixel Warum werden wir eine Transformation durchführen? Ein kleines Beispiel: Z 4 Peter Hamm
PCs = Eigenvektoren der Kovarianzmatrix der Add-on: II Eigenfaces PCs = Eigenvektoren der Kovarianzmatrix der _ _ _ _ _ _ _ _ _ gesamten Bildmatrix - Problem: C hat die Dimension N x N ! - L hat die Dimension M x M ! - Eigenvektoren von L = Eigenvektoren von C L weil: die anzahl der Gesichter M ist kleiner als die Anzahl der Eigenvektoren nur M Eigenvektoren sind nützlich!!!!! Die anderen liegen mach um NULL! Transformationsmatrix: Z 5 Peter Hamm
„Within-Class Scatter“ = Summe der Kovarianz jeder Klasse Add-on: II Fisherfaces „Within-Class Scatter“ = Summe der Kovarianz jeder Klasse „Between-Class Scatter“ = Summe der Kovarianz aller Klasse Lösung Fisher‘s criterion: N = Anzahl der Gesichter/samples pro klasse P = wahrscheinlichkeit: 4 bilder pro klasse p = 0.25 Mean der Klasse i - MEan aller Klassen Z 6 Peter Hamm