Verfolgen von Objekten in Videoframes mithilfe der Videoframe-Objektverfolgung - Amazon SageMaker AI

Verfolgen von Objekten in Videoframes mithilfe der Videoframe-Objektverfolgung

Sie können den Aufgabentyp Videoframe-Objektverfolgung verwenden, damit Auftragnehmer die Bewegung von Objekten in einer Sequenz von Videoframes (aus einem Video extrahierte Bilder) mithilfe von Begrenzungsrahmen, Polylinien, Polygonen oder Werkzeugen für Keypoint-Anmerkungen verfolgen. Das von Ihnen gewählte Tool definiert den Aufgabentyp für Videoframes, den Sie erstellen. Sie können z. B. den Aufgabentyp Bounding-Box-Videoframe zur Objektverfolgung verwenden, um Auftragnehmer zu bitten, die Bewegung von Objekten wie Autos, Fahrrädern und Fußgängern zu verfolgen, indem sie Rahmen um sie herum zeichnen.

Sie stellen eine Liste mit Kategorien bereit, und jede Anmerkung, die ein Auftragnehmer zu einem Videoframe hinzufügt, wird anhand einer Instance dieser Kategorie identifiziert. Wenn Sie beispielsweise die Beschriftungskategorie Auto angeben, hat das erste Auto, das ein Auftragnehmer mit Anmerkungen versehen hat, die Instance-ID Auto:1. Das zweite Auto, das der Auftragnehmer anmerkt, hat die Instance-ID Auto:2. Um die Bewegung eines Objekts zu verfolgen, fügt der Auftragnehmer dem Objekt in allen Frames Anmerkungen hinzu, die derselben Instance-ID zugeordnet sind.

Sie können mithilfe der Ground-Truth-Konsole von Amazon SageMaker AI, der SageMaker-API und sprachspezifischer AWS SDKs einen Labeling-Job zur Nachverfolgung von Videoframe-Objekten erstellen. Weitere Informationen hierzu finden Sie unter Erstellen Sie einen Auftrag zur Erennung von Videoframe-Objekten, und wählen Sie Ihr bevorzugten Methode. Weitere Informationen zu den Annotationstools, aus denen Sie bei der Erstellung eines Beschriftungsauftrags wählen können, finden Sie unter Aufgabentypen.

Ground Truth bietet eine Benutzeroberfläche und Tools für Auftragnehmer, mit denen Sie Ihre Beschriftungsauftragsaufgaben erledigen können: Zeigen Sie eine Vorschau der Worker-Benutzeroberfläche an.

Sie können einen Auftrag zur Anpassung von Anmerkungen erstellen, die in einem Beschriftungsauftrag zur Video-Objekterkennung erstellt wurden, indem Sie den Aufgabentyp Anpassung der Video-Objekterkennung verwenden. Weitere Informationen hierzu finden Sie unter Auftrag zur Objekterkennung, -anpassung oder -verifizierung für Videoframes erstellen.

Zeigen Sie eine Vorschau der Worker-Benutzeroberfläche an

Ground Truth stellt Auftragnehmern eine Web-Benutzeroberfläche (UI) zur Verfügung, mit der sie ihre Aufgaben zur Annotation von Videoframe-Objekten erledigen können. Sie können eine Vorschau anzeigen und mit der Benutzeroberfläche für Auftragnehmer interagieren, wenn Sie einen Kennzeichnungsauftrag in der Konsole erstellen. Wenn Sie ein neuer Benutzer sind, empfehlen wir Ihnen, mithilfe eines kleinen Eingabedatensatzes einen Beschriftungsauftrag über die Konsole zu erstellen, um eine Vorschau der Auftragnehmer-Benutzeroberfläche anzuzeigen und sicherzustellen, dass Ihre Videoframes, Beschriftungen und Beschriftungsattribute erwartungsgemäß angezeigt werden.

Die Benutzeroberfläche bietet Auftragnehmern die folgenden unterstützenden Tools zur Beschriftung, mit denen sie ihre Objektverfolgungsaufgaben erledigen können:

  • Für alle Aufgaben können Auftragnehmer die Funktionen In nächstes kopieren und In alle kopieren verwenden, um eine Anmerkung mit derselben eigenartigen ID in den nächsten Frame bzw. in alle nachfolgenden Frames zu kopieren.

  • Bei Aufgaben, die die Bounding-Box-Tools beinhalten, können Auftragnehmer die Funktion Nächstes vorhersagen verwenden, um einen Begrenzungsrahmen in einem einzigen Frame zu zeichnen, und Ground Truth dann die Position von Boxen mit derselben einzigartigen ID in allen anderen Frames vorhersagen lassen. Auftragnehmer können dann Anpassungen vornehmen, um die vorhergesagte Position der Quader zu korrigieren.

