4月7日,据复旦大学官微消息,自三月初以来,学校启动常态化核酸筛查工作,要求班级辅导员必须核查学生“健康云”核酸完成截图,确保“不漏一人”。然而,这样的人工核查,费力又易出错。
为此,信息科学与工程学院博士生李小康快速开发了一项小程序,几分钟就能快速核查数百人的核酸完成截图,大大提高了核查效率和精度。
说起程序原理,李小康认为并不复杂,他第一时间想到了以前学到过的OCR (Optical Character Recognition,光学字符识别)技术。
李小康解释说:“OCR可以把图像中的文字识别出来,转换为文本信息,就方便用来核查了。而且因为核酸截图是打印字体,识别率非常高,几乎可以做到100%准确。”
他还想到了Python语言中的正则表达式—可以搜索到字符串中的特定模式内容。“使用正则表达式就可以把想要的信息从OCR识别的文本中筛选出来。最后,确认好每张截图里的姓名、检测时间和是否已采样等信息后,再把所有人的结果输出到Excel文件中,方便人工确认。”
最后,李小康确定了“OCR文字识别+正则表达式筛选”的程序思路。3月15日晚,他花了一个多小时就写出了初始代码,共130行。程序一写好,李小康就在自己班级的核酸截图数据上进行验证,准确率果然很高,甚至检测出了之前人工核查没有发现的问题。
目前,程序已在该学院服务2周。800幅截图,原来要几个人核对一个多小时,现在只需等2分钟就拿到结果。