Classificação do vídeo - Amazon SageMaker

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Classificação do vídeo

Use uma tarefa de rotulagem de classificação de vídeo do Amazon SageMaker Ground Truth quando precisar que os funcionários classifiquem vídeos usando rótulos predefinidos que você especifica. Os vídeos são exibidos aos operadores, e eles são solicitados a escolher um rótulo para cada um.

Você cria um trabalho de rotulagem de classificação de vídeo usando a seção Ground Truth do SageMaker console da Amazon ou a CreateLabelingJoboperação.

Seus arquivos de vídeo devem ser codificados em um formato compatível com o navegador usado pela equipe de trabalho que rotula seus dados. É recomendável verificar se todos os formatos de arquivo de vídeo em seu arquivo de manifesto de entrada são exibidos corretamente usando a visualização prévia da interface do usuário do operador. Você pode comunicar os navegadores compatíveis aos seus funcionários usando as instruções do operador. Para ver os formatos de arquivo compatíveis, consulte Formatos de dados suportados.

Importante

Para esse tipo de tarefa, se você criar seu próprio arquivo de manifesto, use "source-ref" para identificar o local de cada arquivo de vídeo no Amazon S3 que deseja rotular. Para obter mais informações, consulte Dados de entrada.

Criar um trabalho de rotulagem de classificação de vídeo (Console)

Você pode seguir as instruções Criar um trabalho de rotulagem (console) para aprender como criar um trabalho de rotulagem de classificação de vídeo no SageMaker console. Na etapa 10, escolha Vídeo no menu suspenso da Categoria de tarefas e escolha Classificação do vídeo como o tipo de tarefa.

O Ground Truth fornece uma interface de usuário do operador que se parece com a seguinte para tarefas de rotulagem. Ao criar um trabalho de rotulagem no console, você especifica instruções para ajudar os operadores a concluírem o trabalho e os rótulos que eles podem escolher.

Gif mostrando como criar uma tarefa de rotulagem de classificação de vídeo no SageMaker console.

Criar um trabalho de rotulagem de classificação de vídeo (API)

Esta seção aborda os detalhes que você precisa saber ao criar uma tarefa de etiquetagem usando a SageMaker API operaçãoCreateLabelingJob. Isso API define essa operação para todos AWS SDKs. Para ver uma lista de idiomas específicos com SDKs suporte para essa operação, consulte a seção Consulte também do. CreateLabelingJob

Siga as instruções em Criar um trabalho de rotulagem (API) e faça o seguinte enquanto você configura a solicitação:

  • Use uma função do Lambda de pré-anotação que termine com PRE-VideoClassification. Para encontrar a pré-anotação ARN Lambda para sua região, consulte. PreHumanTaskLambdaArn

  • Use uma função do Lambda de consolidação de anotações que termine com ACS-VideoClassification. Para encontrar o ARN Lambda de consolidação de anotações para sua região, consulte. AnnotationConsolidationLambdaArn

Veja a seguir um exemplo de uma solicitação em AWS Python SDK (Boto3) para criar um trabalho de etiquetagem na região Leste dos EUA (Norte da Virgínia).

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' }, ] )

Forneça um modelo para classificação de vídeo

Se você criar um trabalho de etiquetagem usando oAPI, deverá fornecer um modelo de tarefa do trabalhador emUiTemplateS3Uri. Copie e modifique o modelo a seguir modificando o short-instructions, full-instructions, e header. Faça o upload desse modelo para o Amazon S3 e forneça o Amazon URI S3 para esse arquivo em. 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>

Dados de saída de classificação de vídeo

Depois de criar um trabalho de rotulagem de classificação de vídeo, seus dados de saída estão localizados no bucket do Amazon S3 especificado no S3OutputPath parâmetro ao usar o API ou no campo Localização do conjunto de dados de saída da seção Visão geral do trabalho do console.

Para saber mais sobre o arquivo manifesto de saída gerado pelo Ground Truth, e sobre a estrutura do arquivo que o Ground Truth usa para armazenar os dados de saída, consulte Dados de saída.

Para ver um exemplo de arquivos manifesto de saída para o trabalho de rotulagem de classificação de vídeo com vários rótulos, consulte Saída do trabalho de classificação.