Das folgende Video zeigt, wie ein Auftragnehmer die Auftragnehmer-Benutzeroberfläche mit dem Bounding-Box-Tool verwenden kann, um Ihre Objektverfolgungsaufgaben zu erledigen.

GIF, das zeigt, wie eine Arbeitskraft das Bounding-Box-Tool mit dem Feature „Nächstes vorhersagen“ verwenden kann

Erstellen Sie einen Auftrag zur Verfolgungsbeschriftung von Videoframe-Objekten

Sie können mithilfe der SageMaker-AI-Konsole oder der CreateLabelingJob API-Operation einen Auftrag zur Objektverfolgungsbeschriftung für Videoframes erstellen.

In diesem Abschnitt wird davon ausgegangen, dass Sie das überprüft Referenz für Aufträge zur Kennzeichnung von Video-Frames und den Typ der Eingabedaten und die von Ihnen verwendete Verbindung zum Eingabedatensatz ausgewählt haben.

Erstellen eines Kennzeichnungsauftrags (Konsole)

Sie können den Anweisungen in Erstellen eines Kennzeichnungsauftrags (Konsole) folgen, um zu erfahren, wie Sie in der SageMaker-AI-Konsole einen Videoframe-Objektverfolgungsjob erstellen. Wählen Sie in Schritt 10 aus der Dropdown-Liste für die Aufgabenkategorie die Option Video – Objektverfolgung aus. Wählen Sie den gewünschten Aufgabentyp aus, indem Sie unter Aufgabenauswahl eine der Karten auswählen.

GIF, das zeigt, wie Sie in der SageMaker-AI-Konsole einen Videoframe-Objektverfolgungsjob erstellen

Erstellen eines Kennzeichnungsauftrags (API)

Sie erstellen einen Objektverfolgungsbeschriftung Auftrag mithilfe der SageMaker-API-Operation CreateLabelingJob. Diese API definiert diese Operation für alle AWS-SDKs. Eine Liste der sprachspezifischen SDKs, die für diese Operation unterstützt werden, finden Sie im Abschnitt Siehe auch von CreateLabelingJob.

Erstellen eines Kennzeichnungsauftrags (API) bietet einen Überblick über die Operation CreateLabelingJob. Befolgen Sie diese Anweisungen, und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren:

  • Sie müssen einen ARN für HumanTaskUiArn eingeben. Verwenden Sie arn:aws:sagemaker:<region>:394669845002:human-task-ui/VideoObjectTracking. Ersetzen Sie <region> durch die AWS-Region, in der Sie den Kennzeichnungsauftrag erstellen.

    Nehmen Sie keinen Eintrag für den UiTemplateS3Uri Parameter auf.

  • Ihr LabelAttributeName muss mit -ref enden. Beispiel, ot-labels-ref.

  • Bei Ihrer Eingabemanifestdatei muss es sich um eine Sequenz-Manifestdatei handeln. Sie können diese Manifestdatei mit der SageMaker-AI-Konsole, oder manuell erstellen und auf Amazon S3 hochladen. Weitere Informationen finden Sie unter Einrichtung der Eingabedaten. Wenn Sie einen Streaming-Beschriftungsauftrag erstellen, ist die Eingabe-Manifestdatei optional.

  • Sie können nur private oder externe Arbeitsteams einsetzen, um Beschriftungsaufträge für die Objektverfolgung von Videoframes zu erstellen.

  • Sie geben Ihre Beschriftungen, Beschriftungskategorie und Rahmenattribute, den Aufgabentyp und die Arbeitsanweisungen in einer Beschriftungskategorie-Konfigurationsdatei an. Geben Sie den Aufgabentyp (Begrenzungsrahmen, Polylinien, Polygone oder Schlüsselpunkt) mit annotationType in Ihrer Konfigurationsdatei für die Beschriftungskategorie an. Weitere Informationen finden Sie unter Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen, um zu erfahren, wie Sie diese Datei erstellen.

  • Sie müssen vordefinierte ARNs für die Funktionen zur Vorverarbeitung und Nachbereitung (ACS) bereitstellen. Diese ARNs sind spezifisch für die AWS-Region, mit der Sie Ihren Kennzeichnungsauftrag erstellen.

    • Informationen zum Lambda-ARN zur Vorkommentierung finden Sie unter PreHumanTaskLambdaArn. Verwenden Sie die Region, in der Sie Ihren Beschriftungsauftrag erstellen, um den richtigen ARN zu finden, der mit PRE-VideoObjectTracking endet.

    • Informationen zum Lambda-ARN zur Nachkommentierung finden Sie unter AnnotationConsolidationLambdaArn. Verwenden Sie die Region, in der Sie Ihren Beschriftungsauftrag erstellen, um den richtigen ARN zu finden, der mit ACS-VideoObjectTracking endet.

  • Die Anzahl der in NumberOfHumanWorkersPerDataObject angegebenen Auftragnehmer muss 1 sein.

  • Das automatisierte Daten-Labeling wird für Beschriftungsaufträge für Videoframes nicht unterstützt. Geben Sie keine Werte für Parameter in LabelingJobAlgorithmsConfig an.

  • Beschriftungsauftrag der Objektverfolgung von Videoframes können mehrere Stunden in Anspruch nehmen. Sie können ein längeres Zeitlimit für diese Kennzeichnungsaufträge in TaskTimeLimitInSeconds festlegen (bis zu 7 Tage oder 604.800 Sekunden).

