DE202017104506U1 - Krümmungsbasierter Gesichtsdetektor - Google Patents

Krümmungsbasierter Gesichtsdetektor Download PDF

Info

Publication number
DE202017104506U1
DE202017104506U1 DE202017104506.4U DE202017104506U DE202017104506U1 DE 202017104506 U1 DE202017104506 U1 DE 202017104506U1 DE 202017104506 U DE202017104506 U DE 202017104506U DE 202017104506 U1 DE202017104506 U1 DE 202017104506U1
Authority
DE
Germany
Prior art keywords
curvature
map
face
blobs
depth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE202017104506.4U
Other languages
English (en)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Priority to DE202017104506.4U priority Critical patent/DE202017104506U1/de
Publication of DE202017104506U1 publication Critical patent/DE202017104506U1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

Apparat zum Verarbeiten von Daten, umfassend: eine Bildgebungsanordnung, die dazu konfiguriert ist, eine Tiefen-Map eines Motivs mit wenigstens einem humanoiden Kopf zu erfassen, wobei die Tiefen-Map eine Pixelmatrix mit jeweiligen Pixeltiefenwerten umfasst; und einen Prozessor, der dazu konfiguriert ist, eine Krümmungs-Map des Motivs aus der Tiefen-Map zu extrahieren, wobei die Krümmungs-Map jeweilige Krümmungswerte von wenigstens einigen der Pixel in der Matrix umfasst, und die Krümmungswerte zu verarbeiten, um ein Gesicht in dem Motiv zu identifizieren.

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft allgemein Verfahren und Systeme zum dreidimensionalen (3D) Mapping und genauer zum Verarbeiten von 3D-Map-Daten.
  • HINTERGRUND
  • Eine Anzahl von verschiedenen Verfahren und Systemen zum Erstellen von Tiefen-Maps sind in dem Fachgebiet bekannt. In der vorliegenden Patentanmeldung und in den Ansprüchen bezieht sich der Begriff „Tiefen-Map“ auf eine Darstellung eines Motivs als eine zweidimensionale Pixelmatrix, in der jedes Pixel einem jeweiligen Ort in dem Motiv entspricht und einen jeweiligen Pixeltiefenwert hat, der den Abstand von einem bestimmten Referenzort zu dem jeweiligen Motivort anzeigt. Mit anderen Worten hat die Tiefen-Map die Form eines Bilds, in dem die Pixelwerte topographische Informationen und nicht die Helligkeit und/oder Farbe der Objekte in dem Motiv anzeigen. Tiefen-Maps können zum Beispiel durch Erfassen und Verarbeiten eines Bilds von einem Objekt erstellt werden, auf das ein Muster projiziert wird, wie beschrieben in dem US-Patent 8,456,517 , dessen Offenbarung durch Bezugnahme hierin aufgenommen ist. Die Begriffe „Tiefen-Map“ und „3D-Map“ werden hierin austauschbar verwendet und haben dieselbe Bedeutung.
  • Tiefen-Maps können verarbeitet werden, um Objekte in dem Motiv zu segmentieren und zu identifizieren. Die Identifikation von humanoiden Formen (also von 3D-Formen, deren Struktur der eines Menschen gleicht) in einer Tiefen-Map und Änderungen in diesen Formen von Motiv zu Motiv können als ein Mittel zum Steuern von Computeranwendungen verwendet werden. Zum Beispiel beschreibt das US-Patent 8,249,334 , dessen Offenbarung durch Bezugnahme hierin aufgenommen ist, ein computerimplementiertes Verfahren, bei dem eine Tiefen-Map segmentiert wird, um eine Kontur eines humanoiden Körpers zu suchen. Die Kontur wird verarbeitet, um einen Rumpf und ein oder mehrere Glieder des Körpers zu identifizieren. Es wird eine Eingabe erzeugt, um ein auf einem Computer ausgeführtes Anwendungsprogramm durch Analysieren einer Anordnung von wenigstens einem der identifizierten Glieder in der Tiefen-Map zu steuern.
  • Als ein weiteres Beispiel beschreibt US-Patent 8,565,479 , dessen Offenbarung durch Bezugnahme hierin aufgenommen ist, ein Verfahren zum Verarbeiten einer zeitlichen Sequenz von Tiefen-Maps von einem Motiv mit einer humanoiden Form. Ein Digitalprozessor verarbeitet wenigstens eine der Tiefen-Maps, um einen Ort des Kopfs der humanoiden Form zu suchen, und schätzt die Maße dieser humanoiden Form basierend auf diesem Ort. Der Prozessor verfolgt Bewegungen der humanoiden Form unter Verwendung der geschätzten Maße über die Sequenz hinweg nach.
  • US-Patent 9,047,507 , dessen Offenbarung durch Bezugnahme hierin aufgenommen ist, beschreibt ein Verfahren, das ein Empfangen einer Tiefen-Map eines Motivs mit wenigstens einem Oberkörper einer humanoiden Form beinhaltet. Die Tiefen-Map wird verarbeitet, um einen Kopf und wenigstens einen Arm der humanoiden Form in der Tiefen-Map zu identifizieren. Basierend auf dem identifizierten Kopf und dem wenigstens einen Arm und ohne Bezugnahme auf einen Unterkörper der humanoiden Form wird eine Oberkörperhaltung, einschließlich von wenigstens dreidimensionalen (3D) Koordinaten von Schultergelenken der humanoiden Form, aus der Tiefen-Map extrahiert.
  • ZUSAMMENFASSUNG
  • Ausführungsformen der vorliegenden Erfindung stellen Verfahren, Vorrichtungen und Software zum Extrahieren von Informationen aus Tiefen-Maps bereit.
  • Es wird deshalb gemäß einer Ausführungsform der Erfindung ein Verfahren zum Verarbeiten von Daten bereitgestellt, das ein Empfangen einer Tiefen-Map eines Motivs mit wenigstens einem humanoiden Kopf umfasst, die Tiefen-Map umfassend eine Pixelmatrix mit jeweiligen Pixeltiefenwerten. Unter Verwendung eines Digitalprozessors wird eine Krümmungs-Map des Motivs aus der Tiefen-Map extrahiert. Die Krümmungs-Map umfasst jeweilige Krümmungswerte von wenigstens einigen der Pixel in der Matrix. Die Krümmungswerte werden verarbeitet, um ein Gesicht in dem Motiv zu identifizieren.
  • In einigen Ausführungsformen umfasst das Verarbeiten der Krümmungswerte ein Erfassen von einem oder mehreren Blobs in der Krümmungs-Map, über denen die Pixel jeweilige Krümmungswerte haben, die eine konvexe Oberfläche anzeigen, und das Identifizieren von einem der Blobs als das Gesicht. Üblicherweise umfasst die Krümmungs-Map jeweilige Krümmungsausrichtungen der wenigstens einigen der Pixel und umfasst das Identifizieren des einen der Blobs ein Berechnen eines Rollwinkels des Gesichts in Reaktion auf die Krümmungsausrichtungen der Pixel in dem einen der Blobs. In einer offenbarten Ausführungsform umfasst das Verarbeiten der Krümmungswerte ein Anwenden eines Krümmungsfilters auf die Krümmungs-Map, um festzustellen, ob der eine der Blobs das Gesicht ist, während eine Anpassung gemäß dem berechneten Rollwinkel vorgenommen wird.
  • Zusätzlich oder alternativ dazu umfasst das Verarbeiten der Krümmungswerte ein Berechnen einer Skala des Gesichts in Reaktion auf eine Größe des einen der Blobs und ein Anwenden eines Krümmungsfilters auf die Krümmungs-Map, um festzustellen, ob der eine der Blobs das Gesicht ist, während eine Anpassung gemäß der berechneten Skala vorgenommen wird.
  • Ferner und zusätzlich oder alternativ dazu umfasst das Extrahieren der Krümmungs-Map ein Ableiten einer ersten Krümmungs-Map von der Tiefen-Map bei einer ersten Auflösung, umfasst das Erfassen des einen oder der mehreren Blobs ein Suchen des einen oder der mehreren Blobs in der ersten Krümmungs-Map und umfasst das Verarbeiten der Krümmungswerte ein Ableiten einer zweiten Krümmungs-Map mit dem einen der Blobs bei einer zweiten Auflösung, die feiner als die erste Auflösung ist, und ein Identifizieren des Gesichts unter Verwendung der zweiten Krümmungs-Map.
  • In einigen Ausführungsformen umfasst das Verarbeiten der Krümmungswerte ein Falten der Krümmungs-Map mit einem Krümmungsfilterkern, um einen Ort des Gesichts in dem Motiv zu suchen. In einer offenbarten Ausführungsform umfasst das Falten der Krümmungs-Map ein separates Anwenden eines Gesichtsfilterkerns und eines Nasenfilterkerns, um jeweilige mögliche Orte des Gesichts zu berechnen und den Ort basierend auf den möglichen Orten zu suchen. Zusätzlich oder alternativ dazu umfasst das Falten der Krümmungs-Map ein Berechnen eines Log-Likelihood-Werts für jeden aus einer Vielzahl von Punkten in dem Motiv und ein Auswählen des Orts in Reaktion auf den Log-Likelihood-Wert.
  • Es wird gemäß einer Ausführungsform der Erfindung auch ein Apparat zum Verarbeiten von Daten bereitgestellt, einschließlich einer Bildgebungsanordnung, die dazu konfiguriert ist, eine Tiefen-Map eines Motivs mit wenigstens einem humanoiden Kopf zu erfassen, wobei die Tiefen-Map eine Pixelmatrix mit jeweiligen Pixeltiefenwerten umfasst. Ein Prozessor ist dazu konfiguriert, eine Krümmungs-Map des Motivs aus der Tiefen-Map zu extrahieren, wobei die Krümmungs-Map jeweilige Krümmungswerte von wenigstens einigen der Pixel in der Matrix umfasst, und die Krümmungswerte zu verarbeiten, um ein Gesicht in dem Motiv zu identifizieren.
  • Außerdem wird gemäß einer Ausführungsform der Erfindung ein Computersoftwareprodukt bereitgestellt, einschließlich eines nicht flüchtigen, computerlesbaren Mediums, auf dem Programmanweisungen gespeichert sind, wobei diese Anweisungen, wenn sie von einem Computer gelesen werden, den Computer dazu veranlassen, eine Tiefen-Map eines Motivs mit wenigstens einem humanoiden Kopf zu empfangen, wobei die Tiefen-Map eine Pixelmatrix mit jeweiligen Pixeltiefenwerten umfasst, aus der Tiefen-Map eine Krümmungs-Map des Motivs zu extrahieren, wobei die Krümmungs-Map jeweilige Krümmungswerte von wenigstens einigen der Pixel in der Matrix umfasst, und die Krümmungswerte zu verarbeiten, um ein Gesicht in dem Motiv zu identifizieren.
  • Die vorliegende Erfindung wird aus der folgenden ausführlichen Beschreibung ihrer Ausführungsformen in Zusammenhang mit den Zeichnungen besser verständlich, in denen Folgendes gezeigt wird:
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist eine schematische bildliche Darstellung eines Systems zum 3D-Mapping von humanoiden Formen gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 2 ist eine schematische Darstellung einer Tiefen-Map, die mit einem vorhergesagten Gesichts-Blob geschichtet ist, gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 3 ist eine schematische Darstellung einer Normalen-Map, die bei niedriger Auflösung aus der Tiefen-Map von 2 extrahiert wurde, gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 4 ist eine schematische Darstellung einer groben Krümmungs-Map, die aus der Normalen-Map von 3 extrahiert wurde, gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 5 ist eine schematische Darstellung einer Blob-Map, die aus der Krümmungs-Map von 4 extrahiert wurde, gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 6 ist eine schematische Darstellung einer Map der Krümmungsrichtung innerhalb der in 5 gefundenen Blobs gemäß einer Ausführungsform der Erfindung;
  • 7 ist eine schematische Darstellung einer Normalen-Map, die bei hoher Auflösung aus der Tiefen-Map von 2 extrahiert wurde, gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 8 ist eine schematische Darstellung einer detaillierten Krümmungs-Map, die aus der Normalen-Map von 7 extrahiert wurde, gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 9A und 9B sind schematische grafische Darstellungen von bei der Gesichtserfassung verwendeten Filterkernen gemäß einer Ausführungsform der Erfindung und
  • 10A und 10B sind schematische grafische Darstellungen von Log-Likelihood-Maps, die durch ein Falten der Krümmungs-Map von 8 mit den Filterkernen von 9A bzw. 9B erhalten werden, gemäß einer Ausführungsform der Erfindung.
  • DETAILLIERTE BESCHREIBUNG VON AUSFÜHRUNGSFORMEN
  • Die US-Patentanmeldung 15/272,455, eingereicht am 22. September 2016, deren Offenbarung durch Bezugnahme hierin aufgenommen ist, beschreibt Verfahren, Systeme und Software zum Extrahieren von humanoiden Formen aus Tiefen-Maps. In dem offenbarten Verfahren extrahiert ein Digitalprozessor eine Krümmungs-Map aus der Tiefen-Map eines Motivs mit einer humanoiden Form. Die Krümmungs-Map umfasst jeweilige ausgerichtete Krümmungen von wenigstens einigen der Pixel in der Tiefen-Map. Mit anderen Worten enthält die Krümmungs-Map bei allen diesen Pixeln einen Skalarwert mit Vorzeichen, der den dominanten Krümmungswert und die entsprechende Krümmungsausrichtung, d. h. die Richtung der dominanten Krümmung, ausgedrückt als ein zweidimensionaler (2D) Vektor, anzeigt. Der Prozessor segmentiert die Tiefen-Map unter Verwendung sowohl von Krümmungswerten als auch von Ausrichtungen in der Krümmungs-Map und extrahiert somit 3D-Orts- und Ausrichtungskoordinaten von einem oder mehreren Gliedern der humanoiden Form.
  • Der Prozessor segmentiert die Tiefen-Map durch ein Identifizieren von Blobs in der Krümmungs-Map, über denen die Pixel eine positive Krümmung haben, was bedeutet, dass die Oberflächen dieser Blobs konvex sind (wenngleich diese Definition einer „positiven“ Krümmung willkürlich ist und eine Krümmung alternativ dazu so definiert werden könnte, dass konvexe Oberflächen eine negative Krümmung haben). Die Ränder der Blobs sind in der Tiefen-Map an Orten von Vorzeichenwechseln in der Krümmungs-Map identifiziert. Diese Verwendung der Krümmung verbessert die Zuverlässigkeit und Robustheit der Segmentierung, weil sie es dem Prozessor ermöglicht, zwischen verschiedenen Blobs und zwischen Blobs und dem Hintergrund zu unterscheiden, selbst wenn keine deutliche Tiefenänderung an diesen Rändern eines bestimmten Blobs besteht, wie sie auftreten kann, wenn ein Körperteil einen anderen verdeckt oder wenn ein Körperteil an einer Hintergrundoberfläche oder einem anderen Objekt lehnt.
  • Ausführungsformen der vorliegenden Erfindung, die hierin beschrieben sind, verarbeiten Krümmungs-Maps spezifisch, um ein oder mehrere Gesichter in dem Motiv zu identifizieren. Üblicherweise werden in den offenbarten Verfahren ein oder mehrere Blobs in einer wie weiter oben beschriebenen Krümmungs-Map erfasst. Die Krümmungsausrichtungen der Pixel in einem Blob, der möglicherweise einem Gesicht entspricht, werden verarbeitet, um den Rollwinkel des Gesichts zu schätzen. Ein Krümmungsfilter kann dann auf die Krümmungs-Map angewendet werden, während eine Anpassung gemäß dem berechneten Rollwinkel vorgenommen wird, um die Wahrscheinlichkeit festzustellen, dass dieser Blob tatsächlich ein Gesicht ist. Zusätzlich oder alternativ dazu kann die Größe des Blobs verwendet werden, um die Skala des Gesichts zu schätzen und eine entsprechende Anpassung vorzunehmen.
  • Verschiedene Arten von Klassifizierern können verwendet werden, um Gesichter aus der Krümmungs-Map zu extrahieren. In einigen Ausführungsformen, die weiter unten ausführlicher beschrieben sind, ist die Krümmungs-Map mit einem oder mehreren Krümmungsfilterkernen gefaltet, um den Ort eines Gesichts in dem Motiv zu suchen. In einer Ausführungsform werden ein Gesichtsfilterkern und ein Nasenfilterkern separat angewendet, um jeweilige mögliche Orte zu berechnen, die beim Suchen des tatsächlichen Gesichtsorts verwendet werden. Diese Filter werden auf die Krümmungsmerkmale eines typischen Gesichts (einschließlich der verhältnismäßig hohen konvexen Krümmung der Nase) abgestimmt und sind verhältnismäßig unempfindlich gegenüber einem Nicken und Gieren des Gesichts. Der Rollwinkel und die Skala können wie weiter oben beschrieben separat normalisiert werden. Der Filter kann dazu konfiguriert sein, einen Log-Likelihood-Wert für jeden möglichen Punkt in dem Motiv zurückzugeben, wodurch Punkte mit dem höchsten Log-Likelihood-Wert als Gesichtsorte identifiziert werden können.
  • 1 ist eine schematische bildliche Darstellung eines Systems 20 zum Tiefen-Mapping und zur Bildgebung gemäß einer Ausführungsform der vorliegenden Erfindung. In diesem Beispiel ist eine Bildgebungsanordnung 24 dazu konfiguriert, Tiefen-Maps und Bilder eines Motivs, das in diesem Fall ein humanoides Objekt 36 enthält, zu erfassen und zu verarbeiten. Eine Bildgebungsanordnung dieser Art ist zum Beispiel in dem weiter oben angegebenen US-Patent 8,456,517 beschrieben. Die Prinzipien der vorliegenden Erfindung sind jedoch keinesfalls auf die Art von musterbasiertem Mapping beschränkt, das in diesem Patent beschrieben ist, und können beim Verarbeiten von Tiefen-Maps angewendet werden, die durch im Wesentlichen jede geeignete Technik erzeugt wurden, die in dem Fachgebiet bekannt ist, wie ein Tiefen-Mapping basierend auf einer stereoskopischen Bildgebung oder auf Lichtlaufzeitmessungen.
  • In dem in 1 gezeigten Beispiel projiziert ein Projektor 30 in der Bildgebungsanordnung 24 ein Muster einer optischen Strahlung auf das Motiv und erfasst eine Tiefenkamera 32 ein Bild des Musters, das auf dem Motiv (einschließlich wenigstens des Kopfs des Objekts 36) angezeigt wird. Eine Verarbeitungsvorrichtung in der Anordnung 24 verarbeitet das Bild des Musters, um eine Tiefen-Map von wenigstens einem Teil des Körpers des Objekts 36 zu erzeugen, d. h. eine Reihe von 3D-Koordinaten, umfassend einen Koordinatenwert der Tiefe (Z) der Objekte in dem Motiv an jedem Punkt (X, Y) innerhalb eines vordefinierten Bereichs. (Im Kontext einer Reihe von bildbezogenen Daten werden diese Punkte (X, Y) auch als Pixel bezeichnet.) Wahlweise erfasst eine Farbkamera 34 in der Bildgebungsanordnung 24 auch (2D-)Farbbilder des Motivs, aber diese 2D-Bilder sind für die nachfolgend beschriebenen Verfahren der Gesichtserfassung nicht erforderlich. Stattdessen stützen sich die offenbarten Verfahren beim Klassifizieren eines Objekts in dem Motiv als ein Gesicht und beim Identifizieren von dessen Ort ausschließlich auf Tiefeninformationen.
  • Die Bildgebungsanordnung 24 erzeugt einen Datenstrom, der Tiefen-Maps zur Ausgabe an einen Bildprozessor, wie beispielsweise einen Computer 26, beinhaltet. Wenngleich der Computer 26 in 1 als eine von der Bildgebungsanordnung 24 separate Einheit gezeigt ist, können die Funktionen dieser beiden Komponenten alternativ dazu in einer einzigen physischen Einheit kombiniert sein und können die Funktionen des Tiefen-Mappings und der Bildverarbeitung des Systems 20 sogar von einem einzelnen Prozessor ausgeführt werden. Der Computer 26 verarbeitet die durch die Anordnung 24 erzeugten Daten, um das Gesicht des Objekts 36 und/oder andere Objekte, die möglicherweise auf der Tiefen-Map angezeigt werden, zu erfassen. Üblicherweise umfasst der Computer 26 einen Universalcomputerprozessor, der in Software programmiert ist, um die vorstehenden Funktionen auszuführen. Die Software kann in elektronischer Form, zum Beispiel über ein Netzwerk, auf den Prozessor heruntergeladen werden, oder sie kann alternativ dazu auf greifbaren nicht flüchtigen Medien, wie optischen, magnetischen oder elektronischen Speichermedien, bereitgestellt werden. Ferner und zusätzlich oder alternativ dazu können wenigstens einige der Funktionen des Computers 26 durch festverdrahtete oder programmierbare Logik-Komponenten ausgeführt werden.
  • 2 ist eine schematische Darstellung einer durch die Anordnung 24 erfassten Tiefen-Map gemäß einer Ausführungsform der vorliegenden Erfindung. Die Tiefen-Map umfasst wie weiter oben erläutert eine Pixelmatrix mit jeweiligen Tiefenwerten. Die Tiefenwerte sind in 2 als Grauwerte mit dunkleren Graustufen entsprechend größeren Tiefenwerten, d. h. weiter von der Anordnung 24 entfernten Orten, dargestellt. (Schwarze Bereiche entsprechen Pixeln, für die keine Tiefenwerte bestimmt werden konnten.) In diesem bestimmten Motiv hat das Objekt seine Hand auf seinen Kopf gelegt, wodurch einige der Konturen des Kopfs verdeckt sind.
  • 3 ist eine schematische Darstellung einer Normalen-Map, die bei niedriger Auflösung aus der Tiefen-Map von 2 extrahiert wurde, gemäß einer Ausführungsform der vorliegenden Erfindung. Diese Normalen-Map wird bei einer niedrigen Auflösungsstufe, zum Beispiel 40 × 30 Pixel berechnet, was in diesem Fall 1/16 der Größe der durch die Anordnung 24 erfassten Tiefen-Map ist. Wenngleich dieser und die nachfolgenden Schritte des vorliegenden Verfahrens auch bei einer feineren Auflösung durchgeführt werden können, ist es in Bezug auf die Rechengeschwindigkeit vorteilhaft, dass die ersten Schritte (bis zum Suchen nach Blobs in der Tiefen-Map, wie weiter unten erläutert) auf einer groben Auflösungsstufe durchgeführt werden.
  • Die Normalen-Map wird wie folgt berechnet: Ausgehend von u–v als dem Oberflächenparametrisierungsraster der Tiefen-Map steht p = p(u, v) für die Oberflächenpunkte der Tiefen-Map von 2 in 3D. Basierend auf den Tiefenwerten in dieser Map berechnet der Computer 26 das Kreuzprodukt der Tiefengradienten an jedem Punkt. Das Ergebnis dieser Berechnung ist die in 3 gezeigte Normalen-Map, wobei N = N(u, v) die Oberflächennormale am Punkt p ist, sodass jedes Pixel einen Vektorwert entsprechend der Richtung der Normalen gegenüber der Oberfläche, definiert durch die Tiefen-Map an dem entsprechenden Punkt im Raum, hat. Die Normalenvektoren sind in einer Graustufendarstellung schwierig zu zeigen, und die Normalen-Map in 3 ist deshalb nur zur allgemeinen Veranschaulichung dargestellt. Pixel, deren Normalen in der Nähe der Z-Richtung liegen (aus der Seite hinaus weisen), haben in 3 hellere Graustufen, während die in Richtung der X-Y-Ebene abgewinkelten Pixel dunkler sind. Diesbezüglich kann die hohe Krümmung des Kopfs und der Hand in Form der deutlichen Graustufenabstufung in 3 beobachtet werden, und dieses Merkmal wird in den nachfolgenden Schritten der Analyse verwendet.
  • Der Computer 26 berechnet als Nächstes eine (niedrigauflösende) Krümmungs-Map basierend auf dieser Normalen-Map. Die bei diesem Schritt für jedes Pixel berechnete Krümmung kann in einer in der 3D-Geometrie als Form-Operator S bezeichneten 2×2-Matrixform dargestellt werden, die wie folgt bestimmt wird:
    Figure DE202017104506U1_0002
  • Der Computer 26 extrahiert die Eigenvektoren des Form-Operators, die den beiden Hauptkrümmungsausrichtungen entsprechen, und die Eigenwerte des Form-Operators, die den Krümmungswerten entlang dieser Ausrichtungen entsprechen. Die Krümmungs-Map umfasst die pixelbasierte dominante Krümmung, d. h. den Eigenwert mit dem größeren absoluten Wert und der entsprechenden Krümmungsausrichtung. Der unverarbeitete Krümmungswert kann entweder positiv oder negativ sein, wobei eine positive Krümmung konvexen Oberflächenstücken entspricht und eine negative Krümmung konkaven Oberflächenstücken entspricht.
  • 4 ist eine schematische Darstellung einer Krümmungs-Map, die aus der Normalen-Map von 3 (und somit aus der Tiefen-Map von 2) extrahiert wurde, gemäß einer Ausführungsform der vorliegenden Erfindung. Aufgrund der Beschränkungen von Graustufengrafiken zeigt diese Krümmungs-Map nur die Größe der Krümmung (d. h. den dominanten Eigenwert der Krümmungsmatrix, wie weiter oben erläutert), während Krümmungsrichtungen in 6 gezeigt sind, wie weiter unten beschrieben. Pixel mit stark positiven Krümmungswerten haben helle Graustufen in der Krümmungs-Map, während Pixel mit negativen Krümmungswerten dunkelgrau sind.
  • Der Computer 26 verwendet die Krümmungs-Map beim Extrahieren von Blobs mit einer positiven Krümmung aus der ursprünglichen Tiefen-Map. Da Körperteile, wie beispielsweise der Kopf und die Hand, grundsätzlich konvex sind, ist eine positive Krümmung innerhalb eines Blobs von Pixeln eine notwendige Bedingung dafür, dass der Blob einem solchen Körperteil entspricht. Des Weiteren sind Übergänge von einer positiven zu einer negativen Krümmung gute Indikatoren für die Ränder eines Körperteils, selbst wenn der Körperteil mit einem anderen Objekt in Kontakt ist, ohne dass eine scharfe Tiefenabstufung zwischen dem Körperteil und dem Objekt besteht.
  • 5 ist eine schematische Darstellung einer Blob-Map, die aus der Krümmungs-Map von 4 extrahiert wurde, gemäß einer Ausführungsform der vorliegenden Erfindung. Die Blobs aufgrund des Kopfs und der Hand (die in 5 zusammenlaufen) haben eine stark positive Krümmung und können somit basierend auf Vorzeichenwechseln der Krümmung an ihren Rändern klar gegenüber anderen Objekten segmentiert werden.
  • 6 ist eine schematische Darstellung einer Map der Krümmungsrichtung innerhalb der in 5 gefundenen Blobs gemäß einer Ausführungsform der Erfindung. Der Computer 26 verwendet die pixelbasierten Krümmungsausrichtungen in der Krümmungs-Map, um die Krümmungsachsen der Blobs in der Krümmungs-Map festzustellen. Die Krümmungsvektorrichtung, wie weiter oben erläutert, ist die Richtung des größten (dominanten) Eigenvektors der Krümmungsmatrix, der beim Verfahren der Krümmungsberechnung gefunden wurde. Die Achse jedes Blobs ist eine Linie in der Tiefen-Map (oder Krümmungs-Map), die durch das Massezentrum des Blobs in einer Richtung senkrecht zu der dominanten Krümmungsrichtung über den Blob verläuft. Diese Achse wird nachfolgend beim Normalisieren des Klassifizierers verwendet, d. h. sie wird zur Gesichtsidentifikation angewendet, um den Rolleffekt, d. h. das Kippen des Kopfs von Seite zu Seite, zu kompensieren.
  • Üblicherweise identifiziert der Computer 26 die dominante Krümmungsrichtung eines bestimmten Blobs als den statistischen Modus der Krümmungsrichtungen von allen Pixeln. Mit anderen Worten erstellt der Computer für jeden Blob ein Histogramm der Krümmungsrichtungen der Pixel in dem Blob und identifiziert die dominante Krümmungsrichtung als den Modus des Histogramms. Wenn das Histogramm multimodale Verhaltensweisen enthält, wird jeder Modus unabhängig analysiert, wobei der Blob in mehrere Sub-Blobs aufgeteilt wird. Auf dieser Grundlage wird der Kopf-Blob mit einer vertikalen Krümmungsachse in dem in 6 gezeigten Beispiel gegenüber dem kleineren Hand-Blob mit einer diagonalen Krümmungsachse segmentiert. Alternativ dazu können andere statistische Durchschnitte wie das Mittel oder der Median als die dominante Krümmungsrichtung identifiziert werden.
  • Nach der Identifikation des oder der Blobs in der Tiefen-Map, die möglicherweise Gesichter sind, fährt der Computer 26 jetzt mit dem Verarbeiten der Daten von diesen Blobs in der Tiefen-Map fort, um zu entscheiden, welche davon gegebenenfalls zuverlässig als Gesichter klassifiziert werden können. Unter der Annahme, dass die erste Phase der Tiefen-Map-Analyse bis zur Identifikation der möglichen Blobs und von deren Achsen bei niedriger Auflösung durchgeführt wurde, wie weiter oben erläutert, verarbeitet der Computer 26 die Daten in den Blobs während der zweiten Klassifizierungsphase üblicherweise bei einer feineren Auflösung. Somit ist zum Beispiel gemäß einer Ausführungsform der vorliegenden Erfindung 7 eine schematische Darstellung einer Normalen-Map, die aus der Tiefen-Map von 2 bei einer Auflösung von 160 × 120 extrahiert wurde, während 8 eine schematische Darstellung einer Krümmungs-Map ist, die aus der Normalen-Map von 7 extrahiert wurde.
  • Der Computer 26 wendet als Nächstes einen Gesichtsklassifizierer auf diese Krümmungs-Map an. In der vorliegenden Ausführungsform faltet der Computer 26 die Krümmungswerte jedes zu klassifizierenden Blobs mit einem oder mehreren Filterkernen, die einen Wert für jedes Pixel zurückgeben, der die Wahrscheinlichkeit anzeigt, dass es sich um den Mittelpunkt eines Gesichts handelt. Als Teil dieses Klassifizierungsschritts wird der Rollwinkel des Gesichts durch ein Drehen der von den Krümmungsausrichtungen der Pixel in dem klassifizierten Blob abgeleiteten Achse normalisiert (zum Beispiel in die vertikale Richtung). Zusätzlich oder alternativ dazu normalisiert der Computer 26 die Skala des Gesichts basierend auf der Größe des Blobs. Äquivalent dazu können der Filterkern oder die Filterkerne, die in der Klassifizierung verwendet werden, gedreht und/oder skaliert werden.
  • 9A und 9B sind schematische grafische Darstellungen von bei der Gesichtserfassung verwendeten Filterkernen gemäß einer Ausführungsform der Erfindung. 9A stellt den Kern eines Gesichtsfilters dar, der typische Krümmungsmerkmale eines typischen Gesichts abgleicht, und 9B stellt den Kern eines Nasenfilters dar, der die hohen Krümmungswerte, die entlang des Nasenrückens erwartet werden, abgleicht. Bei einer Faltung mit der Krümmungs-Map ergeben diese Filterkerne einen Wert für jedes Pixel innerhalb des Blobs, der die Log-Likelihood anzeigt, dass dieses Pixel der Mittelpunkt eines Gesichts ist.
  • Zusätzlich zu der Nasenregion können weitere Gesichtsregionen herangezogen werden, um einen Satz von Teilefiltern zu erzeugen. Diese Herangehensweise kann in Verbindung mit einem DPM (Deformable Parts Model, Modell verformbarer Teile) verwendet werden, das eine Objekterfassung durch Kombinieren von Werten sowohl auf Gesamtobjektskala als auch auf Objektteileskala durchführt. Der Teilefilter kompensiert die Verformung in der Objektteilanordnung aufgrund von Perspektivenwechseln.
  • Alternativ oder zusätzlich dazu können andere Kerne verwendet werden. Zum Beispiel werden die in 9A und 9B gezeigten Kerne für Gesichter optimiert, deren Frontalebene vertikal zu der Achse der Tiefenkamera 32 ist, wobei sowohl der Gierwinkel (Drehung des Kopfs um die vertikale Achse) als auch der Nickwinkel (Nicken des Kopfs nach oben und unten) Null ist. Diese krümmungsbasierten Kerne haben den Vorteil, dass sie aufgrund der geometrischen Eigenschaften des Gesichts verhältnismäßig unempfindlich gegenüber einem Gieren und Nicken sind. Um den Erfassungsbereich zu erhöhen, können jedoch zusätzliche Kerne entsprechend verschiedenen Bereichen des Gierens und/oder Nickens bestimmt und mit der Krümmungs-Map gefaltet werden. Zum Beispiel kann der Computer 26 neun verschiedene Kerne (oder möglicherweise neun Paare von Gesichts- und Nasenkernen) entsprechend Kombinationen des Gierens = 0, ±30° und Nickens = 0, ±30° anwenden.
  • 10A und 10B sind schematische grafische Darstellungen von Log-Likelihood-Maps, die durch ein Falten der Krümmungs-Map von 8 mit den Filterkernen von 9A bzw. 9B erhalten werden, gemäß einer Ausführungsform der Erfindung. Die Grauwerte in diesen Figuren sind umgekehrt proportional zu der Log-Likelihood an jedem Punkt, was bedeutet, dass die dunkelsten Punkte in den Figuren den höchsten Log-Likelihood-Werten entsprechen. Der Computer 26 verarbeitet diese Maps, um den oder die Blobs zu identifizieren, die tatsächlich Gesichtern in der Tiefen-Map entsprechen. Beim Auswählen der besten möglichen Gesichtsmittelpunkte berücksichtigt der Computer eine Anzahl von Faktoren, zum Beispiel:
    • • Niedriger Wert der Wurzel aus der mittleren quadratischen Abweichung in der Antwort des Gesichtskerns an dem möglichen Punkt.
    • • Stark örtlich begrenzte Antwort des Gesichtskerns an dem möglichen Punkt.
    • • Hoher Krümmungswert an dem Nasenort innerhalb des Gesichts (wie durch die Antwort des Nasenkerns angezeigt).
  • In dem in 10A und 10B gezeigten Beispiel geben die Filterkerne in der Tiefen-Map beide dieselbe steile Spitze bei der Log-Likelihood in der Mitte des Gesichts zurück.
  • In einer alternativen Ausführungsform sind die weiter oben dargelegten Prinzipien anstatt oder zusätzlich zu dem Verwenden von expliziten Filterkernen wie in 9A und 9B in einem DCNN (Deep Convolutional Neural Network, tiefes faltendes neurales Netzwerk) implementiert. In diesem Fall umfasst der Eingabestrom zu dem DCNN die Normalen-Map und die groben und detaillierten Krümmungs-Maps, wie weiter oben beschrieben. Das Rollen und die Skala können wie weiter oben beschrieben vorberechnet und zum Normalisieren des Eingabestroms zu dem DCNN verwendet werden. Alternativ dazu kann die Eingabe wie sie ist zugeführt werden, wobei es dem DCNN überlassen wird, diese Transformationen selbstständig zu lernen. Als Teil des Schulungsverfahrens lernt das Netzwerk die Filterkerne im Gegensatz zu einem Verwenden von festen, von Hand erstellten Kernen.
  • Wahlweise können die auf Krümmungsbasis gefundenen Blobs (wie in 6) als Regionsvorschläge für ein regionsbasiertes neurales Netzwerk verwendet werden. Alternativ dazu kann der Computer die Tiefen-Map mit den Arten von vordefinierten Filtern, die weiter oben beschrieben sind, filtern und dann einen noch kleineren Satz von endgültigen möglichen Orten zur Auswertung an das neurale Netzwerk weiterleiten.
  • Es wird daher ersichtlich sein, dass die vorstehend beschriebenen Ausführungsformen in beispielhafter Weise angeführt werden, und dass die vorliegende Erfindung nicht auf das beschränkt ist, was hierin vorstehend im Einzelnen gezeigt und beschrieben worden ist. Vielmehr beinhaltet der Bereich der vorliegenden Erfindung sowohl Kombinationen und Subkombinationen der verschiedenen oben beschriebenen Merkmale als auch deren Variationen und Modifikationen, die für einen Fachmann nach Lektüre der obigen Beschreibung naheliegen und die im Stand der Technik nicht offenbart sind.
  • Ein apparat zum Verarbeiten von Daten beinhaltet eine Bildgebungsanordnung, die dazu konfiguriert ist, eine Tiefen-Map eines Motivs mit wenigstens einem humanoiden Kopf zu erfassen, wobei die Tiefen-Map eine Pixelmatrix mit jeweiligen Pixeltiefenwerten umfasst. Ein Prozessor ist dazu konfiguriert, eine Krümmungs-Map des Motivs aus der Tiefen-Map zu extrahieren, wobei die Krümmungs-Map jeweilige Krümmungswerte von wenigstens einigen der Pixel in der Matrix umfasst, und die Krümmungswerte zu verarbeiten, um ein Gesicht in dem Motiv zu identifizieren.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 8456517 [0002, 0029]
    • US 8249334 [0003]
    • US 8565479 [0004]
    • US 9047507 [0005]

