图像语义分割 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

图像语义分割

要在像素级别标识图像内容,请使用 Amazon SageMaker Ground Truth 语义分割标记任务。在分配语义分割标记作业时,工作人员会将图像中的像素分类为一组预定义的标签或类。Ground Truth 支持单类和多类语义分割标注作业。

您可以使用 Amazon SageMaker 控制台的 Ground Truth 部分或CreateLabelingJoboperation.

重要

对于此任务类型,如果您创建自己的清单文件,请使用"source-ref"以识别 Amazon S3 中您要标记的每个图像文件的位置。有关更多信息,请参阅输入数据

创建语义分段标记作业(控制台)

可以按照说明操作创建标记作业(控制台)以了解如何在 SageMaker 控制台中创建语义分割标记作业。在步骤 10 中,选择Image来自 的任务类别下拉菜单,然后选择语义分割作为任务类型。

Ground Truth 为标记任务提供类似于以下内容的工作人员 UI。使用控制台创建标记作业时,需要指定说明,以帮助工作人员完成工作人员可以从中选择的作业和标签。

创建语义分段标记作业 (API)

要创建语义分割标记作业,请使用 SageMaker API 操作CreateLabelingJob. 该 API 为所有 Amazon 开发工具包定义了该操作。要查看此操作支持的语言特定 SDK 的列表,请查看另请参阅部分CreateLabelingJob.

请按照创建标记作业 (API)中的说明进行操作,并在配置请求时执行以下操作:

  • 此任务类型的注释前函数以结尾PRE-SemanticSegmentation. 要查找您的区域的注释前 Lambda ARN,请参阅PreHumanTaskLambdaArn.

  • 此任务类型的注释合并 Lambda 函数以结尾。ACS-SemanticSegmentation. 要查找您的区域的注释合并 Lambda ARN,请参阅。AnnotationConsolidationLambdaArn.

以下是一个示例配置文件AmazonPython 软件开发工具包 (Boto3) 请求以在 US East (N. Virginia) 区域创建标记作业。所有红色参数都应替换为您的规范和资源。

response = client.create_labeling_job( LabelingJobName='example-semantic-segmentation-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-SemanticSegmentation, 'TaskKeywords': [ 'Semantic Segmentation', ], 'TaskTitle': 'Semantic segmentation task', 'TaskDescription': 'For each category provided, segment out each relevant object using the color associated with that category', 'NumberOfHumanWorkersPerDataObject': 123, 'TaskTimeLimitInSeconds': 123, 'TaskAvailabilityLifetimeInSeconds': 123, 'MaxConcurrentTaskCount': 123, 'AnnotationConsolidationConfig': { 'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-SemanticSegmentation' }, Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )

为语义分段标记作业提供模板

如果要使用 API 创建标记作业,必须在 UiTemplateS3Uri 中提供工作人员任务模板。复制并修改以下模板。仅修改 short-instructionsfull-instructionsheader

将此模板上传到 S3,并在 UiTemplateS3Uri 中为此文件提供 S3 URI。

语义分割输出数据

创建语义分段标签作业后,您的输出数据将位于S3OutputPath参数时使用 API 或输出数据集位置字段中的Job 概述部分。

要详细了解由地面真值生成的输出清单文件以及地面真值用于存储输出数据的文件结构,请参阅输出数据.

要查看语义分段标记作业的输出清单文件示例,请参阅 3D 点云语义分割输出