Verwenden der Amazon-Rekognition-Segment-API - Amazon Rekognition

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwenden der Amazon-Rekognition-Segment-API

Die Segmenterkennung von Amazon Rekognition Video in gespeicherten Videos ist eine asynchrone Operation von Amazon Rekognition Video. Die Amazon-Rekognition-Segment-API ist eine zusammengesetzte API, bei der Sie die Art der Analyse (technische Signale oder Einstellungserkennung) über einen einzigen API-Aufruf auswählen. Informationen zum Aufrufen asynchroner Operationen finden Sie unter Amazon-Rekognition-Video-Operationen aufrufen.

Starten der Segmentanalyse

Um die Erkennung von Segmenten in einem gespeicherten Videoanruf zu starten. StartSegmentDetection Die Eingabeparameter sind mit denen anderer Amazon-Rekognition-Video-Operationen identisch, wobei die Segmenttypauswahl und die Ergebnisfilterung hinzugefügt werden. Weitere Informationen finden Sie unter Starten der Videoanalyse.

Nachfolgend sehen Sie ein von StartSegmentDetection übergebenes JSON-Beispiel. Die Anforderung gibt an, dass sowohl technische Signale, als auch Einstellungserkennungssegmente erkannt werden. Für technische Signal-Segmente (90 %) und Einstellungserkennungssegmente (80 %) werden verschiedene Filter für die minimale Prognosegenauigkeit angefordert.

