Gesichtserkennung mit Hilfe von SVD/SDD und TensorenMarc Simon, INF07
GliederungWiederholung relevanter GebieteBegriff der ÄhnlichkeitEinsatz von SVDCircular Hough Transformation (CHT)
Definition TensorDer Tensor ist ein mathematisches Objekt aus der Algebra und Differentialgeometrie. Ein Tensor ist eine multilineare Abbildung, also eine Abbildung, welche in jeder Variablen linear ist. Anschaulich, aber mathematisch unpräzise, kann man sich den Tensor als eine mehrdimensionale Matrix vorstellen.
Definition SVDDie Singulärwertzerlegung (Singular Value Decomposition) einer Matrix bezeichnet deren Darstellung als Produkt dreier spezieller Matrizen. Daraus kann man die Singulärwerte der Matrix ablesen. Diese charakterisieren, ähnlich den Eigenwerten, Eigenschaften der Matrix. Singulärwerte lassen sich für jede (auch nichtquadratische) Matrix bestimmen
Zerlegung in SingulärwerteA=UΣV*wobei U unitäre m×m-MatrixΣ m×n-DiagonalmatrixV* adjungierte Matrix von VV unitäre n×n-Matrix
Besonderheiten bei SDDSemiDiscreteDecomposition (SDD) funktioniert grundlegend ähnlich wie die SVDEinschränkung: Matrizen U und V* dürfen nur die Einträge {-1;0;1} enthalten
Was ist Ähnlichkeit?
Was ist Ähnlichkeit?Software wird programmiert, bestimmte Muster zu vergleichenHier kann z. B. Haarfarbe, Gesichtssymmetrie, Augenfarbe, etc… genommen werdenWie erhalte ich eine zuverlässige Erkennung, wenn der Kopf nicht gerade ist?
Wo kann SVD helfen?SVD zerlegt eine Matrix in gewichtete, geordnete und unterscheidbare MatrizenBei der Bildverarbeitung können so einzelne Aspekte hervorgehoben oder vertuscht werdenEinsatz vor allem in biologischen System, beispielsweise beim Gabor Filter
Gabor FilterFilter, um Kanten oder Texturen in einem Bild zu verdeutlichenÄhnlich dem menschlichen Seh-SystemWird auch eingesetzt zur Handschriftenerkennung, Iris-Erkennung und beim FingerprintSiehe GaborFilter.html und Videos
Gabor Filter - mathematisch
Circular Hough TransformationNach der Eck-Bestimmung im Ursprungsbild wird im Zielbild um jeden Eckpunkt ein Kreis mit gewünschtem Radius gezeichnet
Bresenham‘s AlgorithmusAlgorithmus zum Zeichnen von Kreisen und Geraden auf RasteranzeigenBesonderheit: Minimiert Rundungsfehler, die durch Diskretisierung kontinuierlicher Werte entstehen
Erkennungs-AlgorithmusFür gegebenes Grauwertbild Kanten bestimmenErmitteln der großen und kleinen Eigenwerte für die Kovarianz-Matrix des Kanten-BildesDas Verhältnis von großen zu kleinen Eigenwerten für verschiedene Winkel ermittelnDie größte und kleinste Achsenlänge aus den Eigenwerten bestimmen
Erkennungs-AlgorithmusCHT ausführen, um das Zentrum der Ellipse zu bestimmenAusrechnen der Begrenzungspunkte der Ellipse mit Bresenham‘s Raster Scan-AlgorithmusDen Inhalt der Ellipse aus dem Bild ausschneiden
Erkennung bei gedrehtem Kopf
Gesichtserkennung bei Rauschen
Zusammenfassung2 Möglichkeiten Gesichter zu erkennen:Über GesichtsmetrikenDurch elliptisches Ausschneiden des Gesichts und VergleichErkennung funktioniert noch nicht 100% sicher, aber selbst bei Rauschen bis 60% sehr zuverlässig
Quellenhttp://www.waset.org/journals/waset/v39/v39-71.pdfhttp://www.cse.unr.edu/~bebis/MathMethods/PCA/case_study_pca1.pdfhttp://en.wikipedia.org/wiki/Singular_value_decompositionhttp://de.wikipedia.org/wiki/Tensorhttp://www.cvmt.dk/education/teaching/e07/MED3/IP/Simon_Pedersen_CircularHoughTransform.pdf

Gesichtserkennung mit SVD