快速搭建 Serverless 人脸识别离线服务
简介
首先介绍下在本文出现的几个比较重要的概念:
函数计算(Function Compute):函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。 函数工作流(Function Flow):函数工作流是一个用来协调多个分布式任务执行的全托管云服务。用户可以用顺序,分支,并行等方式来编排分布式任务,FnF 会按照设定好的步骤可靠地协调任务执行,跟踪每个任务的状态转换,并在必要时执行用户定义的重试逻辑,以确保工作流顺利完成。
本文将重点介绍如何快速地通过函数计算与函数工作流部署一个定时离线批量处理图片文件并标注出人脸的服务。
开通服务
- 免费开通函数计算,按量付费,函数计算有很大的免费额度。
- 免费开通函数工作流,按量付费,目前该产品在公测阶段,可以免费使用。
- 免费开通对象存储,按量付费。
解决方案

流程如下:
- 设定定时触发器,定时触发函数计算中的函数。
- 函数被触发后,调用一次函数工作流中的流程。
- 函数工作流中的流程被执行:
- 调用函数计算中的函数,列举出 OSS Bucket 根路径下的图片文件列表。
- 对于步骤1中列出的文件列表,对每个文件:
快速开始
- Clone 工程到本地
git clone git@github.com:ChanDaoH/serverless-face-recognition.git
替换项目目录下 template.yml 文件中的
YOUR_BUCKET_NAME 为在杭州区域的 OSS Bucket (可以不是杭州区域的,需要同步修改
OSS_ENDPOINT)
ROSTemplateFormatVersion: '2015-09-01' Transform: 'Aliyun::Serverless-2018-04-03' Resources: face-recognition: Type: 'Aliyun::Serverless::Service' Properties: Policies: - Version: '1' Statement: - Effect: Allow Action: - 'oss:ListObjects' - 'oss:GetObject' - 'oss:PutObject' - 'oss:DeleteObject' - 'fnf:*' Resource: '*' listObjects: Type: 'Aliyun::Serverless::Function' Properties: Handler: index.handler Runtime: python3 Timeout: 60 MemorySize: 128 CodeUri: functions/listobjects EnvironmentVariables: OSS_ENDPOINT: '
https://
oss-cn-hangzhou-internal.aliyuncs.com
' detectFaces: Type: 'Aliyun::Serverless::Function' Properties: Handler: index.handler Runtime: python3 Timeout: 60 MemorySize: 512 CodeUri: functions/detectfaces EnvironmentVariables: OSS_ENDPOINT: '
https://
oss-cn-hangzhou-internal.aliyuncs.com
' timer: Type: 'Aliyun::Serverless::Function' Properties: Handler: index.handler Runtime: python3 Timeout: 60 MemorySize: 512 CodeUri: functions/timer Events: timeTrigger: Type: Timer Properties: CronExpression: '0 * * * * *' Enable: true # replace YOUR_BUCKET_NAME to your oss bucket name Payload: '{"flowName": "oss-batch-process", "input": "{\"bucket\": \"YOUR_BUCKET_NAME\",\"prefix\":\"\"}"}' oss-batch-process: Type: 'Aliyun::Serverless::Flow' Properties: Description: batch process flow DefinitionUri: flows/index.flow.yml Policies: - AliyunFCInvocationAccess
一键部署函数计算和函数工作流资源至云端
安装最新版本的
Fun
在项目根目录下执行
fun deploy
效果验证
- 在 OSS Bucket 的根目录下放置图片
- 等待一分钟后,定时触发器触发函数执行函数工作流。
- 工作流执行完成后,查看 OSS Bucket
标注出人脸的图像放置在
face-detection 目录下
处理过的录像放置在
processed 目录下
相关推荐
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- 快速搭建 Serverless 人脸识别离线服务
快速搭建 Serverless 人脸识别离线服务
26-03-02
- Intel英特尔i5-12600K和i7-12700K跑分对比一览表
Intel英特尔i5-12600K和i7-12700K跑分对比一览表
26-03-02
- 电脑桌面文件图标有黄色锁头怎么取消_桌面图标上锁怎么消除
电脑桌面文件图标有黄色锁头怎么取消_桌面图标上锁怎么消除
26-03-02
- 如何删除电脑左侧侧边栏的owncloud目录
如何删除电脑左侧侧边栏的owncloud目录
26-03-02
- 如何轻松解决Win11、Win10备份卡在97%?
如何轻松解决Win11、Win10备份卡在97%?
26-03-02
- 海康威视NVR移动侦测及手机通知设置方法
海康威视NVR移动侦测及手机通知设置方法
26-03-02
- sqlserver2008跨数据库事务测试
sqlserver2008跨数据库事务测试
26-03-02
- 如何设置NAS自动备份呢_自动备份到NAS是在同一局域网内共享数据并确保数据安
- 虚拟机怎么备份_虚拟机快照备份_虚拟机备份_备份虚拟机
虚拟机怎么备份_虚拟机快照备份_虚拟机备份_备份虚拟机
26-03-02
- 华为手机有什么优点?盘点出6个方面,怪不得这么多人用华为手机
华为手机有什么优点?盘点出6个方面,怪不得这么多人用华为手机
26-03-02