Claims (8)

  1. Apparat zum Verarbeiten von Daten, umfassend: eine Bildgebungsanordnung, die dazu konfiguriert ist, eine Tiefen-Map eines Motivs mit wenigstens einem humanoiden Kopf zu erfassen, wobei die Tiefen-Map eine Pixelmatrix mit jeweiligen Pixeltiefenwerten umfasst; und einen Prozessor, der dazu konfiguriert ist, eine Krümmungs-Map des Motivs aus der Tiefen-Map zu extrahieren, wobei die Krümmungs-Map jeweilige Krümmungswerte von wenigstens einigen der Pixel in der Matrix umfasst, und die Krümmungswerte zu verarbeiten, um ein Gesicht in dem Motiv zu identifizieren.
  2. Apparat nach Anspruch 1, wobei das Verarbeiten der Krümmungswerte ein Erfassen von einem oder mehreren Blobs in der Krümmungs-Map, über denen die Pixel jeweilige Krümmungswerte haben, die eine konvexe Oberfläche anzeigen, und das Identifizieren von einem der Blobs als das Gesicht umfasst.
  3. Apparat nach Anspruch 2, wobei die Krümmungs-Map jeweilige Krümmungsausrichtungen der wenigstens einigen der Pixel umfasst und das Identifizieren des einen der Blobs ein Berechnen eines Rollwinkels des Gesichts in Reaktion auf die Krümmungsausrichtungen der Pixel in dem einen der Blobs umfasst.
  4. Apparat nach Anspruch 3, wobei das Verarbeiten der Krümmungswerte ein Anwenden eines Krümmungsfilters auf die Krümmungs-Map umfasst, um festzustellen, ob der eine der Blobs das Gesicht ist, während eine Anpassung gemäß dem berechneten Rollwinkel vorgenommen wird.
  5. Apparat nach Anspruch 3, wobei das Verarbeiten der Krümmungswerte ein Berechnen einer Skala des Gesichts in Reaktion auf eine Größe des einen der Blobs und ein Anwenden eines Krümmungsfilters auf die Krümmungs-Map umfasst, um festzustellen, ob der eine der Blobs das Gesicht ist, während eine Anpassung gemäß der berechneten Skala vorgenommen wird.
  6. Apparat nach Anspruch 3, wobei das Extrahieren der Krümmungs-Map ein Ableiten einer ersten Krümmungs-Map von der Tiefen-Map bei einer ersten Auflösung umfasst und wobei das Erfassen des einen oder der mehreren Blobs ein Suchen des einen oder der mehreren Blobs in der ersten Krümmungs-Map umfasst und wobei das Verarbeiten der Krümmungswerte ein Ableiten einer zweiten Krümmungs-Map mit dem einen der Blobs bei einer zweiten Auflösung, die feiner als die erste Auflösung ist, und ein Identifizieren des Gesichts unter Verwendung der zweiten Krümmungs-Map umfasst.
  7. Apparat nach einem der Ansprüche 1–6, wobei das Verarbeiten der Krümmungswerte ein Falten der Krümmungs-Map mit einem Krümmungsfilterkern umfasst, um einen Ort des Gesichts in dem Motiv zu suchen.
  8. Apparat nach Anspruch 7, wobei das Falten der Krümmungs-Map ein separates Anwenden eines Gesichtsfilterkerns und eines Nasenfilterkerns umfasst, um jeweilige mögliche Orte des Gesichts zu berechnen und den Ort basierend auf den möglichen Orten zu suchen.