{ "Video": { "S3Object": { "Bucket": "test_files", "Name": "test_file.mp4" } "SegmentTypes":["TECHNICAL_CUES", "SHOT"] "Filters": { "TechnicalCueFilter": { "MinSegmentConfidence": 90, "BlackFrame" : { "MaxPixelThreshold": 0.1, "MinCoveragePercentage": 95 } }, "ShotFilter" : { "MinSegmentConfidence": 60 } } }

Auswahl eines Segmenttyps

Verwenden Sie den SegmentTypes-Array-Eingabeparameter, um technische Signal- und/oder Einstellungserkennungssegmente im Eingabevideo zu erkennen.

  • TECHNICAL_CUE – identifiziert framegenaue Zeitstempel für den Beginn, das Ende und die Dauer von technischen Hinweisen (schwarze Frames, Farbbalken, Vorspann, Abspann, Studiologos und primäre Programminhalte), die in einem Video erkannt werden. Beispielsweise können Sie technische Signale verwenden, um den Anfang des Abspanns zu finden. Weitere Informationen finden Sie unter Technische Signale.

  • SHOT – identifiziert den Anfang, das Ende und die Dauer einer Einstellung. Sie können beispielsweise das Alleinstellungsmerkmal verwenden, um Kandidateneinstellungen für die abschließende Bearbeitung eines Videos zu identifizieren. Weitere Informationen finden Sie unter Einstellungserkennung.

Filtern der Analyseergebnisse

Sie können den Eingabeparameter Filters (StartSegmentDetectionFilters) verwenden, um die minimale Erkennungssicherheit anzugeben, die in der Antwort zurückgegeben wird. Verwenden Sie innerhalb von Filters ShotFilter (StartShotDetectionFilter), um erkannte Aufnahmen zu filtern. Verwenden Sie TechnicalCueFilter (StartTechnicalCueDetectionFilter), um technische Hinweise zu filtern.

Beispielcode finden Sie unter Beispiel: Erkennen von Segmenten in einem gespeicherten Video.

Abrufen der Ergebnisse der Segmentanalyse

Das Amazon-Simple-Notification-Service-Thema, zu dem Amazon Rekognition Video die Ergebnisse der Objekterkennung und den Abschlussstatus einer Videoanalyse-Operation veröffentlicht. Wenn die Videoanalyse erfolgreich ist, rufen Sie an, GetSegmentDetectionum die Ergebnisse der Videoanalyse zu erhalten.

Es folgt ein Beispiel für eine GetSegmentDetection- Anforderung. Die JobId ist die Aufgaben-ID, die vom Aufruf an StartSegmentDetection zurückgegeben wird. Informationen zu den weiteren Eingabeparametern finden Sie unter Analyseergebnisse von Amazon Rekognition Video abrufen.

{ "JobId": "270c1cc5e1d0ea2fbc59d97cb69a72a5495da75851976b14a1784ca90fc180e3", "MaxResults": 10, "NextToken": "XfXnZKiyMOGDhzBzYUhS5puM+g1IgezqFeYpv/H/+5noP/LmM57FitUAwSQ5D6G4AB/PNwolrw==" }

GetSegmentDetection bietet Ergebnisse für die angeforderte Analyse und allgemeine Informationen über das gespeicherte Video.

Allgemeine Informationen

GetSegmentDection gibt die folgenden allgemeinen Informationen zurück.

  • Audioinformationen — Die Antwort umfasst Audio-Metadaten in einer Reihe von AudioMetadataObjekten. AudioMetadata Es können mehrere Audio-Streams vorhanden sein. Jedes AudioMetadata-Objekt enthält Metadaten für einen einzelnen Audio-Stream. Zu den Audioinformationen in AudioMetadata-Objekten gehören der Audio-Codec, die Anzahl der Audiokanäle, die Dauer des Audio-Streams und die Abtastrate. Audiometadaten werden auf jeder Seite mit Informationen zurückgegeben, die von GetSegmentDetection zurückgegeben werden.

  • Videoinformationen — Derzeit gibt Amazon Rekognition Video ein einzelnes VideoMetadataObjekt im VideoMetadata Array zurück. Das Objekt enthält Informationen über den Videostrom in der Eingabedatei, die Amazon Rekognition Video für die Analyse ausgewählt hat. Das VideoMetadata-Objekt enthält den Video-Codec, das Videoformat und weitere Informationen. Videometadaten werden auf jeder Seite mit Informationen zurückgegeben, die von GetSegmentDetection zurückgegeben wird.

  • Paging-Informationen – Das Beispiel zeigt eine Seite mit Segmentinformationen. Sie können im MaxResults-Eingabeparameter für GetSegmentDetection angeben, wie viele Elemente zurückgegeben werden sollen. Wenn mehr Ergebnisse als MaxResults vorhanden sind, gibt GetSegmentDetection einen Token zurück (NextToken), der dazu verwendet wird, die nächste Seite mit Ergebnissen zu erhalten. Weitere Informationen finden Sie unter Analyseergebnisse von Amazon Rekognition Video abrufen.

  • Anforderungsinformationen – Die Art der Analyse, die im Aufruf von StartSegmentDetection angefordert wird, wird im SelectedSegmentTypes-Feld zurückgegeben.

Segmente

In einem Video erkannte technische Hinweise und Aufnahmeinformationen werden in einer Reihe von Objekten zurückgegeben. Segments SegmentDetection Das Array wird nach den Segmenttypen (TECHNICAL_CUE oder SHOT) sortiert, die im SegmentTypes-Eingabeparameter von StartSegmentDetection angegeben sind. Innerhalb jedes Segmenttyps wird das Array nach Zeitstempelwerten sortiert. Jedes SegmentDetection-Objekt enthält Informationen über den Typ des erkannten Segments (Technisches Signal oder Einstellungserkennung) sowie allgemeine Informationen, wie Startzeit, Endzeit und Dauer des Segments.

Zeitinformationen werden in drei Formaten zurückgegeben.

  • Millisekunden

    Die Anzahl der Millisekunden seit dem Start des Videos. Die Felder DurationMillis, StartTimestampMillis und EndTimestampMillis verwenden das Millisekundenformat.

  • Timecode

    Amazon-Rekognition-Video-Zeitcodes werden im SMPTE-Format angegeben, wobei jeder Frame des Videos einen eindeutigen Zeitcode-Wert aufweist. Das Format ist hh:mm:ss:frame. Beispielsweise ist ein Timecode-Wert von 01:05:40:07 als „eine Stunde, fünf Minuten, vierzig Sekunden und sieben Frames“ zu lesen. Anwendungsfälle mit Drop-Frame-Rate werden von Amazon Rekognition Video unterstützt. Das Zeitcode-Format für die Drop-Rate ist hh:mm:ss; frame. Die Felder DurationSMPTE, StartTimecodeSMPTE und EndTimecodeSMPTE verwenden das Timecode-Format.

  • Frame-Zähler

    Die Dauer jedes Videosegments wird auch durch die Anzahl der Frames ausgedrückt. Das Feld StartFrameNumber gibt die Frame-Nummer am Anfang eines Videosegments an und EndFrameNumber gibt die Frame-Nummer am Ende eines Videosegments an. DurationFrames gibt die Gesamtzahl der Frames in einem Videosegment an. Diese Werte werden anhand eines Frame-Index berechnet, der mit 0 beginnt.

Sie können das SegmentType-Feld verwenden, um den Typ eines Segments festzulegen, das von Amazon Rekognition Video zurückgegeben wird.

  • Technische Hinweise — Das TechnicalCueSegment Feld ist ein TechnicalCueSegmentObjekt, das die Erkennungssicherheit und den Typ eines technischen Hinweises enthält. Die Typen von technischen Hinweisen sind ColorBars, EndCredits, BlackFrames, OpeningCredits, StudioLogo, Slate und Content.

  • Aufnahme — Das ShotSegment Feld ist ein ShotSegmentObjekt, das die Erkennungssicherheit und eine Kennung für das Aufnahmesegment innerhalb des Videos enthält.

Nachfolgend finden Sie ein Beispiel einer JSON-Antwort von GetSegmentDetection.

{ "SelectedSegmentTypes": [ { "ModelVersion": "2.0", "Type": "SHOT" }, { "ModelVersion": "2.0", "Type": "TECHNICAL_CUE" } ], "Segments": [ { "DurationFrames": 299, "DurationSMPTE": "00:00:09;29", "StartFrameNumber": 0, "EndFrameNumber": 299, "EndTimecodeSMPTE": "00:00:09;29", "EndTimestampMillis": 9976, "StartTimestampMillis": 0, "DurationMillis": 9976, "StartTimecodeSMPTE": "00:00:00;00", "Type": "TECHNICAL_CUE", "TechnicalCueSegment": { "Confidence": 90.45006561279297, "Type": "BlackFrames" } }, { "DurationFrames": 150, "DurationSMPTE": "00:00:05;00", "StartFrameNumber": 299, "EndFrameNumber": 449, "EndTimecodeSMPTE": "00:00:14;29", "EndTimestampMillis": 14981, "StartTimestampMillis": 9976, "DurationMillis": 5005, "StartTimecodeSMPTE": "00:00:09;29", "Type": "TECHNICAL_CUE", "TechnicalCueSegment": { "Confidence": 100.0, "Type": "Content" } }, { "DurationFrames": 299, "ShotSegment": { "Index": 0, "Confidence": 99.9982681274414 }, "DurationSMPTE": "00:00:09;29", "StartFrameNumber": 0, "EndFrameNumber": 299, "EndTimecodeSMPTE": "00:00:09;29", "EndTimestampMillis": 9976, "StartTimestampMillis": 0, "DurationMillis": 9976, "StartTimecodeSMPTE": "00:00:00;00", "Type": "SHOT" }, { "DurationFrames": 149, "ShotSegment": { "Index": 1, "Confidence": 99.9982681274414 }, "DurationSMPTE": "00:00:04;29", "StartFrameNumber": 300, "EndFrameNumber": 449, "EndTimecodeSMPTE": "00:00:14;29", "EndTimestampMillis": 14981, "StartTimestampMillis": 10010, "DurationMillis": 4971, "StartTimecodeSMPTE": "00:00:10;00", "Type": "SHOT" } ], "JobStatus": "SUCCEEDED", "VideoMetadata": [ { "Format": "QuickTime / MOV", "FrameRate": 29.970029830932617, "Codec": "h264", "DurationMillis": 15015, "FrameHeight": 1080, "FrameWidth": 1920, "ColorRange": "LIMITED" } ], "AudioMetadata": [ { "NumberOfChannels": 1, "SampleRate": 48000, "Codec": "aac", "DurationMillis": 15007 } ] }

Beispielcode finden Sie unter Beispiel: Erkennen von Segmenten in einem gespeicherten Video.