九河云:在AWS上构建无服务器图像处理程序

网站通常需要呈现大量图像内容。当原始图像文件(图片)尺寸较大时,需要进行裁剪或缩放等额外处理,甚至根据设备端的分辨率进行适配。提前处理图像文件的工作量往往比较大,因此九河云结合AWS云平台提供一种按需使用的图像处理方式,在保证用户体验的同时降低图像文件分发的成本。

方案特点

(1) 该方案通过Amazon CloudFront缓存针对相同图像文件的访问请求,提高了用户体验。

(2) 按需对图像进行处理,即当图片被使用到的时候才会被处理。

(3) 提供丰富的图像处理方式,包括裁剪、居中、调整大小、模糊化等。

成本因素

用户只需要根据云上资源的实际用量付费,使用到的服务包括 Amazon CloudFront、Amazon API Gateway、Amazon Lambda、Amazon S3 等。按每月请求 100 万次新图片 (缓存失效情况) 估算 (不包含免费额度,参考平均图片处理时间为 1 秒,图像大小为 1 MB)。

第 1步

部署了 Amazon CloudFront 分配,该分配提供一个缓存层,以降低图像处理的成本和后续图像传输的延迟。CloudFront 域名可提供对图像处理程序 API 的缓存访问

第 2 步

Amazon API Gateway 提供端点资源并启动 AWS Lambda 函数。

第 3 步

Lambda 函数从您现有的 Amazon Simple Storage Service(Amazon S3)存储桶中检索图像,并使用 Sharp 将修改版的图像返回到 API Gateway 中。

第 4 步

S3 存储桶用于日志存储,与客户创建的用于存储图像的 S3 存储桶分开。如果选择,该解决方案会部署一个 S3 存储桶用于存储可选演示 UI。

第 5 步

如果您激活了图像 URL 签名功能,Lambda 函数将从您现有的 AWS Secrets Manager 密钥中检索密钥值以验证签名。

第 6 步

如果您使用智能裁剪或内容审核功能,Lambda 函数将调用 Amazon Rekognition 来分析图像并返回结果。

方案优势

1, **动态内容分发:**根据客户的设备在运行时交付动态图片。

2, **内容审核使用:**Amazon Rekognition 检测不当图像并进行模糊处理。

3, **智能裁剪:**使用 Amazon Rekognition 的面部识别功能裁剪图像。

4,交互式Web界面:通过简单的 Web 界面,使用您账户中已经存在的图像文件与您的图像处理程序 API 端点直接交互。

5, **低成本存储:**通过自动化版本控制节省存储成本,杜绝图像存在多个版本的可能。

相关推荐
凤枭香3 小时前
Python OpenCV 傅里叶变换
开发语言·图像处理·python·opencv
九河云15 小时前
AWS账号注册费用详解:新用户是否需要付费?
服务器·云计算·aws
浮生如梦_15 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测
神一样的老师15 小时前
利用亚马逊AWS IoT核心和MQTT进行数据采集的综合指南
云计算·aws
danns8881 天前
什么是 AWS PrivateLink
云计算·aws
shiran小坚果1 天前
AWS RDS MySQL内存使用
数据库·mysql·云计算·database·aws
凤枭香1 天前
python opencv灰度变换
图像处理·人工智能·python·opencv
道不可以打折扣1 天前
【神经科学学习笔记】基于分层嵌套谱分割(Nested Spectral Partition)模型分析大脑网络整合与分离的学习总结
图像处理·人工智能·笔记·学习·计算机视觉
AI原吾1 天前
探索 Python 图像处理的瑞士军刀:Pillow 库
图像处理·python·ai·pillow