付思卓,韓文波
(長春理工大學(xué) 光電工程學(xué)院,長春 130022)
進入二十一世紀,智能交通系統(tǒng)(ITS)已經(jīng)開始全面應(yīng)用,車牌自動識別技術(shù)LPR作為ITS中的關(guān)鍵組成環(huán)節(jié),它的任務(wù)是采集并處理汽車實時圖像,自動識別車輛車牌信息[1],并完成相關(guān)智能化數(shù)據(jù)庫整理。車牌自動識別系統(tǒng)應(yīng)用廣泛,例如高速公路收費站、停車場收費管理、公路道路實時監(jiān)控等,其中在各類收費管理處實現(xiàn)不停車收費技術(shù),對公路車輛流暢性具有重要意義。可見車牌自動識別系統(tǒng)具有不可替代的作用,對其更加深入的研究具有很大的現(xiàn)實意義。
車輛車牌識別系統(tǒng)包含圖像采集和圖像處理兩部分,圖像采集主要是完成對車輛車牌信息的采集,圖像處理包括四個關(guān)鍵環(huán)節(jié),分別為圖像預(yù)處理、車牌定位、字符分割和字符識別[2],最后完成車輛車牌的智能識別。系統(tǒng)組成框圖如圖1所示。
高速收費站處,當移動車輛經(jīng)過感應(yīng)器,會觸發(fā)車輛感應(yīng)器分別給照明工具和圖像采集系統(tǒng)信號使其工作,對車輛進行圖像采集。由于USB攝像機較為簡單,如果對移動狀態(tài)下的車輛僅采集單幀圖像,該圖像會出現(xiàn)虛像問題(虛像程度由車輛移動速度決定),故采用USB攝像頭進行錄像。該圖像會直接保存在PC機中并交予LabVIEW對圖像進行處理,包括圖像預(yù)處理、車牌定位、字符分割、字符識別,最后輸出識別出的字符。

圖1 移動車輛車牌識別系統(tǒng)組成框圖
在PC機中對車牌的每一步處理都是在不同的圖像處理算法下完成。目前,在圖像處理時對圖像二值化閾值的選擇,車牌定位的準確度與字符分割技術(shù)都是本課題的關(guān)鍵與技術(shù)難點,在本文中涉及到的關(guān)鍵算法有:圖像預(yù)處理階段對圖像的格式轉(zhuǎn)換與灰度變換;車牌定位階段的邊緣檢測;字符識別階段的字符分割等。
在LabVIEW中對圖像的處理都是基于BMP格式的圖片,需要對采集到的圖片做統(tǒng)一個格式轉(zhuǎn)換處理,算法如下:
圖片格式轉(zhuǎn)換之后需要將彩色圖像灰度化,就是使R、G、B三個量相等,通常有三種方法:最大值法、平局值法、加權(quán)法。本文采用的就是加權(quán)的方法,具體算法是:

針對具體的考慮,式子中的a、b、c分別取值0.299、0.587、0.114。
經(jīng)過圖片預(yù)處理之后的圖片,需要經(jīng)過邊緣提取才能識別出字符,常用的邊緣提取算子有三種:Roberts算子、sobel算子和prewitt算子。Roberts算子具有對圖像定位精度較高,檢測出的邊緣較細等優(yōu)點,所以本文選擇了Roberts算子,該算子根據(jù)局部差分算子方法尋找圖像邊緣,設(shè) f(x ),y是具有整數(shù)像素坐標的輸入圖像,公式如下:

其中模板R1,R2分別為
Roberts邊緣算子是一個2×2鄰域模板,采用對角線方向相鄰兩個象素之差近似梯度幅值邊緣檢測。圖像中的每個點都用這兩個模板進行卷積,運算結(jié)果就是一幅邊緣幅度圖像[3]。
對圖像中的字符進行識別,要求識別對象是獨立的字符,所以需要將車牌區(qū)域的每個字符獨立分離出來。通過前文所述Rboerts算子邊緣提取后,車牌上的字符邊緣點在整個車牌區(qū)域圖像中呈現(xiàn)大致固定的概率分布。取T3滿足式(5)

將邊緣二值圖像進行水平方向投影,查找到每個極小值點,再利用間距大小合并這些極小值點,便可以得到分割的獨立字符。對分割后獨立的字符局部二值化,我們用W表示字體的寬度,取閾值T4滿足式(6)

式中A表示獨立后每個字符總像素個數(shù)。設(shè)Y(x ),y表示(x ,y )的灰度值。引入閾值T5,T6,T7,有


式中


對字符塊灰度圖像進行二值化

