劉春平,李帥杰,陳虎
(四川川大智勝軟件有限股份公司,成都610065)
隨著社會(huì)經(jīng)濟(jì)和科技的發(fā)展,人們?nèi)谌氲礁餍袠I(yè)全球化的進(jìn)程中來(lái)。出行的安全和便利需要對(duì)信息的快速精確把握。人證核驗(yàn),是海關(guān)、機(jī)場(chǎng)、酒店、火車站、汽車站等必須進(jìn)行的過(guò)程。人證核驗(yàn),就是要精確核驗(yàn)持證人與證件信息是否一致。傳統(tǒng)的人證核驗(yàn),需要安排專業(yè)的核驗(yàn)員進(jìn)行挨個(gè)核驗(yàn),這樣效率很低,不利于大批量的核驗(yàn)。例如在中國(guó)春運(yùn)期間的火車站檢票,若是傳統(tǒng)的核驗(yàn),將浪費(fèi)很多時(shí)間,嚴(yán)重影響春運(yùn)效率。光學(xué)字符識(shí)別(Optical Character Recognition,OCR)[1]就是利用OCR技術(shù)對(duì)掃描、拍照后的證件圖像進(jìn)行分析、識(shí)別,以獲得證件上的文本信息的過(guò)程[2]。當(dāng)然,現(xiàn)有的證件識(shí)別,要么只能在單一背景下進(jìn)行,要么只能識(shí)別一種證件。復(fù)雜背景下多證件快速識(shí)別系統(tǒng)的研究與實(shí)現(xiàn),就是要在復(fù)雜背景下,實(shí)現(xiàn)多種證件信息的快速精準(zhǔn)識(shí)別后進(jìn)行核驗(yàn)。復(fù)雜背景不受天氣、燈光、背景狀態(tài)限制。多證件包括:火車票、護(hù)照、身份證、港澳臺(tái)通行證等。系統(tǒng)識(shí)別和核驗(yàn)的內(nèi)容包括:機(jī)讀碼識(shí)別、證件信息識(shí)別、人臉檢測(cè)與識(shí)別、二維碼檢測(cè)與識(shí)別、自動(dòng)判別證件類型完成信息識(shí)別核驗(yàn)。系統(tǒng)設(shè)計(jì)采用的整體思路為“提取+識(shí)別”[4],根據(jù)多種證件的需求,設(shè)計(jì)完成。
本文的研究意義如下:
(1)復(fù)雜背景下,通過(guò)對(duì)輸入圖片的處理,能夠找出待識(shí)別的區(qū)域。
(2)通過(guò)算法設(shè)計(jì),提高識(shí)別的速度和效率。
(3)多種證件識(shí)別集成到本系統(tǒng)[3],可擴(kuò)展。
基于算法設(shè)計(jì)的需要,硬件讀卡器除了攝像頭,還設(shè)計(jì)了白燈和紅外燈。硬件部分結(jié)構(gòu)簡(jiǎn)單,沒(méi)有額外傳感器,所有功能基于算法實(shí)現(xiàn)。
1.2.1 判斷證件有無(wú)
為了在系統(tǒng)運(yùn)行過(guò)程中減少資源浪費(fèi),在沒(méi)有證件核驗(yàn)任務(wù)時(shí),暫停所有后續(xù)任務(wù),需要判斷是否需要核驗(yàn)即是否有需要核驗(yàn)的證件放在讀卡器上。對(duì)于這個(gè)功能需求,系統(tǒng)在不需要核驗(yàn)證件時(shí),只開(kāi)啟低功耗的紅外光,肉眼不可見(jiàn)光,用于獲取讀卡器窗口照片,判斷有無(wú)證件放在讀卡器上。
算法描述:
(1)系統(tǒng)啟動(dòng)后,首先保證讀卡器上沒(méi)有證件,期間開(kāi)啟攝像頭和紅外光,獲取初始化圖片存入image_0。
(2)獲取圖片image_1,開(kāi)始判斷是否有證件。首先對(duì)image_1與image_0作直方圖的相似度判斷,設(shè)定閾值A(chǔ),若相似度大于A,則判斷為有證件,若相似度小于A,則判斷為無(wú)證件。
(3)閾值A(chǔ)用來(lái)排除由于環(huán)境光和讀卡器位置的移動(dòng)對(duì)直方圖的相似度的影響。
(4)若判斷為有證件,系統(tǒng)進(jìn)入核驗(yàn)狀態(tài),若無(wú)證件,轉(zhuǎn)到第二步。
1.2.2 判斷證件類型
多證件識(shí)別,很重要的一步就是判斷證件類型,然后作相對(duì)應(yīng)的處理,識(shí)別與核驗(yàn)。
(1)判斷有無(wú)機(jī)讀碼,若有機(jī)讀碼,判斷機(jī)讀碼的行數(shù)。
(2)若兩行判定為護(hù)照,若一行,判定為往來(lái)港澳臺(tái)通行證。
(3)若無(wú)機(jī)讀碼,找到二維碼,有二維碼判定為火車票,沒(méi)有二維碼判定為港澳臺(tái)居民往來(lái)大陸通行證。
如表1。
表1
1.2.3 預(yù)處理算法
在復(fù)雜背景下,輸入圖片的預(yù)處理很重要,決定了OCR的效果。對(duì)此,做了很多圖像處理的研究和設(shè)計(jì)。
(1)為了找到證件的位置,更好地將圖輸入圖片的文字區(qū)域、人臉、二維碼區(qū)域等分離出來(lái),系統(tǒng)做了第一次預(yù)處理,如下列出預(yù)處理的算法。
①通道分離:降低信息量,便于加快識(shí)別速率。
②濾波:過(guò)濾掉輸入圖片的噪聲。
③二值化:由于彩色圖像所含信息量過(guò)于巨大,在對(duì)圖像中印刷體字符進(jìn)行識(shí)別處理前,需要對(duì)圖像進(jìn)行二值化處理,使圖像只包含黑色的前景信息和白色的背景信息,提升識(shí)別處理的效率和精確度。
本系統(tǒng)的算法流程圖如圖1。OCR多證件讀取基本算法解讀:
(1)利用紅外攝像頭獲取讀卡器窗口照片,判斷有無(wú)證件放到讀卡器上,若有證件轉(zhuǎn)到(2),若無(wú)轉(zhuǎn)到(11)。
(2)送入預(yù)處理程序,灰度化,形態(tài)學(xué)變化[6],找到機(jī)讀碼輪廓。
(3)將證件位置擺正,如果有機(jī)讀碼位置,裁剪機(jī)讀碼位置轉(zhuǎn)到(4),若無(wú)轉(zhuǎn)到(8)。
(4)送入機(jī)讀碼識(shí)別函數(shù),得到機(jī)讀碼識(shí)別結(jié)果。
(5)關(guān)閉紅外開(kāi)啟白燈,第二次獲取讀卡器窗口圖片,然后利用第二步的參數(shù)對(duì)圖像進(jìn)行擺正。
(6)人臉檢測(cè),獲取人臉。
(7)將機(jī)讀碼和人臉信息填入對(duì)應(yīng)結(jié)構(gòu)體。
(8)若無(wú)機(jī)讀碼,關(guān)閉紅外,開(kāi)啟白燈,對(duì)圖片進(jìn)行
④邊緣檢測(cè):找到證件的邊緣,便于切割。
⑤輪廓提取:準(zhǔn)確切割證件。
⑥坐標(biāo)檢測(cè):找到證件的坐標(biāo),作為切割標(biāo)準(zhǔn)。
(2)識(shí)別區(qū)域預(yù)處理,第二次預(yù)處理。
①光照補(bǔ)償:提高前景和背景的像素差值,便于前后景的分離。
②Sobel算子:求x方向梯度,找到文本的有效區(qū)域。
③二值化:前后景分離。
④膨脹和腐蝕:提高分離效果。
⑤灰度化:減少彩色信息的復(fù)雜和干擾。
⑥形態(tài)學(xué)變換:對(duì)于證件的位置和變形引起的變形進(jìn)行矯正。
⑦圖像校正:便于定位識(shí)別。
⑧調(diào)整亮度和對(duì)比度:便于識(shí)別,降低誤識(shí)率。
1.2.4 識(shí)別核驗(yàn)
調(diào)用Google的開(kāi)源Tesseract OCR接口識(shí)別證件信息。經(jīng)過(guò)識(shí)別后根據(jù)識(shí)別結(jié)果進(jìn)行調(diào)整,例如在一般在識(shí)別的前兩位是字母,如果識(shí)別為數(shù)字,則判斷為識(shí)別失敗,核驗(yàn)失敗后重新獲取輸入信息[5]。
1.2.5 誤檢異常處理
誤檢發(fā)生時(shí),對(duì)目標(biāo)區(qū)域調(diào)整亮度和對(duì)比度再次檢測(cè),檢測(cè)三次,若失敗,放棄檢測(cè),重新獲取輸入圖片獲取目標(biāo)新的目標(biāo)圖片。處理,得到二維碼。
(9)將二維碼裁剪,送入解析程序獲得解析結(jié)果。
(10)循環(huán)(2)。
(11)循環(huán)(1)。
圖1 復(fù)雜背景下多證件快速識(shí)別系統(tǒng)流程
往來(lái)港澳臺(tái)通行證:
往來(lái)港澳臺(tái)通行證獲取的原始圖片如圖2。
圖2 往來(lái)港澳臺(tái)通行證獲取的原始圖片
往來(lái)港澳臺(tái)通行證識(shí)別結(jié)果如圖3所示。
圖3 往來(lái)港澳臺(tái)通行證獲取的原始圖片
護(hù)照:
護(hù)照處理的原始圖片如圖4。
圖4 護(hù)照原始圖片
護(hù)照的識(shí)別結(jié)果如圖5。
圖5 護(hù)照識(shí)別結(jié)果圖
火車票:
火車票獲取的原始圖如圖6。
圖6 火車票的原始圖片
火車票的識(shí)別結(jié)果如圖7。
圖7 火車票的識(shí)別結(jié)果圖
港澳臺(tái)居民往來(lái)大陸通行證:
港澳臺(tái)居民往來(lái)大陸通行證的原始圖片如圖8。
本系統(tǒng)實(shí)現(xiàn)了復(fù)雜背景下多證件快速識(shí)別,利用圖形圖像和OCR技術(shù),在簡(jiǎn)單的硬件條件下實(shí)現(xiàn)復(fù)雜系統(tǒng)的實(shí)現(xiàn)??梢宰R(shí)別4種常用證件,集成了多種證件識(shí)別的算法,應(yīng)用廣泛,效果突出??蓱?yīng)用于海關(guān)、機(jī)場(chǎng)、車站等多種場(chǎng)合,魯棒性強(qiáng),性能很好,還具備很好的擴(kuò)展性。當(dāng)然,系統(tǒng)還是有一些不足,需要后續(xù)工作的優(yōu)化調(diào)試。
圖8 港澳居民來(lái)往大陸內(nèi)地通行證
港澳居民來(lái)往大陸內(nèi)地通行證識(shí)別結(jié)果如圖9。
圖9 港澳居民來(lái)往大陸內(nèi)地通行證識(shí)別結(jié)果圖