Im Folgenden finden Sie ein Beispiel für eine AWS-Python-SDK-(Boto3-)Anforderung zur Erstellung eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia).

response = client.create_labeling_job( LabelingJobName='example-video-ot-labeling-job, LabelAttributeName='label', InputConfig={ 'DataSource': { 'S3DataSource': { 'ManifestS3Uri': 's3://amzn-s3-demo-bucket/path/video-frame-sequence-input-manifest.json' } }, 'DataAttributes': { 'ContentClassifiers': [ 'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent', ] } }, OutputConfig={ 'S3OutputPath': 's3://amzn-s3-demo-bucket/prefix/file-to-store-output-data', 'KmsKeyId': 'string' }, RoleArn='arn:aws:iam::*:role/*, LabelCategoryConfigS3Uri='s3://bucket/prefix/label-categories.json', StoppingConditions={ 'MaxHumanLabeledObjectCount': 123, 'MaxPercentageOfInputDatasetLabeled': 123 }, HumanTaskConfig={ 'WorkteamArn': 'arn:aws:sagemaker:us-east-1:*:workteam/private-crowd/*', 'UiConfig': { 'HumanTaskUiArn: 'arn:aws:sagemaker:us-east-1:394669845002:human-task-ui/VideoObjectTracking' }, 'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-VideoObjectTracking', 'TaskKeywords': [ 'Video Frame Object Tracking, ], 'TaskTitle': 'Video frame object tracking task', 'TaskDescription': Tracking the location of objects and people across video frames', 'NumberOfHumanWorkersPerDataObject': 123, 'TaskTimeLimitInSeconds': 123, 'TaskAvailabilityLifetimeInSeconds': 123, 'MaxConcurrentTaskCount': 123, 'AnnotationConsolidationConfig': { 'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-VideoObjectTracking' }, Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )

Erstellen Sie einen Auftrag zur Anpassung oder Überprüfung der Beschriftung von Video-Frame-Objektverfolgung

Sie können Beschriftungsverifizierungs- und Anpassungsaufträge über die Ground Truth-Konsole oder die CreateLabelingJob API starten. Weitere Informationen zu Beschriftungsaufträgen zur Anpassung und Überprüfung sowie zu deren Erstellung finden Sie unter Beschriftungsverifizierung und Anpassung.

Format der Ausgabedaten

Wenn Sie einen Beschriftungsauftrag der Objektverfolgung von Videoframes erstellen, werden Aufgaben an Auftragnehmer gesendet. Wenn diese Auftragnehmer ihre Aufgaben abgeschlossen haben, werden die Beschriftungen an den Amazon S3-Ausgabeort geschrieben, den Sie beim Erstellen des Beschriftungsauftrags angegeben haben. Weitere Informationen über das Ausgabeformat der Video-Frame-Objektverfolgung finden Sie unter Ausgabe der Video-Frame-Objektverfolgung. Wenn Sie ein neuer Benutzer von Ground Truth sind, erfahren Sie unter Ausgabedaten von Kennzeichnungsaufträgen mehr über das Ausgabedatenformat von Ground Truth.