不需要服务器,教你仅用30行代码搞定实时健康码识别
本文分享自华为云社区《助力疫情防控,30行代码就能搞定无服务器实时健康码识别!》,作者:华为云PaaS服务小智 。
此次新冠疫情,波及范围之广,持续时间之久已经超出了我们的预料。自打疫情发生以来,几乎所有人的生活都受到了影响,还好现在已经是数字化的时代,为了防控疫情,健康码成了我们的通行证,已经在最大程度上减少了疫情对我们出行的限制。
4月份上海疫情肆虐,疫情发展牵动着无数国人的心,大家也都在尽自己所能全力抗疫,当时就看到一篇《复旦博士用130行代码解决核酸统计,2分钟完成人工一小时工作量 》的报道,这让我联想到自己作为一名宝妈,每天必做的一件事就是上传自己和家人的健康码给学校,换个角度想,疫情期间各个学校、政府、商场等机构每天都需要收集海量的核酸报告和健康码,人工审核不仅耗时耗力,容易出错,也不能做到及时发现问题。对于解决人工重复性工作,计算机程序可以说是首当其冲了,像这位复旦博士,用python代码进行核酸统计真是一个不错的想法。
想起之前参与过的一个华为云开发者活动“Serverless高手伪装者速成班 ”用到的正是报道中提到的文字识别OCR,不同的是华为云是以云服务的形式提供的,并且这个活动使用的平台-函数工作流 FunctionGraph,不需在本地搭建代码环境直接在云上开发,云上部署,无需服务器,感觉更加轻量方便一些,想到这些,我准备用这次学习的内容,也来搭建一个健康码识别的应用。
首先,健康码的主要内容都是文字,所以我先开通了华为云OCR的通用文字识别服务。
然后按活动指导,在函数工作流 FunctionGraph创建了一个函数,并复用了活动中使用的代码,只是把调用的ocr服务类型修改为通用文字识别。
这就完了?怀着忐忑的心,我识别了一张自己的大数据形成卡。
到目前为止看起来还都不错,可是考虑到如果放到实际业务场景中,这貌似还远远不够。如果说是把截图收集上来之后再集中分析处理,必定还是需要一段时间的,并且集中处理还存在不能及时分析截图的问题,比如某张异常的截图提交的时间和集中处理的时间有较大的时间差,那么就会造成疫情进一步扩散的可能,能做到实时处理就好了。
函数工作流 FunctionGraph支持创建触发器,所以我又给函数创建了一个OBS的触发器,这样只要有图片上传到这个OBS中,就会触发健康码识别函数执行。
再来试一下,向OBS桶上传健康码截图是否可以触发函数执行。
成了,我特意数了一下,除去注释,只有三十几行代码就搞定了健康码实时分析,成就感满满,想要尝试的小伙伴,我细心的为你们准备了《30行代码实现无服务器实时健康码识别–操作手册》,快快拿去用吧!!!
当然,要做到投入使用还需其他能力的支持,比如健康码提交入口,异常码告警,数据存储等等,这些就留给开发者们自由发挥吧!