如何使用命令行工具将图像上载到AWS Rekognition(AWS CLI)

时间:2017-10-28 23:12:05

标签: amazon-web-services aws-cli amazon-rekognition

我正在尝试使用 aws-cli / 1.11.175 在命令行上将存储在本地文件系统中的JPG或PNG图像上传到Amazon Rekognition。存储在S3中的图像完全正常,但如果文件存储在本地,我无法弄清楚CLI调用的外观:

for url in list:

Host = "host %s" % url

IPADDRESS = subprocess.check_output(HOST, shell=True)

print IPADDRESS

文档建议# aws rekognition detect-labels --image '???' 我也理解,图像应该是base64编码的。但是,无论我尝试什么,我最终都会收到以下错误消息。

--image "Bytes='...'"

我尝试过这样的事情:

An error occurred (InvalidImageFormatException) when calling the DetectLabels
operation: Invalid image encoding

有人可以提供一个示例,如何将存储在文件系统中的图像传递给Rekognition,而无需先将其复制到S3存储桶? # IMAGE=$(base64 --wrap=0 image.jpg) # aws rekognition detect-labels --image "Bytes='${IMAGE}'" # base64 --wrap=0 image.png > image.png.b64 # aws rekognition detect-labels --image "Bytes='file:///image.png.b64'" 选项应该如何?

1 个答案:

答案 0 :(得分:0)

这是一个已知的问题,已于2017年10月报道:
https://github.com/aws/aws-cli/issues/2931

它目前被标记为可能的增强(截至2018年5月)。