Suchen und bearbeiten (verwischen) Sie Gesichter mit der Gesichtserkennungs-Voreinstellung
Warnung
Azure Media Services wird am 30. Juni 2024 eingestellt. Weitere Informationen finden Sie im Leitfaden zur Einstellung von AMS.
Wichtig
Gemäß seiner Standards zu verantwortungsvoller KI ist Microsoft hinsichtlich KI-Systemen zu Fairness, Datenschutz, Sicherheit und Transparenz verpflichtet. Um diesen Standards gerecht zu werden, wird die Video Analyzer-Voreinstellung von Azure Media Services am 14. September 2023 eingestellt. Mit dieser Voreinstellung können bislang Video- und Audio-Insights aus Videodateien extrahiert werden. Die derzeit von unseren Kunden verwendeten Workflows können durch den erweiterten Funktionssatz von Azure Video Indexer ersetzt werden.
Azure Media Services V3-API enthält eine Gesichtserkennungs-Voreinstellung, die eine skalierbare Gesichtserkennung und-Bearbeitung (Verwischen) in der Cloud bietet. Mit der Gesichtsbearbeitung können Sie Ihr Video ändern, um Gesichter von ausgewählten Personen unscharf anzuzeigen und so unkenntlich zu machen. Es kann beispielsweise sein, dass Sie den Gesichtsbearbeitungsdienst nutzen möchten, wenn es um die öffentliche Sicherheit oder Medienarbeit geht. Ein paar Minuten Filmmaterial, das mehrere Gesichter enthält, kann Stunden dauern, um manuell bearbeitet zu werden, aber mit dieser Voreinstellung erfordert das Gesichtsbearbeitungsverfahren nur ein paar einfache Schritte.
Compliance, Datenschutz und Sicherheit
Eine wichtige Erinnerung: Sie müssen bei der Verwendung von Analysen in Azure Media Services alle geltenden Gesetze einhalten. Sie dürfen Azure Media Services oder einen anderen Azure-Dienst nicht in einer Weise nutzen, welche die Rechte anderer verletzt. Bevor Sie Videos, einschließlich biometrischer Daten, zur Verarbeitung und Speicherung in den Azure Media Services-Dienst hochladen, müssen Sie über alle erforderlichen Rechte, einschließlich aller entsprechenden Zustimmungen der Personen im Video, verfügen. IUm mehr über Compliance, Datenschutz und Sicherheit in Azure Media Services zu erfahren, lesen Sie die rechtlichen Begriffe zum Azure Erkennungsdienst. Informationen zu den Datenschutzauflagen und zur Behandlung Ihrer Daten durch Microsoft finden Sie in den Datenschutzbestimmungen, in den Bestimmungen für Onlinedienste (Online Services Terms, OST) und im Nachtrag zur Datenverarbeitung (Data Processing Addendum, DPA). Weitere Datenschutzinformationen, einschließlich der Datenaufbewahrung, Löschung/Vernichtung, sind in der OST verfügbar. Durch die Nutzung von Azure Media Services erklären Sie sich mit den Bedingungen für Cognitive Services, den OST, DPA und der Datenschutzerklärung einverstanden
Modi der Gesichtsbearbeitung
Bei der Gesichtsbearbeitung werden Gesichter in jedem Bild eines Videos erkannt, und gleichzeitig wird das Gesichtsobjekt in Vorwärts- und Rückwärtsrichtung verfolgt, damit eine Person auch aus anderen Winkeln unkenntlich gemacht werden kann. Das automatisierte Bearbeitungsverfahren ist komplex, und die Weichzeichnung ist nicht zu 100 % für jedes Gesicht garantiert. Aus diesem Grund kann bei der Voreinstellung ein Zwei-Pass-Modus verwendet werden, um die Qualität und Genauigkeit des Verwischens anhand einer Bearbeitungsstufe zu verbessern, bevor die Datei für den endgültigen Verwischungsdurchgang eingereicht wird.
Zusätzlich zu einem vollständig automatischen kombinierten Modus können Sie mit dem zwei-Pass-Verafhren die Gesichter auswählen, die Sie in einer Liste mit Gesichts-IDs verwischen (oder nicht verwischen) möchten. Um willkürliche pro-Frame-Anpassungen vorzunehmen, verwendet die Voreinstellung eine Metadatendatei im JSON-Format als Eingabe für den zweiten Durchlauf. Dieser Workflow ist in die Modi Analyze (Analysieren) und Redact (Bearbeiten) unterteilt.
Sie können die beiden Modi auch einfach in einem einzigen Durchlauf kombinieren, der beide Tasks in einem Gang ausführt; dieser Modus wird als Kombiniert bezeichnet. In diesem Artikel zeigt der Beispielcode, wie Sie den vereinfachten Einzel-Durchlauf-ModusKombiniert für eine Beispiels-Quelldatei anwenden.
Kombinierter Modus
Dadurch wird in einem einzigen Durchgang eine bearbeitete MP4-Videodatei erzeugt, ohne dass eine manuelle Bearbeitung der JSON-Datei erforderlich ist. Die Ausgabe im Asset-Ordner für den Auftrag ist eine einzelne MP4-Datei, die verschwommene Gesichter mit dem ausgewählten Verwischungseffekt enthält. Verwenden Sie die Eigenschaft Auflösung, die auf Sourceresolution eingestellt ist, um die besten Ergebnisse der Bearbeitung zu erzielen.
Phase | Dateiname | Notizen |
---|---|---|
Eingabeasset | "ignite-sample.mp4" | Video im WMV-, MOV- oder MP4-Format |
Voreinstellungen | Gesichtserkennungs-Einstellungen | Modus: FaceRedactorMode.Combined, blurType: BlurType.Med, resolution: AnalysisResolution.SourceResolution |
Ausgabeasset | "ignite-redacted.mp4 | Video mit Verwischungseffekt auf Gesichter |
Analysemodus
Im Analyze-Durchlauf des zweistufigen Workflows wird eine Videoeingabe verwendet, und es werden eine JSON-Datei mit Gesichtspositionen und JPG-Bilder für jedes erkannte Gesicht erstellt. Beachten Sie, dass die Gesichtserkennungs-IDs bei nachfolgenden Durchläufen der Analyse nicht unbedingt identisch sind.
Phase | Dateiname | Notizen |
---|---|---|
Eingabeasset | "ignite-sample.mp4" | Video im WMV-, MPV- oder MP4-Format |
Voreinstellungen | Gesichtserkennungs-Einstellungen | Modus: FaceRedactorMode.Analyze, resolution: AnalysisResolution.SourceResolution |
Ausgabeasset | ignite-sample_annotations.json | Anmerkungsdaten von Gesichtspositionen im JSON-Format. Die Gesichtserkennungs-IDs sind bei nachfolgenden Durchläufen der Analyse nicht unbedingt identisch. Können vom Benutzer bearbeitet werden, um die Begrenzungsrahmen für die unscharfen Bereiche zu ändern. Siehe Beispiel unten. |
Ausgabeasset | foo_thumb%06d.jpg [foo_thumb000001.jpg, foo_thumb000002.jpg] | Zugeschnittenes JPG-Bild jedes erkannten Gesichts mit Nummer für die „labelId“ des Gesichts |
Ausgabebeispiel
{
"version": 1,
"timescale": 24000,
"offset": 0,
"framerate": 23.976,
"width": 1280,
"height": 720,
"fragments": [
{
"start": 0,
"duration": 48048,
"interval": 1001,
"events": [
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[
{
"index": 13,
"id": 1138,
"x": 0.29537,
"y": -0.18987,
"width": 0.36239,
"height": 0.80335
},
{
"index": 13,
"id": 2028,
"x": 0.60427,
"y": 0.16098,
"width": 0.26958,
"height": 0.57943
}
],
... truncated
Bearbeitungs- (verschwommen)Modus
Im zweiten Durchlauf des Workflows wird eine größere Anzahl von Eingaben verwendet, die zu einem einzelnen Asset zusammengefasst werden müssen.
Hierzu gehören eine Liste mit den IDs für die Anwendung der Unschärfe, das ursprüngliche Video und die JSON-Datei mit den Anmerkungen. In diesem Modus werden die Anmerkungen verwendet, um die Unschärfe auf das Eingabevideo anzuwenden.
In der Ausgabe des Analysedurchlaufs ist das Originalvideo nicht enthalten. Das Video muss in das Eingabeasset für die Aufgabe im Bearbeitungsmodus hochgeladen und als primäre Datei ausgewählt werden.
Phase | Dateiname | Notizen |
---|---|---|
Eingabeasset | "ignite-sample.mp4" | Video im WMV-, MPV- oder MP4-Format. Dasselbe Video wie in Schritt 1. |
Eingabeasset | ignite-sample_annotations.json" | Anmerkungs-Metadaten-Datei aus Phase 1, mit fakultativen Änderungen, wenn Sie die weichgezeichneten Gesichter bearbeiten möchten. Dies muss in einer externen Anwendung, in einem Code oder in einem Text-Editor bearbeitet werden. |
Eingabeasset | "ignite-sample_IDList.txt" (Fakultativ) | Optionale neue Liste mit zu bearbeitenden Gesicht-IDs mit Zeilentrennung. Wenn diese Option leer bleibt, wird der Verwischungseffekt auf alle Gesichter in der Quelldatei angewendet. Sie können die Liste verwenden, um bestimmte Gesichter selektiv zu verwischen. |
Voreinstellung für die Gesichtserkennung | Voreinstellungs-Konfiguration | Modus: FaceRedactorMode.Redact, blurType: BlurType.Med |
Ausgabeasset | "ignite-sample-redacted.mp4" | Video mit angewendeter Unschärfe, basierend auf Anmerkungen |
Beispielausgabe
Dies ist die Ausgabe von IDList mit einer ausgewählten ID. Die Gesichtserkennungs-IDs sind bei nachfolgenden Durchläufen der Analyse nicht unbedingt identisch.
Beispiel: „foo_IDList.txt“
1
2
3
Typen von Weichzeichnern
Im Modus Kombiniert oder Bearbeiten sind fünf verschiedene Verwischungsmodi verfügbar, von denen Sie über die JSON-Eingabekonfiguration wählen können: Niedrig, Mittel, Hoch, Box und Schwarz. Standardmäßig wird Medium verwendet.
Untenstehend finden Sie Beispiele für Weichzeichnertypen.
Niedrig
Medium
High
Feld
Schwarz
Elemente der JSON-Ausgabedatei
Der Medienprozessor zur Gesichtsbearbeitung ermöglicht eine Gesichtspositionserkennung und -nachverfolgung mit hoher Genauigkeit, sodass bis zu 64 menschliche Gesichter in einem Videobild erkannt werden können. Frontalansichten von Gesichtern bieten die besten Ergebnisse, während Seitenansichten und kleine Gesichter (maximal 24 x 24 Pixel) unter Umständen nicht so genau erkannt werden.
Mit dem Auftrag wird eine JSON-Ausgabedatei erzeugt, die Metadaten zu erkannten und nachverfolgten Gesichtern enthält. Die Metadaten enthalten Koordinaten, die die Position der Gesichter sowie eine Gesichts-ID angeben, um die Nachverfolgung einer einzelnen Person kenntlich zu machen. Gesichts-IDs können zurückgesetzt werden, wenn die Frontalansicht des Gesichts verloren geht oder im Frame überlappt wird, sodass einigen Personen möglicherweise mehrere IDs zugewiesen werden.
Die JSON-Ausgabe enthält die folgenden Elemente:
JSON-Stammelemente
Element | BESCHREIBUNG |
---|---|
version | Dies bezieht sich auf die Version der Video-API. |
timescale | „Ticks“ pro Sekunde des Videos. |
offset | Dies ist der Zeitoffset für Zeitstempel. In Version 1.0 von Video-APIs wird dies immer 0 sein. In zukünftigen Szenarien, die wir unterstützen, kann sich dieser Wert ändern. |
width, height | Breite und Höhe des Ausgabevideobilds in Pixel. |
framerate | Frames des Videos pro Sekunde. |
JSON-Elemente für Fragmente
Element | BESCHREIBUNG |
---|---|
start | Die Startzeit des ersten Ereignisses in „Ticks“. |
duration | Die Länge des Fragments in „Ticks“. |
Index | Definiert den Frameindex des aktuellen Ereignisses (gilt nur für Azure Media Redactor). |
interval | Das Intervall jedes Ereigniseintrags innerhalb des Fragments in „Ticks“. |
events | Jedes Ereignis enthält die innerhalb dieser Zeitspanne erkannten und nachverfolgten Gesichter. Es ist ein Array von Ereignissen. Das äußere Array stellt ein Zeitintervall dar. Das innere Array besteht aus 0 oder mehr Ereignissen, die zu diesem Zeitpunkt aufgetreten sind. Eine leere Klammer ( [] ) bedeutet, dass keine Gesichter erkannt wurden. |
id | Die ID des Gesichts, das nachverfolgt wird. Diese Nummer kann sich unbeabsichtigt ändern, wenn ein Gesicht nicht mehr erkannt wird. Eine Person sollte während des gesamten Videos dieselbe ID behalten, dies kann jedoch aufgrund von Einschränkungen im Erkennungsalgorithmus (Verdecken usw.) nicht garantiert werden. |
x, y | Die oberen linken X- und Y-Koordinaten des Rahmens, der das Gesicht umgibt, in einem normalisierten Maßstab von 0,0 bis 1,0. X- und Y-Koordinaten sind immer relativ zum Querformat, d.h. bei einem Video im Hochformat (oder, im Fall von iOS, einem kopfstehenden) müssen Sie die Koordinaten entsprechend vertauschen. |
width, height | Die Breite und Höhe des Rahmens, der das Gesicht umgibt, in einem normalisierten Maßstab von 0,0 bis 1,0. |
facesDetected | Dieses Element befindet sich am Ende der JSON-Ergebnisse und fasst die Anzahl der Gesichter zusammen, die der Algorithmus während des Videos erkannt hat. Da die IDs unabsichtlich zurückgesetzt werden können, wenn ein Gesicht nicht mehr erkannt wird (z.B. wenn sich das Gesicht aus dem Bild bewegt oder die Person sich abwendet), entspricht diese Zahl möglicherweise nicht immer der tatsächlichen Anzahl der Gesichter im Video. |
Anfordern von Hilfe und Support
Sie können Media Services mit Fragen kontaktieren oder unsere Updates mit einer der folgenden Methoden verfolgen:
- Q & A
- Stack Overflow. Markieren Sie Fragen mit
azure-media-services
. - @MSFTAzureMedia oder verwenden Sie @AzureSupport , um Support anzufordern.
- Öffnen Sie ein Supportticket über die Azure-Portal.