自三月初以來(lái)
學(xué)校啟動(dòng)常態(tài)化核酸篩查工作
要求班級(jí)輔導(dǎo)員必須核查
學(xué)生“健康云”核酸完成截圖
確?!安宦┮蝗恕?/p>
人工核查費(fèi)時(shí)費(fèi)力又易出錯(cuò)
怎么辦?
信息科學(xué)與工程學(xué)院博士生李小康
快速開(kāi)發(fā)一項(xiàng)小程序
幾分鐘就能快速核查
數(shù)百人的核酸完成截圖
大大提高核查效率和精度
信息化助力疫情防控
織密校園安全防護(hù)網(wǎng)
學(xué)以致用,創(chuàng)新實(shí)踐
復(fù)旦人在行動(dòng)
一起來(lái)看看
這個(gè)復(fù)旦“抗疫”利器
背后的故事
從1小時(shí)到2分鐘,
一串代碼搞定
信息科學(xué)與工程學(xué)院生物醫(yī)學(xué)工程專(zhuān)業(yè)博士生李小康,擔(dān)任學(xué)院2019級(jí)信息1班輔導(dǎo)員。學(xué)校進(jìn)入準(zhǔn)封閉管理之后,忙于抗疫的他,對(duì)一項(xiàng)繁瑣的日常工作產(chǎn)生了思考。
▲
李小康正在做志愿者
原來(lái),近期學(xué)校經(jīng)常需要開(kāi)展全員核酸檢測(cè),為確保每位在校學(xué)生都已參加,學(xué)校要求每位班級(jí)輔導(dǎo)員都要收集學(xué)生的“健康云”截圖,如果核查發(fā)現(xiàn)有人還沒(méi)參加核酸,就要及時(shí)催促其盡快檢測(cè),確保當(dāng)天“不漏一人”。
“這個(gè)工作聽(tīng)起來(lái)好像很簡(jiǎn)單,但實(shí)際做的時(shí)候,一個(gè)班級(jí)的截圖可能就需要花上半小時(shí)核查,如果是人數(shù)多的院系可能需要更久,還可能會(huì)看錯(cuò)看漏?!崩钚】嫡f(shuō)。
▲
李小康最初寫(xiě)程序時(shí)和學(xué)工同事的聊天
他想,這件事情單調(diào)枯燥又費(fèi)時(shí),重復(fù)性很強(qiáng),正符合計(jì)算機(jī)程序的特點(diǎn)。寫(xiě)一個(gè)代碼程序用于自動(dòng)核查核酸完成截圖的想法,在他腦海中產(chǎn)生。
程序一寫(xiě)好,李小康就在自己班級(jí)的核酸截圖數(shù)據(jù)上進(jìn)行驗(yàn)證,準(zhǔn)確率果然很高,甚至檢測(cè)出了之前人工核查沒(méi)有發(fā)現(xiàn)的問(wèn)題。并且,程序運(yùn)行時(shí)間很短,80多張圖只需要20多秒,大大節(jié)約時(shí)間和人力。
▲
程序輸出的Excel文件
后來(lái),李小康了解到,信息科學(xué)與工程學(xué)院研工組組長(zhǎng)高麗梅每次需要核查學(xué)院所有研究生的核酸截圖,要花很長(zhǎng)時(shí)間,特別辛苦。為了減輕高老師的工作負(fù)擔(dān),李小康也讓她使用自己的程序進(jìn)行核查。800幅截圖,原來(lái)要幾個(gè)人枯燥核對(duì)一個(gè)多小時(shí),現(xiàn)在只需等2分鐘就拿到結(jié)果。程序目前已在該學(xué)院服務(wù)2周。
原理并不復(fù)雜,
一個(gè)多小時(shí)就跑通代碼
說(shuō)起程序原理,李小康認(rèn)為并不復(fù)雜。
作為生物醫(yī)學(xué)工程專(zhuān)業(yè)博士生,研究方向是醫(yī)學(xué)影像與人工智能,他平常會(huì)接觸很多圖像處理方法。即使是在現(xiàn)在抗疫工作繁忙的情況下,導(dǎo)師汪源源老師和郭翌老師還是堅(jiān)持每周找他討論科研進(jìn)展,關(guān)心他的科研和生活,從未間斷。得益于長(zhǎng)期的科研習(xí)慣和代碼敏感性,面對(duì)自動(dòng)核查核酸截圖這件事情,李小康第一時(shí)間想到以前學(xué)到過(guò)的OCR (Optical Character Recognition,光學(xué)字符識(shí)別)技術(shù)。
“OCR可以把圖像中的文字識(shí)別出來(lái),轉(zhuǎn)換為文本信息,就方便用來(lái)核查了。而且因?yàn)楹怂峤貓D是打印字體,識(shí)別率非常高,幾乎可以做到100%準(zhǔn)確。”李小康說(shuō)。
一張截圖中的文本信息很多,包括脫敏處理的姓名、證件類(lèi)型、證件號(hào)碼、采樣時(shí)間、組織機(jī)構(gòu)等內(nèi)容,但不是所有信息都有用。其中,姓名、采樣時(shí)間、是否已采樣最為關(guān)鍵,是需要檢索篩選出的內(nèi)容。
▲
程序?qū)嶋H運(yùn)行過(guò)程
為此,他想到了Python語(yǔ)言中的正則表達(dá)式——可以搜索到字符串中的特定模式內(nèi)容。“使用正則表達(dá)式就可以把想要的信息從OCR識(shí)別的文本中篩選出來(lái)。最后,確認(rèn)好每張截圖里的姓名、檢測(cè)時(shí)間和是否已采樣等信息后,再把所有人的結(jié)果輸出到Excel文件中,方便人工確認(rèn)?!?/p>
經(jīng)過(guò)思考,李小康的程序思路就基本確定為OCR文字識(shí)別+正則表達(dá)式篩選。
說(shuō)干就干。3月15日晚,他花了一個(gè)多小時(shí)就寫(xiě)出了初始代碼,共130行,發(fā)現(xiàn)確實(shí)能夠跑通,且運(yùn)行效率很高。
當(dāng)然,當(dāng)中也遇到了幾個(gè)技術(shù)難題——OCR技術(shù)的實(shí)現(xiàn)、學(xué)生提交截圖類(lèi)型不統(tǒng)一、截圖數(shù)量多時(shí)的程序等待焦慮等。李小康逐一嘗試工具、分析圖像特點(diǎn),尋找到了最佳解決方案。
學(xué)以致用,創(chuàng)新實(shí)踐
未來(lái)有望覆蓋全校
李小康說(shuō),自己開(kāi)發(fā)這個(gè)程序的初衷是為了減少自己和身邊老師的工作量。
“雖然原理也很簡(jiǎn)單,只要是會(huì)寫(xiě)代碼的人第一時(shí)間就會(huì)明白是怎么回事,但是不做相關(guān)工作的感受不到這件事情的費(fèi)時(shí)費(fèi)力,自然也不會(huì)想出辦法。我只是用我學(xué)到的知識(shí)解決實(shí)際工作中的困難?!彼f(shuō)。
李小康把這件事發(fā)到朋友圈之后,不少學(xué)工的同事表示很感興趣,他也把代碼分享了出去,讓有需求的老師們都能及時(shí)使用。
“因?yàn)槌绦蚴褂胮ython語(yǔ)言編寫(xiě),代碼注釋也寫(xiě)得很完整,只要會(huì)使用python,就可以很快上手。”
為了方便不會(huì)編程的老師使用,李小康最后還把程序進(jìn)行了封裝。“大家需要用的時(shí)候,只要在命令行輸入一行代碼就可以運(yùn)行,非常簡(jiǎn)單。”
據(jù)悉,學(xué)校信息辦已與李小康對(duì)接?!八乃悸泛妥龇ńo我們很大啟發(fā)?!毕嚓P(guān)負(fù)責(zé)人介紹,正在收集二級(jí)單位管理需求,研究制定相關(guān)方案,開(kāi)發(fā)全新小程序納入學(xué)?!耙痪W(wǎng)通辦”平臺(tái)。
預(yù)計(jì)在不久的將來(lái),師生們就可不用再通過(guò)微信手動(dòng)收集核酸截圖,而是通過(guò)小程序直接上傳圖片,二級(jí)單位負(fù)責(zé)人可在后臺(tái)隨時(shí)查看統(tǒng)計(jì)結(jié)果。
組 稿
融媒體中心
文 字
殷夢(mèng)昊
圖 片
受訪者供圖
責(zé) 編
殷夢(mèng)昊
編 輯
卞凱玥
▼更多復(fù)旦新聞,敬請(qǐng)留意復(fù)旦大學(xué)官方網(wǎng)站。
關(guān)鍵詞: 核酸報(bào)告核查太繁瑣這位復(fù)旦人寫(xiě)了130行代碼搞定|同心