视频帧对象检测 - Amazon SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

视频帧对象检测

您可以使用视频帧对象检测任务类型,让工作人员使用边界框、多边形或关键点注释工具在视频帧(从视频中提取的图像)序列中识别和定位对象。您选择的工具定义了您创建的视频帧任务类型。例如,您可以使用边界框视频帧对象检测任务类型工作线程来识别和本地化一系列视频帧中的各种对象,例如汽车、自行车和行人。

您可以使用 Amazon SageMaker Ground Truth 控制台、 SageMaker API 和特定于语言的 AWS SDKs创建视频帧对象检测标记作业。要了解更多信息,请参阅创建视频帧对象检测标记作业并选择您的首选方法。请参阅任务类型以了解有关创建标记作业时可从 中选择的注释工具的更多信息。

Ground Truth 提供了工作人员 UI 和工具来完成标记作业任务预览工作人员 UI:。

您可以创建一个作业,以使用视频对象检测调整任务类型来调整在视频对象检测标记作业中创建的注释。要了解更多信息,请参阅“创建视频帧对象检测调整或验证标记作业”。

预览工作人员 UI

Ground Truth 为工作人员提供 Web 用户界面 (UI) 以完成视频帧对象检测注释任务。在控制台中创建标记作业时,您可以预览该工作人员 UI 并与之交互。如果您是新用户,我们建议您使用小型输入数据集预览工作人员 UI,通过控制台创建标记作业,并确保视频帧、标签和标签属性按预期显示。

UI 为工作人员提供了以下辅助标记工具以完成对象检测任务:

  • 对于所有任务,工作人员可以使用 Copy to next (复制到下一个) 和 Copy to all features (复制到所有功能) 将注释分别复制到下一个帧或所有后续帧。

  • 对于包含边界框工具的任务,工作人员可以使用 Predict next 功能在单个帧中绘制边界框,然后让 Ground Truth 预测所有其他帧中具有相同标签的框的位置。然后,工作人员可以调整以更正预测的立方体位置。

以下视频说明了工作人员如何将工作人员 UI 与边界框工具结合使用来完成您的对象检测任务。

创建视频帧对象检测标记作业

您可以使用 SageMaker 控制台或 CreateLabelingJob API 操作创建视频帧对象检测标记作业。

本节假定您已查看 视频帧标记作业概述 并选择了输入数据类型和正在使用的输入数据集连接。

创建标记作业(控制台)

您可以按照中的说明创建标记作业(控制台)了解如何在 SageMaker 控制台中创建视频帧对象跟踪作业。在步骤 10 中,从 Task category (任务类别) 下拉列表中选择 Video - Object detection (视频 - 对象检测)。通过选择 Task selection (任务选择) 中的其中一个卡,选择所需的任务类型。

创建标记作业 (API)

您可以使用 SageMaker API 操作 创建对象检测标记作业CreateLabelingJob。该 API 为所有 AWS 开发工具包定义了该操作。要查看此操作支持的语言特定的SDKs列表,请查看 的请参阅部分CreateLabelingJob

创建标记作业 (API)概述了 CreateLabelingJob 操作。请按照这些说明进行操作,并在配置请求时执行以下操作:

  • 您必须为 HumanTaskUiArn 输入一个 ARN。使用 arn:aws:sagemaker:<region>:394669845002:human-task-ui/VideoObjectDetection。将 <region> 替换为您要在其中创建标记作业的 AWS 区域。

    不要为 UiTemplateS3Uri 参数包含条目。

  • LabelAttributeName 必须以 -ref 结尾。例如,video-od-labels-ref

  • 输入清单文件必须是视频帧序列清单文件。您可以使用 SageMaker 控制台创建此清单文件,也可以手动创建它并将其上传到 Amazon S3。有关更多信息,请参阅输入数据设置

  • 您只能使用私有或供应商工作团队创建视频帧对象检测标记作业。

  • 您可以在标签类别配置文件中指定标签、标签类别和帧属性、任务类型和工作人员说明。在标签类别配置文件annotationType中使用 指定任务类型(边界框、多边形、多边形或关键点)。有关更多信息,请参阅使用标签类别和帧属性创建标签类别配置文件以了解如何创建该文件。

  • 您需要为注释前和注释后 (ACS) Lambda 函数提供预定义的 ARNs。这些 ARN 特定于您用于创建标记作业的 AWS 区域。

    • 要查找注释前 Lambda ARN,请参阅 PreHumanTaskLambdaArn。使用您要在其中创建标记作业的区域查找以 结尾的正确 PRE-VideoObjectDetectionARN。

    • 要查找注释后 Lambda ARN,请参阅 AnnotationConsolidationLambdaArn。使用您要在其中创建标记作业的区域查找以 结尾的正确 ACS-VideoObjectDetectionARN。

  • NumberOfHumanWorkersPerDataObject 中指定的工作人员数必须为 1

  • 视频帧标记作业不支持自动数据标记。请勿在 中为参数指定值LabelingJobAlgorithmsConfig

  • 视频帧对象跟踪标记作业可能需要多个小时才能完成。您可以在 TaskTimeLimitInSeconds 中为这些标记作业指定更长的时间限制(最多 7 天或 604,800 秒)。

以下是在 区域中创建标记作业的 AWS Python 开发工具包 (Boto3 请求美国东部(弗吉尼亚北部)的示例。

response = client.create_labeling_job( LabelingJobName='example-video-od-labeling-job, LabelAttributeName='label', InputConfig={ 'DataSource': { 'S3DataSource': { 'ManifestS3Uri': 's3:///path/video-frame-sequence-input-manifest.json' } }, 'DataAttributes': { 'ContentClassifiers': [ 'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent', ] } }, OutputConfig={ 'S3OutputPath': 's3:///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/VideoObjectDetection' }, 'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-VideoObjectDetection', 'TaskKeywords': [ 'Video Frame Object Detection', ], 'TaskTitle': 'Video frame object detection task', 'TaskDescription': 'Classify and identify the location of objects and people in video frames', 'NumberOfHumanWorkersPerDataObject': 123, 'TaskTimeLimitInSeconds': 123, 'TaskAvailabilityLifetimeInSeconds': 123, 'MaxConcurrentTaskCount': 123, 'AnnotationConsolidationConfig': { 'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-VideoObjectDetection' }, Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )

创建视频帧对象检测调整或验证标记作业

您可以使用 Ground Truth 控制台或 CreateLabelingJob API 创建调整和验证标记作业。要了解有关调整和验证标记作业的更多信息,以及了解如何创建一个作业,请参阅验证和调整标签

输出数据格式

在创建视频帧对象检测标记作业时,任务将发送给工作人员。当这些工作人员完成任务时,标签将写入到您在创建标记作业时指定的Amazon S3输出位置。要了解视频帧对象检测输出数据格式,请参阅视频帧对象检测输出。如果您是 Ground Truth 新用户,请参阅输出数据以了解 Ground Truth 输出数据格式的更多信息。