当前位置:网站首页>不需要服务器,教你仅用30行代码搞定实时健康码识别
不需要服务器,教你仅用30行代码搞定实时健康码识别
2022-08-04 16:23:00 【华为云开发者联盟】
本文分享自华为云社区《助力疫情防控,30行代码就能搞定无服务器实时健康码识别!》,作者:华为云PaaS服务小智 。
此次新冠疫情,波及范围之广,持续时间之久已经超出了我们的预料。自打疫情发生以来,几乎所有人的生活都受到了影响,还好现在已经是数字化的时代,为了防控疫情,健康码成了我们的通行证,已经在最大程度上减少了疫情对我们出行的限制。
4月份上海疫情肆虐,疫情发展牵动着无数国人的心,大家也都在尽自己所能全力抗疫,当时就看到一篇《复旦博士用130行代码解决核酸统计,2分钟完成人工一小时工作量 》的报道,这让我联想到自己作为一名宝妈,每天必做的一件事就是上传自己和家人的健康码给学校,换个角度想,疫情期间各个学校、政府、商场等机构每天都需要收集海量的核酸报告和健康码,人工审核不仅耗时耗力,容易出错,也不能做到及时发现问题。对于解决人工重复性工作,计算机程序可以说是首当其冲了,像这位复旦博士,用python代码进行核酸统计真是一个不错的想法。
想起之前参与过的一个华为云开发者活动“Serverless高手伪装者速成班 ”用到的正是报道中提到的文字识别OCR,不同的是华为云是以云服务的形式提供的,并且这个活动使用的平台-函数工作流 FunctionGraph,不需在本地搭建代码环境直接在云上开发,云上部署,无需服务器,感觉更加轻量方便一些,想到这些,我准备用这次学习的内容,也来搭建一个健康码识别的应用。


首先,健康码的主要内容都是文字,所以我先开通了华为云OCR的通用文字识别服务。

然后按活动指导,在函数工作流 FunctionGraph创建了一个函数,并复用了活动中使用的代码,只是把调用的ocr服务类型修改为通用文字识别。

这就完了?怀着忐忑的心,我识别了一张自己的大数据形成卡。

到目前为止看起来还都不错,可是考虑到如果放到实际业务场景中,这貌似还远远不够。如果说是把截图收集上来之后再集中分析处理,必定还是需要一段时间的,并且集中处理还存在不能及时分析截图的问题,比如某张异常的截图提交的时间和集中处理的时间有较大的时间差,那么就会造成疫情进一步扩散的可能,能做到实时处理就好了。
函数工作流 FunctionGraph支持创建触发器,所以我又给函数创建了一个OBS的触发器,这样只要有图片上传到这个OBS中,就会触发健康码识别函数执行。


再来试一下,向OBS桶上传健康码截图是否可以触发函数执行。


成了,我特意数了一下,除去注释,只有三十几行代码就搞定了健康码实时分析,成就感满满,想要尝试的小伙伴,我细心的为你们准备了《30行代码实现无服务器实时健康码识别--操作手册》,快快拿去用吧!!!
当然,要做到投入使用还需其他能力的支持,比如健康码提交入口,异常码告警,数据存储等等,这些就留给开发者们自由发挥吧!
边栏推荐
- In-depth analysis of HyperBDR cloud disaster recovery 1: Cloud-native cross-platform disaster recovery, making data flow more flexible
- UWP WPF 解决 xaml 设计显示异常
- 8年软件测试感悟,送给刚入测试行业的小伙伴
- Request method ‘POST‘ not supported。 Failed to load resource: net::ERR_FAILED
- 数据分析入门导读
- jasmine.any(Function) 的一个使用场景
- 备战9月,美团50道软件测试经典面试题及答案汇总
- MySQL 性能调优和优化技巧
- 人造肉在中国还有未来吗?
- 在VMD上可视化hdf5格式的分子轨迹文件
猜你喜欢

开源一夏 | 请你谈谈网站是如何进行访问的?【web领域面试题】

测试开发必备技能-Jmeter二次开发

Typora收费?搭建VS Code MarkDown写作环境

leetcode 48. Rotate Image 旋转图像(Medium)

MySQL 性能调优和优化技巧

Steady Development | Data and Insights on Mobile Game Players in Western Europe

It took half a month to finally make a collection of high-frequency interview questions of first-tier manufacturers

现代 ABAP 编程语言中的正则表达式

招募 | 香港理工大学Georg Kranz 博士诚招博士

leetcode:743. 网络延迟时间【单源最短路 + dijkstra模板】
随机推荐
ping不通百度
UWP WPF 解决 xaml 设计显示异常
codeforces:808D. Array Division【二分 + 找规律】
越来越火的图数据库到底能做什么?
"Research Report on the Development of Global Unicorn Enterprises in the First Half of 2022" released - DEMO WORLD World Innovation Summit ended successfully
生产环境重大bug,update加上索引字段会走索引进行更新?还是走全表扫描
贝叶斯优化核极限学习机KELM用于回归预测
实践:二进制数据处理与封装
项目里的各种配置,你都了解吗?
什么是会话劫持攻击以及如何防止会话劫持
Mysql Explain
What is the difference between ITSM software and a work order system?
Matlab计算随模拟时间变化的热导率
地理标志农产品需双重保护
吴恩达机器学习[13]-支持向量机
Jenkins 如何玩转接口自动化测试?
leetcode 48. Rotate Image 旋转图像(Medium)
面试官:多个线程执行完毕后,才执行另一个线程,该怎么做?
云存储硬核技术内幕——(9) 相见时难别亦难
PAT 甲级 A1072 Gas Station