我正在尝试使用 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'"
选项应该如何?
答案 0 :(得分:0)
这是一个已知的问题,已于2017年10月报道:
https://github.com/aws/aws-cli/issues/2931
它目前被标记为可能的增强(截至2018年5月)。