-
Technisches Gebiet
-
Diese
Erfindung ist auf Gesichtserkennung gerichtet und bezieht sich im
Speziellen auf die Erkennung von Gesichtsmerkmalen durch die Platzierung
von Punkten auf den Gesichtsmerkmalen, wobei mehrere Bilder eines
Gesichtes verwendet werden.
-
Hintergrund
-
Ein
dreidimensionales Objekt kann in zwei Dimensionen dargestellt werden.
In der Tat hat die Darstellung von dreidimensionalen Objekten unter
der Verwendung von zweidimensionalen Ansichten Vorteile in der Objektmodellierung
und Synthese. In solch zweidimensionalen Darstellungen müssen die
dreidimensionalen Merkmale eines Objektes nicht explizit wiederhergestellt
werden und somit werden Schwierigkeiten in auf drei Dimensionen
basierenden Methoden vermieden. Es ist eher üblich, Ansichten basierte Modelle
zur Darstellung eines Objektes mit mehreren zweidimensionalen Ansichtsprojektionen
zu verwenden. Wenn ein Objekt mit mehr als einer zweidimensionalen
Ansicht dargestellt wird, wird üblicherweise
ein pixelgenauer Übereinstimmungsplan
für jede
der zweidimensionalen Ansichten benötigt. Alternativ kann ein dürftiger Übereinstimmungsplan
(correspondence map) zwischen einer kleinen Gruppe von Merkmalspunkten
oder Kanten von Merkmalen auf dem Objekt zwischen jeder der zweidimensionalen
Ansichten verwendet werden. Die Übereinstimmungskarte
kann berechnet und angewendet werden, um die Form des Objektes von
der Textur des Objektes zu separieren. Als solche können jeweils
die Form des Objektes und die Textur des Objektes von einem bestimmten
Sichtpunkt in einem linearen Unterraum (subspace) modelliert werden.
-
Wenn
ein Objekt mit mehr als einer zweidimensionalen Ansicht dargestellt
wird, kann es von Vorteil sein, Punkte festzulegen, die Merkmale
des Objektes repräsentieren
(Merkmalspunkte). Ein Merkmalspunkt basiert auf einer Übereinstimmung
zwischen mehreren zweidimensionalen Ansichten und ist in einigen
Anwendungen von Vorteil, weil er im Umgang mit Helligkeit und Farbabweichungen
verlässlicher
ist und weniger Berechnungsaufwand als die Bildung einer hochauflösenden bzw.
dichten (dense) Darstellung des Objektes erfordert. Um dementsprechend
eine Bildklasse (image class) eines Objektes genau zu modulieren,
können zwei
Probleme angegangen und gelöst
werden. Das erste Problem ist es, die Merkmalspunkte auf den Merkmalen
des Objektes durch die Verwendung einer Trainingsmenge von zweidimensionalen
Ansichten zu lokalisieren. Wenn die Merkmalspunkte der Merkmale
auf dem Objekt erstmal lokalisiert sind, ist das zweite Problem,
die zugrundeliegende Übereinstimmung
zwischen zwei oder mehr Gruppen bzw. Mengen (sets) von Merkmalspunkten
aus einer entsprechenden Anzahl von zweidimensionalen Ansichten
festzulegen.
-
Ein
weiterer Schwierigkeitsgrad ergibt sich, wenn Merkmale in einem
komplexen und unstarren Objekt bei der Verwendung von zweidimensionalen
Ansichten lokalisiert werden sollen. Diese Schwierigkeiten können unter
der Verwendung von schon vorhandenem Wissen bezüglich des Objektes selber angegangen
werden. Zum Beispiel ist ein deformierbares Modell des Objektes
ein Beispiel für
solch vorhandenes Wissen. Deformierbare Modelle können Beschränkungen
für die
Lokalisierung von Merkmalen auf dem Objekt zur Verfügung stellen.
Diese Beschränkungen,
die von Bilddaten bezüglich
des Objektes abgeleitet werden können, können verwendet
werden, um mit den Problemen der Segmentation des Objektes oder
der Detektion von Merkmalen auf dem Objekt verwendet zu werden.
Im Speziellen bringen aktive Formmodelle (Active Shape Model – ASM),
wie sie von Cootes et al. (Active Shape Model, T. F. Cootes, C.
Taylor, D. Cooper und J. Graham. Active shape models – their
training and their applications. Computer Vision and Image Understanding, 61
(1), Seiten 38 bis 59, Januar 1995) vorgeschlagen werden, den Vorteil,
dass die Instanzen des Modells des Objektes nur auf die Weisen deformiert
werden können,
die aus der Trainingsmenge, aus der das Modell abgeleitet wurde,
erlernt wurden. Das heißt,
das Modell kann eine zu erwartende Varianz in der Segmentation (Einteilung)
des Objektes beinhalten oder in der Detektion seiner Merkmale, aber
das Modell sollte immer noch zu der Klasse des Objektes, die das
Modell repräsentiert,
zugeordnet sein. ASM verwendet die prinzipielle Komponentenanalysetechnik
(Principle Component Analysis technique – PCA), um ein Objekt durch
jeweils die zweidimensionalen Formvariationen des Objektes und die
lokalen Graustufenstrukturen des Objektes zu modellieren. ASM ist
insbesondere ein Prozess, der die Abfrage bzw. Interrogation von
zweidimensionalen Ansichten eines Objektes und die Abschätzung der
Form der Merkmale auf dem Objekt unter der Verwendung von Punkten
(Merkmalspunkten), die jeweils ein jeweiliges Merkmal auf dem Objekt
repräsentieren,
beinhaltet.
-
Wenn
zwei oder mehr verschiedene zweidimensionale Ansichten des gleichen
Objektes zur Verfügung
stehen, können
die Merkmale auf dem Objekt für
jede der Ansichten durch die Verwendung der ASM mit einem Modell
des Objektes abgeglichen werden. Nachdem der Abgleich für jede Ansicht
des Modells durchgeführt
wurde, wäre
es wünschenswert,
die Übereinstimmung
zwischen den jeweiligen Merkmalspunkten der Merkmale auf dem Objekt
für die
verschiedenen Ansichten herauszufinden, so wie durch eine Implikation über jede
der verschiedenen Ansichten. Die ausfindig gemachten Merkmalspunkte
für jedes
Merkmal auf dem Objekt können
allerdings nicht über
die verschiedenen Ansichten geometrisch konsistent sein. Diese Inkonsistenz tritt
auf, weil ASM nur eine einzelne Ansicht anstatt der Übereinstimmung
zwischen den verschiedenen Ansichten berücksichtigt. Der Abgleich des
Modells mit jeder der verschiedenen Ansichten könnte von der Verwendung einer
Geometrie mehrerer Ansichten profitieren. Obwohl dies erreicht werden
kann, setzt es voraus, dass alle wichtigen Merkmalspunkte von jedem
Merkmal auf dem Objekt in jeder der zweidimensionalen Ansichten sichtbar
bleiben.
-
Eine
Technik zur Anwendung von ASM beinhaltet die Verwendung einer Menge
von Trainingsbeispielen einer einzigen Gesichtsdarstellung aus verschiedenen
Ansichten. Aus diesen Ansichten des einen Gesichtes kann eine Menge
von Merkmalspunkten der Gesichtsmerkmale auf dem Gesicht manuell
gekennzeichnet werden. Diese manuelle Kennzeichnung stellt eine
Deformation des Gesichtes in seine verschiedenen Gesichtsmerkmale
und die Punkte, welche die Gesichtsmerkmale ergeben, dar. Diese
Merkmale können
zum Beispiel eine Nase, Augen und einen Mund beinhalten. Die Merkmalspunkte
sind diejenigen Punkte, welche die Gesichtsmerkmale auf dem Gesicht
markieren. ASM benutzt die Menge von Trainingsdaten, welche die Deformation
des Gesichtes repräsentieren,
um die Gesichtsmerkmale auf einem anderen Gesicht durch die Verwendung
von Ansichten des anderen Gesichtes zu analysieren. Diese konventionelle
ASM-Technik leidet allerdings unter einer Ungenauigkeit bei der
Lokalisierung von Gesichtsmerkmalen in den Ansichten des analysierten
Gesichtes. Darüber
hinaus kann die konventionelle ASM-Technik nur ein Gesicht deformieren,
das auf dem Wege des in der Menge der Trainingsdaten deformierten
Gesichtes analysiert wurde. Eine Teillösung zur Überwindung der innewohnenden
Ungenauigkeit ist die Verwendung größerer Trainingsdatenbanken. Solch
eine Lösung
ist nur teilweise, weil sie nicht die lokale Graustufenmodellanpassung
für die
verschiedenen Ansichten des Gesichtes in Betracht zieht. Lokale
Graustufenmodellanpassung tendiert dazu, die Daten so zu interpretieren,
dass die Gesichtsmerkmale zu den stärksten photometrischen Kanten
hin verschoben werden, was nicht notwendigerweise die eigentlichen
Kanten eines Gesichtsmerkmales sind, wodurch weitere Ungenauigkeit
erzeugt wird. Darüber
hinaus kann die Verwendung einer größeren Trainingsdatenbank die
Genauigkeit weiter herabsetzen, weil die zusätzlichen Daten dazu tendieren,
die akzeptierbaren Gesichtsmerkmalsformen in einen für das analysierte
Gesicht ungenauen Bereich zu erweitern.
-
Zusätzlich zu
den vorangegangenen Problemen, ist ASM beim Finden der gleichen
Gesichtsmerkmale in zwei leicht verschiedenen Ansichten des gleichen
Gesichtes nicht konsistent. ASM gewährleistet nicht immer, dass
die in Trainingsdaten für
ein Trainingsobjekt identifizierten Merkmale zu gleichen Merkmalen
führen, wenn
zwei leicht unterschiedliche Ansichten eines anderen Objektes abgesucht
werden. Diese Unzulänglichkeit
kann Beleuchtungsschwankungen zugewiesen werden, die aus einer Rotation
des Objektes in verschiedenen zweidimensionalen Ansichten resultieren,
oder sie kann verschiedenen Ausgangswerten bzw. -parametern zugewiesen
werden. Zwei negative Ergebnisse können auftreten, wenn die konventionelle
ASM in dieser Umgebung benutzt wird. Ein Ergebnis ist, dass das
konventionelle ASM-Modell Merkmale auf einem Objekt falsch identifiziert
oder die Merkmalspunkte für
die Merkmale auf dem Objekt unterschiedlich lokalisiert. In beiden
Fällen
werden unterschiedliche zweidimensionale Ansichten des gleichen
Objektes Merkmale hervorbringen, die nicht zwischen den verschiedenen
zweidimensionalen Ansichten übereinstimmen,
wenn die konventionelle ASM verwendet wird. Daraus folgt, dass die Übereinstimmung
zwischen den identifizierten Merkmalen der verschiedenen Ansichten
ungenau ist, wenn die konventionelle ASM verwendet wird.
-
Es
wäre ein
technischer Fortschritt, eine Technologie zu entwickeln, die genau
und konsistent die gleichen Merkmale in verschiedenen Ansichten
des gleichen Objektes ausfindig machen kann.
-
Ein
System und ein Verfahren zur Bereitstellung verbesserter Kopfbewegungsabschätzungen
für Animationen
ist in der
US 2002/0102010
A1 beschrieben.
-
Zusammenfassung
-
Eine
Ausführungsform
der Erfindung identifiziert Gesichtsmerkmale über die Lokalisierung von Punkten
für die
Gesichtsmerkmale, so wie Augenwinkel und eine Nasenspitze. Um dies
zu vollbringen, wird eine Trainingsmenge von mehreren zweidimensionalen
Ansichten eines Gesichtes verwendet, um einen Trainingsdatensatz
zu entwickeln. Der Trainingsdatensatz wird mit den zweidimensionalen
Ansichten des Gesichtes in einem mathematischen Modell verwendet.
Das mathematische Modell wird zur Identifizierung sowohl der inneren
als auch der äußeren Gesichtsmerkmale
auf den zwei verschiedenen zweidimensionalen Ansichten verwendet,
um somit einen Stereokopplungsmechanismus zur Identifikation von
Gesichtsmerkmalen auf jeder der zwei verschiedenen Ansichten zu
präsentieren.
Das mathematische Modell verwendet eine innerhalb einer Fundamentalmatrix
enkodierte epipolare Geometrie, um die Regionen in jeder der beiden
verschiedenen Ansichten einzugrenzen, in welchen die Gesichtsmerkmale
lokalisiert werden. Das mathematische Modell findet eine geometrische Übereinstimmung
zwischen den Punkten für
jedes Merkmal bzw. auf jeder der beiden verschiedenen Ansichten
des gleichen Gesichtes.
-
In
einer anderen Ausführungsform
der Erfindung werden äußere und
innere Gesichtsmerkmale eines Gesichtsmodells mit denen eines ersten
Modells für
eine erste Gesichtsdarstellung und mit denen eines zweiten Modells
für eine
zweite Gesichtsdarstellung abgeglichen. Jeder der Abgleiche der äußeren und
inneren Gesichtsmerkmale des ersten und zweiten Gesichtsmodells
wird unter Verwendung der dazugehörigen epipolaren Rand- oder Nebenbedingungen
bzw. Eingrenzungen oder Einschränkungen
für das
erste und das zweite Modell angepasst. Die erste und zweite Gesichtsdarstellung
sind Darstellungen bzw. Abbildungen des gleichen Gesichtes, das
im Wesentlichen jeweils in der gleichen Kameraausrichtung aufgenommen
ist. In anderen Ausführungsformen
haben die Darstellungen verschiedene, sich in der Gierung unterscheidende
Gesichtsposenbereiche.
-
In
noch einer anderen Ausführungsform
der Erfindung wird eine Initialisierung durchgeführt, indem ein Gesichtsmodell
für erste
und zweite Modelle für
entsprechende erste und zweite Darstellungen durchgeführt wird.
Jedes der ersten und zweiten Modelle hat äußere und innere Gesichtsmerkmale,
die durch eine Vielzahl von Punkten definiert werden. Eine Fundamentalmatrix
wird für
das erste und zweite Modell abgeschätzt. Die Punkte werden für jedes
der inneren Gesichtsmerkmale des ersten und zweiten Modells unter
Verwendung der jeweiligen lokalen Textur für jeden Punkt aktualisiert.
Jedes der inneren Gesichtsmerkmale des ersten und zweiten Modells
wird dann aktualisiert. Die Punkte für jedes der inneren Gesichtsmerkmale
des ersten und zweiten Modells werden unter Verwendung der Fundamentalmatrix
und der entsprechenden epipolaren Randbedingungen aktualisiert.
Eine Aktualisierung wird dann für
jedes der äußeren Gesichtsmerkmale
des ersten und zweiten Gesichtsmodells ausgeführt. Wenn das erste Modell
innerhalb einer vorbestimmten Toleranz des Gesichtsmodells konvergiert
hat, wird eine Repräsentation
bzw. Symbolisierung oder Darstellung der ersten und zweiten Gesichtsmerkmale
des ersten Gesichtsmodells ausgegeben. Wenn das zweite Modell innerhalb einer
vorbestimmten Toleranz des Gesichtsmodells konvergiert hat, wird
eine Repräsentation
der inneren und äußeren Gesichtsmerkmale
des zweiten Modells ausgegeben.
-
Kurze Beschreibung der Zeichnungen
-
Ein
vollständigeres
Verständnis
der Ausführungsformen
kann mit Bezug auf die folgende detaillierte Beschreibung erlangt
werden, wenn diese in Verbindung mit den begleitenden Zeichnungen
gesetzt wird, von denen:
-
1a–1b einen
Mechanismus zum Abgleich von Ecken verschiedener Gesichtsmerkmale über Punkte,
die eine Umrisslinie um jedes Gesichtsmerkmal auf zwei verschiedenen
zweidimensionalen Ansichten des Gesichtes bilden, darstellt, wobei
sich das Gesicht in zwei (2) verschiedenen Positionen befindet und
wobei der Mechanismus eine Fundamentalmatrixabschätzung verwendet.
-
2 stellt
eine Zerlegung eines Gesichtes in innere und äußere Gesichtsmerkmale dar,
die jeweils von einer eine Mehrzahl von Punkten verbindenden Linie
umrissen werden.
-
3a–3b zeigen
entsprechende zweidimensionale Ansichten eines Gesichtes in verschiedenen Posen,
wobei die Ansichten Startbilder repräsentieren, die bei Ausführungsformen
der Erfindung verwendet werden können.
-
4a–4b sind
epipolare geometrische Darstellungen, welche die Übereinstimmung
zwischen Punkten auf zwei verschiedenen zweidimensionalen Ansichten
eines Bildes gemäß einer
Ausführungsform
der Erfindung darstellen.
-
5a–5b repräsentieren
gemäß einer
Ausführungsform
der Erfindung eine erste Iteration eines Stereokopplungsmechanismus
zur Identifikation der übereinstimmenden
Gesichtsmerkmale auf den zwei verschiedenen Ansichten von jeweils 3a–3b,
durch die Verwendung einer in einer Fundamentalmatrix enkodierten
Geometrie.
-
6a–6b, 7a–7b und 8a–8b repräsentieren
entsprechende Iterationen des Stereokopplungsmechanismus, wie er
in Bezug auf die 5a und 5b verwendet
wurde.
-
9 ist
ein Flussdiagramm von einer Prozedur für das Auffinden von Gesichtsmerkmalen,
die gemäß einer
Ausführungsform
der Erfindung einen Stereokopplungsmechanismus verwendet, wobei
die Prozedur mit den in 3a–3b gezeigten
Darstellung verwendet werden kann, um die entsprechenden in 5a–5b bis
zu 8a–8b gezeigten
Ergebnisse zu zielen.
-
10 ist
ein Blockdiagramm eines vernetzten Computers gemäß einer Ausführungsform,
der zur Implementierung entweder als Server oder als Client verwendet
werden kann.
-
Ausführliche Beschreibung
-
Die
vorliegende Erfindung richtet sich auf die Gesichtsmodellierung
und Identifikation von Gesichtsmerkmalen. Ausführungsformen der vorliegenden
Erfindung verwenden epipolare Geometrie bei der Gesichtsformenanalyse,
um Gesichtsmerkmale wie eine Nase, Augen, Augenbrauen, einem Mund
usw. zu bestimmen. Diese ausführliche
Beschreibung geht davon aus, dass der Leser ein Verständnis von
der epipolaren Geometrie hat.
-
Abschätzung
der Fundamentalmatrix
-
1a–1b zeigen
zwei Zieldarstellungen, die durch die Abschätzung der Fundamentalmatrix
E zwischen ihnen kalibriert werden. Ein Beispiel einer Formel für die Berechnung
der Fundamentalmatrix E für ein
Darstellungspaar wird von Zhang et al. (Z. Zhang, Determining the
epipolar geometry and its uncertainty: a review. The International
Journal of Computer Vision, 27 (2): 161-195, 1998) zur Verfügung gestellt.
Die zwei Bilder werden von einer statischen bzw. feststehenden Kamera
aufgenommen während
der Kopf sich in einer Frontalposition befindet und in der Gierungsrichtung
zwischen den beiden Ansichten bewegt wird. Wegen der Beleuchtungsänderung,
wenn der Kopf rotiert, erscheint die Farbe von den gleichen physikalischen
Punkten in den zwei Ansichten unterschiedlich zu sein. Somit ist
es vorteilhaft, Gesichtsmerkmale des Gesichtes zu identifizieren,
weil die Identifikation von Gesichtsmerkmalen widerstandsfähiger gegenüber Identitätsvariationen
ist, als auf dem optischen Fluss basierte Verfahren. Die Abschätzung der
Fundamentalmatrix E kann vier (4) Schritte beinhalten: 1) Schätze die
Lokalisierung von Gesichtern über
die Bestimmung von Unterschieden zwischen den zwei verschiedenen
Ansichten ab; 2) mache die Ecken von jedem Gesichtsmerkmal in den
Darstellungen ausfindig; 3) gleiche die Ecken jedes Gesichtsmerkmals über eine
Korrelation zwischen den zwei verschiedenen Darstellungen ab; und
4) lehne falsche Abgleiche ab und schätze die Fundamentalmatrix über kleinste
mittlere Fehlerquadrate ab. 1a–1b zeigen
ein Gesichtsdarstellungspaar und die Menge von Eckübereinstimmungen
für Gesichtsmerkmale,
die mit dieser Technik aufgestellt wurden. Dennoch wird ein Gesichtsmodell
für noch
genauere Korrelationen der Gesichtsmerkmale zwischen den zwei verschiedenen Darstellungen
benötigt.
So ein Gesichtsmodell, wie es in 2 gezeigt
und weiter unter erörtert
wird, ist eine Repräsentation
von Gesichtsmerkmalen, d. h. Nase, Augen, Augenbrauen, Mund usw.
-
Zerlegung eines Gesichtsformenmodells
-
Eine
Trainingsmenge von Gesichtsformen,
kann zur Verfügung gestellt
werden, wobei ein Formenvektor durch
repräsentiert wird. S
i,
ein Formenvektor, repräsentiert
die Punkte, die verschiedene Merkmale auf einem Gesicht (Gesichtsmerkmale)
ergeben. Wie in
2 ersichtlich, wurde ein Gesicht
in innere Gesichtsmerkmale (Augen, Nase und Mund) zerlegt, von denen
jedes als mit einer eine Mehrzahl von Punkten verbindenden Linie umrissen
bzw. umrandet gezeigt ist.
2 zeigt
63 Punkte, die zusammen diese drei inneren Gesichtsmerkmale ausmachen.
Das Gesicht wurde auch in äußere Gesichtsmerkmale
(ein Paar Augenbrauen und eine Silhouette des Kiefers, Kinns und
der Wangen) zerlegt, von denen jedes mit einer eine Mehrzahl von
Punkten verbindenden Linie umrissen ist.
2 zeigt
19 Punkte, die diese zwei verschiedenen äußeren Gesichtsmerkmale ergeben.
Somit ergeben insgesamt 83 Punkte fünf (5) verschiedene Gesichtsmerkmale,
wie in der Zusammensetzung der zerlegten Gesichtsmerkmale an der
unteren Seite von
2 zu sehen ist.
-
Die
Punkte auf der Silhouette sind hilfreich, weil sie dabei behilflich
sein können,
die Regionen des Gesichtes vom Hintergrund abzugrenzen bzw. zu segmentieren.
Wegen der Selbstokklusion (occlusion), die durch die Rotation des
Kopfes in der Gierrichtung herbeigeführt wird, sind die Punkte auf
der Silhouette allerdings schwierig genau den zwei verschiedenen
Ansichten des gleichen Gesichtes zuzuordnen, da diese Punkte nicht
den epipolaren Randbedingungen genügen werden. Um diese Schwierigkeit
zu überwinden,
wird ein zerlegtes Gesichtsmodell verwendet. Wie in 2 gezeigt
ist, ist der Formenvektor S; in zwei Teile unterteilt, der innere
Vektor Sin und der äußere Vektor Sout.
Sin zeigt die 64 Punkte an, welche die drei
inneren Gesichtsmerkmale ergeben, und der äußere Vektor Sout zeigt
die anderen 19 Punkte an, welche die Augenbrauen und die Silhouette
oder Gesichtskontur definieren. Selbstverständlich könnte eine andere Anzahl von
Punkten ausgewählt
werden, um jedes der Gesichtsmerkmale zu repräsentieren. Ein weiterer Grund
zur Abgrenzung bzw. Freistellung der Silhouette des Kiefers, Kinns
und der Wangen ergibt sich aus der Tatsache, dass ihr lokales Graustufenmodell
weniger stabil als das der Punkte ist, welche die drei inneren Gesichtsmerkmale
ergeben, wenn die Hintergründe,
die in den Trainingsdarstellungen präsentiert werden, überladen
sind. In Anbetracht dessen, dass die Peripherie der Augenbrauen
schwieriger auszumachen ist, als andere innere Gesichtsmerkmale
und eher von anderen Faktoren, so wie durch verschiedene Frisuren,
beeinflusst wird, werden die Augenbrauen auch dem Sout Formenvektor
zugewiesen.
-
Nach
der Ausrichtung aller Formenvektoren (S
in,
S
out) am Tangentenraum (tangent space) der
mittleren Form
in
einer iterativen ASM-Prozedur wird eine Menge von normalisierten
Formenvektoren
erhalten, wobei T eine euklidische
Transformation über
die Durchführung
der Rotation θ,
eine Skalierung S und eine Translation durch (X
i,
Y
i) darstellen. Ein Beispiel für solch
eine iterative ASM-Prozedur, die verwendet werden kann, wird von
Cootes et al., wie oben beschrieben ist, zur Verfügung gestellt.
-
Der
Zerlegungsstrategie folgend wird jedes ausgerichtete Gesicht
in
zwei Vektoren entkoppelt
Zwei Formenräume U
F und U
in werden
unter Verwendung der prinzipiellen Komponentenanalysetechnik (PCA) von
der ASM als
berechnet, worin U
F die Matrix ist, die aus k Hauptmöglichkeiten
von Variationen in
(princial
modes of variations und U
in ist die aus
erlernt
wurde. Für
jeden Punkt j für
jedes Gesichtsmerkmal in der Form i aus der Trainingsmenge wird
ein Graustufenprofil g
μ extrahiert, das um die
j zentriert ist. Der Abweichungsvektor d
μ von g
μ wird
berechnet und normalisiert aus:
worin k der Index der Punkte
entlang des Profils ist. PCA wird nochmals verwendet, um die Variation
des Vektors
zu
modellieren. Ein Beispiel für
die PCA der ASM, wie sie hierbei verwendet wird, wird in Cootes
et al., wie oben beschrieben, gegeben.
-
Stereokopplungsmodellsuche
-
Ein
Stereokopplungsmodell von abgeglichenen übereinstimmenden Gesichtsmerkmalen
von zwei Ansichten des gleichen Gesichtes beginnt mit einer anfänglichen
Abschät zung
der Gesichtsposition und des mittleren Formenvektors in beiden Darstellungen.
ASM wird für
jede der beiden Ansichten angewendet, um jeden Punkt von jedem Gesichtsmerkmal
entsprechend der lokalen Texturstatistiken (z. B. photometrische
Daten nahe jedes Punktes) zu aktualisieren. Um dies zu tun, werden
die Punkte entlang einer Richtung bewegt, die senkrecht zu der Modellgrenze
verläuft.
Die Qualität
der Anpassung wird dann bewertet und daraus kann eine neue Position
für jeden
Punkt vorgeschlagen werden. Die beste Übereinstimmung wird oft an
einer starken Kante gefunden, basierend auf dem Umfang der photometrischen
Daten.
-
Der
nächste
Schritt beinhaltet, die plausibelste Form zu finden, die sowohl
der vorangegangenen Formenverteilung als auch den epipolaren Randbedingungen
genügt.
Die Modellanpassung kann als das Finden der optimalen Parametersätze bzw.
Mengen c der Formenmodelle in den zwei Darstellungen formuliert
werden, um eine Verlustfunktion L(c) zu minimieren, die zwei Randbedingungen
besitzt, z. B. sind
den Randbedingungen
untergeordnet, worin d (x,
y) der euklidische Abstand zwischen den Punkten x und y und S
in1 sowie S
in2 die beobachteten
Merkmalspunkte nach der auf der lokalen Textur basierenden Aktualisierung
sind,
und
die Modellinstanzen angeben:
-
Die
Parameter bin1 und bin2 sollten
der zweiten Bedingung genügen,
um eine wünschenswert
genaue Gesichtsform zu erzeugen.
-
L(c)
wird verwendet, um die Unterschiede zwischen den Modellinstanzen
und den beobachteten Merkmalen zu bewerten.
-
Alternativ
kann die epipolare Geometrie gemäß L(c) auch
als eine Maßnahme
angesehen werden, um die richtigen korrespondierenden Punkte zu
finden. Während
der Suchprozedur kann eine typische beobachtete Angleichung μ ↔ μ' unter den Formen
S
in1, S
in2 verrauscht
(noisy) sein und es ist wünschenswert,
die eine Richtige zu erhalten. L(c) zeigt den Abstand zwischen den
ursprünglichen
Merkmalspunkten
und
den korrekten dazugehörigen
Punkten
an,
worin
die
Punkte in den Forminstanzen
sind.
Eine Annahme wird gemacht, dass dabei eine gaußsche Fehlerverteilung von μ, μ' über den Punkten
liegt,
die wiederum bzw. der Reihe nach die Verlustfunktion L(c) für die wahrscheinlichsten
Werte minimieren wird, welche eine genaue Übereinstimmung zwischen Punkten
auf zwei verschiedenen Ansichten repräsentieren werden.
-
Eine
Prozedur für
die Lokalisierung und genaue Übereinstimmung
zwischen Punkten auf den zwei verschiedenen Ansichten beinhaltet
das Zerlegen von Formenvektoren und die kombinierten Randbedingungen von
beiden epipolaren Randbedingungen (Gleichung 3) und den vorangegangenen
Formenrandbedingungen (Gleichung 4). Im Allgemeinen beginnt eine
solche Prozedur mit der Initialisierung eines Formenmodells auf zwei
verschiedenen Ansichten des gleichen Gesichtes hinsichtlich bzw.
im Sinne der Ergebnisse des Auffindens des Gesichtes. Ein Beispiel
für die
Initialisierung von Formenmodellen auf zwei verschiede nen Ansichten, das
hierbei verwendet werden kann, wird von Li et al. (S.Z. Li, Q.D.
Fu, L. Cu, B. Scholkopf, Y.M. Cheng, H.J. Zhang. „Kernel
Machine Based Leaming for Multi-View Face Detection and Pose Estimation" in den Unterlagen
der 8. IEEE International Conference an Computer Vision. Vancouver,
Canada. 9.–12.
Juli 2001) gegeben. Nachdem die Formenmodelle von den verschiedenen
Ansichten initialisiert wurden, werden die Punkte für jedes
Gesichtsmerkmal unabhängig
von der Verwendung der Textur (d. h. der photometrischen Daten)
nahe jedes Punktes aktualisiert. Dann wird die Darstellung der inneren
Form aktualisiert. Um dies zu tun, wird eine anfängliche Abschätzung für die inneren
Formenvektoren S
in1, S
in2 vorgegeben.
Diese anfängliche
Abschätzung
wird an die Bilddaten für
die zwei verschiedenen Ansichten des Gesichtes angepasst. Eine Optimierung wird
für die
Parameter von T
in1, T
in2,
b
in1, b
in2 gesucht
und ein Abschneiden (truncation) von b
in1,
b
in2 wird innerhalb von
entsprechend der vorangegebenen
Formenrandbedingungen vorgenommen. Nach dem Abschneiden wird eine
Aktualisierung der Punkte für
die inneren Gesichtsmerkmale (Nase, Augen und Mund) entsprechend
der epipolaren Randbedingungen vorgenommen.
-
Daher,
dass die Punkte für
die inneren Gesichtsmerkmale für
die zwei verschiedenen Ansichten womöglich noch nicht die epipolare
Randbedingung befriedigen, wird eine nichtlineare Optimierungslösung eingeführt, um
die korrekte Übereinstimmung
von
vom Angleich von μ ↔ μ'| zu finden. Wie
bei den epipolaren geometrischen in
4a–
4b gezeigten
Diagrammen gezeigt, ist l
μ in der epipolaren Linie
des Merkmalpunktes μ in
der zweiten Ansicht oder dem Bild des gleichen Gesichtes. Eine Linie
l
μ wird
rechtwinklig zu l
μ' von μ', welche l
μ an
dem Punkt M schneidet, gezogen. Eine Linie l
ν, die
von e
2 durch einen Punkt ν auf l
μ verläuft, ist
eine epipolare Linie. Dementsprechend definiert der Punkt ν das Bündel von
epipolaren Linien in der zweiten Darstellung. Das Bündel kann
durch den Parameter λ parametrisiert
werden, der durch den Abstand zwischen ν und μ' gezeichnet ist. Der Parameter μ' wird nach l
ν projiziert,
um
zu
erhalten. Der Parameter
ist
die epipolare Linie von
in
der ersten Ansicht oder dem Bild von dem gleichen Gesicht. Der Parameter μ wird auf
projiziert,
um
zu
erhalten. Um das optimale λ
ν-μ zu
finden, um L(c) wie in (2) zu minimieren, kann ein klassischer Levenberg-Marquardt
Optimierer verwendet werden. Worin der Anfangswert von λ zu
gesetzt wird. Mehrere Iterationen
können
gemacht werden, um ein optimalen Wert von λ zu erreichen. Letztlich werden
alle Punkte S
1, S
2,
für alle
Merkmale, wie es in dem ersten Schritt gemacht wurde, aktualisiert.
-
Im
Allgemeinen wird die Form eines Gesichtes in einer Ausführungsform
durch die vorangegangenen Schritte zur Minimierung einer internen
Energiefunktion abgeschätzt.
Die epipolaren Randbedingungen repräsentieren einen speziellen
Energiebegriff, der auf das Finden der besten Übereinstimmungen zwischen den Punkten
der Gesichtsmerkmale für
jedes der zwei verschiedenen zweidimensionalen Ansichten des gleichen Gesichtes
abzielt.
-
5a–5b bis
zu 8a–8b zeigen
ein Ergebnis entsprechender Iterationen von einer Ausführungsform
eines Stereokopplungsmechanismus, der die epipolare Geometrie verwendet,
wobei 3a–3b die
zwei Anfangsansichten des gleichen Gesichtes repräsentieren.
Wie in den letzten Ansichten in 8a–8b gesehen
werden kann, lokalisiert ein genaues Stereokopplungsmodell jedes
Gesichtsmerkmal in zwei verschiedenen Ansichten, wobei die Konvergenz
der Gesichtsmerkmale in den jeweiligen Ansichten gleich ist. Die
Konvergenz ist möglich,
weil geometrische auf die inneren Gesichtsmerkmale (Augen, Nase
und Mund) angewendete Randbedingungen der Übereinstimmungszuordnung zwischen
den zwei verschiedenen Ansichtsmodellen regulieren.
-
Eine
Prozedur 900, gesehen in 9, stellt
eine Ausführungsform
der vorliegenden Erfindung dar, welche die Schritte eins (1) bis
acht (8) beinhaltet, die auf zwei (2) verschiedene Ansichten des
gleichen Gesichtes unter Verwendung des gleichen Gesichtsmodells
angewendet werden. Die zwei Ansichten sind in der gleichen jeweiligen
Kameraausrichtung zum Gesicht aufgenommen, wobei das Gesicht in
der Gierrichtung zwischen den zwei verschiedenen Ansichten rotiert
wurde. Die zwei Ansichten werden simultan bearbeitet. Schritte zwei
bis sieben werden als Iterationen innerhalb der Prozedur 900 wiederholt.
-
Die
Eingabe für
die Prozedur 900 sind zwei Gesichtsdarstellungen, von denen
ein Beispiel in 3a–3b zur
Verfügung
gestellt wird. Die Eingabe ist am Schritt 1 in der Prozedur 900 in
den Blöcken 902–904 jeweils
für die
ersten und zweiten Gesichter (d. h. die zwei verschiedenen Ansichten
des gleichen Gesichtes) ersichtlich. Nach Schritt 1 der Prozedur 900 folgt
Schritt 2, in welchem die Eckpunkte von jedem Gesichtsmerkmal auf
jedem Gesicht in jeder der zwei Darstellungen durch die Initialisierung
des Formenmodells auf den ersten und zweiten Gesichtern in den Blöcken 908–910 ausfindig
gemacht werden. Die Blöcke 908–910 können gleichzeitig
ausgeführt
werden. Mit Bezug auf die inneren Gesichtsmerkmale beinhalten die Eckpunkte
für den
Mund eine Vielzahl von Mundwinkeln. Die Eckpunkte für jedes
der Augen beinhalten eine Vielzahl von Augenwinkeln und die Eckpunkte
für die
Nase beinhalten eine Nasenspitze.
-
Nachdem
die Eckpunkte von jedem Gesichtsmerkmal ausfindig gemacht wurden,
beinhaltet die Initialisierung des Gesichtsmodells auf den ersten
und zweiten Gesichtern in den Blöcke 908–910 auch
die Festlegung der Übereinstimmungen
zwischen den zwei Mengen von Eckpunkten. Mit anderen Worten verlangen die
Blöcke 908–910 die
Initialisierung des ersten und zweiten Modells für die jeweiligen ersten und
zweiten Gesichtsdarstellungen. Diese Initialisierung verwendet ein
Gesichtsmodell, das äußere und
innere Gesichtsmerk male hat, wobei jedes Gesichtsmerkmal durch eine
Vielzahl von Punkten definiert wird und wobei jedes der ersten und
zweiten Modelle äußere und
innere Gesichtsmerkmale hat. Beispielsweise wird in 5a–5b ein
Beispiel für
zwei verschiedene Ansichten gegeben, auf welche die Prozedur 900 angewendet
wird. 2 zeigt ein Beispiel für das Gesichtsmodell, das sowohl
innere als auch äußere Gesichtsmerkmale
hat, von denen jedes durch eine Vielzahl von Punkten definiert wird.
Die inneren Gesichtsmerkmale in 2 sind eine Nase,
ein Mund und ein Paar Augen. Die äußeren Gesichtsmerkmale in 2 sind
eine bogenförmige
Unterkante des Gesichtes und ein Paar Augenbrauen. Wie anhand der
Anfangseingaben von 3a–3b gesehen
werden kann, sind die ersten und zweiten Gesichtsdarstellungen das
gleiche Gesicht, das im Wesentlichen in der gleichen Kameraorientierung
aufgenommen wurde. Die jeweiligen Gesichtsposen der ersten und zweiten
Gesichtsdarstellung sind im Wesentlichen im Nickwinkel gleich, im
Wesentlichen im Rollwinkel gleich und mit Bezug auf die Gierung
in einem Bereich von etwa 3 bis ungefähr 10 Grad (10°) unterschiedlich.
-
Nachfolgend
wird eine Übereinstimmung
zwischen den Eckpunkten der Gesichtsmerkmale in den zwei verschiedenen
Ansichten festgelegt und eine Abschätzung der Fundamentalmatrix „E" für die ersten
und zweiten Gesichter (Modelle) wird im Block 906 gemacht.
Ein Beispiel einer Technik zum Abschätzen der Fundamentalmatrix „E", die im Block 905 der
Prozedur 900 verwendet werden kann, ist in Pentland et
al. beschrieben, wie oben erwähnt.
-
In
Schritt 3 der Prozedur 900 wird eine Aktualisierung der
Mehrzahl der Punkte für
jedes der inneren Gesichtsmerkmale des ersten und zweiten Modells
(d. h. die ersten und zweiten Gesichter) gemacht, indem die jeweilige
lokale Textur für
jeden Punkt verwendet wird. Diese Aktualisierung tritt in den Blöcken 912–914 der
Prozedur 900 auf, wobei die loka le Textur für jeden
Punkt die photometrischen Daten an und nahe dem Punkt beinhaltet.
In Schritt 4 in den Blöcken 916–918 wird
eine Aktualisierung jedes der inneren Gesichtsmerkmale des ersten
und zweiten Modells vorgenommen, wobei die Ergebnisse der Aktualisierungen
der Punkte aus Schritt 3 verwendet werden.
-
Schritte
1–4 werden
vorgenommen, um zwei verschiedene Modelle zu aktualisieren, von
denen jedes eine unterschiedliche Ansicht des gleichen Gesichtes
darstellt. In Schritt 5 im Block 920 wird eine einheitliche Operation,
anstatt von einem Paar von Operationen wie in den Schritten 1–4, ausgeführt. Block 920 benutzt die
Fundamentalmatrix und die entsprechenden epipolaren Randbedingungen,
um die Vielzahl der Punkte für jedes
der inneren Gesichtsmerkmale in dem ersten und zweiten Modell zu
aktualisieren. Mit anderen Worten, die im Block 920 ausgeführten Operationen
verfeinern die aktualisierten ersten und zweiten Modelle durch die Verwendung
zweier Randbedingungen, die mathematisch in den Gleichungen (3)
und (4) oben ausgedrückt sind.
-
Der
Schritt 6 führt
zur Ausführung
eines Paares von Operationen in den Blöcken 922–924 zurück, worin
eine Aktualisierung jedes der äußeren Gesichtsmerkmale
des ersten und zweiten Gesichtsmodells gemacht wird. Ein Paar von
Anfragen wird im siebten Schritt durchgeführt. Diese Anfragen tauchen
in den Blöcken 926 und 928 für jeweils
das erste und das zweite Modell auf. Im Block 926 wird
eine Repräsentation
für die
inneren und äußeren Gesichtsmerkmale
des ersten Gesichtsmodells ausgegeben, wenn das erste Modell innerhalb
einer vorbestimmten Toleranz für
das Gesichtsmodell konvergiert hat. Sonst werden die Schritte 3 bis
7 wiederholt, bis die Konvergenz für das erste Modell innerhalb
der vorbestimmten Toleranz für
das Gesichtsmodell liegt. Ebenso wird im Block 928 eine
Repräsentation
der inneren und äußeren Gesichtsmerkmale des
zweiten Gesichtsmodells ausgegeben, wenn das zweite Gesichtsmodell
innerhalb einer vorbestimmten Toleranz des Gesichtsmo dells konvergiert
hat. Sonst werden die Schritte 3 bis 7 wiederholt, bis die Konvergenz für das zweite
Modell innerhalb der vorbestimmten Toleranz für das Gesichtsmodell liegt.
Ein Beispiel für
die Ergebnisse von vier (4) Iterationen der Schritte 3 bis 7 ist
jeweils in den 5a–5b bis
zu 8a–8b gezeigt.
-
Der
Konvergenz der Gesichtsmerkmale zwischen den zwei verschiedenen
Ansichten folgend, kann das Ergebnis der Prozedur 900 für einen
Gesichtserkennungsprozess verwendet werden. Zum Beispiel kann die
Identifikation des Gesichtes einer Person in einer Datenbank vorgenommen
werden, die wenigstens eine der ersten und zweiten Gesichtsdarstellungen
abgleicht bzw. mit ihr übereinstimmt.
Hierbei kann der Abgleichsprozess die ausgegebenen Repräsentationen
der inneren und äußeren Gesichtsmerkmale
von einem oder beiden der ersten und zweiten Modelle verwenden.
-
Ein Computersystem
-
10 zeigt
ein beispielhaftes Computersystem, das in den hierin beschriebenen
Ausführungsformen verwendet
werden kann. Der Computer 1042 beinhaltet einen oder mehrere
Prozessoren oder Prozessoreinheiten 1044, einen Systemspeicher 1046 und
einen Bus bzw. eine Datentransfereinrichtung 1048, die
verschiedenartige Systemkomponenten verbindet, die den Systemspeicher 1046 bis
zu den Prozessoren 1044 beinhalten. Der Bus 1048 repräsentiert
einen oder mehrere von irgendeinem von mehreren Typen von Busstrukturen,
inklusive einem Speicherbus oder einem Speichercontroller bzw. einer
Speicherkontrollvorrichtung, einem Peripheriebus, einem beschleunigten
Graphikanschluss (accelerated graphics Port) und einem Prozessor
oder örtlichem
Bus (local bus), der irgendeine der vielen verschiedenartigen Busarchitekturen
verwendet. Der Systemspeicher 1046 beinhaltet einen nur
lesbaren Speicher (read only memory – ROM) 1050 und einen Zufallszugriffsspeicher (random
access memory – RAM) 1052.
Ein rudimentäres
Ein- und Ausgabesystem (BIOS) 1054 beinhaltet die rudimentären Routinen,
die dabei behilflich sind, Informationen
-
zwischen
den Elementen innerhalb des Computers auszutauschen, wie während des
Startvorganges, der im ROM 1050 abgespeichert ist. Der
Computer 1042 beinhaltet ferner einen Festplattenspeicher 1056,
um auf eine Festplatte (nicht gezeigt) zu schreiben sowie von ihr
zu lesen, Magnetscheibenspeicher 1058, um von einer entnehmbaren
Magnetscheibe 1060 zu lesen und sie zu beschreiben, und
ein optisches Laufwerk 1062, um von einer entnehmbaren
optischen Scheibe (optical disc) 1064, so wie einer CD
ROM oder anderen optischen Medien zu lesen oder diese zu beschreiben.
Festplattenlaufwerke 1056, das Magnetscheibenlaufwerk 1058 und
das optische Scheibenlaufwerk 1062 sind mit dem Bus 1048 über eine
SCSI-Schnittstelle 1066 oder eine andere geeignete Schnittstelle
verbunden. Die Laufwerke und die dazugehörigen computerlesbaren Medien
ermöglichen
eine nichtflüchtige
Speicherung von computerlesbaren Instruktionen, Datenstrukturen,
Programmmodulen und anderen Daten für den Computer 1042.
Obwohl die hierin als Beispiel beschriebene Umgebung eine Festplatte,
eine entnehmbare magnetische Scheibe 1060 und eine entnehmbare
optische Scheibe 1064 beinhalten, sollte es für einen
Fachmann ersichtlich sein, dass alle anderen Arten von computerlesbaren
Medien, welche Daten speichern können,
die für
einen Computer zugänglich
sind, wie zum Beispiel magnetische Kassetten, Flash-Speicherkarten,
digitale Videoscheiben, Zufallszugriffsspeicher (RAMs), nur lesbare
Speicher (ROMS) und ähnliche,
ebenfalls in einer beipielsgemäß funktionierenden
Umgebung verwendet werden können.
-
Eine
Zahl von Programmmodulen kann auf der Festplatte 1056,
der magnetischen Scheibe 1060, der optischen Scheibe 1064,
dem ROM 1050 oder dem RAM 1052 gespeichert werden,
die ein Betriebssystem 1070 oder einen oder mehrere Anwendungsprogram me 1072 (so
wie eine Designanwendung), andere Programmmodule 1074 und
Programmdaten 1076 beinhalten. Ein Anwender kann Kommandos
und Informationen durch Eingabegeräte, wie eine Tastatur 1078 und
ein Anzeigegerät 1080,
eingeben. Andere Eingabegeräte
(nicht gezeigt) können
ein Mikrofon, einen Joystick (Steuerknüppel), ein Game-pad (Spielkontrollvorrichtung),
eine Satellitenschüssel,
einen Scanner oder ähnliches
beinhalten. Diese und andere Eingabegeräte sind mit der Prozessoreinheit 1044 durch
eine Schnittstelle 1082 verbunden, die an den Bus 1048 gekoppelt
ist. Ein Monitor 1084 oder eine anderweitige Anzeigevorrichtung
sind ebenfalls mit dem Bus 1048 über eine Schnittstelle, wie
einem Videoadapter 1086 verbunden. Zusätzlich zu dem Monitor können Personalcomputer üblicherweise
andere periphere Ausgabegeräte
(nicht gezeigt), so wie Lautsprecher und Drucker, beinhalten.
-
Der
Computer 1042 arbeitet im Allgemeinen in einer vernetzten
Umgebung, die logische Verbindungen mit einem oder mehreren Computern
andernorts verwendet, so wie einem andernortigen (remote) Computer 1088.
Der anderortige Computer 1088 kann ein anderer Personalcomputer
sein, ein Server, ein Router, ein Netzwerk-PC, ein gleichrangiges
gekoppeltes Gerät
(peer) oder ein anderer üblicher
Netzwerkknoten, und beinhaltet üblicherweise
viele oder alle der Elemente, die oben mit Bezug auf den Computer 1042 beschrieben sind.
-
Die
logischen Verbindungen, die in 10 dargestellt
sind, beinhalten ein lokales Netzwerk (local area network – LAN) 1090 und
ein Großraumnetzwerk
(wide area network – WAN) 1092.
Solche Netzwerkumgebungen sind üblich
für Büros, firmenübergreifende
Computernetzwerke, interne Netzwerke (Intranets) und das Internet.
Wenn der Computer in einer LAN-Netzwerkumgebung verwendet wird,
ist er mit dem lokalen Netzwerk durch eine Netzwerkschnittstelle
oder einen Adapter 1094 verbunden. Wenn der Computer in
einer WAN- Netzwerkumgebung
verwendet wird, beinhaltet der Computer in typischerweise ein Modem 1096 oder eine
andere Vorrichtung zur Einrichtung einer Kommunikation über ein
Großraumnetzwerk 1092,
so wie das Internet. Das Modem 1096, welches intern oder
extern sein kann, ist mit dem Bus 1048 über eine serielle Schnittstelle 1068 verbunden.
In einer vernetzen Umgebung werden Programmmodule mit Bezug auf
den Computer 1042 oder als Schnitte von ihm angezeichnet
und können
in einer fernliegenden Speichermedienvorrichtung abgespeichert werden.
Es sollte verstanden werden, dass die Netzwerkverbindungen, die
gezeigt sind, beispielhaft sind und andere Mittel zur Errichtung
einer Kommunikationsverbindung zwischen den Computern verwendet
werden können.
-
Im
Allgemeinen sind die Datenprozessoren des Computers 1042 durch
Instruktionsmittel programmiert, die zu verschiedenen Zeiten in
den verschiedenen computerlesbaren Speichermedien des Computers abgespeichert
werden. Programme und das Betriebssystem sind üblicherweise verteilt, z. B.
auf einer Diskette (floppy disc) oder CD-ROMs. Von dort aus werden
sie installiert oder in den sekundären Speicher des Computers
geladen. Bei ihrer Ausführung
werden sie wenigstens teilweise in den elektronischen Primärspeicher des
Computers geladen. Das hierin beschriebene System beinhaltet diese
und andere verschiedenartige Typen computerlesbarer Speichermedien,
wenn solche Medien Instruktionen bzw. Befehle oder Programme zur Ausführung der
beschriebenen Blöcke
bzw. Abschnitte oder Kästen
zusammen mit einem Mikroprozessor oder Datenprozessor beinhalten.
Das beschriebene System kann auch den Computer selber beinhalten,
wenn dieser entsprechend den hierin beschriebenen Verfahren und
Techniken programmiert ist.
-
Aus
Gründen
der Darstellung werden Programme und andere ausführbare Programmkomponenten, so
wie das Betriebssystem, hierin als abgegrenzte Blöcke bzw.
Kästchen
dargestellt, obwohl erkannt werden sollte, dass solche Programme
und Komponenten zu verschiedenen Zeitpunkten in verschiedenen Speicherkomponenten
des Computers auftreten und durch den bzw. die Datenprozessoren
des Computers ausgeführt werden.
-
Schlussbetrachtung
-
Ausführungsformen
ermöglichen
die Darstellung von Gesichtsmerkmalen und die Lokalisierung von Punkten
für die
Gesichtsmerkmale, so wie Augenwinkeln, Nasenspitzen usw. Eine Übereinstimmung
der Gesichtsmerkmale für
ein Paar von verschiedenen Ansichten des gleichen Gesichtes kann
durch die Verwendung einer epipolaren Geometrie herausgefunden werden.
Ein mathematisches Modell beinhaltet die Variationen der Formen
von sowohl den inneren Gesichtsmerkmalen als auch der äußeren Silhouette
des Gesichtes. Ein Algorithmus verwendet ein Gesichtsmodell, das
in innere und äußere Gesichtsmerkmale
zerlegt ist, um den Abgleich der Gesichtsmerkmale auf einem Paar
von verschiedenen Ansichten des gleichen Gesichtes zu verbessern.
-
Im
Folgenden werden bevorzugte Ausführungsformen
beschrieben:
-
Ausführungsform
1:
-
Ein
Verfahren zum Identifizieren von Gesichtsmerkmalen, umfassend die
Schritte eines:
- (a) Initialisierens, unter
Verwendung eines Gesichtsmodells, das äußere und innere Gesichtsmerkmale
beinhaltet, die jeweils eine Vielzahl von Punkten beinhalten, sowie
erste und zweite Modelle für
entsprechende erste und zweite Gesichtsdarstellung, worin jedes
der ersten und zweiten Modelle äußere und
innere Gesichtsmerkmale beinhaltet, die jeweils eine Vielzahl von
Punkten beinhalten;
- (b) Abschätzens
einer Fundamentalmatrix für
die ersten und zweiten Modelle;
- (c) Aktualisierens der Vielzahl von Punkten für jedes
der inneren Gesichtsmerkmale des ersten und zweiten Gesichtsmodells
durch die Verwendung der jeweiligen lokalen Texturen für jeden
der Punkte;
- (d) Aktualisierens jedes der inneren Gesichtsmerkmale des ersten
und zweiten Modells;
- (e) Aktualisierens der Vielzahl von Punkten für jedes
der inneren Gesichtsmerkmale des ersten und zweiten Modells unter
Verwendung der Fundamentalmatrix und der entsprechenden epipolaren
Randbedingungen; und
- (f) Aktualisierens jedes der äußeren Gesichtsmerkmale des
ersten und zweiten Modells.
-
Ausführungsform
2:
-
Das
Verfahren, wie es in der Ausführungsform
1 beschrieben ist, worin die Schritte ferner umfassen:
- (g) Wenn das erste Modell innerhalb einer vorgeschriebenen Toleranz
für das
Gesichtsmodell konvergiert hat, wird eine Repräsentation der inneren und äußeren Gesichtsmerkmale
des ersten Modells ausgegeben, sonst werden die Schritte (c) bis
(f) für
das erste Modell wiederholt; und
- (h) wenn das erste Modell innerhalb einer vorbestimmten Toleranz
für das
Gesichtsmodell konvergiert hat, wird eine Repräsentation der inneren und äußeren Gesichtsmerkmale
des zweiten Modells ausgegeben, sonst werden die Schritte (c) bis
(f) für
das zweite Modell wiederholt.
-
Ausführungsform
3:
-
Das
Verfahren, wie es in der Ausführungsform
1 beschrieben ist, worin:
die inneren Gesichtsmerkmale eine
Nase, einen Mund und ein Paar von Augen beinhalten; und
die äußeren Gesichtsmerkmale
eine bogenförmige
Unterkante des Gesichtes und ein Paar Augenbrauen beinhalten.
-
Ausführungsform
4:
-
Das
Verfahren, wie es in der Ausführungsform
3 definiert wurde, wobei die Vielzahl von Punkten zu inneren Gesichtsmerkmalen
gehören:
der
Mund beinhaltet eine Vielzahl von Mundwinkeln;
jedes der Augen
beinhaltet eine Vielzahl von Augenwinkeln; und
die Nase beinhaltet
eine Nasenspitze.
-
Ausführungsform
5:
-
Das
Verfahren, wie es in der Ausführungsform
1 beschrieben ist, wobei die ersten und zweiten Gesichtsdarstellungen
das gleiche Gesicht sind, das jeweils in der im Wesentlichen gleichen
Kameraausrichtung aufgenommen wurde.
-
Ausführungsform
6:
-
Das
Verfahren, wie es in der Ausführungsform
5 beschrieben ist, worin die jeweiligen Gesichtsposen der ersten
und zweiten Gesichterstellungen:
im Wesentlichen im Nickwinkel
gleich;
im Wesentlichen im Rollwinkel gleich; und
im Gierwinkel
in einem Bereich von etwa 3 Grad bis ungefähr 10 Grad unterschiedlich
sind.
-
Ausführungsform
7:
-
Das
Verfahren, wie es in der Ausführungsform
1 beschrieben ist, wobei die ersten und zweiten Gesichtsdarstellungen
Bilder des gleichen Gesichtes sind, die in der im Wesentlichen gleichen
jeweiligen Kameraausrichtung in dem im Wesentlichen gleichen Gesichtsposenbereich
aufgenommen sind, sich jedoch in der Gierung unterscheiden.
-
Ausführungsform
8:
-
Das
Verfahren, wie es in der Ausführungsform
1 beschrieben ist, worin der Gesichtsposenbereich der ersten und
zweiten Gesichtsdarstellungen um einen Gierwinkel von nicht mehr
als etwa 10 Grad (10°)
unterschiedlich ist.
-
Ausführungsform
9:
-
Das
Verfahren, wie es in der Ausführungsform
1 beschrieben ist, wobei:
die erste Gesichtsdarstellung eine
volle Frontalansicht eines menschlichen Gesichtes ist; und
die
zweite Gesichtsdarstellung sich von der ersten Gesichtsdarstellung
durch eine Gierung von nicht mehr als etwa 10 Grad (10°) unterscheidet.
-
Ausführungsform
10:
-
Das
Verfahren, wie es in der Ausführungsform
1 beschrieben ist, wobei die lokalen Texturen für jeden der Punkte photometrische
Daten an oder nahe dem Punkt beinhalten.
-
Ausführungsform
11:
-
Das
Verfahren, wie es in der Ausführungsform
1 beschrieben ist, das des Weiteren die Identifikation des Gesichtes
einer Person in einer Datenbank umfasst, die wenigstens eine der
ersten der ersten und zweiten Gesichtsdarstellungen abgleicht und
aber jeweils die ausgegebene Repräsentation der inneren und äußeren Gesichtsmerkmale
von:
dem ersten Gesichtsmodell; und
dem zweiten Gesichtsmodell
verwendet.
-
Ausführungsform
12:
-
Ein
computerlesbares Medium, das Instruktionen beinhaltet, die, wenn
sie ausgeführt
werden, das Verfahren der Ausführungsform
1 ausführen.
-
Ausführungsform
13:
-
Eine
Vorrichtung zur Identifikation von Gesichtsmerkmalen umfassend:
Mittel
zur Initialisierung, die ein Gesichtsmodell verwenden, das äußere und
innere Gesichtsmerkmale hat, die jeweils eine Vielzahl von Punkten
beinhalten, sowie erste und zweite Modelle für die jeweiligen ersten und zweiten
Gesichtsdarstellungen, wobei jedes der ersten und zweiten Modelle äußere und
innere Gesichtsmerkmale hat, die jeweils eine Vielzahl von Punkten
beinhalten;
Mittel zur Abschätzung einer Fundamentalmatrix
für die
ersten und zweiten Modelle;
Mittel zur Aktualisierung der Vielzahl
von Punkten für
jedes der inneren und äußeren Gesichtsmerkmale
auf dem ersten und zweiten Gesichtsmodell, durch die Verwendung
der jeweiligen lokalen Texturen für jeden der Punkte;
Mittel
zur Aktualisierung jedes der inneren Gesichtsmerkmale des ersten
und zweiten Modells;
Mittel zur Aktualisierung der Vielzahl
von Punkten für
jedes der inneren Gesichtsmerkmale des ersten und zweiten Modells,
wobei die Mittel die Fundamentalmatrix und die dazugehörigen epipolaren
Randbedingungen verwenden, und
Mittel zur Aktualisierung jedes
der äußeren Gesichtsmerkmale
des ersten und zweiten Modells, wobei die Mittel die Vielzahl von
Punkten für
jedes der inneren Gesichtsmerkmale der ersten und zweiten Modelle
verwenden.
-
Ausführungsform
14:
-
Die
Vorrichtung, wie sie in der Ausführungsform
13 beschrieben ist, die des Weiteren beinhaltet:
Mittel zur
Ausgabe einer Repräsentation
der inneren und äußeren Gesichtsmerkmale
des ersten und des zweiten Modells, wenn eine Mehrheit der Punkte
für jedes
der äußeren und
inneren Gesichtsmerkmale auf dem ersten Modell, welche mit denen
des Gesichtsmodells übereinstimmen,
einen relativen Versatz zwischen sich aufweisen, der nicht größer als
eine vorgegebene Konvergenztoleranz ist; und
Mittel zur Ausgabe
einer Repräsentation
der inneren und äußeren Gesichtsmerkmale
des zweiten Gesichtsmodells, wenn eine Mehrzahl der Punkte für jedes
der äußeren und
inneren Gesichtsmerkmale auf dem ersten Modell, die mit denen des
Gesichtsmodells übereinstimmen,
einen relativen Versatz zwischen sich aufweisen, der nicht größer als
eine vorbestimmte Konvergenztoleranz ist.
-
Ausführungsform
15:
-
Die
Vorrichtung, wie sie in der Ausführungsform
13 beschrieben ist, wobei:
die inneren Gesichtsmerkmale einen
Nase, einen Mund und Augenpaar beinhalten; und
die äußeren Gesichtsmerkmale
eine bogenförmige
Unterkante des Gesichtes und ein Augenbrauenpaar beinhalten.
-
Ausführungsform
16:
-
Die
Vorrichtung, wie sie in der Ausführungsform
15 beschrieben ist, wobei die Vielzahl von Punkten zu dem inneren
Gesichtsmerkmal gehören:
wobei
der Mund eine Vielzahl von Mundwinkeln beinhaltet;
jedes der
Augen eine Vielzahl von Augenwinkeln beinhaltet; und
die Nase
eine Nasenspitze beinhaltet.
-
Ausführungsform
17:
-
Die
Vorrichtung, wie sie in der Ausführungsform
13 beschrieben ist, wobei die ersten und zweiten Gesichtsdarstellungen
das gleiche Gesicht sind, das in der jeweils im Wesentlichen gleichen
Kameraausrichtung aufgenommen ist.
-
Ausführungsform
18:
-
Die
Vorrichtung, wie sie in der Ausführungsform
13 beschrieben ist, wobei die jeweiligen Gesichtsposen der ersten
und zweiten Gesichtsdarstellung:
im Wesentlichen im Nickwinkel
gleich;
im Wesentlichen im Rollwinkel gleich; und
in der
Gierung in einem Bereich von etwa 3 Grad bis ungefähr 10 Grad
unterschiedlich sind.
-
Ausführungsform
19:
-
Die
Vorrichtung, wie sie in der Ausführungsform
13 beschrieben ist, wobei die ersten und zweiten Gesichtsdarstellungen
Bilder sind, die in der im Wesentlichen gleichen jeweiligen Kameraausrichtung
von dem gleichen Gesicht in der im Wesentlichen gleichen Gesichtspose
aufgenommen sind, sich jedoch in der Gierung unterscheiden.
-
Ausführungsform
20:
-
Die
Vorrichtung, wie sie in der Ausführungsform
13 beschrieben ist, wobei der Gesichtsposenbereich in den ersten
und zweiten Gesichtsdarstellungen in der Gierung um nicht mehr als
etwa 10 Grad (10°)
unterschiedlich ist.
-
Ausführungsform
21:
-
Die
Vorrichtung, wie sie in der Ausführungsform
13 beschrieben ist, wobei: die erste Gesichtsdarstellung eine volle
Frontalansicht ei nes menschlichen Gesichtes ist; und die zweite
Gesichtsdarstellung sich von der ersten Gesichtsdarstellung in der
Gierung um nicht mehr als etwa 10 Grad (10°) unterscheidet.
-
Ausführungsform
22:
-
Die
Vorrichtung, wie sie in der Ausführungsform
13 beschrieben ist, wobei die lokale Textur für jeden der Punkte photometrische
Daten an oder nahe dem Punkt beinhaltet.