徐士博 李雨陽 鄭 順 王紹卿
(山東理工大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,山東 淄博 255049)
為加強(qiáng)常態(tài)化疫情防控工作[1,2],落實(shí)疫情防控要求,對于擬進(jìn)入校園的教職員工、外地返校的學(xué)生,或校外人員,很多學(xué)校要進(jìn)行健康碼[3]、行程卡[4]、48小時(shí)核酸陰性檢測結(jié)果[5](以下簡稱“三碼”)的檢驗(yàn),三項(xiàng)信息符合標(biāo)準(zhǔn),才可以進(jìn)入校園。傳統(tǒng)的人工信息核驗(yàn)過程慢,且人為核驗(yàn)容易出現(xiàn)紕漏。另外,人工核驗(yàn)不能自動(dòng)生成報(bào)表,更不便于對歷史數(shù)據(jù)進(jìn)行管理,比如不能快速摸排近14天入校人員的到訪城市信息。本文設(shè)計(jì)并開發(fā)入校信息自動(dòng)核驗(yàn)系統(tǒng),利用計(jì)算機(jī)運(yùn)算速度快、精確度高的特點(diǎn),實(shí)現(xiàn)三碼信息的收集、提取、存儲(chǔ)、自動(dòng)核驗(yàn)、數(shù)據(jù)可視化展示等功能,極大地提高了入校信息核驗(yàn)工作的效率,有效地助力了高校的常態(tài)化疫情防控工作。
入校信息核驗(yàn)系統(tǒng)包括三級用戶:超級管理員、部門管理員和入校人員。超級管理員用于開通每個(gè)部門的管理員賬號和唯一的三碼提交URL;部門管理員對本部門的人員進(jìn)行名單管理、查看今日入校核驗(yàn)結(jié)果和詳情、查閱歷史數(shù)據(jù)和可視化的結(jié)果等;入校人員主要是完成個(gè)人三碼截圖的提交。
系統(tǒng)主要包括四個(gè)功能模塊:入校信息收集、關(guān)鍵信息提取、統(tǒng)計(jì)與報(bào)表、數(shù)據(jù)可視化。系統(tǒng)采用B/S架構(gòu),結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)
根據(jù)每個(gè)部門專屬的提交URL,擬入校人員使用手機(jī)應(yīng)用程序,如微信、QQ、瀏覽器等,將三碼截圖提交到系統(tǒng)。其中,因手機(jī)截圖文件的尺寸較大,為減少服務(wù)器空間占用,在存儲(chǔ)到服務(wù)器前,系統(tǒng)對截圖文件進(jìn)行自動(dòng)壓縮。
對擬入校人員提交三碼截圖文件,系統(tǒng)采用OCR技術(shù)對圖像中的文字信息進(jìn)行識別,并提取和存儲(chǔ)關(guān)鍵信息。其中,日期、時(shí)間、身份證號、手機(jī)號等信息采用正則表達(dá)式進(jìn)行提取。
統(tǒng)計(jì)與報(bào)表模塊主要包括今日入校詳情、未提交名單和核驗(yàn)未通過名單。今日入校詳情以列表形式展示三碼截圖中包含的關(guān)鍵信息,以及自動(dòng)核驗(yàn)的結(jié)果。未提交名單用于展示部門內(nèi)哪些成員沒有提交三碼截圖,便于部門管理人員督促。核驗(yàn)未通過名單用于向上級部門進(jìn)行報(bào)表,不僅包含相關(guān)的姓名、聯(lián)系方式等基本人員信息,還包括核驗(yàn)未通過的原因,如酸陰性證明超過48小時(shí)等。
數(shù)據(jù)可視化模塊主要對歷史數(shù)據(jù)進(jìn)行可視化展示,用于管理部門整體掌控所有入校人員的相關(guān)信息。其中提交次數(shù)可視化采用散點(diǎn)圖的形式,提交時(shí)間可視化采用柱狀圖的形式,到訪城市可視化采用二級地圖的形式展示入校人員近期的旅居地,這為后期的常態(tài)化的中高風(fēng)險(xiǎn)地區(qū)旅居史摸排工作提供了數(shù)據(jù)支撐。
入校信息核驗(yàn)系統(tǒng)的數(shù)據(jù)庫選擇使用當(dāng)前主流的MySql數(shù)據(jù)庫。系統(tǒng)的數(shù)據(jù)庫中主要包含admin、department、person、enterInfo四個(gè)表。admin表要存儲(chǔ)各個(gè)部門相關(guān)的部門編號、用戶名、密碼等信息。department表主要存儲(chǔ)部門的部門編號、部門名稱等信息。person表主要包括部門現(xiàn)有人員的學(xué)號/工號、姓名、身份證號、電話等信息。enterInfo表主要存儲(chǔ)入校人員三碼關(guān)鍵信息,以及對應(yīng)的自動(dòng)核驗(yàn)結(jié)果等數(shù)據(jù)。數(shù)據(jù)庫系統(tǒng)的E-R圖如圖2所示。
圖2 E-R圖
擬入校人員使用手機(jī)端應(yīng)用程序打開部門專屬的URL,輸入個(gè)人信息和選擇三碼截圖。然后,系統(tǒng)自動(dòng)對截圖文件進(jìn)行OCR識別,并提取關(guān)鍵信息。
對抽取的三碼信息進(jìn)行自動(dòng)核驗(yàn),用紅色顯著地標(biāo)注核驗(yàn)不通過信息。對于部分特殊情況,比如全員核酸后用戶上傳完成檢測的貼紙照片而導(dǎo)致的識別異常,部門管理員可以打開用戶三碼截圖文件進(jìn)行人工校對。
系統(tǒng)根據(jù)當(dāng)天用戶提交的情況,與數(shù)據(jù)庫中的名單進(jìn)行自動(dòng)比對,生成沒有提交入校信息的人員名單報(bào)表,以及提交但審核未通過的人員名單報(bào)表。報(bào)表生成過程中自動(dòng)關(guān)聯(lián)相關(guān)人員的身份、聯(lián)系方式等信息。
系統(tǒng)將各類處理好的數(shù)據(jù)導(dǎo)入可視化模型中,生成散點(diǎn)圖、柱狀圖、地圖等多種樣式的圖形化界面,清晰地展示入校人員信息提交時(shí)間和次數(shù)、到訪城市等信息,為中高風(fēng)險(xiǎn)地區(qū)旅居史摸排提供數(shù)據(jù)支持。
Paddle OCR是一個(gè)實(shí)用的超輕量級OCR技術(shù),擁有識別速度快、準(zhǔn)確率高的特點(diǎn),可以滿足三碼信息的識別需求。為應(yīng)對多用戶并發(fā)提交,系統(tǒng)設(shè)計(jì)多線程[6]并行識別技術(shù)加速文字識別。
三碼中的關(guān)鍵信息主要包括三類:個(gè)人信息、日期時(shí)間和結(jié)論信息(如綠碼、核酸陰性等)。系統(tǒng)采用正則表達(dá)式從OCR識別出的文字內(nèi)容中進(jìn)一步抽取這些關(guān)鍵信息。正則表達(dá)式的靈活性、邏輯性和功能性較強(qiáng),可以迅速地用極簡單的方式達(dá)到對字符串的復(fù)雜控制。
本系統(tǒng)采用ECharts,以正則表達(dá)式處理后的數(shù)據(jù)為基礎(chǔ),來進(jìn)行數(shù)據(jù)的可視化工作。ECharts可以提供直觀,生動(dòng)的數(shù)據(jù)可視化圖表,極大地方便了管理者對入校人員的三碼信息的查看。
入校信息核驗(yàn)系統(tǒng)已經(jīng)正式運(yùn)行一個(gè)多月,從系統(tǒng)運(yùn)行情況來看,一方面,核驗(yàn)準(zhǔn)確性高,反饋迅速,大大縮短了各部門在入校信息核驗(yàn)工作上的時(shí)間,提高了工作效率。另一方面,歷史數(shù)據(jù)可追溯,強(qiáng)化了各級部門的責(zé)任。該系統(tǒng)有效地助力了高校的常態(tài)化疫情防控工作,為堅(jiān)決打贏疫情防控阻擊戰(zhàn)提供了技術(shù)支持。