AWS Lambda:从S3上传事件中读取图像

时间:2019-09-16 17:28:48

标签: amazon-web-services amazon-s3 aws-lambda

当通过S3触发器将图像文件上传到S3时,我正在使用Lambda读取图像文件。以下是我的代码:

import json
import numpy as np
import face_recognition as fr

def lambda_handler(event, context):
    for record in event['Records']:
        bucket=record['s3']['bucket']['name']
        key = record['s3']['object']['key']
        print(bucket,key)

这将正确打印存储桶名称和密钥。但是,我如何读取图像,以便可以在图像上运行人脸识别模块。我可以为每个上传的图像生成arn,并用它来读取吗?

1 个答案:

答案 0 :(得分:1)

您可以直接从S3中读取图像:

s3 = boto3.client('s3')
resp = s3.get_object(Bucket=bucket, Key=key)
image_bytes = resp['Body'].read()