Suchen und bearbeiten (verwischen) Sie Gesichter mit der Gesichtserkennungs-Voreinstellung

Media Services-Logo v3


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

Beispiel für eine Einstellung mit niedriger Auflösung.

Medium

Beispiel für die Einstellung der mittleren Auflösung der Unschärfe.

High

Beispiel für die Einstellung der hohen Auflösung der Unschärfe.

Feld

Box-Modus zur Verwendung beim Debuggen Ihres Ergebnisses.

Schwarz

Der Blackbox-Modus deckt alle Gesichter mit schwarzen Boxen ab.

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: