Clasificación de vídeos - Amazon SageMaker AI

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Clasificación de vídeos

Usa una tarea de etiquetado y clasificación de vídeos de Amazon SageMaker Ground Truth cuando necesites que los trabajadores clasifiquen los vídeos con las etiquetas predefinidas que tú especifiques. A los trabajadores se les muestran vídeos y se les pide que elijan una etiqueta para cada vídeo. Puede crear un trabajo de etiquetado y clasificación de vídeo utilizando la sección Ground Truth de la consola Amazon SageMaker AI o la CreateLabelingJoboperación.

Los archivos de vídeo deben estar codificados en un formato compatible con el navegador que utiliza el equipo de trabajo que etiqueta los datos. Se recomienda comprobar que todos los formatos de archivo de vídeo del archivo de manifiesto de entrada se muestran correctamente en la vista previa de la interfaz de usuario de trabajo. Puede comunicar a sus trabajadores los navegadores que son compatibles siguiendo las instrucciones para trabajadores. Para ver los formatos de archivo compatibles, consulte Formatos de datos admitidos.

importante

Para este tipo de tarea, si crea su propio archivo de manifiesto, utilice "source-ref" para identificar la ubicación de cada archivo de vídeo de Amazon S3 que desee etiquetar. Para obtener más información, consulte Datos de entrada.

Cree un trabajo de etiquetado de clasificación de vídeo (consola)

Puede seguir las instrucciones Crear un trabajo de etiquetado (consola) para aprender a crear un trabajo de etiquetado de clasificación de vídeo en la consola de SageMaker IA. En el paso 10, elija Texto en el menú desplegable Categoría de tarea y elija Clasificación de vídeo como tipo de tarea.

Ground Truth proporciona una interfaz de usuario de trabajador similar a la siguiente para las tareas de etiquetado. Al crear el trabajo de etiquetado en la consola, se especifican instrucciones para ayudar a los trabajadores a completar el trabajo y las etiquetas que los trabajadores pueden elegir.

Gif que muestra cómo crear un trabajo de etiquetado de clasificación de vídeo en la consola de SageMaker IA.

Cree un trabajo de etiquetado de clasificación de vídeo (API)

Esta sección cubre los detalles que necesita saber cuando crea un trabajo de etiquetado mediante la operación de la API CreateLabelingJob de SageMaker . Esta API define esta operación para todos AWS SDKs. Para ver una lista de los idiomas específicos SDKs compatibles con esta operación, consulte la sección Vea también de. CreateLabelingJob

Siga las instrucciones de Crear un trabajo de etiquetado (API) y haga lo siguiente mientras configura su solicitud:

  • Utilice una función de Lambda de preanotación que termine en PRE-VideoClassification. Para encontrar el ARN Lambda previo a la anotación correspondiente a su región, consulte. PreHumanTaskLambdaArn

  • Utilice una función de Lambda de consolidación de anotaciones que termine en ACS-VideoClassification. Para encontrar el ARN Lambda de consolidación de anotaciones de su región, consulte. AnnotationConsolidationLambdaArn

A continuación se ofrece un ejemplo de solicitud del SDK de AWS Python (Boto3) para crear un trabajo de etiquetado en la región Este de EE. UU. (Norte de Virginia).

response = client.create_labeling_job( LabelingJobName='example-video-classification-labeling-job, LabelAttributeName='label', InputConfig={ 'DataSource': { 'S3DataSource': { 'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json' } }, 'DataAttributes': { 'ContentClassifiers': [ 'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent', ] } }, OutputConfig={ 'S3OutputPath': 's3://bucket/path/file-to-store-output-data', 'KmsKeyId': 'string' }, RoleArn='arn:aws:iam::*:role/*, LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json', StoppingConditions={ 'MaxHumanLabeledObjectCount': 123, 'MaxPercentageOfInputDatasetLabeled': 123 }, HumanTaskConfig={ 'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*', 'UiConfig': { 'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html' }, 'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-VideoClassification', 'TaskKeywords': [ 'Video Classification', ], 'TaskTitle': 'Video classification task', 'TaskDescription': 'Select a label to classify this video', 'NumberOfHumanWorkersPerDataObject': 123, 'TaskTimeLimitInSeconds': 123, 'TaskAvailabilityLifetimeInSeconds': 123, 'MaxConcurrentTaskCount': 123, 'AnnotationConsolidationConfig': { 'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-VideoClassification' }, Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )

Proporcione una plantilla para la clasificación de vídeos

Si crea un trabajo de etiquetado con la API, debe proporcionar una plantilla de tarea del trabajador en UiTemplateS3Uri. Copie y modifique la siguiente plantilla modificando short-instructions, full-instructions y header. Cargue esta plantilla en Amazon S3 y proporcione el URI de Amazon S3 para este archivo en UiTemplateS3Uri.

<script src="https://assets.crowd.aws/crowd-html-elements.js"></script> <crowd-form> <crowd-classifier name="crowd-classifier" categories="{{ task.input.labels | to_json | escape }}" header="Please classify video" > <classification-target> <video width="100%" controls/> <source src="{{ task.input.taskObject | grant_read_access }}" type="video/mp4"/> <source src="{{ task.input.taskObject | grant_read_access }}" type="video/webm"/> <source src="{{ task.input.taskObject | grant_read_access }}" type="video/ogg"/> Your browser does not support the video tag. </video> </classification-target> <full-instructions header="Video classification instructions"> <ol><li><strong>Read</strong> the task carefully and inspect the video.</li> <li><strong>Read</strong> the options and review the examples provided to understand more about the labels.</li> <li><strong>Choose</strong> the appropriate label that best suits the video.</li></ol> </full-instructions> <short-instructions> <h3><span style="color: rgb(0, 138, 0);">Good example</span></h3> <p>Enter description to explain the correct label to the workers</p> <p><img src="https://d7evko5405gb7.cloudfront.net/fe4fed9b-660c-4477-9294-2c66a15d6bbe/src/images/quick-instructions-example-placeholder.png" style="max-width:100%"></p> <h3><span style="color: rgb(230, 0, 0);">Bad example</span></h3> <p>Enter description of an incorrect label</p> <p><img src="https://d7evko5405gb7.cloudfront.net/fe4fed9b-660c-4477-9294-2c66a15d6bbe/src/images/quick-instructions-example-placeholder.png" style="max-width:100%"></p> </short-instructions> </crowd-classifier> </crowd-form>

Datos de salida de clasificación de vídeo

Una vez que haya creado un trabajo de etiquetado de clasificación de vídeo, los datos de salida se ubicarán en el bucket de Amazon S3 especificado en el parámetro S3OutputPath al utilizar la API o en el campo Ubicación del conjunto de datos de salida de la sección Información general del trabajo de la consola.

Para obtener más información sobre el archivo de manifiesto de salida generado por Ground Truth y la estructura de archivos que Ground Truth utiliza para almacenar los datos de salida, consulte Etiquetado de los datos de salida del trabajo.

Para ver un ejemplo de archivos de manifiesto de salida para los trabajos de etiquetado con clasificación de vídeo, consulte Salida del trabajo de clasificación.