为加强科学防控,提高防疫材料审核效率,信息工程学院助理教授张健老师将计算机专业知识应用于防疫领域,带领课题组同学撰写并调试了上千行python代码,开发了南燕防疫助手v1系统,为学院实现精准防疫,学生顺利返深返校提供了助力。
解决了什么问题?
根据上级的相关防疫要求,同学们需要在南燕信息门户每日进行打卡。如下图所示,每天需要上传三张图片作为证明材料,分别是当日核酸检测记录截图,深i您健康码和行程码。
上传到后台需要各个学院负责的老师进行人工检查这三张图片是否合格有效,非常耗时耗力,还极易出错。以信息工程学院为例,每天按照平均检查300位同学的上传材料,每位同学的材料都需要点击、下载、查看、记录,按照花费60秒计算,每天检查300位同学至少需要花费连续5个小时。
通过跟信息工程学院负责防疫工作的戴铭志老师、张婧老师、卢志明老师等进行沟通和交流,张健老师了解到上述问题和需求,意识到这样繁琐重复的任务可以用平时熟悉的数字图像处理技术辅助解决,学以致用。于是,张健老师带领课题组同学开发了南燕防疫助手v1,一站式全自动实现了每天图片审查,并生成审查报告,检查300人需要不到20分钟,主要包含以下功能:
1.自动下载所有人上传的截图。
2.自动识别粤康码健康码或深i您健康码截图,提取健康码截图中的姓名、日期以及核酸采样日期。
3.自动识别行程码截图,提取行程码截图时间、电话号码、行程地点以及是否带星号。
4.自动识别广东省内的三次核酸检测记录截图,提取截图中的姓名,采样时间以及结果。
5.自动生成方便检查的表格,点击单元格即可打开对应截图和文件夹。
6.在表格中用彩色标注缺失材料(用黄色、绿色标注)。
7.遇到证明图片不全、截图时间距今过久、核酸日期距今过久等情况时,在表格中自动生成用户友好的文字提示(用红色标注)。
结果展示
前面的列是自动汇总的从上传图片中提取汇总的信息,最后一列是自动生成的筛查提示结果。根据这个表格,老师可以快速完成上传图片的检查,一目了然,节省很多精力。
从中间断开截图展示1
点击“粤康码图片”可以直接打开粤康码图片,点击“文件夹”可以直接打开文件夹,方便核对筛查结果
从中间断开截图展示2
点击“行程码图片”可以直接打开行程码图片,方便核对筛查结果
用了什么方法
主要用到了网络爬虫和光学字符识别(OCR)技术,结合上传图片的特点进行了专门的设计,整个处理流程分为以下5步:
1. 使用python网络爬虫下载每个同学上传的三张图片到本地
2. 进行图像预处理:将数据量和分辨率过大的图片减小
3. 对每张图片使用OCR技术识别出对应的文本
4. 提取并分析OCR结果,汇总每个人的信息至Excel表格
5. 筛查每个人的三张图片是否完整合格,对证明图片不全,截图时间距今过久,核酸日期距今过久等问题进行标注,生成文字报告
具体每个步骤都分别生成了一个可执行文件,如下图所示:
遇到了什么问题
在调试过程中确实遇到了很多具体困难,但利用所学都一一克服,比如:
1.OCR识别文字结果不准
因为粤康码和行程码的图片背景复杂,文字颜色多样,所以很容易出现误识别的情况。进而影响到下一步的信息提取。采用了模糊匹配算法而不是精确匹配。
“您于前14天内到达或途经”是灰色的小号字体
2.深i您健康码和粤康码不一致
左边的是粤康码右边的是深i您健康码
有的同学上传的是深i您健康码,有的同学上传的是粤康码。这两种健康码中截图时间的颜色是不一样的。核酸检测时间的位置也是不同的。左图中的姓名在上方中央,右图中的姓名在左下角。这些区别需要专门处理。
3.截图偏色导致识别不到二维码
大家使用的手机不同,系统也不同,截图之后的色彩偏差很大,会导致有时难以识别二维码。采用了基于阈值的二值化预处理技术有效增强二维码识别的成功率。
左边为二值化前,右边为二值化后
4.上传顺序混乱
在南燕防疫上打卡时,应该依次上传核酸检测记录,深i您健康码和行程码:
然而,我们都有过把健康码当核酸记录上传、把行程码当健康码上传、把核酸记录当行程码上传的经历、甚至也有可能上传了3张核酸记录。因此,根据上传顺序判断图片类型,再分别处理会导致严重的错误。例如将行程码当健康码处理,试图在行程码中搜索上次核酸时间。这当然是不可能成功的,因为行程码上根本就没有上次核酸时间。为了解决这个问题,目前采用基于OCR识别结果和二维码识别结果、先综合猜测证明图片的类型、再分别处理的方案,提高了最后生成汇总表格的质量。
5.检测速度慢
最开始的代码,识别一位同学的上传的三张图片需要30秒。为了进一步加速,重构了代码减少了重复计算并使用多线程对程序进行了优化,将处理时间控制在2秒以内,提高处理速度。
张健老师表示,他将会继续带领课题组的同学们不断对软件进行优化,以进一步适应实际工作需要。张老师认为,能够运用专业知识帮助学院实现精准防疫是一件十分有意义的事情,希望这个南燕防疫助手能够为学院的精准防疫提供更多帮助。
来源:https://www.ece.pku.edu.cn/info/1006/2663.htm
作者:张健课题组、戴铭志
审阅:李倩、卢志明