Gesichtserkennung, Attribute und Eingabedaten
Achtung
Der Zugriff auf den Gesichtserkennungsdienst ist auf der Grundlage von Berechtigungs- und Nutzungskriterien begrenzt, um unsere Prinzipien für verantwortungsvolle KI zu unterstützen. Der Gesichtserkennungsdienst ist nur für von Microsoft verwaltete Kunden und Partner verfügbar. Verwenden Sie das Aufnahmeformular für die Gesichtserkennung, um sich für den Zugriff zu bewerben. Weitere Informationen finden Sie auf der Seite Eingeschränkter Zugriff auf die Gesichtserkennung.
Wichtig
Gesichtsattribute werden mithilfe statistischer Algorithmen vorhergesagt. Sie sind möglicherweise nicht immer genau. Treffen Sie Entscheidungen auf Grundlage von Attributdaten mit Umsicht. Verzichten Sie darauf, diese Attribute für Spoofingbekämpfung zu verwenden. Wir empfehlen stattdessen die Face Liveness-Erkennung. Weitere Informationen finden Sie im Tutorial: Erkennen von Gesichtsaktivität im Livezustand.
Dieser Artikel erläutert die Konzepte der Gesichtserkennung und der Attributdaten für Gesichter. Bei der Gesichtserkennung werden menschliche Gesichter in einem Bild gesucht und optional verschiedene Arten von gesichtsbezogenen Daten zurückgegeben.
Sie verwenden die Erkennungs-API, um Gesichter in einem Bild zu erkennen. Für die ersten Schritte mit der REST-API oder einem Client-SDK führen Sie einen Schnellstart zum Gesichtserkennungsdienst durch. Einen ausführlicheren Leitfaden finden Sie unter Aufrufen der Erkennungs-API.
Gesichtsrechteck
Jedes erkannte Gesicht entspricht einem faceRectangle-Feld in der Antwort. Dieser Satz von Pixelkoordinaten für links, oben, Breite und Höhe kennzeichnet das erkannte Gesicht. Mithilfe dieser Koordinaten können Sie die Position des Gesichts und seine Größe abrufen. In der API-Antwort werden Gesichter in Reihenfolge nach Größe – vom größten zum kleinsten Gesicht – aufgeführt.
Testen Sie mithilfe von Azure KI Vision Studio ganz schnell und einfach die Funktionen der Gesichtserkennung.
Gesichts-ID
Die Gesichtserkennungs-ID ist eine Zeichenfolge mit dem eindeutigen Bezeichner für jedes erkannte Gesicht in einem Bild. Die Gesichts-ID erfordert eine eingeschränkte Zugriffsgenehmigung, die Sie durch Ausfüllen des Aufnahmeformulars beantragen können. Weitere Informationen finden Sie auf der Seite zum eingeschränkten Zugriff für die Gesichtserkennungs-API. Sie können eine Gesicht-ID in Ihrem Erkennungs-API-Aufruf anfordern.
Gesichtszüge
Gesichtsmerkmale bestehen aus mehreren einfach zu findenden Punkten im Gesicht. Beispiel sind die Pupillen oder die Nasenspitze. Standardmäßig sind 27 Bezugspunkte vordefiniert. Die folgende Abbildung zeigt alle 27 Punkte:
Die Koordinaten der Punkte werden in Pixel zurückgegeben.
Das Modell „Detection_03“ verfügt derzeit über die genaueste Erkennung von Merkmalen. Die zurückgegebenen Augen- und Pupillenmerkmale sind ausreichend präzise, um die Blicknachverfolgung des Gesichts zu ermöglichen.
Attribute
Achtung
Microsoft hat Gesichtserkennungsfunktionen eingestellt oder eingeschränkt, mit denen sich emotionale Zustände und Identitätsattribute ableiten lassen, die bei missbräuchlicher Nutzung zu einer Stereotypisierung oder Diskriminierung von Personen oder zu einer unlauteren Verweigerung von Dienstleistungen führen können. Die eingestellten Funktionen gelten für Emotion und Geschlecht. Die eingeschränkten Funktionen betreffen Alter, Lächeln, Gesichtsbehaarung, Haare und Make-up. Senden Sie eine E-Mail an die Azure-API für die Gesichtserkennung, wenn Sie über einen verantwortungsvollen Anwendungsfall verfügen, der von der Verwendung einer der eingeschränkten Funktionen profitieren würde. Weitere Informationen zu dieser Entscheidung finden Sie hier.
Attribute sind ein Satz von Merkmalen, die optional durch die Erkennungs-API erkannt werden können. Die folgenden Attribute können erkannt werden:
Zubehör: Gibt an, ob das angegebene Gesicht Accessoires aufweist. Dieses Attribut gibt die möglichen Accessoires zurück, einschließlich Kopfbedeckung, Brille und Maske, mit einer Konfidenzbewertung zwischen 0 (null) und 1 für jedes Accessoire.
Weichzeichnen: Gibt die Unschärfe des Gesichts im Bild an. Dieses Attribut gibt einen Wert zwischen 0 und 1 und eine informelle Bewertung von gering, mittel oder hoch zurück.
Belichtung: Gibt die Belichtung des Gesichts im Bild an. Dieses Attribut gibt einen Wert zwischen 0 und 1 und die informelle Bewertung underExposure, goodExposure oder overExposure zurück.
Brille: Gibt an, ob das Gesicht eine Brille aufweist. Mögliche Werte sind NoGlasses, ReadingGlasses, Sunglasses und Swimming Goggles.
Kopfhaltung: Gibt die Ausrichtung des Gesichts im dreidimensionalen Raum an. Dieses Attribut wird durch die Roll-, Gier- und Nickwinkel in Grad beschrieben, die nach der rechten Regel definiert sind. Die Reihenfolge der drei Winkel ist Rollwinkel-Gierwinkel-Nickwinkel, und der Wertebereich jedes Winkels reicht von -180 Grad bis 180 Grad. Die 3D-Ausrichtung des Gesichts wird der Reihe nach durch den Roll-, Gier- und Nickwinkel geschätzt. Die Winkelzuordnungen sind im folgenden Diagramm dargestellt:
Weitere Informationen zur Verwendung dieser Werte finden Sie unter Verwenden des HeadPose-Attributs.
Maske: Gibt an, ob das Gesicht eine Maske trägt. Dieses Attribut gibt einen möglichen Maskentyp und einen booleschen Wert zurück, um anzugeben, ob Nase und Mund bedeckt sind.
Störung: Gibt visuelle Störungen an, die im Gesicht erkannt wurden. Dieses Attribut gibt einen Wert zwischen 0 und 1 und eine informelle Bewertung von gering, mittel oder hoch zurück.
Verdeckung: Gibt an, ob Objekte Teile des Gesichts verdecken. Dieses Attribut gibt einen booleschen Wert für eyeOccluded, foreheadOccluded und mouthOccluded zurück.
QualityForRecognition: Gibt die allgemeine Bildqualität an, um zu bestimmen, ob das bei der Erkennung verwendete Bild von ausreichender Qualität ist, um die Gesichtserkennung durchzuführen. Der Wert ist eine informelle Bewertung von niedrig, mittel oder hoch. Für die Registrierung von Personen werden nur Bilder der Qualitätsstufe hoch empfohlen, und die Qualität mittel oder höher wird bei Identifikationen empfohlen.
Hinweis
Die Verfügbarkeit der einzelnen Attribute hängt vom angegebenen Erkennungsmodell ab. Das QualityForRecognition-Attribut hängt auch vom Erkennungsmodell ab, da es derzeit nur verfügbar ist, wenn eine Kombination aus „detection model detection_01“ (Erkennungsmodellerkennung_01) oder „detection_03“ (Erkennung_03) und „recognition model recognition_03“ (Wiedererkennungsmodell-Wiedererkennung_03) oder „recognition_04“ (Wiedererkennung_04) verwendet wird.
Eingabeanforderungen
Anhand der folgenden Tipps können Sie sicherstellen, dass Ihre Eingabebilder möglichst genaue Erkennungsergebnisse liefern:
- Als Eingabebildformate werden JPEG, PNG, GIF (der erste Frame), BMP unterstützt.
- Die Bilddateien dürfen maximal 6 MB groß sein.
- Die minimal erkennbare Gesichtsgröße beträgt 36×36 Pixel auf einem Bild, das selbst nicht größer als 1.920×1.080 Pixel sein darf. Auf Bildern, die größer als 1.920×1.080 Pixel sind, ist eine proportional größere minimale Gesichtsgröße möglich. Eine Verkleinerung der Gesichtsgröße kann dazu führen, dass einige Gesichter nicht erkannt werden, selbst wenn sie größer als die minimal erkennbare Gesichtsgröße sind.
- Die maximal erkennbare Gesichtsgröße beträgt 4.096×4.096 Pixel.
- Gesichter außerhalb der Größenspanne von 36×36 bis 4.096×4.096 Pixel werden nicht erkannt.
Eingabedaten mit Ausrichtungsinformationen
Einige Eingabebilder im JPEG-Format können Ausrichtungsinformationen in EXIF-Metadaten (Exchangeable Image File Format) enthalten. Wenn die EXIF-Ausrichtung verfügbar ist, werden die Bilder automatisch in die richtige Ausrichtung gedreht, bevor sie zur Gesichtserkennung gesendet werden. Das Gesichtsrechteck, die Orientierungspunkte und die Kopfhaltung für jedes erkannte Gesicht werden auf der Grundlage des gedrehten Bildes geschätzt.
Um das Gesichtsrechteck und die Orientierungspunkte richtig anzuzeigen, müssen Sie sicherstellen, dass das Bild richtig gedreht ist. Die meisten Tools zur Bildvisualisierung drehen das Bild standardmäßig automatisch entsprechend seiner EXIF-Ausrichtung. Bei anderen Tools müssen Sie die Drehung möglicherweise mithilfe Ihres eigenen Codes anwenden. Die folgenden Beispiele zeigen ein Gesichtsrechteck auf einem gedrehten Bild (links) und einem nicht gedrehten Bild (rechts).
Videoeingang
Wenn Sie Gesichter in einem Videofeed ermitteln möchten, können Sie die Leistung verbessern, indem Sie bestimmte Einstellungen an Ihrer Videokamera anpassen:
Glättung: Viele Videokameras wenden einen glättenden Effekt an. Sie sollten diesen deaktivieren, da er einen Weichzeichnungseffekt zwischen den Frames einfügt und damit die Schärfe reduziert.
Belichtungszeit: Eine kürzere Belichtungszeit verringert die Anzahl der Bewegungen zwischen den Frames und macht damit die einzelnen Frame deutlicher. Es werden Belichtungszeiten von 1/60 Sekunde oder kürzer empfohlen.
Verschlusswinkel: Einige Kameras geben anstelle der Belichtungszeit den Verschlusswinkel an. Sie sollten nach Möglichkeit einen niedrigeren Verschlusswinkel verwenden, was zu deutlicheren Videoframes führt.
Hinweis
Ein Kamerasensor mit einem niedrigeren Verschlusswinkel nimmt pro Frame weniger Licht auf, sodass das Bild dunkler wird. Sie müssen die beste Einstellung selbst bestimmen.
Nächster Schritt
Nachdem Sie nun mit den Konzepten der Gesichtserkennung vertraut sind, erfahren Sie, wie Sie ein Skript schreiben, das Gesichter in einem vorgegebenen Bild erkennt.