Метод DetectText
в Rekognition API (для boto, detect_text
) может принимать один из следующих параметров:
- ссылка на изображение в корзине Amazon S3
- байтов в кодировке base64
Так что, если вы не собираетесь использовать корзину S3, вы должны предоставить байтов .Третий способ не упоминается в документах .Структура ввода изображается следующим образом:
{
"Image": {
"Bytes": blob,
"S3Object": {
"Bucket": "string",
"Name": "string",
"Version": "string"
}
}
}
И, чтобы получить поток байтов изображения не-S3;Вы можете скопировать реализацию из этого ответа :
client = boto3.client('rekognition')
image_path='images/4.jpeg'
image = Image.open(image_path)
stream = io.BytesIO()
image.save(stream,format="JPEG")
image_binary = stream.getvalue()
response = client.detect_text(Image={'Bytes':image_binary})