终止支持通知:2025年10月31日, AWS 将停止对亚马逊 Lookout for Vision 的支持。2025 年 10 月 31 日之后,你将无法再访问 Lookout for Vision 主机或 Lookout for Vision 资源。如需更多信息,请访问此博客文章
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
开始使用 Amazon Lookout for Vision
在开始介绍这些开始使用 说明之前,我们建议您先阅读了解 Amazon Lookout for Vision。
这些“开始使用”说明将向您展示如何创建示例图像分割模型。如果要创建示例图像分类模型,请参阅图像分类数据集。
如果要快速试用示例模型,我们提供了示例训练图像和掩码图像。我们还提供了用于创建图像分割清单文件的 Python 脚本。您可以使用清单文件为自己的项目创建数据集,无需标注数据集中的图像。当使用自己的图像创建模型时,您必须标注数据集中的图像。有关更多信息,请参阅 创建您的数据集。
我们提供的图像是正常饼干图像和异常饼干图像。异常饼干的饼干形状上有裂纹。您使用图像训练的模型会预测一种分类(正常或异常),还会找到异常饼干中的裂纹区域(掩码),如以下示例所示。
步骤 1:创建清单文件并上传图像
在此过程中,您会将 Amazon Lookout for Vision 文档存储库克隆到您的计算机上。然后,您可以使用 Python(版本 3.7 或更高)脚本创建清单文件,并将训练图像和掩码图像上传到您指定的 Amazon S3 位置。您可以使用清单文件创建自己的模型。随后,您可以使用本地存储库中的测试图像来试用模型。
创建清单文件并上传图像
按照设置 Amazon Lookout for Vision 部分的说明,设置 Amazon Lookout for Vision。请务必安装适用于 Python 的 AWS SDK
。 在您要使用 Lookout for Vision 的 AWS 区域中,创建一个 S3 桶。
在 Amazon S3 桶中,创建一个文件夹,名称为
getting-started
。记下 Amazon S3 URI 和该文件夹的 Amazon 资源名称 (ARN)。您需要使用它们来设置权限和运行脚本。
确保调用脚本的用户有权调用
s3:PutObject
操作。您可以使用以下策略。若要分配权限,请参阅分配权限。{ "Version": "2012-10-17", "Statement": [{ "Sid": "Statement1", "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "
arn:aws:s3::: ARN for S3 folder in step 4
/*" ] }] }-
确保您具有名为
lookoutvision-access
的本地配置文件,并且该配置文件的用户具有上一步中的权限。有关更多信息,请参阅 在本地计算机上使用配置文件。 -
下载压缩文件:getting-started.zip。压缩文件包含入门数据集和设置脚本。
解压缩
getting-started.zip
文件。在命令提示符下,执行以下操作:
导航到
getting-started
文件夹。-
运行以下命令以创建清单文件,并将训练图像和图像掩码上传到您在步骤 4 中记下的 Amazon S3 路径。
python getting_started.py
S3-URI-from-step-4
当脚本完成后,记下
train.manifest
文件的路径,该路径在脚本中显示在Create dataset using manifest file:
之后。该路径应该类似于s3://
。path to getting started folder
/manifests/train.manifest
步骤 2:创建模型
在此过程中,您将使用之前上传到 Amazon S3 桶的图像和清单文件,创建项目和数据集。然后,您将创建模型并查看模型训练的评估结果。
由于您使用入门清单文件创建数据集,因此无需标注数据集的图像。当使用自己的图像创建数据集时,您确实需要标注图像。有关更多信息,请参阅 标注图像。
重要
您需要为成功训练模型付费。
创建模型
-
打开 Amazon Lookout for Vision 控制台,网址为 https://console.aws.amazon.com/lookoutvision/
。 确保您所在的 AWS 区域与您在步骤 1:创建清单文件并上传图像中创建 Amazon S3 桶时相同。要更改区域,请在导航栏上选择当前所显示区域的名称。然后,选择要切换到的区域。
-
选择开始使用。
在项目部分,选择创建项目。
-
在创建项目页面上,执行以下操作:
-
在项目名称中,输入
getting-started
。 -
请选择 Create project(创建项目)。
-
-
在项目页面上的工作原理部分,选择创建数据集。
在创建数据集页面上,执行以下操作:
-
选择创建单个数据集。
-
在图像源配置部分,选择导入由 SageMaker Ground Truth 标注的图像。
-
对于 .manifest 文件位置,请输入您在步骤 1:创建清单文件并上传图像步骤 6.c 中记下的清单文件的 Amazon S3 位置。Amazon S3 位置应该类似于
s3://
path to getting started folder
/manifests/train.manifest -
选择创建数据集。
-
-
在项目详细信息页面上的图像部分,查看数据集图像。您可以查看每个数据集图像的分类和图像分割信息(掩码和异常标签)。您还可以搜索图像,按标注状态(已标注/未标注)筛选图像,或者按分配给图像的异常标签筛选图像。
-
在项目详细信息页面上,选择训练模型。
-
在训练模型详细信息页面上,选择训练模型。
-
在是否要训练您的模型?对话框中,选择训练模型。
-
在项目模型页面中,您可以看到训练已经开始。通过查看模型版本的状态列,检查当前状态。完成模型训练至少需要 30 分钟。当状态更改为训练完成时,表示已成功完成训练。
-
训练结束后,在模型页面中选择模型 1。
-
在模型的详细信息页面中,查看性能指标选项卡中的评估结果。有以下方面的指标:
由于模型训练为非确定性,因此您的评估结果可能与此页面上显示的结果有所不同。有关更多信息,请参阅 改进您的 Amazon Lookout for Vision 模型。
步骤 3:启动模型
在此步骤中,您将开始托管模型,以便它可以立即用来分析图像。有关更多信息,请参阅 运行经过训练的 Amazon Lookout for Vision 模型。
注意
您需要按照模型的运行时间量付费。您将在步骤 5:停止模型中停止模型。
启动模型
在模型的详细信息页面上,选择使用模型,然后选择将 API 集成到云。
在 AWS CLI 命令部分,复制
start-model
AWS CLI 命令。-
确保将 AWS CLI 配置为在您使用 Amazon Lookout for Vision 控制台的同一 AWS 区域内运行。要更改 AWS CLI 使用的 AWS 区域,请参阅安装 AWS SDKS。
-
在命令提示符下,输入
start-model
命令以启动模型。如果您使用lookoutvision
配置文件来获取凭证,请添加--profile lookoutvision-access
参数。例如:aws lookoutvision start-model \ --project-name getting-started \ --model-version 1 \ --min-inference-units 1 \ --profile lookoutvision-access
如果调用成功,将显示以下输出:
{ "Status": "STARTING_HOSTING" }
返回控制台,在导航窗格中选择模型。
等待状态列中模型(模型 1)的状态显示为已托管。如果您之前在项目中训练过模型,请等待最新的模型版本完成。
步骤 4:分析图像
在此步骤中,您将使用自己的模型来分析图像。我们提供了一些示例图像供您使用,它们位于您计算机上 Lookout for Vision 文档存储库中的开始使用 test-images
文件夹中。有关更多信息,请参阅 检测图像中的异常。
分析图像
-
在模型页面上,选择模型 1。
-
在模型的详细信息页面上,选择使用模型,然后选择将 API 集成到云。
-
在 AWS CLI 命令部分,复制
detect-anomalies
AWS CLI 命令。 -
在命令提示符处,输入上一步中的
detect-anomalies
命令以分析异常图像。对于--body
参数,请指定您计算机上开始使用test-images
文件夹中的异常图像。如果您使用lookoutvision
配置文件来获取凭证,请添加--profile lookoutvision-access
参数。例如:aws lookoutvision detect-anomalies \ --project-name getting-started \ --model-version 1 \ --content-type image/jpeg \ --body
/path/to/test-images/test-anomaly-1.jpg
\ --profile lookoutvision-access该输出值应该类似于以下内容:
{ "DetectAnomalyResult": { "Source": { "Type": "direct" }, "IsAnomalous": true, "Confidence": 0.983975887298584, "Anomalies": [ { "Name": "background", "PixelAnomaly": { "TotalPercentageArea": 0.9818974137306213, "Color": "#FFFFFF" } }, { "Name": "cracked", "PixelAnomaly": { "TotalPercentageArea": 0.018102575093507767, "Color": "#23A436" } } ], "AnomalyMask": "iVBORw0KGgoAAAANSUhEUgAAAkAAAAMACA......" } }
-
在输出中,请注意以下内容:
-
IsAnomalous
是所预测分类的布尔值。如果图像异常,则为true
,否则为false
。 -
Confidence
是浮点值,表示 Amazon Lookout for Vision 对预测的置信度。0 表示最低置信度,1 表示最高置信度。 -
Anomalies
是在图像中发现的异常列表。Name
是异常标签。PixelAnomaly
包括异常区域总百分比 (TotalPercentageArea
) 和异常标签的颜色 (Color
)。列表中还包括“背景”异常,覆盖图像上发现的异常之外的区域。 -
AnomalyMask
是掩码图像,用于显示所分析图像上的异常位置。
您可以使用响应中的信息,显示所分析图像和异常掩码的融合,如以下示例所示。有关示例代码,请参阅 显示分类和分割信息。
-
-
在命令提示符下,对开始使用
test-images
文件夹中的正常图像进行分析。如果您使用lookoutvision
配置文件来获取凭证,请添加--profile lookoutvision-access
参数。例如:aws lookoutvision detect-anomalies \ --project-name getting-started \ --model-version 1 \ --content-type image/jpeg \ --body
/path/to/test-images/test-normal-1.jpg
\ --profile lookoutvision-access该输出值应该类似于以下内容:
{ "DetectAnomalyResult": { "Source": { "Type": "direct" }, "IsAnomalous": false, "Confidence": 0.9916400909423828, "Anomalies": [ { "Name": "background", "PixelAnomaly": { "TotalPercentageArea": 1.0, "Color": "#FFFFFF" } } ], "AnomalyMask": "iVBORw0KGgoAAAANSUhEUgAAAkAAAA....." } }
-
在输出中,注意
IsAnomalous
的值为false
,表示将该图像分类为无异常。使用Confidence
有助于确定您对分类的信心。此外,Anomalies
数组只有background
异常标签。
步骤 5:停止模型
在此步骤中,您将停止模型。您需要按照模型的运行时间量付费。如果不使用模型,您应将其停止。您可以在下次需要时重新启动模型。有关更多信息,请参阅 启动您的 Amazon Lookout for Vision 模型。
停止模型
-
在导航窗格中,选择模型。
在模型页面中,选择模型 1。
在模型的详细信息页面上,选择使用模型,然后选择将 API 集成到云。
在 AWS CLI 命令部分,复制
stop-model
AWS CLI 命令。-
在命令提示符下,输入上一步中的
stop-model
AWS CLI 命令以停止模型。如果您使用lookoutvision
配置文件来获取凭证,请添加--profile lookoutvision-access
参数。例如:aws lookoutvision stop-model \ --project-name getting-started \ --model-version 1 \ --profile lookoutvision-access
如果调用成功,将显示以下输出:
{ "Status": "STOPPING_HOSTING" }
返回控制台,在左侧导航页面中选择模型。
当状态列中的模型状态为训练完成时,表示模型已停止。
后续步骤
当您准备好使用自己的图像创建模型后,请先按照创建您的项目中的说明进行操作。这些说明中包括使用 Amazon Lookout for Vision 控制台和 AWS SDK 创建模型的步骤。
如果您想尝试其他示例数据集,请参阅示例代码和数据集。