DE202017104506.4U 2017-07-28 2017-07-28 Krümmungsbasierter Gesichtsdetektor Active DE202017104506U1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE202017104506.4U DE202017104506U1 (de) 2017-07-28 2017-07-28 Krümmungsbasierter Gesichtsdetektor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE202017104506.4U DE202017104506U1 (de) 2017-07-28 2017-07-28 Krümmungsbasierter Gesichtsdetektor

Publications (1)

Publication Number Publication Date
DE202017104506U1 true DE202017104506U1 (de) 2017-09-05

Family

ID=59930073

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202017104506.4U Active DE202017104506U1 (de) 2017-07-28 2017-07-28 Krümmungsbasierter Gesichtsdetektor

Country Status (1)

Country Link
DE (1) DE202017104506U1 (de)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8249334B2 (en) 2006-05-11 2012-08-21 Primesense Ltd. Modeling of humanoid forms from depth maps
US8456517B2 (en) 2008-07-09 2013-06-04 Primesense Ltd. Integrated processor for 3D mapping
US8565479B2 (en) 2009-08-13 2013-10-22 Primesense Ltd. Extraction of skeletons from 3D maps
US9047507B2 (en) 2012-05-02 2015-06-02 Apple Inc. Upper-body skeleton extraction from depth maps

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8249334B2 (en) 2006-05-11 2012-08-21 Primesense Ltd. Modeling of humanoid forms from depth maps
US8456517B2 (en) 2008-07-09 2013-06-04 Primesense Ltd. Integrated processor for 3D mapping
US8565479B2 (en) 2009-08-13 2013-10-22 Primesense Ltd. Extraction of skeletons from 3D maps
US9047507B2 (en) 2012-05-02 2015-06-02 Apple Inc. Upper-body skeleton extraction from depth maps

