调用 Amazon Rekognition Custom Labels 操作 - Rekognition

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

调用 Amazon Rekognition Custom Labels 操作

运行以下代码以确认您可以调用 Amazon Rekognition 自定义标签。API该代码列出了您的项目 AWS 账户,在当前 AWS 区域。如果您之前未创建项目,则响应为空,但确实会确认您可以调用 DescribeProjects 操作。

通常,调用示例函数需要一个 AWS SDK Rekognition 客户端和任何其他必需的参数。AWSSDK客户端是在主函数中声明的。

如果该代码失败,请检查所用的用户是否具有正确的权限。另请查看 AWS 您用作亚马逊 Rekognition 自定义标签的区域并非全部可用 AWS 区域。

调用 Amazon Rekognition Custom Labels 操作
  1. 如果您还没有这样做,请安装并配置 AWS CLI 还有 AWS SDKs。有关更多信息,请参阅 步骤 4:设置 AWS CLI 以及 AWS SDKs

  2. 使用以下示例代码查看您的项目。

    CLI

    使用 describe-projects 命令列出您账户中的项目。

    aws rekognition describe-projects \ --profile custom-labels-access
    Python
    # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: Apache-2.0 """ This example shows how to describe your Amazon Rekognition Custom Labels projects. If you haven't previously created a project in the current AWS Region, the response is an empty list, but does confirm that you can call an Amazon Rekognition Custom Labels operation. """ from botocore.exceptions import ClientError import boto3 def describe_projects(rekognition_client): """ Lists information about the projects that are in in your AWS account and in the current AWS Region. : param rekognition_client: A Boto3 Rekognition client. """ try: response = rekognition_client.describe_projects() for project in response["ProjectDescriptions"]: print("Status: " + project["Status"]) print("ARN: " + project["ProjectArn"]) print() print("Done!") except ClientError as err: print(f"Couldn't describe projects. \n{err}") raise def main(): """ Entrypoint for script. """ session = boto3.Session(profile_name='custom-labels-access') rekognition_client = session.client("rekognition") describe_projects(rekognition_client) if __name__ == "__main__": main()
    Java V2
    /* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ package com.example.rekognition; import java.util.ArrayList; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.rekognition.RekognitionClient; import software.amazon.awssdk.services.rekognition.model.DatasetMetadata; import software.amazon.awssdk.services.rekognition.model.DescribeProjectsRequest; import software.amazon.awssdk.services.rekognition.model.DescribeProjectsResponse; import software.amazon.awssdk.services.rekognition.model.ProjectDescription; import software.amazon.awssdk.services.rekognition.model.RekognitionException; public class Hello { public static final Logger logger = Logger.getLogger(Hello.class.getName()); public static void describeMyProjects(RekognitionClient rekClient) { DescribeProjectsRequest descProjects = null; // If a single project name is supplied, build projectNames argument List<String> projectNames = new ArrayList<String>(); descProjects = DescribeProjectsRequest.builder().build(); // Display useful information for each project. DescribeProjectsResponse resp = rekClient.describeProjects(descProjects); for (ProjectDescription projectDescription : resp.projectDescriptions()) { System.out.println("ARN: " + projectDescription.projectArn()); System.out.println("Status: " + projectDescription.statusAsString()); if (projectDescription.hasDatasets()) { for (DatasetMetadata datasetDescription : projectDescription.datasets()) { System.out.println("\tdataset Type: " + datasetDescription.datasetTypeAsString()); System.out.println("\tdataset ARN: " + datasetDescription.datasetArn()); System.out.println("\tdataset Status: " + datasetDescription.statusAsString()); } } System.out.println(); } } public static void main(String[] args) { try { // Get the Rekognition client RekognitionClient rekClient = RekognitionClient.builder() .credentialsProvider(ProfileCredentialsProvider.create("custom-labels-access")) .region(Region.US_WEST_2) .build(); // Describe projects describeMyProjects(rekClient); rekClient.close(); } catch (RekognitionException rekError) { logger.log(Level.SEVERE, "Rekognition client error: {0}", rekError.getMessage()); System.exit(1); } } }