在對圖像進行預(yù)處理之前,由于硬件USB攝像頭采集的圖像幀率為25fps/s,即在2s內(nèi)采集到50幀不同運動的車輛圖像,數(shù)據(jù)量過大,需要篩選。基于頻率越高圖像越清晰的特點,在50幀內(nèi)選取頻率最高的單幀圖像作為后期處理的基礎(chǔ)圖像。本文采用NI公司的LabVIEW 2009作為本次設(shè)計的軟件編程環(huán)境,IMAQ是LabVIEW下的一個子模塊,主要用于機器視覺處理以及圖像處理方面的應(yīng)用[4]。
本次設(shè)計將字符識別系統(tǒng)劃分為三個模塊:圖像采集模塊、圖像處理模塊(圖像預(yù)處理、車牌定位、字符分割)和IMAQ OCR字符識別模塊。
本次設(shè)計硬件設(shè)備在2s內(nèi)采集移動車輛圖像,并將采集到的圖像傳到采集卡,然后送入計算機內(nèi)存,即圖像緩沖區(qū)。所用的硬件設(shè)備是普通的USB攝像頭,圖2所示是用USB攝像頭采集圖像的LabVIEW程序框圖。圖3為采集到的圖像。

圖2 圖像采集程序框圖

圖3 采集圖像
生成圖樣時,由攝像頭聚焦精確度問題引發(fā)的圖像模糊、背景與目標的對比度低、顆粒噪聲等因素會影響圖像質(zhì)量,甚至?xí)?dǎo)致識別失敗,所以在字符識別前需要對圖像進行預(yù)處理,改變圖像的質(zhì)量,提高后續(xù)的識別率。圖像預(yù)處理包括格式轉(zhuǎn)換、灰度轉(zhuǎn)換、二值化三個基礎(chǔ)步驟,并在所有幀數(shù)圖像二值化后采用固定區(qū)域像素異或運算,提取。
3.2.1 格式轉(zhuǎn)換
在上文所述算法的支持下,完成對圖片的格式轉(zhuǎn)換,其程序框圖如圖4所示。

圖4 格式轉(zhuǎn)換程序框圖
3.2.2 灰度轉(zhuǎn)換
將USB攝像頭采集到的彩色圖像進行灰度轉(zhuǎn)換成為單色圖像(灰度圖像),這有利于后續(xù)的處理。圖5和圖6就是灰度變換的程序圖與經(jīng)灰度變化后的圖像。

圖5 灰度變化程序框圖

圖6 灰度變換結(jié)果
3.2.3 二值化
二值化一般在圖像灰度操作之后進行,通過搜索產(chǎn)生0和1之間的跳躍變化的位置,快速準確地提取目標區(qū)域邊界像素點,得到僅有0和1兩個灰度值的黑白圖像。二值化的關(guān)鍵在于找到適合的T(閾值),針對本文基于高速公路收費處采集到的移動車輛圖像的角度考慮:車輛行駛經(jīng)過車輛感應(yīng)器,觸發(fā)照明設(shè)備工作,使車輛前臉亮度大于車身與背景,故本次二值轉(zhuǎn)換采用雙向固定閾值方法,選取合適的閾值,將兩閾值之間的像素點歸為255,閾值兩側(cè)的像素點歸為0。這樣可以有效的將車牌區(qū)域與非車牌區(qū)域區(qū)分開,排除背景區(qū)域的干擾。圖7和圖8分別為本文的二值化程序框圖和處理結(jié)果。

圖7 二值化程序框圖

圖8 二值化結(jié)果
3.2.4 車牌定位處理
車牌圖像包含較多的信息內(nèi)容,而背景圖像所包含的信息量可能比車牌部分還要多,所以在一幅含有眾多復(fù)雜背景信息和較多噪聲圖片上,要對其進行車牌的精確定位是一個比想象中更加困難的事情。考慮到車牌的一些特征信息的不變性,可以確定車牌的相應(yīng)特征,如中國車牌固定的幾何性特征:車頭部分的牌照皆是440mm×140mm,字符寬45mm,字符高度為90mm,間隔符寬10mm,字符間隔距離是12mm等[5]。由于這些固定信息使得車牌邊緣區(qū)域更加突出且容易檢測,所以先對圖像進行邊緣檢測,得到車牌粗定位區(qū)域。如圖9所示。

圖9 邊緣檢測結(jié)果圖
通過邊緣檢測提取出車牌邊緣信息,再對檢測后的圖像進行投影,包括水平與垂直兩個方向的投影,最后對兩個方向上投射的邊緣點個數(shù)做相加運算,以此精確定位車牌的上下、左右邊界。具體程序框圖如圖10所示。

