-
Technisches
Gebiet
-
Die
vorliegende Erfindung betrifft ein Verfahren zum automatischen Verfolgen
eines sich bewegenden Körpers,
welches nützlich
ist, wenn eine Maschine zur Verfolgung der Bewegungen eines Körpers ausgebildet
ist. Genauer betrifft die Erfindung das Verfolgen eines menschlichen
Gesichts, wodurch es möglich
wird, die Blickrichtung festzustellen, wie es beispielsweise bei
der Blicksteuerung eines Computers nützlich ist.
-
Technischer
Hintergrund
-
Das
Verfolgen von menschlichen Bewegungen ist in verschiedenen Anwendungen
wünschenswert,
von welchen eine die Steuerung einer Maschine (z.B. eines Computers)
mit den Augen umfasst. In diesem Fall findet eigentlich eine doppelte
Verfolgung statt, da sowohl die Orientierung des Kopfes als auch
die relative Blickrichtung verfolgt werden müssen. Die vorliegende Erfindung
bezieht sich vornehmlich auf den erstgenannten Typ der Verfolgung, nämlich auf
die Verfolgung der Orientierung des Kopfes (Kopfhaltung) oder beliebiger
anderer vergleichbarer Körperteile
(eines Arms, einer Hand etc.).
-
Zur
erfolgreichen Verfolgung der Bewegung eines menschlichen Körpers unter
Verwendung einer digitalen Videokamera existieren verschiedene Ansätze. Das
im Zusammenhang mit der vorliegenden Erfindung relevante Grundprinzip
besteht darin, eine Anzahl an Bereichen des Körpers (welche als Muster bezeichnet
sind) auszuwählen
und diese Bereiche in jedem digitalen Raster des Video-Streams zu
identifizieren. Bei einer einfachen Lösung mit einer Kamera werden
die Bereich in dem 2D-Bild identifiziert, was zu Problemen führt, wenn
sich der Körper
in einer Ebene senkrecht zur Kamera dreht oder bewegt.
-
Diesem
Problem kann dadurch begegnet werden, indem die Identifizierung
in 3D durchgeführt wird.
Werden zwei Kameras eingesetzt, welche sorgfältig aufeinander abgestimmt
sind, so kann ein Bild des Körpers
in 3D erhalten werden, wobei hiermit die Identifizierung von ausgewählten Bereichen
durchgeführt
werden kann. Indes sind die Abstimmung und die Computerberechnung,
welche zum Erhalten eines vollständigen
3D-Bildes eines Körpers
erforderlich sind, teuer und zeitaufwändig und erschweren beliebige
Vorgänge
in Echtzeit, wie sie im Verbrauchermarkt angestrebt werden. Selbst
wenn die Entwicklung der Computerhardware eine solche 3D-Bearbeitung
in Echtzeit möglich
macht, stellt sie gleichwohl eine Verschwendung von Rechenzeit und
Energie dar, da der Hauptanteil an 3D-Information nie für den Verfolgungsvorgang
verwendet wird.
-
Eine
Alternative ist aus "An
algorithm for real time stereo vision implementation of head pose
and gaze direction measurement" von
Yoshio Matsumoto und Alexander Zelinsky, Proceedings of the fourth
international conference on automated face and gesture recognition,
28–30
March, 2000, Seiten 499 bis 504, bekannt. Gemäß diesem Verfahren wird ein 3D-Modell
des Gesichts erstellt, wobei eine Mehrzahl an Bereichen (3D-Merkmale)
ausgewählt
und mit dem Modell in Bezug gesetzt werden. Die Orte der Merkmale
werden in den 2D-Bildern einer jeden Kamera identifiziert, wobei
diese Orte anschließend
verarbeitet werden, um 3D-Informationen über die
Orientierung und den Ort des Gesichts zu erhalten. Die Identifizierung
von Mustern in jedem Rasterbild wird folglich wie in einem herkömmlichen
2D-System auch in
2D durchgeführt.
Diese Identifizierung geschieht in wenigstens zwei Rastern für jedes
Zeitfenster, in welchem die Raster von geringfügig verschiedenen Winkeln erstellt
werden, was zu einer 3D-Position des Merkmals führt.
-
Da
jedoch die zu identifizierenden Muster für beide Kameras identisch sind,
ist dieses Verfahren empfindlich gegenüber Veränderungen in den verschiedenen
Bildern, welche aus unterschiedlichen Winkeln erstellt werden. Aus
diesem Grund ist es von Bedeutung, dass die Kameras nicht unter
einem zu großen
Abstand voneinander angeordnet sind und dass sie selbstverständlich denselben
Typ von Bildern erzeugen.
-
Bei
nahe aneinander angeordneten Kameras treten verschiedene Probleme
auf. Zunächst
wird die Anzahl an möglichen
Verfolgungspunkten vermindert. Punkte an der Seite des Kopfes, wie
die Ohren, welche andernfalls zum Verfolgen geeignet sind, können gegebenenfalls
nicht verwendet werden, wenn zwei genau vor dem Gesicht angeordnete
Kameras verwendet werden. Ferner besteht in einer Situation, in
welcher ein Teil des Gesichts verdunkelt ist, z.B. durch ein anderes
Körperteil
oder einen beliebigen anderen Gegenstand, eine erhöhte Gefahr dahingehend,
dass beide Kameras gleich zeitig blockiert werden, was zu erheblichen
Schwierigkeiten in dem Verfolgungsvorgang führt.
-
Zusammenfassung
der Erfindung
-
Das
Ziel der vorliegenden Erfindung besteht darin, diesem Problem zu
begegnen und ein Verfahren zum Verfolgen der Bewegung eines Körpers vorzuschlagen,
welches kostengünstig
und zugleich hinreichend stabil ist.
-
Diese
und weitere Ziele werden erreicht durch Definieren mehrerer Sätze von
Mustern, wobei jeder Satz eine Mehrzahl an Mustern umfasst, welche
aus von einem 2D-Bild des Körpers
ausgewählten
Bereichen bestehen und aus einem bestimmten Winkel oder aus einer
bestimmten Ansicht gewonnen worden sind; Inbezugsetzen eines jeden
Mustersatzes zu einem Koordinatensystem des Körpers; Erstellen von wenigstens
zwei Bildern, welche verschiedene Ansichten des Körpers zu
einem bestimmten Zeitpunkt darstellen; Zuordnen des Bildes wenigstens
einem der Mustersätze,
Auffinden eines jedes Musters in dem Mustersatz in dem Bild sowie
Berechnen einer vorläufigen
Position des Koordinatensystems des Körpers im Raum für jedes
Bild; und Verwenden einer geometrischen Relation zwischen den Ansichten
zur Kombination der vorläufigen
Positionen, wodurch Unsicherheiten in der Position des Koordinatensystems
des Körpers
im Raum reduziert werden.
-
Erfindungsgemäß werden
verschiedene Sätze
von Mustern definiert, wobei die Muster in diesen Sätzen Teile
von 2D-Bildern sind, welche von einem bestimmten Winkel oder von
einer bestimmten Ansicht des Objektes erstellt worden sind. So können beispielsweise
ein rechter Satz von Ansichten und ein linker Satz von Ansichten
definiert werden, wobei die Muster in dem rechten Satz von Ansichten
2D- Bilder von bestimmten,
geringfügig
von rechts betrachteten Merkmalen des Körpers sind, während der
linke Satz auf ähnliche
Weise von links betrachtet ist.
-
Ein
Hauptunterschied zur herkömmlichen Technologie
besteht darin, dass die 2D-Koordinaten von Mustern, welche dasselbe
Merkmal darstellen, nicht miteinander verglichen werden. Statt dessen werden
die Orte der Muster in einem Satz in einem bestimmten Bild zur Feststellung
der Beziehung zwischen dem Körperkoordinatensystem
und diesem Mustersatz genutzt, wodurch die Orientierung des Körperkoordinatensystems
KKS im Raum festgestellt wird (d.h. die Orientierung des Körpers festgestellt wird).
-
Da
die Muster jedoch nur in 2D identifiziert werden, kann die Feststellung
des KKS mit nur einem Bild nicht zufriedenstellend bestimmt werden.
Statt dessen sind wenigstens zwei Bilder erforderlich, welche von
verschiedenen Ansichten erstellt und mit verschiedenen Mustersätzen in
Bezug gesetzt worden sind. Eine geometrische Relation zwischen sämtlichen
dieser Ansichten, welche vorzugsweise auf deren Relation mit einem
festen Weltkoordinatensystem basiert, wird zur Kombination von wenigstens zwei "vorläufigen" KKS-Orientierungen
und zur Erzeugung einer "endgültigen" KKS-Orientierung
genutzt.
-
Das
erfindungsgemäße Verfahren
stellt eine verbesserte Redundanz im Vergleich mit der herkömmlichen
Technologie sicher.
-
Da
der in jedem Rasterbild zu identifizierende Satz von Mustern in
Abhängigkeit
von der Ansicht des Körpers
ausgewählt
werden kann, aus welcher das Rasterbild erstellt worden ist, wird
auch die Identifizierung von Mustern in einem Rasterbild erheblich stabiler
ausgeführt.
-
Sofern
festgestellt werden kann, dass das erstellte Bild hinreichend gut
einem Mustersatz entspricht, welcher derselben Ansicht wie das Bild
entspricht, so wird es diesem Mustersatz zugeordnet.
-
Sofern
andernfalls nicht festgestellt werden kann, dass das Bild hinreichend
gut einem Mustersatz entspricht, so kann jedes Bild zwei Mustersätzen zugeordnet
werden, welche benachbarten Ansichten dieses Bildes entsprechen,
wobei diese Mustersätze zur
Erzeugung eines neuen Mustersatzes kombiniert werden, welcher dem
Bild besser entspricht.
-
Das
Verfahren kann mittels wenigstens zwei Bildsensoren durchgeführt werden,
welche jeweils eine Serie von Bildern des Körpers erstellen. Während auch
die Verwendung nur eines Bildsensors denkbar ist, welcher zwischen
verschiedenen Orten bewegt wird, ist die Lösung mit mehreren Sensoren stabiler.
-
Die
Bildsensoren können
in verschiedener Weise synchronisiert sein, um sicherzustellen,
dass die Bilder von verschiedenen Sensoren zu demselben Zeitpunkt
erstellt werden. Dies ist im Hinblick auf die verschiedenen "vorläufigen" KKS-Orientierungen von
Bedeutung, welche erzeugt werden und kompatibel sein sollen.
-
Indes
können
auch nicht synchronisierte Bildsensoren verwendet werden, sofern
die Bilder dieser Sensoren verarbeitet, d.h. interpoliert, werden, um
Bilder von einem bestimmten Zeitpunkt zu erzeugen.
-
Mit
drei Sensoren kann ein noch genaueres Verfolgungsverfahren durchgeführt werden.
In diesem Fall sind die Kameras vorzugsweise in einer dreieckigen
Aufstellung angeordnet, wodurch es einfacher wird, Rotationsbewegungen
in verschiedenen Ebenen festzustellen.
-
Ein
weiterer möglicher
Aspekt besteht darin, mehrere Kameras in einer Ebene vor dem Körper zu justieren,
wodurch ein größeres Winkelintervall,
z.B. von links nach rechts, abgedeckt werden kann. Eine solche Anordnung
vereinfacht die Verfolgung eines drehenden Körpers, da ein bestimmter Satz
von Mustern in einem Bild identifiziert werden kann, welches von
wenigstens einer der Kameras erstellt worden ist.
-
Der
Schritt des Auffindens eines jeden Musters kann einen ersten Schritt
zum Auffinden eines Bereiches in dem den Körper umfassenden Rasterbild
und einen zweiten Schritt zum Auffinden der Muster in diesem Bereich
umfassen. Weil die beiden Schritte unterschiedliche Genauigkeiten
erfordern, können
verschiedene Algorithmen verwendet werden, so dass in dem ersten
Schritt eine sehr schnelle Suche nach dem gesamten Bild durchgeführt wird, während indem
zweiten Schritt eine detailliertere Suche nach den aufgefundenen
Bereich durchgeführt wird.
-
Gemäß einer
bevorzugten Ausführungsform ist
der Körper
der Kopf eines Benutzers und werden die Muster in diesem Fall üblicherweise
aus Teilen des Gesichts des Benutzers ausgewählt, wie den Augenwinkeln,
den Mundwinkeln und den Nasenlöchern.
-
Kurze Beschreibung
der Zeichnungen
-
Diese
und weitere Aspekte der Erfindung ergeben sich aus der genaueren
Beschreibung von bevorzugten Ausführungsformen unter Bezugnahme auf
die beigefügten
Zeichnungen. Dabei zeigen:
-
1 eine
schematische Ansicht einer Anordnung gemäß einer Ausführungsform
der Erfindung;
-
2 ein
Fließbild
des Verfahrens mittels der Anordnung gemäß 1;
-
3 fünf Mustersätze, welche
fünf Ansichten
eines Gesichts mit markierten Merkmalen umfassen;
-
4 ein
in dem Frontalbild gemäß 3 fixiertes
Körperkoordinatensystem;
und
-
5 eine
Veranschaulichung, wie die Mustersätze miteinander in Bezug gesetzt
sind.
-
Detaillierte
Beschreibung einer bevorzugten Ausführungsform
-
Der
Körper
sollte vorzugsweise eine Struktur mit starken Kontrasten besitzen,
welche es ermöglicht,
für eine
Verfolgung geeignete Punkte zu finden. Darüber hinaus sollte der Körper eine
begrenzte Anzahl an Freiheitsgraden aufweisen, um die Verfolgung
des Körpers
zu erleichtern. So stellt beispielsweise der Kopf eines Benutzers
ein geeignetes Objekt zum Verfolgen dar, während die Hand eines Benutzers
zu viele Freiheitsgrade besitzt, um wirksam verfolgt zu werden.
-
Gemäß einer
bevorzugten Ausführungsform wird
das erfindungsgemäße Verfahren
zur Feststellung der Blickrichtung eines Benutzers verwendet. Eine
solche Ermittlung kann in einem System zur Steuerung eines Computersystems
mittels der Augen, in einem System zur Überwachung des Fahrers eines
Fahrzeugs oder in einem beliebigen anderen Systemtyp implementiert
genutzt werden.
-
In
der nachfolgenden Beschreibung wird von dem Abbildungsmodell nach
Roger Tsai (Roger Tsai's
perspective projection camera model) ausgegangen, wobei auf "An Efficient and
Accurate Camera Calibration Technique for 3D Machine Vision", Roger Y. Tsai,
Proceedings of IEEE Conference on Computer Vision and Pattern Recognition,
Miami Beach, FL, 1986, Seiten 364 bis 374, verwiesen wird.
-
Das
in 1 dargestellte System umfasst zwei Bildsensoren 1,
welche mit einer Verarbeitungseinheit 2, wie einem Mikroprozessor,
verbunden sind. Die Bildsensoren 1 können elektronisch (analog oder digital)
sein, doch können
gleichfalls auch optische Bildsensoren verwendet werden, wie sie
gegenwärtig entwickelt
werden. Bei dem vorliegend beschriebenen Ausführungsbeispiel wird ein elektronischer Bildsensor
eingesetzt, z.B. eine CCD- oder CMOS-basierte Kamera. Der CCD-/CMOS-Sensor erzeugt
ein auf Bildpunkten bzw. Pixeln basierendes Bild, wobei jeder Bildpunkt
eine kontinuierliche (analoge) Intensität besitzt. Anschießend wird
eine Analog-/Digitalwandlung durchgeführt, entweder in der Kamera
selbst, was in einer digitalen Ausgabe der Kamera resultiert (eine
sogenannten Digitalkamera), oder außerhalb der Kamera, z.B. in
einer Framegrabber-Karte 6 in einem Personalcomputer 7.
-
Die
Kameras sind einem Computerbildschirm 3 benachbart angeordnet,
vor welchem ein Benutzer 4 sitzt. Die Kameras 1 sind
derart angeordnet, dass die den Kopf 5 des Benutzers beobachten, wobei
die digitale Information der Kameras 1 an die Verarbeitungseinheit 2 übermittelt
wird, welche auf der Grundlage dieser Information die Blickrichtung der
Augen des Benutzers feststellt. Diese Information wird sodann an
das Computersystem übermittelt, welches
der Benutzer benutzt, und ähnlich
behandelt wie die Signale einer Computermaus, d.h. um die Bewegung
eines Positionsanzeigers bzw. Cursors zu steuern.
-
Die
beiden Kameras 1 sind jeweils zur Erstellung einer Serie
von Rasterbildern des Kopfes 5 des Benutzers ausgebildet,
was mittels herkömmlicher digitaler
Videotechnik geschieht. Die Verarbeitungseinheit 2 wird
folglich mit zwei Serien von digitalen Rasterbildern (in der Regel
Bitmap-Bildern) versorgt, welche von unterschiedlichen Winkeln des
Kopfes erstellt worden sind.
-
Wie
aus 2 ersichtlich, beginnt der Verfolgungsvorgang
mit einer Vor-Verfolgungsphase (Schritte 11 bis 19).
-
Zunächst werden
in einem Schritt 11 verschiedene Mustersätze definiert,
wobei jeder Satz auf einem 2D-Bild des Körpers basiert. Jedes Muster besteht
in einem Bereich von Interesse in dem Bild, welcher Eigenschaften
besitzt, die ein einfaches Identifizieren und Auffinden in dem Bild
ermöglichen, wie
z.B. kontrastreiche Inhalte.
-
In
bevorzugter Ausführung
werden 2D-Bilder des Gesichts von verschiedenen Winkeln erstellt,
wie es beispielsweise in 3 wiedergegeben ist. Es sei darauf
hin gewiesen, dass diese Bilder 21–25 gut mit ein und
derselben Kamera erstellt werden können, während der Kopf in verschiedene
Richtungen gedreht wird. In jedem Bild werden auffällige Merkmale markiert,
wobei aus dem Bild 21, der Frontalansicht, klar erkennbar
ist, dass im vorliegenden Fall zehn Merkmale markiert worden sind.
Das Bild 22 besitzt den Vorteil, dass es deutlich die Nasenlöcher zeigt, was
zwei wirksame Verfolgungspositionen bedeutet. In dem Bild 23 sind
demgegenüber
die Nasenlöcher versteckt.
Es sei ferner darauf hingewiesen, dass in dem linken Bild 24 nur
das linke Ohr sichtbar ist, während
der rechte innere Augenwinkel durch die Nase verdeckt ist. In dem
linken Bild 25 stellt sich die Situation spiegelverkehrt
dar.
-
Das
Auswählen
und Markieren von Gesichtsmerkmalen kann manuell geschehen, indem z.B.
eine Maus zur Markierung von relevanten Bereichen eines auf dem
Bildschirm dargestellten Bildes verwendet wird, wobei es auch mehr
oder minder automatisch mittels eines an diesen Zweck angepassten
Algorithmus' geschehen
kann (vorliegend nicht näher
erläutert).
Jedes Bild mit den entsprechenden auffälligen Merkmalen bildet einen
Mustersatz.
-
Die
2D-Übereinstimmung
zwischen den Mustern ergibt sich direkt aus dem 2D-Bild, was zumindest
dann gilt, wenn der Linsenfehler der bilderfassenden Einrichtung
bekannt ist. Eine noch bessere Relation kann erhalten werden, wenn
Informationen über
die Höhendifferenz
zwischen Mustern in einem Satz bekannt ist. Nachstehend ist beschrieben, wie
solche Informationen während
des Verfolgungsvorgangs automatisch berechnet werden können.
-
Jeder
Mustersatz sollte einen geeigneten eindeutigen Aspekt besitzen,
wobei der offensichtlichste Aspekt selbst verständlich darin besteht, dass sie
auf Bildern beruhen, welche verschiedene Ansichten des Körpers darstellen.
Es sei darauf hingewiesen, dass Unterschiede in der Position innerhalb der
Bildebene unrelevant sind, da sie lediglich einer translatorischen
Bewegung des Bildes um eine bestimmte Anzahl an Bildpunkten entsprechen.
-
Allerdings
können
sich Mustersätze
auch hinsichtlich anderer Aspekte unterscheiden:
- – verschiedene
Typen von bilderfassenden Einrichtungen z.B. Infrarot, farbig, schwarz/weiß);
- – verschiedene
Typen von Linsen (nah, fern);
- – verschiedene
Lichtbedingungen (volles Tageslicht, Dunkelheit, nur Infrarot etc.).
-
Im
Schritt 12 wird jeder Mustersatz mit einem festen Körperkoordinatensystem
(KKS) in Bezug gesetzt. Der Ort und die Orientierung des KKS ist
nicht von Bedeutung, muss jedoch für alle Mustersätze identisch
sein.
-
In 4 ist
veranschaulicht, wie ein beliebiges Koordinatensystem in der Frontalansicht 21 als Körperkoordinatensystem 26 ausgewählt worden
ist. In diesem Fall befindet sich der Ursprung des KKS zwischen
den Nasenlöchern
und ist die X,Y-Ebene parallel zu der Bildpunktebene angeordnet.
Um die anderen Mustersätze
mit dem Frontalbild 21 in Bezug zu setzen, müssen wenigstens
drei verschiedene (und nicht kollineare) Punkte in jedem Bild identifiziert werden.
Wie aus 5 ersichtlich, werden z.B. die Muster 28, 29 und 30 in
dem Bild 21 mit der Umgebung der Muster 31, 32 und 33 in
dem Bild 24 korreliert und umgekehrt, um das Frontalbild 21 mit
dem linken Bild 24 in Bezug zu setzen. Hieraus ergibt sich hinreichend
Information, um das KKS 26 für alle Mustersätze zu errechnen.
-
Im
Schritt 13 wird jede bilderfassende Einrichtung mit einem
Weltkoordinatensystem (WKS) 35 in Bezug gesetzt, d.h. mit
anderen Worten, dass deren Relativposition (Abstand voneinander,
Relativdrehung etc.) festgestellt wird. Die Auswahl des WKS an sich
ist nicht entscheidend.
-
Wie
wiederum der 1 zu entnehmen ist, wird das
WKS 35 derart gewählt,
dass sich sein Ursprung zwischen den beiden Kameras 1 befindet.
Da dieses Koordinatensystem nicht bezüglich einem der "natürlichen" Koordinatensysteme
der Kameras (wie der Bildebene oder parallel zur Bildebene einer
der Kameras) fest ist, werden drei Punkte benötigt, um die drei Koordinatensysteme
miteinander in Bezug zu setzen. Für jeden Punkt muss die Position
in beiden Koordinatensystemen der Kameras 1 und in dem WKS 35 festgestellt
werden. Dies kann z.B. mittels eines Schachbrettes geschehen, welches
mit zwei verschiedenen Abständen
parallel zur X,Y-Ebene des WKS gehalten wird. Die sich kreuzenden
Punkte von schwarzen und weißen
Quadraten können
in jeder Kamera auf einfache Weise identifiziert werden.
-
Die
folgenden Schritte 14 bis 19 bilden die eigentliche
Verfolgungsschleife, welche während
der Verfolgung fortwährend
iteriert wird.
-
Im
Schritt 14 wird eine Mehrzahl an Bildern erstellt, welche
sämtlich
das Aussehen des Körpers zu
demselben Zeitpunkt darstellen, sich jedoch in anderen Aspekten
voneinander unterscheiden, einschließlich der Erstellung aus unterschiedlichen
Winkeln (verschiedene Ansichten).
-
Bilder
von demselben Zeitpunkt können
erhalten werden, wenn die Kameras 1 synchronisiert worden
sind, doch
- – sollte dies nicht der Fall
sein – können auch
Serien von nicht synchronisierten Bildern interpoliert werden, um
die gewünschten
Bilder zu erhalten. Des Weiteren sind in manchen Fällen nicht
alle Kameras zur Lieferung eines Bildes in der Lage, wobei eine
Kamera beispielsweise durch eine Hand oder dergleichen verdeckt
sein kann. Dies vermindert zwar die Menge an zur Verfügung stehender
Information in dem jeweiligen Verfolgungsraster, beeinträchtigt aber
das erfindungsgemäße Verfahren
nicht in nennenswerter Weise.
-
Sodann
wird im Schritt 15 jedes Bild einem Mustersatz zugeordnet.
Dabei können
verschiedene Faktoren darauf Einfluss nehmen, welcher Satz einem
bestimmten Bild zugeordnet wird, wobei es sich bei den nachfolgenden
Faktoren um die wichtigsten handelt:
- – die Position
des Körpers
von der letzten Iteration;
- – die
Geschwindigkeit des Körpers
von den letzten Iterationen;
- – die
Belichtungsbedingungen;
- – welche
bilderfassende Einrichtung zur Erstellung des Bildes verwendet worden
ist.
-
Ist
ein bestimmter Bildsensor zum Erstellen des 2D-Bildes verwendet worden, auf welchem
ein Mustersatz basiert, und befindet sich der Körper noch im Wesentlichen in
derselben Position, so werden die mit diesem Sensor erstellten Bilder
dem Mustersatz zugeordnet. Hat sich der Körper jedoch signifikant bewegt,
so kann ein anderer Mustersatz, welcher von einer unterschiedlichen
Ansicht erstellt worden ist, für das
erstellte Bild besser geeignet sein.
-
In
manchen Fällen
kann kein definierter Mustersatz der Ansicht entsprechen, aus welchem
das gegenwärtige
Bild erstellt worden ist. In diesem Fall kann es von Vorteil sein,
zwei Mustersätze
zu verwenden, welche benachbarten Ansichten entsprechen, und einen
neue Mustersatz entsprechend der gegenwärtigen Bildansicht zu interpolieren.
-
In
dem Verfolgungsschritt 16 werden normale Verfolgungstechniken
verwendet, um die Muster des ausgewählten Satzes in jedem Bild
aufzufinden. Dies führt
zu einer Positionierung des Mustersatzes in der Bildebene und folglich
zu einer geometrischen Relation zwischen dem Bild und dem Mustersatz.
-
Im
Schritt 17 werden die Bildpunktkoordinaten des Musters
für Linsenfehler
korrigiert. Dies kann mittel als solcher bekannten Techniken geschehen, z.B.
durch Vektor gestützte
Transformationen an jeder Koordinatenachse (X, Y). Der Vorgang wird
jedoch sehr schnell ausgeführt,
da im Vergleich mit Fällen,
in welchen Verfahren zur Linsenkorrektur auf jeden Bildpunkt in
einem Bitmap-Bild angewandt werden, gemäß dem erfindungsgemäßen Verfahren
nur einige wenige Koordinaten (die identifizierten Orte der Muster)
relevant sind.
-
Wie
oben bereits erwähnt,
wird das WKS 35 im Schritt 13 mit der Kameraposition und
folglich mit dem erstellten Bild in Bezug gesetzt. Die Verfolgung im
Schritt 16 resultiert aus einer Relation zwischen dem Bild
und dem Mustersatz, welcher im Schritt 12 mit dem KKS 26 in
Bezug gesetzt worden ist. Folglich können die Orte der Muster in
einem Satz im Schritt 18 zum Berechnen einer vorläufigen Position
des KKS in Bezug auf das WKS verwendet werden. Es sei indes darauf
hingewiesen, dass dieser Ort im Hinblick auf Rich tungen, welche
außerhalb
der Bildebene eines bestimmten Bildes liegen, sehr unsicher ist. So
kann beispielsweise eine vor dem Benutzer 4 aufgestellte
Kamera das KKS 35 nur in der Ebene des Gesichts genau lokalisieren.
Bewegungen in Richtung der Kamera und von dieser fort 1 können nicht genau
festgestellt werden. Hierin besteht eines der Probleme in Verbindung
mit herkömmlicher
2D-Verfolgung.
-
In
dem letzten Schritt des Iterationsvorgangs, dem Schritt 19,
werden sämtliche
vorläufigen KKS-Positionen
aus den verschiedenen Bildern (welche unterschiedlichen Ansichten
darstellen) kombiniert, um eine genaue Position des KKS 26 in
dem WKS 35 zu erzeugen und Unsicherheiten in den vorläufigen KKS-Positionen
zu verringern.
-
Dieser
Kombinationsvorgang kann eine Methode der kleinsten Fehlerquadrate
(Least Square Minimization) umfassen, doch sei darauf hingewiesen,
dass jede KKS-Position in Bezug auf die Ansicht, welche sie darstellt,
beeinflusst wird. Genauer ist jede vorläufige KKS-Position in der X,Y-Richtung, d.h. Abstände in der
Bildebene, relativ genau, während
sie in der Z-Richtung, d.h. Abstände
zwischen der Kamera und dem Objekt, unsicherer ist. Diese Information
kann bei dem Kombinationsvorgang genutzt werden, indem die genau
festgestellte Positionsinformation gewichtet wird. Ein Beispiel
zur Bewerkstelligung einer solchen Vorgehensweise besteht darin,
jede vorläufige
KKS-Position in eine "Wolke" von Positionen zu
konvertieren, welche eine nur kleine Abweichung in den X,Y-Koordinaten
und eine größere Streubreite
in der Z-Koordinate aufweist. Die Positionen X, Y, Z können dann
in eine Sammlung von Positionen konvertiert werden, welche (X, Y,
Z), (X + 1, Y + 1, Z + 10), (X + 1, Y + 1, Z – 10), (X + 1, Y – 1, Z +
10), (X + 1, Y – 1,
Z – 10),
(X – 1,
Y + 1, Z + 10), (X – 1,
Y + 1, Z – 10),
(X – 1,
Y – 1, Z
+ 10), (X – 1,
Y – 1,
Z – 10) umfassen.
Durch Kombination der vorläufigen
KKS-Positions-"Wolken" wird die Genauigkeitsinformation
genutzt, um das resultierende KKS zu beeinflussen.
-
Der
Verfolgungsvorgang kehrt anschließend wieder zu dem Schritt 14 zurück, wonach
die Schritte 15 bis 19 mit neuen Bildern wiederholt
werden.
-
Bei
der beschriebenen Anwendung, bei welcher die Verfolgung des Kopfes
zur Feststellung der Blickrichtung verwendet wird, ist die KKS-Position
mit der Kopfhaltung äquivalent,
was in Kombination mit einem genauen Ort der Iris zur Feststellung
der Blickrichtung verwendet wird.