体验京东云 Serverless+AI 人脸属性识别

云原生计算基金会CNCF(Cloud Native Computing Foundation, CNCF)Serverless Whitepaper v1.0对无服务器计算作了如下定义:
Serverless computing refers to the concept of building and running applications that do not require server management. It describes a finer-grained deployment model where applications, bundled as one or more functions, are uploaded to a platform and then executed, scaled, and billed in response to the exact demand needed at the moment.
"RightScale 2018 State of the Cloud Report" 中指出, Serverless 的年增长率达到了 75%,已经远超过 Container-as-a service 的 36%,位列第一,是增长速度最快的扩展云服务。
顺应当下容器技术、IoT、AI、5G、区块链等新技术的快速发展,技术上对去中心化、轻量虚拟化、细粒度计算等需求愈发强烈,在此趋势之上,Serverless 必将快速发展并得到应用。
对于开发者而言,Serverless 极大简化了编写代码和应用部署的整个过程,无需关心 DevOps,无需关心代码运行服务器及环境,更无需关心负载均衡,中间件和存储服务可以随时调用。
Q
Serverless 的优势有哪些?
A
- 无需运维:用户不需要再关心服务器资源及复杂运行环境;
- 弹性伸缩:根据请求并发量实时自动扩缩资源;
- 按需付费:为实际消耗资源付费,无占用不收费,运行成本更低;
云上提供一整套serverless FaaS+BaaS服务,帮助用户快速构建应用与服务。
今天,我们会通过快速组合京东云 Serverless + AI,实现一个简单的 API 接口,进行人脸属性识别和简单数据分析。带领大家一起来感受一下Serverless的轻量虚拟化。

关键词
Serverless Service:函数服务+API 网关
人工智能产品:AI 人脸识别
Step1:创建函数
创建 runtime 为 python2.7 的函数,将依赖库 jdcloud_apim_sdk、ai_sdk(京东云AI)和入口文件 index.py 打包上传,index.py 代码如下:
#coding=utf-8
import json
import base64
import os
from jdcloud_apim_sdk.core.credential import Credential
from jdcloud_apim_sdk.core.config import Config
from jdcloud_apim_sdk.core.const import SCHEME_HTTPS, SCHEME_HTTP
from ai_sdk.apis.ai_face_detect_attr_request import *
from ai_sdk.client.ai_Face_Detect_Attr_client import *
'''
AI
'''
def handler(event,context):
if not bool(event):
result = {
'statusCode': 200,
'headers': {},
'body': "",
}
return result
# get request data
print('AI Request')
# get request data
body = event['detail']['body']
body = json.loads(body)
if type(body) == unicode:
body = json.loads(body)
# request
access_key = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
secret_key = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
credential = Credential(access_key, secret_key)
config = Config('aiapi.jdcloud.com', scheme=SCHEME_HTTPS)
client = AiFaceDetectAttrClient(credential, config)
header = dict()
parameters = {
'return_landmark':0,
'return_attr':1,
'face_detect_num':0
}
data = body.get('data', "")
imageBase64Data = 'imageBase64=' + data.decode("utf-8")
s = imageBase64Data.encode('utf-8')
ai_face_detect_attr_request = AiFaceDetectAttrRequest(parameters, s, header)
AiFaceDetectAttr_response = client.send(ai_face_detect_attr_request)
respBody = {'code': 0, 'data': AiFaceDetectAttr_response.json()}
resp = json.dumps(respBody)
result = {
'statusCode': 200,
'headers': {},
'body': resp,
}
# statistics
resp = AiFaceDetectAttr_response.json()
if resp['result']['status'] == 0:
attrs = json.loads(resp['result']['result'])
if len(attrs['faces']) > 0:
if attrs['faces'][0]['faceAttribute']['gender'] == 0:
print("lookup ai attr success, this is a woman")
else:
print("lookup ai attr success, this is a man")
return result
Step2:测试函数
将任意人脸图片 base64 以 json 格式放入测试事件的 body 中,即可进行在线测试,返回结果如下:

Step3:对接 API 网关
为上面的函数创建一个 API 网关触发器,将 API 发布至测试环境。https://www.jdcloud.com/cn/products/face-detect-and-analysis?utm_source=PMM_Wechat&utm_medium=ReadMore_179&utm_campaign=ReadMore&utm_term=NA

Step4:测试验证上线
接口验证无误后,即可与前端页面开发联调,测试完成后,可通过函数版本、别名功能管理线上函数迭代发布。
现在就点击小程序,看看 AI 眼中的你吧!
人脸魔镜照照照,打开微信扫码试用!


Serverless 联合京东云 AI,还可打包集成人体识别、语音技术、图像理解、OCR 文字识别等一系列 AI 场景,通过函数服务还可进一步进行数据的存储分析处理、灵活应用,点击“阅读”开始探索实践啦!
欢迎点击“京东云”了解更多精彩


