張楊帆,郝鈺鑫,李隱峰,田鑫雨,鄭春紅,李澤昊
(西安電子科技大學(xué) 電子工程學(xué)院,陜西 西安 710071)
在高校校園中,證件物品丟失是一種普遍存在的現(xiàn)象。如表1所示,根據(jù)西安電子科技大學(xué)一卡通中心提供的數(shù)據(jù),2019年全校共補(bǔ)辦了17 162張一卡通,其中大部分是因?yàn)閬G失而補(bǔ)辦的。校園人口密集,活動范圍廣,遺失的物品難以找回。常見的尋物手段主要是在學(xué)校QQ群、BBS網(wǎng)站發(fā)布失物信息或在服務(wù)臺詢問,但這些方法的找回率較低。因此,需要有一個統(tǒng)一的失物招領(lǐng)信息發(fā)布平臺。
表1 2019年度補(bǔ)辦一卡通數(shù)量統(tǒng)計
本文所提出的智能招領(lǐng)小程序旨在建立一個面向師生的招領(lǐng)系統(tǒng),用戶可以利用微信賬號直接登錄本系統(tǒng),發(fā)布失物招領(lǐng)的相關(guān)信息,并且可以接收來自系統(tǒng)的通知信息[1]。同時,系統(tǒng)采用圖像文字識別技術(shù),提高了失物信息上傳效率,并可自動向失主發(fā)送短信和微信,提高了失物找回的成功率[2-4]。
智能失物招領(lǐng)小程序是以證件為主,以其他物品為輔的失物招領(lǐng)系統(tǒng),可服務(wù)在校師生,幫助失主發(fā)布尋物信息和招領(lǐng)信息。該程序在發(fā)布過程中調(diào)用圖像文字識別的接口幫助用戶填寫失物信息,在發(fā)布成功之后可以自動查詢學(xué)校數(shù)據(jù)庫中與證件號相匹配的用戶信息,自動通知失主。該系統(tǒng)主要實(shí)現(xiàn)查找及發(fā)布失物招領(lǐng)信息功能、關(guān)鍵詞搜索功能、圖片文字識別功能、發(fā)布信息管理功能、短信/微信通知失主等功能[5]。
系統(tǒng)功能模塊如圖1所示,具體為:
圖1 功能模塊圖
(1)登錄模塊。使用微信登錄獲取用戶信息。用戶第一次授權(quán)注冊之后獲取到其手機(jī)號、微信頭像、微信昵稱等字段;
(2)發(fā)布模塊。用戶可以在登錄系統(tǒng)后發(fā)布失物招領(lǐng)信息,填寫物品分類,上傳圖片,填寫標(biāo)題、內(nèi)容、位置和聯(lián)系方式,并進(jìn)行信息發(fā)布[6]。發(fā)布后,用戶可隨時登錄系統(tǒng),并對錄入信息進(jìn)行修改及刪除;
(3)圖片識別和自動填表模塊。當(dāng)用戶需要發(fā)布的失物招領(lǐng)信息是針對校園一卡通或身份證等證件時,用戶在上傳證件的正面圖片后,系統(tǒng)會自動調(diào)用圖片的文字識別接口,提取圖片上的文字信息并自動完成表單的填寫[7];
(4)短信和微信通知模塊。在用戶發(fā)布失物招領(lǐng)信息后,系統(tǒng)會調(diào)用學(xué)校內(nèi)部數(shù)據(jù)庫進(jìn)行匹配,如果發(fā)現(xiàn)有失主的信息與該發(fā)布內(nèi)容吻合,將通過發(fā)送手機(jī)短信和微信消息的方式通知失主;
(5)檢索模塊。用戶可在未登錄的情況下,瀏覽已經(jīng)發(fā)布在系統(tǒng)內(nèi)的所有信息,也可以輸入關(guān)鍵詞來搜索失物招領(lǐng)信息;
(6)個人中心模塊。用戶可在個人中心查看或修改個人信息,也可通過本模塊查看管理已發(fā)布的信息或退出登錄。
為實(shí)現(xiàn)上述功能,智能失物招領(lǐng)系統(tǒng)涉及4個實(shí)體,分別是用戶、失物、類別和登錄狀態(tài),各實(shí)體間的關(guān)系如圖2所示[8-11]。
圖2 數(shù)據(jù)庫E-R圖
本文涉及到的實(shí)體可被抽象地保存為數(shù)據(jù)庫中的4張表:用戶表(tb_user)、信息表(tb_item)、分類表(tb_category)和登錄狀態(tài)表(tb_token)。該系統(tǒng)的數(shù)據(jù)庫表信息如表2所示。
表2 數(shù)據(jù)庫表信息
智能失物招領(lǐng)系統(tǒng)采取前后端分離的設(shè)計思路:前端使用微信開發(fā)者工具開發(fā),采用WXML、WXSS和JavaScript語言完成;后端使用PHP語言開發(fā),采用ThinkPHP框架[12]。數(shù)據(jù)庫采用MySQL數(shù)據(jù)庫。
用戶使用小程序進(jìn)行相關(guān)操作時,視圖層把觸發(fā)的事件通知到邏輯層進(jìn)行業(yè)務(wù)處理,而邏輯層會將處理后的數(shù)據(jù)變化通知到視圖層[13],從而觸發(fā)視圖層頁面更新,其架構(gòu)如圖3所示。
圖3 小程序架構(gòu)圖
后端接口從前端發(fā)來的HTTP POST和HTTP GET請求中接收必要的Request參數(shù),經(jīng)過驗(yàn)證和處理,返回明確的Response響應(yīng)[14]。API接口運(yùn)行流程如圖4所示。
圖4 ThinkPHP運(yùn)行流程圖
用戶發(fā)布失物信息時,需要使用微信賬號登錄本系統(tǒng),并在信息發(fā)布頁填寫詳細(xì)信息。發(fā)布信息時,首先要選擇物品類型并上傳圖片。系統(tǒng)將對接收的圖片文件進(jìn)行檢查,檢查內(nèi)容包括文件格式的有效性及圖片大小。如果圖片大小超過一定的體積,則調(diào)用圖片壓縮的方法對圖片進(jìn)行壓縮處理,然后對圖片進(jìn)行重命名,并將圖片保存到文件夾中,向前端返回處理結(jié)果。如果物品屬于證件,則會調(diào)用OCR文字識別模塊。OCR模塊通過圖片URL獲取圖片文件內(nèi)容,然后調(diào)用百度AI中OCR識別的SDK識別文字內(nèi)容[15-16],再根據(jù)圖片所選的物品類型調(diào)用不同的提取方法,調(diào)取出證件包含的關(guān)鍵文字信息整理,并將信息自動填寫到前端對應(yīng)的表單中,按照識別結(jié)果返回的坐標(biāo)值對關(guān)鍵信息進(jìn)行脫密圖像處理。當(dāng)失主發(fā)布信息后,如果招領(lǐng)用戶數(shù)據(jù)庫里面有該失主的聯(lián)系信息(需要用戶注冊或者和學(xué)校數(shù)據(jù)庫對接),則會給失主發(fā)送短信和企業(yè)微信通知。本系統(tǒng)的失物信息發(fā)布流程如圖5所示。
圖5 系統(tǒng)發(fā)布流程框圖
此外,本文所設(shè)計的系統(tǒng)可通過Python程序[17],定時從學(xué)校BBS網(wǎng)站采集失物招領(lǐng)信息,并將系統(tǒng)中的新數(shù)據(jù)定時上傳到BBS網(wǎng)站的失物招領(lǐng)頁面上。
在微信中搜索校園智能失物招領(lǐng)小程序或掃描如圖7所示的二維碼,即可使用。
圖6 小程序圖標(biāo)
圖7 小程序二維碼
小程序分為3個界面:動態(tài)信息頁、信息發(fā)布頁以及個人中心頁。動態(tài)信息頁展示所有已經(jīng)發(fā)布的信息,如圖8所示。如圖9所示,在信息發(fā)布頁上,可以上傳失物招領(lǐng)或?qū)の飭⑹滦畔ⅲ⒖刹榭从脩糇陨硪寻l(fā)布信息[18],同時展示運(yùn)行的實(shí)時數(shù)據(jù)。填寫失物招領(lǐng)頁如圖10所示。個人中心頁顯示用戶信息以及小程序二維碼、版本號等相關(guān)信息。
圖8 動態(tài)信息頁
圖9 信息發(fā)布頁
圖10 失物招領(lǐng)信息自動獲取
如圖11和圖12所示,信息發(fā)布成功后,該程序短信、微信通知失主。失主點(diǎn)擊圖中鏈接即可確認(rèn)領(lǐng)取,相關(guān)信息將自動從列表中刪除,從而保護(hù)用戶個人信息。
圖11 短信通知
圖12 企業(yè)微信通知
智能失物招領(lǐng)小程序已于2020年10月1日上線,并在校內(nèi)進(jìn)行了實(shí)際運(yùn)行測試。學(xué)校食堂、圖書館、教學(xué)樓、校門、實(shí)驗(yàn)室、宿舍樓、家屬區(qū)等地點(diǎn)的工作人員均已使用了本系統(tǒng)。當(dāng)工作人員撿到丟失的證件和物品后,通過本系統(tǒng)將失物信息發(fā)布出來。系統(tǒng)設(shè)計人員采用上傳失物信息即送話費(fèi)的激勵方式鼓勵用戶上傳失物信息。系統(tǒng)上線5個月來,已經(jīng)幫助數(shù)百人找回自己的證件或其他物品。系統(tǒng)運(yùn)行數(shù)據(jù)如表3所示。 小程序累計用戶數(shù)由騰訊小程序數(shù)據(jù)助手提供。
表3 系統(tǒng)運(yùn)行數(shù)據(jù)統(tǒng)計表
為了評估本系統(tǒng)的效果,作者通過Python程序采集了本校BBS 網(wǎng)站2010年到 2021年3月15日的歷史失物招領(lǐng)數(shù)據(jù),共有18 187條, 其中成功找到失主的信息有1 267條,估算的成功率是6.97%。在2020年10月1日~2021年3月15日,智能招領(lǐng)小程序共發(fā)布1 723條,成功找到失主的信息有532條,成功率為 30.88%。一卡通招領(lǐng)信息為944條,成功找回的信息為390條,找回成功率為41.31%。身份證招領(lǐng)信息152條,成功找回的信息為67條,找回成功率為44.08%。
由表4可以看出,智能招領(lǐng)小程序的成功率是BBS網(wǎng)站的4.5倍左右,相比通過BBS網(wǎng)站的失物招領(lǐng)平臺,本系統(tǒng)更加方便且成功率更高。
表4 學(xué)校BBS網(wǎng)站與本系統(tǒng)失物尋回率對比
本文對失物信息進(jìn)行了分類統(tǒng)計,其他證件包括銀行卡、社保卡、駕駛證等;其他物品包括電子設(shè)備、U盤、書籍等。本表統(tǒng)計的數(shù)據(jù)截止到2021年3月。如表5所示,一卡通等證件丟失數(shù)量占比較大。
表5 失物信息分類統(tǒng)計表
由于部分用戶找回失物后未點(diǎn)擊確認(rèn)領(lǐng)取鏈接,實(shí)際確認(rèn)領(lǐng)取的數(shù)量應(yīng)該比表格中顯示的數(shù)據(jù)更多。通過以上兩組數(shù)據(jù)可見,本文設(shè)計的基于圖像識別的失物招領(lǐng)微信小程序提升了失物找回成功率。
本文結(jié)合圖像識別技術(shù),運(yùn)用PHP、JavaScript、Python等語言,使用MySQL數(shù)據(jù)庫,設(shè)計了基于圖像識別的微信小程序,并成功在校園內(nèi)運(yùn)行。該小程序界面設(shè)計簡潔,便于用戶使用,可快速識別證件等圖片信息,并通過微信及短信通知失主,實(shí)現(xiàn)了失主與撿到物品者之間的直接通信,提高了失物尋回的成功率,減少了師生財物損失,具有較高應(yīng)用價值,適合在校園內(nèi)推廣。