寧 蒙,張 勇,牛常勇
(鄭州大學(xué) 信息工程學(xué)院,河南 鄭州450004)
一個車牌識別系統(tǒng)的字符分割準(zhǔn)確度直接影響整牌識別率[1],目前常用的字符分割方法有垂直投影法、基于連通域的分割法、基于模板匹配的算法等[2-4]。垂直投影法對車牌傾斜較為敏感,不能正確分割傾斜度較大的車牌,容易造成字符斷裂及粘連的情況,雖然可通過Hough變換等方法對車牌進行旋轉(zhuǎn)校正,但該方法只適用于有水平傾斜的情況,不適用于垂直傾斜及字符扭曲的情況,并且要求車牌質(zhì)量良好;而連通域法雖然對車牌傾斜不敏感,但是這種方法不適用于有字符斷裂的情況,特別對于漢字的分割影響較大,并且圖像二值化時難免會受噪聲干擾 (如光照不均勻,對比度低等),造成字符斷裂及粘連,從而影響分割;模板匹配法需要檢測出的車牌大小符合模板要求,并且即使符合模板要求,對字符傾斜的車牌效果仍然不理想。本文使用一種基于低秩矩陣恢復(fù)的方法對圖像進行旋轉(zhuǎn)校正,并使用一種改進的niblack 算法對圖像進行二值化,有效解決車牌因?qū)Ρ榷鹊?、模糊,及光照不均勻造成的二值化效果不理想,通過多次尋找最優(yōu)閾值的二分法對二值化圖像分割,并通過模板校正進行二次尋找最優(yōu)分割點,能夠顯著提高車牌分割準(zhǔn)確率。
在實際應(yīng)用中,由于檢測到的車牌往往具有傾斜性,且易受到光照不均勻、泥塵、邊框、鉚釘?shù)鹊挠绊懀趯嚺七M行分割之前,有必要對其進行預(yù)處理,包括車牌的旋轉(zhuǎn)校正,對車牌圖像進行去噪并進行二值化處理。
根據(jù)車牌區(qū)域的傾斜情況,大致可分為3 種:水平傾斜、垂直傾斜、復(fù)合傾斜[5],如圖1所示。
圖1 3種傾斜方式
傳統(tǒng)的旋轉(zhuǎn)校正法為Hough變換法,該方法通過檢測邊框線或字符間的方向性來確定傾斜角,但對噪聲較大,對比度較低的圖像無法檢測到傾斜直線。我們觀察到的車牌圖像往往是原始車牌經(jīng)過一系列的仿射或投影變換,再加上隨機幅值任意大但是分布稀疏的誤差得到的,假設(shè)原始車牌圖像為A,稀疏誤差為E,相應(yīng)的變換為τ,觀察到的圖像為D,則有
其中A 與E 是未知的,rank(A)<rank(D)?;謴?fù)D 的低秩結(jié)構(gòu)A,并找到相應(yīng)的變換τ 即可完成校正。Zhang,Ganesh等[6]提 出 基 于TILT (transform invariant low-rank textures)算法,使用交替方向方法 (alternating direction methods)解決該優(yōu)化問題,從而找到圖像低秩部分A,以及相應(yīng)的變換τ,完成對圖像的校正。找到相應(yīng)的變換τ為關(guān)鍵,而仿射變換τ 有多種,如旋轉(zhuǎn)、水平剪切、垂直剪切,幾個仿射變換的合成仍舊是一個仿射變換,只要找到相應(yīng)的逆仿射變換即可對原圖像進行低秩恢復(fù),即
考慮使用貪心算法進行分級處理,即將變換τ 分解為旋轉(zhuǎn)、水平剪切、垂直剪切的合成。首先將圖像進行一定范圍內(nèi)的旋轉(zhuǎn)變換,找到代價最低(使圖像秩最低)的旋轉(zhuǎn)變換作為局部最優(yōu)值,將該變換作為第二級水平剪切的初始變換,基于該初始變換,在一定范圍內(nèi)對圖像進行水平剪切變換,同樣找到代價最低的水平剪切變換作為第二級局部最優(yōu)值,基于該局部最優(yōu)值作為第三級垂直剪切的初始變換,用同樣的方法找到第三級的局部最優(yōu)值作為τ,最后對原始圖像進行τ變換即可完成校正,具體算法見表1。
圖2為車牌旋轉(zhuǎn)校正效果。
圖2 車牌旋轉(zhuǎn)校正
圖像二值化的關(guān)鍵因素為閾值的選取,直接影響到二值化后的圖像是否會出現(xiàn)字符斷裂、粘連及噪聲點現(xiàn)象。根據(jù)閾值的運算范圍可分為全局閾值法與局部閾值法。全局閾值法算法簡單,對整幅圖采用一個閾值進行處理,適用于光照均勻、對比度高的圖像,傳統(tǒng)的全局閾值法有Otsu法[8],峰谷法、迭代法等。由于自然場景下車牌往往受到光照不均勻等環(huán)境因素的影響,全局閾值法往往不能運用于實際。與全局閾值法不同,局部閾值法則是考察每個像素點的鄰域來決定每個點的閾值,典型的局部閾值方法有Bernsen法[9]、平均梯度法、niblack法[10]等。局部閾值法可以在一定程度上解決在光照不均勻的情況下使用全局閾值法進行二值化效果不佳的情況,但局部閾值法并不能保證字符筆畫的連通性,并且容易造成偽影現(xiàn)象,圖3展示了各種方法的二值化效果。
表1 貪心算法尋找最優(yōu)變換
圖3 全局法與局部法二值化效果
圖3可以看出,雖然局部閾值法在處理光照不均勻的圖像上要優(yōu)于全局閾值法,但是該方法由于窗口大小選取的問題,很容易出現(xiàn) “偽影”現(xiàn)象,這是由于過度夸大像元鄰域灰度的變化,把不均勻灰度分布的背景分割到目標(biāo)中去。這里首先考慮對圖像進行同態(tài)濾波處理,壓縮圖像亮度,增強圖像對比度,然后使用改進的niblack算法對圖像進行二值化處理。
1.2.1 同態(tài)濾波處理
從圖像的形成及其光特性來看,一幅圖像是由光源的照度分量i(x,y)以及目標(biāo)場的反射分量r(x,y)組成,即
同態(tài)濾波將灰度值看成照度及反射率的產(chǎn)物,由于照度相對較小,可以看作圖像的低頻成分,而反射率是高頻成分,通過分別處理照度和反射率對像元灰度值的影響達到揭示陰影區(qū)。為了能夠分別處理這兩個函數(shù),對式 (3)進行取對數(shù)處理
對式 (4)兩邊分別進行傅里葉變換得到
這樣既可通過一個濾波函數(shù)H (u,v)來控制其高頻與低頻成分即
這樣便可分別對圖像高頻部分與低頻部分進行處理,這里為減少因圖像光照不足、對比度低、光照不均勻?qū)D像質(zhì)量的影響,選用指數(shù)型高通濾波器,其標(biāo)準(zhǔn)形式為
其中D(u,v)= ((u-u0)2+ (v-v0)2)1/2,表示 (u,v)到濾波中心 (u0,v0)的距離。這里引入高頻增益Rh>1,與低頻增益Rl<1,來抑制低頻,增強高頻,使圖像對比度增強,并引入常數(shù)c控制H(u,v)斜面銳化,其形式為
對濾波后的傅里葉變換函數(shù)進行反傅里葉變換,并以e為底取指數(shù),便可得到增強后的圖像,如圖4所示。
圖4 同態(tài)濾波增強處理
1.2.2 改進的niblack算法
niblack算法根據(jù)每個像素點一定鄰域內(nèi)均值和標(biāo)準(zhǔn)差來確定其局部閾值,其實現(xiàn)方法為
其中T(x,y)為原圖像 (x,y)處的閾值,m(x,y)與s(x,y)分別為該點的局部均值與局部標(biāo)準(zhǔn)差,該方法對k值較為敏感,很難找到唯一的k值對每一幅圖效果都好,因此使用固定的k值往往不能取得很好的效果。Zhang,Tan[11]對niblack算法進行了改進,閾值計算公式為
k與R 均為經(jīng)驗參數(shù),這里k取-0.2,R 取10,為了處理邊界像元,對原始圖像邊界進行鏡面擴展。與原始算法相比,改進的算法使用經(jīng)驗參數(shù)k 和R 來降低對噪聲的敏感度,具體的二值化方法為
其中f(x,y)為原始圖像,bw(x,y)為二值化后的圖像。本文考慮首先對圖像做同態(tài)濾波處理,將圖像灰度化,提高圖像對比度,然后使用改進后的niblack算法對圖像進行二值化,圖5所示為圖3 (a)使用同態(tài)濾波處理及改進的niblack算法結(jié)合后的二值化效果。
圖5 預(yù)處理后的二值化效果
可以看出,該方法可以在一定程度上克服偽影現(xiàn)象。
傳統(tǒng)的車牌分割是利用車牌圖像二值化后的投影進行的[12],該方法雖然簡單,但是其通過檢測字符間白色像素的波谷作為閾值來確定分割點,并且當(dāng)車牌扭曲及傾斜時易出現(xiàn)字符斷裂與粘連的情況發(fā)生,并對二值化效果要求較高,傳統(tǒng)的二值化方法對模糊圖像及光照不均勻圖像二值化效果不理想;模板匹配法雖然能夠解決字符粘連及鉚釘干擾等問題,但是其要求車牌圖像尺寸必須盡量規(guī)范。針對以上情況,提出一種二分法對投影向量進行多次尋找閾值來確定分割點,并用模板對找到的分割點進行校準(zhǔn)的方法。
對車牌進行水平分割,首先使用上文提到的方法對車牌進行預(yù)處理。分割之前對處理過的二值化圖像進行二次清理,標(biāo)記所有聯(lián)通域,并清除白色像素點小于整牌面積0.2%的聯(lián)通域,進一步排除噪聲干擾。對處理過后的二值化車牌做水平投影,車牌高度為r,長度為c,設(shè)定水平閾值為hor_thr=c/5,從車牌圖像上邊界到r/2處搜索最后一個水平投影值小于hor_thr的點的位置,作為字符區(qū)域的上邊界;同理,從r/2處到車牌底部搜索第一個水平投影值小于hor_thr 的點的位置,作為字符區(qū)域的下邊界。將二值化圖像上端到檢測到的字符上邊界,以及檢測到的字符下邊界到圖像底端的區(qū)域清零,進一步減小上下邊框?qū)Υ怪狈指钤斐傻挠绊憽?/p>
首先根據(jù)標(biāo)準(zhǔn)車牌的長度及最佳分割點定義模板框架,并設(shè)定偏差閾值,考慮到除第二個字符與第三個字符之間的間隙較大,其余字符與字符間隔相等,故設(shè)置兩個偏差閾值off_thr1,off_thr2。若使用二分法得出的分割線與相應(yīng)模板框架分割線偏差距離大于偏差閾值,則使用框架分割線強行分割。
定義已分割出的部分為子圖,其中長度最長為最大長度子圖bwmax,對bwmax進行垂直投影,找到最優(yōu)分割閾值點,將bwmax分為兩部分,并按序加入到子圖序列中,重新找最大子圖。經(jīng)過6次迭代得出6條待確定分割線,同時設(shè)定全局閾值,分別找到原始投影向量第一個和最后一個大于該閾值的點,作為左右初始分割邊界,最后與模板框架進行對比,校正分割線。算法步驟如下:
(1)初始最大子圖為原始車牌圖像并作垂直投影,求其長度Lmax并將其加入到子圖長度序列seq中,定義全局閾值glb_thr,將原始圖像最左端及最右端作為左右初始分割邊界,定義模板框架frame= [8/440,67/440,135/
440,203/440,260/440,317/440,374/440,433/440],
設(shè)定偏差閾值off_thr1,off_thr2;
(2)求子圖個數(shù)m,計算每個子圖的長度,并找到長度最大的作為最大子圖,其長度為lenmax,并記錄其在seq中的位置;
(3)對最大子圖作垂直投影,并從其中點位置分別向兩邊lenmax/4.5處搜索出最小值minval,并記錄該最小值所處位置,并從該位置將最大子圖分為兩部分,并分別求兩部分長度,按序加入到seq中;
(4)若迭代次數(shù)超過6,轉(zhuǎn) (5),否則轉(zhuǎn) (2);
(5)從原始投影圖中分別找到第一個和最后一個大于全局閾值glb_thr的位置;若找到的第一個位置與初始左邊界不重合,則清除原始左邊界分割點,將找到的第一個位置作為新左邊界分割點,否則保持原左邊分割點不動;若找到的最后一個位置與初始右邊界不重合,則清除原始右邊界分割點,將找到的最后一個位置作為新右邊界分割點,否則保持原右邊界分割點不動。8個待校準(zhǔn)分割點均已找到;
(6)原投影向量按frame給出的比例得到8個模板分割點位置,對應(yīng)的與以上步驟得到的8 個分割點作比較,若距離超過相應(yīng)的偏差閾值則用模板分割點代替之 (第三條分割線對應(yīng)的偏差閾值為off_thr2,其余的對應(yīng)off_thr1),否則保持原位置不動,最終得到8個垂直分割點。
本實驗使用三組數(shù)據(jù)集,均來自鄭州某下穿隧道口,其中200張來自白天,200張來自夜晚,200張比較模糊或光照不均勻。如圖6所示為部分?jǐn)?shù)據(jù)集樣本。
圖6 實驗數(shù)據(jù)集
實驗數(shù)據(jù)集中,前兩行來自白天,中間兩行來自夜晚,后兩行為比較模糊及光照不均勻的車牌。
本實驗分三組進行,分別測試來自白天、夜晚、模糊及光照不均勻場景下的車牌,圖7展示了各個場景下的分割效果。
圖7 各種場景分割效果
圖7中第一列為原始數(shù)據(jù),第二列為旋轉(zhuǎn)校正及同態(tài)濾波后的灰度圖像,第三列為使用改進后的niblack算法進行二值化并清除雜質(zhì)后的圖像,第四列為最終分割效果。其中前兩行數(shù)據(jù)來自白天,光照良好,中間兩行數(shù)據(jù)取自夜晚,其中一幅燈光較暗,另一幅為強光照,后兩幅分別為對比度較低與光照不均勻的情況,表2統(tǒng)計的各種場景下車牌分割的準(zhǔn)確率。
表2 各種場景下車牌分割準(zhǔn)確率
本文運用低秩矩陣恢復(fù)對圖像做旋轉(zhuǎn)校正及改進的niblack算法對圖像二值化完成預(yù)處理,并提出一種基于模板校正的二分法的車牌分割方法,通過3種不同場景下的實驗,分割準(zhǔn)確率均達97%以上,解決了一般垂直投影法因車牌傾斜、對左右結(jié)構(gòu)字體敏感、對模糊及光照不均勻圖像二值化效果不佳等造成的錯切及字符粘連現(xiàn)象,在一定程度上提高了車牌分割的魯棒性,可運用于自然場景下。
[1]Singh SP,Tripathy DP,Ranjith PG.Performance evaluation of cement stabilized fly ash-GBFS mixes as a highway construction material [J].United Kingdom: Waste Management,2008,28 (8):1331-1337.
[2]RAN Lingfeng.An algorithm of characters segmentation based on vertical projection for license plate [J].Communications Technology,2012,45 (4):89-91 (in Chinese). [冉令峰.基于垂直投影的車牌字符分割方法 [J].通信技術(shù),2012,45(4):89-91.]
[3]GAN Ling,LIN Xiaojing.License plate segmentation based on connected component extraction [J].Computer Simulation,2011,28 (4):336-339 (in Chinese). [甘玲,林小晶.基于連通域提取的車牌字符分割算法 [J].計算機仿真,2011,28(4):336-339.]
[4]QIAN Cheng,LU Jue.Research of characters segmentation technology in LPR [J].Science Paper Online,2011,6 (1):64-66 (in Chinese).[錢成,盧玨.車牌識別中字符分割的研究 [J].中國科技論文在線,2011,6 (1):64-66.]
[5]Pan Meisen,Yan Junbiao,Xiao Zhenghong.Vehicle license plate character segmentation [J].International Journal of Automation and Computing,2008,5 (4):425-432.
[6]Zhang Zhengdong,Arvind Ganesh,Xiao Liang,et al.TILT: Transform invariant low rank textures[J].International Journal of Computer Vision manuscript,2010,99 (1):1-24.
[7]Chandrasekaran V,Sanghavi S,Parrilo P,et al.Rank sparsity incoherence for matrix decomposition [J].United States:SIAM J Optim,2011,21 (2):572-596.
[8]Xu Xiangyang,Xu Shengzhou,Jin Lianghai,et al.Characteristic analysis of Otsu threshold and its applications[J].Pattern Recognition Letters,2011,32 (7):956-961.
[9]HUANG Teng,SHI Pengfei.Locating vehicle license plates in a non-uniformly illuminated environment[J].CAAI Transactions on Intelligent Systems,2009,4 (5):421-426 (in Chinese).[黃騰,施鵬飛.非均勻光照下的車牌定位方法 [J].智能系統(tǒng)學(xué)報,2009,4 (5):421-426.]
[10]Cheng Guojian,Lu Feiyuan,Pan Huaxian,et al.Research on vein image preprocessing based on niblack algorithm[C]//Series of Information and Management Sciences,2010:164-167.
[11]Zheng Zhang,Tan CL.Restroration of images scanned from thick bound documents[C]//Proceedings International Conference on Image Processing,2001:1074-1077.
[12]Zheng Lihong,He Xiangjian,Bijian Samali,et al.An algorithm for accuracy enhancement of license plate recognition[J].Journal of Computer and System Sciences,2013,79(2):245-255.