体验京东云 Serverless+AI 人脸属性识别的更多相关文章
- 京东云与AI 10 篇论文被AAAI 2020 收录,京东科技实力亮相世界舞台
美国时间2月7-12日,AAAI 2020大会在纽约正式拉开序幕,AAAI作为全球人工智能领域的顶级学术会议,每年评审并收录来自全球最顶尖的学术论文,这些学术研究引领着技术的趋势和未来.京东云与AI在 ...
- “战疫”需求不再等-京东云与AI【应急资源信息发布平台】召集开发者共同支援
截止北京时间 2020年2月5日19时00分,全国确诊新型冠状病毒肺炎24423例,疑似23260例. 新年伊始,一切都显得和往年有那么一点不一样.疫情牵动着每一个人的心脏,也有很多人早就放弃了假期投 ...
- 利用京东云Serverless服务快速构建5G时代的IoT应用
10月31日,在2019年中国国际信息通信展览会上,工信部宣布:5G商用正式启动.5G商用时代来了! 5G的商用,使得数据传输速度.响应速度.连接数据.数据传输量.传输可靠性等方面都有了显著的提升,这 ...
- 【名额有限】云开发AI拓展能力等你来体验!
这次来了个超厉害的新能力! 人脸智能打马赛克.人脸智能裁剪--各种操作,都能一步到位! 迫不及待想体验,戳链接:https://wj.qq.com/s2/3986990/e0ef/ 还没有搞懂,继续往 ...
- 送票啦~ | 京东云邀您参加AI顶级盛会GTC CHINA 2019
本年度不可错过的AI顶级盛会 GTC CHINA2019 即将于12月16–19日在苏州举行 京东云重量级技术专家将携 AI前沿热议话题亮相 京东云相关AI最新动态,也会一并为您带上 小小剧透,快来看 ...
- 2018亚太CDN峰会开幕, 阿里云王海华解读云+端+AI的短视频最佳实践
4月11-12日,2018亚太CDN峰会在北京隆重召开,在11日下午的短视频论坛中,阿里云高级技术专家王海华进行了<短视频最佳实践:云+端+AI>的主题演讲,分享了短视频的生命周期关键点和 ...
- 京东云数据库 RDS助力企业便捷运维
iPhone6发布那年,京东在国贸等商圈送货最快速度数分钟,包括从下单到送达.这是一个极端的富含营销因素例子.即便如此,常态来看,隔天到货的这种业务模式,也是基于同样的支撑:营销业务.物流业务,大数据 ...
- 基于深度学习的人脸性别识别系统(含UI界面,Python代码)
摘要:人脸性别识别是人脸识别领域的一个热门方向,本文详细介绍基于深度学习的人脸性别识别系统,在介绍算法原理的同时,给出Python的实现代码以及PyQt的UI界面.在界面中可以选择人脸图片.视频进行检 ...
- 技能节-AI人脸识别
我们收到技能节项目的通知是在两周之前,项目要求做个人脸评分系统. 两周时间写一个"人脸评分系统",好像时间比较紧了,还好我们完成了~这个项目是将摄像头捕获到的包含人脸的图像传输到百 ...
随机推荐
- PCA算法提取人脸识别特征脸(降噪)
PCA算法可以使得高维数据(mxn)降到低维,而在整个降维的过程中会丢失一定的信息,也会因此而实现降噪除噪的效果,另外,它通过降维可以计算出原本数据集的主成分分量Wk矩阵(kxn),如果将其作为数据样 ...
- 使用Vue 和 内网穿透:返回 invalid host header
原因:新版的webpack-dev-server出于安全考虑,默认检查hostname,如果它不是配置内的,将会中断访问. -------------------------------------- ...
- vue 路由过渡效果(1)
1.html界面 <transition name="slide"> <router-view></router-view> </tran ...
- kubernetes 1.17.2 结合 Ceph 13.2.8 实现 静态 动态存储 并附带一个实验
关于部署和相关原理 请自行搜索 这里 给出我的操作记录和排查问题的思路 这一节对后面的学习有巨大的作用!!! [root@bs-k8s-ceph ~]# ceph -s cluster: -1a9a- ...
- 如何让Dev支持c++11特性
1.点击工具选择编译选项 2.在编译时加入以下命令点击之后再将-std=c++11加入,点击确定就ok了
- java核心-多线程(4)-线程类基础知识
1.并发 <1>使用并发的一个重要原因是提高执行效率.由于I/O等情况阻塞,单个任务并不能充分利用CPU时间.所以在单处理器的机器上也应该使用并发. <2>为了实现并发,操作系 ...
- python pandas数据分析基础入门2——(数据格式转换、排序、统计、数据透视表)
//2019.07.18pyhton中pandas数据分析学习——第二部分2.1 数据格式转换1.查看与转换表格某一列的数据格式:(1)查看数据类型:某一列的数据格式:df["列属性名称&q ...
- dedecms 标签使用 runphp=php 获取文章静态地址
[field:id runphp='yes'] $url=GetOneArchive(@me); @me=$url['arcurl']; [/field:id]
- S7-200 smart输入输出接口试验
工具 西门子 s7-200smart PLC 西门子s7-200 smart 试验 CPU型号是 SR30 这个 编译环境 符号 选择 了 "输入1"以后, 会自动的编地址为I0. ...
- windows下移植别人配置好的python环境
一般来说,我们在windows下配置python环境的时候可能会比较推荐用anaconda,那么有一个比较方便的anaconda环境移植方法,也就是说,如果我已经在windows上安装好了anacon ...