圖10
(1)車牌上下邊界的定位
對車牌水平投影并統(tǒng)計投影點個數(shù)得到下圖10,從圖像中可以明顯看到,車牌所在區(qū)域比非車牌區(qū)域投影之后所得曲線具有較為直觀的線性波動變化:投影曲線中具有眾多波峰,但有幾個連續(xù)的波峰最為突出,這段連續(xù)曲線所代表的區(qū)域就是車牌區(qū)域;上述中連續(xù)的波峰段兩側(cè)會出現(xiàn)兩個高度基本相同的波谷,且該波谷在高度上低于連續(xù)波峰段內(nèi)的波谷高度。
精確定位車牌上下邊界的具體分為兩步驟:首先,在圖像水平投影曲線上,查找出一段最大波峰所在區(qū)間,將該區(qū)間判定為車牌區(qū)域;然后,在投影曲線上查找上述的兩個波谷,并核實是否為最大波峰區(qū)間段兩側(cè)的波谷,如果是,則取兩個波谷之間的區(qū)域,判定為精確定位后的車牌區(qū)域。
(2)車牌左右邊界定位
對原邊緣圖像進行垂直投影得到圖11,圖中可以直觀表示出:車牌所在區(qū)域較非車牌區(qū)域的投影曲線具有更高的波峰值,而且該區(qū)域曲線具有明顯的線性均勻變化特征。根據(jù)這個特點,找出投影曲線中最大波峰值,將該值的1/2設(shè)定為閾值,以垂直投影曲線的兩側(cè)向中間連續(xù)性查看,找出第一個大于該值的波峰處,對剛才查找到的左側(cè)波峰處的左側(cè)第一個波谷處進行切割,同時對右側(cè)波峰處位于其右側(cè)的第一個波谷處進行切割,取中間所在區(qū)域,判定為車牌區(qū)域。

圖10 水平差分圖像

圖11 車牌垂直投影
在車牌識別圖像處理算法中,可以將一幅圖像中的字符分割為獨立的字符,然后對獨立的字符進行識別,字符識別是模式識別領(lǐng)域內(nèi)的一個重要分支,字符識別的基本思想是特征匹配。特征匹配是指通過分別提取兩個或多個圖像的特征,對特征進行參數(shù)描述,然后運用所描述的參數(shù)來進行匹配的一種算法。通過提取的特征與標準庫進行比較就可以識別出圖像中的字符。
本設(shè)計采用IMAQ OCR下的子VI來實現(xiàn)對字符的識別,OCR的識別是通過提取所采集圖像中字符的特征與前邊字符訓(xùn)練所生成的字符特征庫的比對來識別的[6]。

圖12 LabVIEW前面板及識別結(jié)果
IMAQ OCR字符識別的一般步驟:創(chuàng)建一個OCR任務(wù);通過IMAQ OCR Read Character Set File VI讀取經(jīng)過OCR Training訓(xùn)練所生成的*.abc文件;用IMAQ ReadFile打開所要識別的圖像;IMAQ OCR Read Text 3 VI讀出匹配后的結(jié)果。OCR系統(tǒng)完成識別后及時輸出識別的字符,如圖12所示。
針對環(huán)境這一特殊因素,分別在晴天、陰雨天、霧霾天三種天氣環(huán)境時,將系統(tǒng)安裝在高速公路收費站入口對移動車輛進行測試,識別結(jié)果發(fā)現(xiàn),通過提取單幀圖像的辦法可以有效避免圖像中車輛出現(xiàn)模糊的問題,在晴天時,車牌字符的識別率很高,達到97%左右,在陰雨天和霧霾天時識別率在93%左右。對三種天氣環(huán)境下未識別的車牌進行統(tǒng)計分析,發(fā)現(xiàn)在晴天發(fā)生未識別的車牌主要是由于以下兩種情況導(dǎo)致:一是車輛牌照上出現(xiàn)大面積的覆蓋物遮蓋了所要識別的字符;二是車牌傾斜角度過大,無法完成對車牌精度定位。在陰雨天和霧霾天氣狀況下,除了以上兩種情況原因,還有一些其他車牌也不能識別,原因分析應(yīng)該是天氣環(huán)境影響圖片的曝光度且噪聲干擾過大導(dǎo)致。
實驗結(jié)果表明:雖然該系統(tǒng)受天氣、環(huán)境、照明、速度、車輛狀況及拍攝距離等諸多因素變化的影響,所得到的圖像存在著大量的噪聲和變形,影響其識別率,但同比其他車牌識別系統(tǒng)的識別率與識別速度處于領(lǐng)先地位,且該系統(tǒng)性能穩(wěn)定可靠,對軟件硬件要求不高,達到了預(yù)期目的。
[1]Li Wang,Theo Pavlidis.Direct gray-scale extraction of features for character recognition[J].IEEE Trans on PAMI,2005,15(10):1053-1067.
[2]駱雪超,劉桂雄,馮云慶,等.一種基于車輛特征信息的車牌識別方法[J].華南理工大學(xué)學(xué)報:自然科學(xué)版,2003,31(4):31-35.
[3]張引,潘云鶴.彩色汽車圖像牌照定位新方法[J].中國圖像圖形學(xué)報,2001,6(4):374-377.
[4]章毓晉.圖像處理與分析[M].北京:清華大學(xué)出版社,1998:40-65.
[5]王陽,王竹林.基于LabVIEW的圖像處理技術(shù)[J].兵工自動化,2009,28(1):89-90.
[6]梁瑋,羅劍鋒,賈云得.一種復(fù)雜背景下的多車牌圖像分割與識別方法[J].北京理工大學(xué)學(xué)報,2013,23(1):91-94.