注:当前项目为 Serverless Devs 应用,由于应用中会存在需要初始化才可运行的变量(例如应用部署地区、函数名等等),所以不推荐直接 Clone 本仓库到本地进行部署或直接复制 s.yaml 使用,强烈推荐通过
s init ${模版名称}
的方法或应用中心进行初始化,详情可参考部署 & 体验 。
本案例将 Wand,这一功能强大、易于使用的Python图像处理库,快速搭建并部署到阿里云函数计算 FC。
使用该项目,您需要有开通以下服务并拥有对应权限:
服务/业务 | 权限 | 相关文档 |
---|---|---|
函数计算 | AliyunFCFullAccess | 帮助文档 计费文档 |
- 🔥 通过 Serverless 应用中心 ,
该应用。
- 通过 Serverless Devs Cli 进行部署:
- 安装 Serverless Devs Cli 开发者工具 ,并进行授权信息配置 ;
- 初始化项目:
s init image-process-v3 -d image-process-v3
- 进入项目,并进行项目部署:
cd image-process-v3 && s deploy -y
本案例将 Wand,这一功能强大、易于使用的Python图像处理库,快速搭建并部署到阿里云函数计算 FC。
Wand 提供了一个简单的API来创建、读取、保存、编辑和显示图像。这个库在执行复杂的图像操作时能够保持较高的性能,并且在Windows、Linux、macOS和其他支持Python的平台上都能运行。Wand支持多种常见的图像文件格式,包括JPEG、PNG、GIF等,并提供了便捷的方法来读取和保存这些格式的文件。
Wand的图像处理功能丰富,包括修剪、缩放、旋转、合并等基本操作,以及滤镜、调整亮度、对比度等高级功能。这使得开发者能够轻松实现各种图像处理需求。
通过 Serverless 开发平台,您只需要几步,就可以体验 wand 图片处理库 ,并享受 Serverless 架构带来的降本提效的技术红利。
部署完成之后,您可以看到系统返回给您的案例地址,点开url,就可以看到图片处理首页:
在对象存储oss中上传存储图片,从oss中获取目标图片,如:rockuw-sh/图片名
根据不同的请求路径,使用python wand图片处理库进行常见的图片处理:
功能 | 请求路径 | 参数 |
---|---|---|
拼接 | /pinjie | left=bucket/image1.jpg&right=bucket/image2.jpg |
水印 | /watermark | img=bucket/image.jpg&text=hello-fc |
格式转换 | /format | img=bucket/image.jpg&fmt=png |
图片转灰 | /gray | img=bucket/image.jpg(or .png,jpeg,webp) |
保存结果 | 上述参数均可 | img=bucket/image.jpg&fmt=png&target=bucket/output.png |
您可以通过云端控制台的开发功能进行二次开发。如果您之前是在本地创建的项目案例,也可以在本地项目目录image-process-v3
文件夹下,对项目进行二次开发。开发完成后,可以通过s deploy
进行快速部署。
您如果有关于错误的反馈或者未来的期待,您可以在 Serverless Devs repo Issues 中进行反馈和交流。如果您想要加入我们的讨论组或者了解 FC 组件的最新动态,您可以通过以下渠道进行:
微信公众号:serverless |
微信小助手:xiaojiangwh |
钉钉交流群:33947367 |