当通过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,并用它来读取吗?
答案 0 :(得分:1)
您可以直接从S3中读取图像:
s3 = boto3.client('s3')
resp = s3.get_object(Bucket=bucket, Key=key)
image_bytes = resp['Body'].read()