图像和视频操作 - Amazon Rekognition

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

图像和视频操作

亚马逊 Rekognition 为图像和视频分析提供了两个主要的 API 集:

  • 亚马逊 Rekognition Image:此 API 专为分析图像而设计。

  • 亚马逊 Rekognition Video:此 API 侧重于分析存储的视频和流媒体视频。

这两个 API 都可以检测各种实体,例如人脸和物体。要全面了解支持的比较和检测类型,请参阅中的部分分析类型

Amazon Rekognition Image 操作

亚马逊 Rekognition Image 操作是同步的。输入和响应采用 JSON 格式。Amazon Rekognition Image 操作将分析采用 .jpg 或 .png 图像格式的输入图像。传递到 Amazon Rekognition Image 操作的图像可存储在 Amazon S3 存储桶中。如果您不使用 AWS CLI,也可以将 Base64 编码的图像字节直接传递给 Amazon Rekognition 操作。有关更多信息,请参阅处理图像

Amazon Rekognition Video 操作

亚马逊 Rekognition Video API 便于分析存储在亚马逊 S3 存储桶中或通过亚马逊 Kinesis Video Streams 流式传输的视频。

对于存储的视频操作,请注意以下几点:

  • 操作是异步的。

  • 分析必须通过 “开始” 操作启动(StartFaceDetection例如,在存储的视频中进行人脸检测)。

  • 分析的完成状态已发布到 Amazon SNS 主题中。

  • 要检索分析结果,请使用相应的 “获取” 操作(例如 GetFaceDetection)。

  • 有关更多信息,请参阅使用存储的视频分析

对于流媒体视频分析:

  • 功能包括 Rekognition 视频集合中的人脸搜索和标签(对象或概念)检测。

  • 标签的分析结果以亚马逊 SNS 和 Amazon S3 通知的形式发送。

  • 人脸搜索结果将输出到 Kinesis 数据流中。

  • 流媒体视频分析的管理是通过 Amazon Rekognition Video 流处理器完成的(例如,使用创建处理器)。CreateStreamProcessor

  • 有关更多信息,请参阅处理流式视频事件

每个视频分析操作都会返回有关正在分析的视频的元数据,以及任务 ID 和任务标签。视频的标签检测和内容审核等操作允许按时间戳或标签名称进行排序,并按时间戳或区段聚合结果。

基于非存储的操作和基于存储的操作

Amazon Rekognition 操作分为以下类别。

  • 非存储 API 操作 – 在这些操作中,Amazon Rekognition 不保存任何信息。您提供输入图像和视频,操作执行分析,然后返回结果,但 Amazon Rekognition 不会保存任何信息。有关更多信息,请参阅非存储操作

  • 基于存储的 API 操作 – Amazon Rekognition 服务器可将检测到的人脸信息存储在称为集合的容器中。Amazon Rekognition 提供其他 API 操作,这些操作可用于搜索保存的人脸信息中是否存在匹配的人脸。有关更多信息,请参阅基于存储的 API 操作

使用 AWS 软件开发工具包或 HTTP 调用 Amazon Rekognition API 操作

您可以使用 AWS 软件开发工具包调用 Amazon Rekognition API 操作,也可以直接使用 HTTP 调用这些操作。您应总是使用 AWS 软件开发工具包,除非您有充分的理由不这样做。本节中的 Java 示例使用 AWS 软件开发工具包。虽然未提供 Java 项目文件,但您可使用 AWS Toolkit for Eclipse 通过 Java 开发 AWS 应用程序。

本节中的 .NET 示例使用 AWS SDK for .NET。您可以使用 AWS Toolkit for Visual Studio 通过 .NET 开发 AWS 应用程序。它包括有用模板和 AWS 各区服务浏览器,用于部署应用程序和管理服务。

本指南中的 API 参考介绍了使用 HTTP 调用 Amazon Rekognition 操作。有关 Java 参考信息,请参阅 AWS SDK for Java

您可使用的 Amazon Rekognition 服务端点记录在 AWS 区域和端点上。

在使用 HTTP 调用 Amazon Rekognition 时,可使用 POST HTTP 操作。