비디오 분류 - 아마존 SageMaker

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

비디오 분류

작업자가 지정한 사전 정의된 레이블을 사용하여 비디오를 분류해야 하는 경우 Amazon SageMaker Ground Truth 비디오 분류 레이블 지정 작업을 사용하십시오. 작업자에게 비디오가 표시되고 각 비디오에 대해 하나의 레이블 선택하라는 메시지가 표시됩니다.

Amazon SageMaker 콘솔의 Ground Truth 섹션 또는 작업을 사용하여 비디오 분류 레이블 지정 CreateLabelingJob작업을 생성합니다.

비디오 파일은 데이터에 레이블을 지정하는 작업 팀이 사용하는 브라우저에서 지원하는 형식으로 인코딩되어야 합니다. 작업자 UI 미리 보기를 사용하여 입력 매니페스트 파일의 모든 비디오 파일 형식이 올바르게 표시되는지 확인하는 것이 좋습니다. 작업자 지침을 사용하여 지원되는 브라우저를 작업자에게 전달할 수 있습니다. 지원되는 파일 형식을 보려면 지원되는 날짜 형식을 참고하십시오.

중요

이 작업 유형에 대해 자체 매니페스트 파일을 생성하는 경우 "source-ref"를 사용하여 Amazon S3에서 레이블을 지정할 각 비디오 파일의 위치를 식별합니다. 자세한 설명은 입력 데이터 섹션을 참조하세요.

비디오 분류 레이블 지정 작업 생성(콘솔)

의 지침에 따라 SageMaker 콘솔에서 비디오 분류 레이블 지정 작업을 생성하는 레이블 지정 작업 생성(콘솔) 방법을 배울 수 있습니다. 10단계에서 작업 범주 드롭다운 메뉴에서 비디오를 선택하고 작업 유형으로 비디오 분류를 선택합니다.

Ground Truth에서는 작업에 레이블을 지정할 때 다음과 유사한 작업자 UI를 제공합니다. 콘솔에서 레이블 지정 작업을 생성할 때 작업자가 작업을 완료하는 데 도움이 되는 지침과 작업자가 선택할 수 있는 레이블을 지정합니다.

비디오 분류 레이블 지정 작업 생성(API)

이 단원에서는 SageMaker API 연산 CreateLabelingJob을 사용하여 레이블 지정 작업을 생성할 때 알아야 할 세부 사항을 다룹니다. 이 API는 모든 AWS SDK에 대해 이 작업을 정의합니다. 이 작업에 지원되는 언어별 SDK 목록을 보려면 CreateLabelingJob참고 항목 섹션을 검토하세요.

레이블 지정 작업 생성(API)의 지침에 따라 요청을 구성하는 동안 다음을 수행합니다.

  • PRE-VideoClassification로 끝나는 주석 전 Lambda 함수를 사용하십시오. 해당 지역의 사전 주석이 달린 Lambda ARN을 찾으려면 을 참조하십시오. PreHumanTaskLambdaArn

  • ACS-VideoClassification로 끝나는 주석 통합 Lambda 함수를 사용합니다. 해당 지역의 주석 통합 Lambda ARN을 찾으려면 을 참조하십시오. AnnotationConsolidationLambdaArn

다음은 미국 동부(버지니아 북부) 리전에 레이블 지정 작업을 생성하는 AWS Python SDK(Boto3) 요청의 예제입니다.

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

비디오 분류를 위한 템플릿 제공

API를 사용하여 레이블 지정 작업을 생성하는 경우 UiTemplateS3Uri의 작업자 태스크 템플릿을 제공해야 합니다. short-instructions, full-instructions, header을 수정하여 다음 템플릿을 복사 및 수정합니다. 이 템플릿을 Amazon S3에 업로드하고 UiTemplateS3Uri에서 이 파일에 대한 Amazon S3 URI를 제공합니다.

<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>

비디오 분류 출력 데이터

비디오 분류 레이블 지정 작업을 생성하면 출력 데이터는 API 사용 시 S3OutputPath 파라미터에 지정된 Amazon S3 버킷 또는 콘솔의 작업 개요 섹션의 출력 데이터 세트 위치 필드에 있습니다.

Ground Truth에서 생성된 출력 매니페스트 파일 및 Ground Truth에서 출력 데이터 저장에 사용하는 파일 구조에 대한 자세한 내용은 출력 데이터을 참고하십시오.

비디오 분류 레이블 지정 작업에 대한 출력 매니페스트 파일의 예제를 보려면 분류 작업 출력을 참고하십시오.