Similar Documents

Publication Publication Date Title
WO2019232831A1 (zh) 机场异物识别方法、装置、计算机设备及存储介质
WO2019232830A1 (zh) 机场异物检测方法、装置、计算机设备及存储介质
EP1413972B1 (de) Prüfung von Bildaufnahmen von Personen
DE60213032T2 (de) Gerät zur Gesichtsdetektion, Gerät zur Detektion der Gesichtspose, Gerät zur Extraktion von Teilbildern und Verfahren für diese Geräte
DE102015121339B4 (de) Systeme und verfahren zum ermitteln eines zustands einer fahrbahn
DE102017220307B4 (de) Vorrichtung und Verfahren zum Erkennen von Verkehrszeichen
DE112016004535T5 (de) Universelles Übereinstimmungsnetz
DE102014222617B4 (de) Fahrzeugerfassungsverfahren und Fahrzeugerfassungssytem
DE112016007131B4 (de) Objektdetektionseinrichtung und Objektbestimmungsverfahren
DE112018000899T5 (de) Gemeinsame 3D-Objekterfassung und Ausrichtungsabschätzung über multimodale Fusion
DE102016013274A1 (de) Bildverarbeitungsvorrichtung und verfahren zur erkennung eines bilds eines zu erkennenden objekts aus eingabedaten
DE102015103022A1 (de) Verfahren und Vorrichtung zum Erkennen eines bekannten Objekts in einem Sehfeld eines dreidimensionalen Maschinensichtsystems
DE102016100101A1 (de) System zum maschinellen sehen und analytisches verfahren zur segmentierung planarer oberflächen
DE112012005350T5 (de) Verfahren zum Schätzen der Stellung eines Objekts
EP2284795A2 (de) Quantitative Analyse, Visualisierung und Bewegungskorrektur in dynamischen Prozessen
DE102019106277A1 (de) Bildanalysevorrichtung, -verfahren und -programm
DE102017220752A1 (de) Bildverarbeitungsvorrichtung, Bildbverarbeitungsverfahren und Bildverarbeitungsprogramm
DE102015121387A1 (de) Hinderniserkennungseinrichtung und Hinderniserkennungsverfahren
DE102014100352A1 (de) Fahrerblickdetektionssystem
DE102019104310A1 (de) System und Verfahren zur simultanen Betrachtung von Kanten und normalen bei Bildmerkmalen durch ein Sichtsystem
DE112010002677T5 (de) Verfahren und vorrichtung zum bestimmen einer formübereinstimmung in drei dimensionen
DE102015207903A1 (de) Vorrichtung und Verfahren zum Erfassen eines Verkehrszeichens vom Balkentyp in einem Verkehrszeichen-Erkennungssystem
EP3931798B1 (de) Schätzung der bewegung einer bildposition
DE112020005223T5 (de) Objektverfolgungseinrichtung und Objektverfolgungsverfahren
DE202022101680U1 (de) Ein automatisches System zur Erkennung von Handgesten

Legal Events

Date Code Title Description
R207 Utility model specification
R150 Utility model maintained after payment of first maintenance fee after three years
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009620000

Ipc: G06V0030190000

R151 Utility model maintained after payment of second maintenance fee after six years