基于PaddleOCR的图像识别技术在疫情防控中的应用与实践

2023-01-03 13:37国网客服中心南方分中心郑宏坤
数字技术与应用 2022年12期
关键词:关键字批量图像识别

国网客服中心南方分中心 郑宏坤

计算机图像光学字符识别技术(Optical Character Recognition,简称OCR),是指对文本资料的图像文件进行分析识别处理,获取文件及版面信息的过程,其中主要包括图像输入、图像前期处理(二值化、图像降噪、倾斜校正)、中期处理(版面分析、字符切割、字符识别、版面还原)、后期处理(识别校正),最终将图像中的文字转换输出为可编辑的文本格式。本文主要利用Python语言及PaddleOCR图像识别框架,针对员工行程卡截图批量采集后进行批量扫描识别,并运用关键字段提取技术,格式化输出汇总关键字段,最后进行比对,筛查行程卡截图日期、是否本人行程卡、轨迹是否涉及中高风险区域,来管控员工风险出行、瞒报漏报情况,免于人工逐一检查核对、登记。

在疫情防控期间,全国多地区仍存在疫情增长的情况,造成此情况的主要原因就是人员跨风险区域流动,因此管控人员前往中高风险区域就成了降低感染风险最为有效的手段,故做实、做好每一位员工的轨迹筛查就成了疫情防控工作中极为重要的一环。但是作为疫情防控管理者,常常要短时间内筛查企业内大量员工的出行信息,常规做法仅能通过人工收集、登记、对比、判断行程信息,不仅费时费力,还非常容易出错。

本文通过梳理轨迹筛查研判流程,逐一分析流程中的痛点、难点问题,结合目前的OCR图像智能识别技术,设计了一套集行程卡批量采集、关键字段批量提取、数据自动比对研判的智能识别程序,使用自动化、智能化策略替代人工工作,大大提高了疫情防控质效,节省了大量时间。

1 主流OCR开源模型框架的选择

目前主流的OCR开源模型框架有EasyOCR、Chineseocr、Chineseocr_lite、Tesserocr、PaddleOCR,几种框架其主要特征如下(如表1):

表1 主流OCR开源模型框架对比Tbl.1 Comparison of mainstream OCR open source model frameworks

通过比对以上5种主流OCR开源模型框架,可以看出PaddleOCR-v2在易用性及精度方面表现最佳,故本项目选择PaddleOCR开源模型框架作为“通信大数据行程卡”图像识别主要框架。

2 总体流程

(1)通过问卷星系统设计创建“通信大数据行程卡截图收集表”,批量采集行程卡图像;(2)使用Selenium爬虫程序将行程图像附件自动化下载至本地磁盘;(3)启动识别主程序,调用PaddleOCR图像识别引擎批量扫描识别行程卡图像中的文本值;(4)通过关键词提取、数据切片定位、正则表达式等方法[1],将识别结果中的日期、手机号码、健康码颜色、行程地点格式化输出汇总,形成电子筛查台账;(5)调用Excel复合函数筛查“是否本人行程卡”“截图日期”“有无风险出行情况”等关键字段,最终实现人工替代(如图1所示)。

图1 “ 通信大数据行程卡”识别处理流程图Fi g.1 "Communication Big Data Travel Card" identification processing flowchart

3 处理步骤

(1)利用问卷星系统设计创建行程卡在线填报表单,加入图像上传模块,并生成分享链接,通过微信群等渠道分发全员,员工通过链接自主上传行程卡截图(如图2所示),短时间内即可收集全员行程卡。

图2 “通信大数据行程卡”在线上传表Fig.2 "Communication Big Data Travel Card"online upload form

(2)通过编写Selenium爬虫程序将行程卡图像附件自动下载至本地磁盘(如图3所示)。

图3 “通信大数据行程卡”图像附件Fig.3 "Communication Big Data Travel Card" image attachment

(3)使用Python语言调用PaddleOCR图像识别引擎针对行程卡截图进行批量处理(本文以C:ocr_test路径下的“张三”行程卡为例)。

在首次进行识别时,PaddleOCR会自动联网下载高精度轻量化识别模型,加载后进行图像识别(模型默认路径:C:Users“计算机用户名”.paddleocr),最终返回图像中全部的文本值(如图4所示)。

图4 单张“通信大数据行程卡”图像识别结果Fig.4 Single "Communication Big Data Travel Card" image identification results

1)主要调用代码:

from paddleocr import PaddleOCR#调用识别模块

ocr = PaddleOCR(lang='ch',use_gpu=Fals) # 中英文识别语言设置等其他参数设置

img_path = r'C:ocr_test工号:1234+姓名:张三.png' # 行程卡截图保存路径

result = ocr.ocr(img_path) # 提取图像识别内容

for line in result: # 分行打印输出识别文本

print(line)

2)返回识别结果

(4)关键字段提取。图片识别后的文本结果以多维列表形式返回,通过Python语言针对列表数据进行拆分处理并提取字符,最后采用关键字定位或正则表达式方法[1]可将行程卡“颜色”“手机号码”“截图日期”“近14天行程”等关键字段抽取并写入Excel汇总表(如图5中的A-G列)。

图5 程序输出的“出行风险筛查汇总表”Fig.5 "Travel Risk Screening Summary" output by the program

(5)信息比对研判,结果可视化输出。编写Excel复合比对验证函数并通过Python语言调用,将从行程卡截图中提取的关键字段数据与公司预留的员工资料数据、疫情风险区域等数据互相比对验证,最后将验证结果追加写入Excel汇总表中,可视化显示“是否本人行程卡”“出行是否提前报备”“截图日期”“是否到访中高风险区域”等关键筛查信息,最终形成一张完整的员工“出行风险筛查汇总表”(如图5中H-K列)。

4 总结

通过行程卡在线上传、图像爬取、图像识别、关键字提取、文本比对一套系统化流程,节省了防疫管理人员大量时间,尤其在疫情防控期间,对控制企业大量人员流动、快速发现疫情传播风险等方面,具有十分重要意义。

引用

[1]邹亚劼.基于OCR的文档图片检测与信息提取系统的研究[D].哈尔滨:哈尔滨工业大学,2015:1-67.

猜你喜欢
关键字批量图像识别
履职尽责求实效 真抓实干勇作为——十个关键字,盘点江苏统战的2021
成功避开“关键字”
基于Resnet-50的猫狗图像识别
高速公路图像识别技术应用探讨
图像识别在物联网上的应用
图像识别在水质检测中的应用
浅议高校网银批量代发
基于AUTOIT3和VBA的POWERPOINT操作题自动批量批改
考虑价差和再制造率的制造/再制造混合系统生产批量研究
智能垃圾箱