Amazon Rekognition detect_labels 没有 return 个实例或父级

Amazon Rekognition detect_labels does not return Instances or Parents

根据 https://docs.aws.amazon.com/rekognition/latest/dg/labels-detect-labels-image.html#detectlabels-response and https://docs.aws.amazon.com/rekognition/latest/dg/API_DetectLabels.html ,Amazon Rekognition 应该 return 个实例(边界框详细信息)和带有每个标签的父级。但是,在成功地 运行 detect_labels 实现类似于上述链接的实现后,我的响应中唯一的键是 'Name' 和 'Confidence'; 'Instances' 和 'Parents' 甚至都不是键,更不用说具有空值的键了。

有没有人有什么想法?

我的代码如下:

def _bounding_box(imageFile):

    client = boto3.client('rekognition')

    with open(imageFile, 'rb') as image:
        response = client.detect_labels(Image={'Bytes': image.read()})

    print('Detected labels in ' + imageFile)
    for label in response['Labels']:

        print(label)
        print("Label: " + label['Name'])
        print("Confidence: " + str(label['Confidence']))
        print("Instances:")
        for instance in label['Instances']:
            print("  Bounding box")
            print("    Top: " + str(instance['BoundingBox']['Top']))
            print("    Left: " + str(instance['BoundingBox']['Left']))
            print("    Width: " + str(instance['BoundingBox']['Width']))
            print("    Height: " + str(instance['BoundingBox']['Height']))
            print("  Confidence: " + str(instance['Confidence']))
            print()
        print('Parents: ')
        for parent in label['Parents']:
            print("   " + parent['Name'])
        print("----------")
        print()

我能够准确地重现您的结果。

然后我更新了我的 boto3 版本并返回了 Instances 信息。

  • Instances 未返回:版本 1.9.16
  • Instances 返回:版本 1.9.104

您可以通过以下方式发现版本:

>>> import boto3
>>> boto3.__version__

因此,请更新您的 boto3。 (pip install boto3 --upgrade)

通常最好使用虚拟环境来保持清洁。