《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計應(yīng)用 > 基于形態(tài)學(xué)微分的車牌字符分割算法
基于形態(tài)學(xué)微分的車牌字符分割算法
來源:微型機(jī)與應(yīng)用2012年第8期
金百東, 李文舉
(遼寧師范大學(xué) 計算機(jī)與信息技術(shù)學(xué)院, 遼寧 大連116081)
摘要: 提出了基于形態(tài)學(xué)微分的車牌字符分割算法。首先運用形態(tài)學(xué)微分算法獲取車的邊界,然后通過巧妙選擇連通區(qū)域進(jìn)行深度搜索即可直接獲得車牌每個字符的矩形區(qū)域。本方法省去了一般車牌識別中的車牌定位部分,對有一定傾角的車牌也有一定的適應(yīng)能力。
Abstract:
Key words :

摘  要: 提出了基于形態(tài)學(xué)微分的車牌字符分割算法。首先運用形態(tài)學(xué)微分算法獲取車的邊界,然后通過巧妙選擇連通區(qū)域進(jìn)行深度搜索即可直接獲得車牌每個字符的矩形區(qū)域。本方法省去了一般車牌識別中的車牌定位部分,對有一定傾角的車牌也有一定的適應(yīng)能力。
關(guān)鍵詞: 形態(tài)學(xué);字符分割;車牌識別;深度搜索

    隨著信息技術(shù)的飛速發(fā)展,智能交通系統(tǒng)的應(yīng)用越來越重要,如小區(qū)進(jìn)出車輛管理、十字路口車輛擁堵情況預(yù)測和車輛跟蹤等。智能交通系統(tǒng)的一個重要研究方向是車牌識別。車牌識別一般分為車牌定位、字符劃分和字符識別3部分。其中車牌定位是最關(guān)鍵、最難實現(xiàn)的部分。目前車牌定位常用方法有:(1)彩色分割,適合于藍(lán)底白字、黃底黑字車牌,但如果車牌與車身顏色相近或者車牌為白底黑字、黑底白字,就顯得有局限性了; (2)灰度微分圖像+形態(tài)學(xué)處理,適合于簡單邊界,若車牌附近邊界復(fù)雜,則不易識別出真實車牌邊界;(3)神經(jīng)網(wǎng)絡(luò),計算量大,因此真正用于實時車牌識別還是非常難的;(4)基于紋理的方法,主要利用車牌區(qū)域灰度波動范圍大的特點,但如何完全量化波動特點,盡可能大地適應(yīng)各種邊界條件也是非常不容易的。
    一般來說,車牌區(qū)域識別是進(jìn)行車牌字符分割的先決條件。而本文提出的算法巧妙越過了這一環(huán)節(jié),直接進(jìn)行車牌字符分割,獲得了每一個字符的矩形坐標(biāo)區(qū)域,運行速度快,可以滿足車牌識別實時性的需要。
1 車牌字符分割原理
    本算法是針對灰度圖像的。為了說明清晰,以自繪的理想情況中單個車牌字符“5”為例加以說明,背景為黑色,代表車牌底色。
    從生理學(xué)上來說,人們之所以能認(rèn)清車牌,是因為車牌中每個字符能強烈刺激視網(wǎng)膜。因此,可以得出,每個字符與其周圍的車牌底色一定是差別較大的,對比度越大,字符越清晰。再如在夜晚時,由于光線較暗,人們可能看不清車牌區(qū)域,但卻有可能看清車牌中的每個字符。
    從上述兩點來看,實現(xiàn)智能車牌識別應(yīng)從車牌單個字符識別開始。若從車牌區(qū)域定位開始,則一定會遇到各種難處理的邊界條件。
    車牌字符提取的根本目的是獲得每個字符的矩形坐標(biāo),算法思想如下。
    (1)選擇微分算法。對車牌圖像進(jìn)行微分操作,該微分操作必須能獲得清晰的字符邊界圖像。圖1中,左側(cè)是原始圖像,右側(cè)是微分后的圖像。

    (2)搜索連通區(qū)域。有很多人選擇圖1右側(cè)圖“5”的外邊界,即“亮”的區(qū)域進(jìn)行搜索,但這卻是不好的。由于實際車牌的復(fù)雜性,“5”的外側(cè)“亮”區(qū)域有可能與其他“亮”的區(qū)域是相通的。因此應(yīng)該選擇“暗”的區(qū)域進(jìn)行搜索。圖1中“暗”區(qū)有兩個。通過設(shè)置車牌字符最小寬度、高度和長寬比,很明顯判定出車牌底色連通暗色區(qū)域非字符區(qū)域(即“5”字符內(nèi)部暗區(qū)域),箭頭指向區(qū)域是車牌字符區(qū)域。
    可能有研究者懷疑,“5”字內(nèi)部暗區(qū)域一定會與車牌暗區(qū)域分開嗎?從理論上講是肯定的。因為前文中已述,車牌字符區(qū)域與車牌底色對比度是比較大的,因此微分后字符內(nèi)區(qū)域與車牌底色區(qū)域一定由微分“亮”邊界隔開了。
    (3)進(jìn)行線性擬合運算。通常車牌有7個字符,首字符是漢字,不一定是單連通字符;后6個字符在0~9、A~Z之間,是單連通字符。因此按步驟(1)、(2),理論上可獲得6個字符的矩形區(qū)域,但由于車牌復(fù)雜性,實際上可能獲得少于6個字符的矩形區(qū)域。此時只須根據(jù)已有字符的矩形坐標(biāo)進(jìn)行左外推、右外推、中間插值,即可獲得未知的字符矩形坐標(biāo)。
2 關(guān)鍵技術(shù)
2.1形態(tài)學(xué)微分算法

    車牌是圖像中很小一部分,微分算子必須考慮到細(xì)節(jié)部分。Sobel、Prewitt和Laplace算子均是方位算子,對檢測某方位直線等非常有效。但由于車牌字符的方位是不確定的,比如“1”是豎直的,“5”既有水平的、豎直的,也有其他方向的,因此無法確定具體的微分算子矩陣。Canny算子雖然效果較好,但計算量大,還要確定劃分閾值的上限和下限。比較簡便易行的是形態(tài)學(xué)微分算法。
    
    圖2(a)是實際圖像,圖2(b)是形態(tài)學(xué)微分圖像。可以看出,微分圖像比較好地反映了每個字符的邊緣。
    圖2(b)是圖2(a)膨脹一次減去圖2(a)的結(jié)果。其實可以根據(jù)現(xiàn)場情況設(shè)定膨脹次數(shù)(>1),這樣把一些無關(guān)的暗區(qū)域或亮區(qū)域都連通了,減少了后續(xù)的搜索工作量。

 

 

    隨著攝像技術(shù)的發(fā)展,已實現(xiàn)了高清采集,原始采集圖無須進(jìn)行濾波。實驗發(fā)現(xiàn),對原始圖像分別進(jìn)行平滑、中值及高斯濾波后,再進(jìn)行形態(tài)學(xué)微分,結(jié)果圖都不如直接在原圖上進(jìn)行形態(tài)學(xué)微分的結(jié)果圖清晰。這仍是因為車牌在整個圖像中所占比例太小了,無論何種濾波都削弱了車牌字符的邊界部分,只有原圖是對比度最大的。
2.2 微分圖像二值化
    為了方便跟蹤微分圖像,要對其進(jìn)行二值化處理。與Sobel、Prewitt和Laplace微分圖像相比,形態(tài)學(xué)微分圖像顯得更潔凈,黑白分明,在直方圖上呈現(xiàn)出典型的距離較遠(yuǎn)的雙峰特征,因此用灰度平均值作為閾值即可(設(shè)圖像為M行N列):
  
   
    當(dāng)然,也可以用OSTU類間最大方差法、類間最大交叉熵法或類內(nèi)最小模糊散度法等求閾值,這些方法算出的閾值二值化效果并沒有與本文中論述效果有太明顯的差別,這是因為形態(tài)學(xué)微分后結(jié)果圖非常潔凈的緣故,因此用累積均值作為閾值也就足夠了,還節(jié)省了時間。
2.3 連通域搜索獲得字符矩形坐標(biāo)
    我國常用車牌有藍(lán)底白字、黃底黑字、白底黑字和黑底白字4種。藍(lán)底白字和黑底白字車牌經(jīng)過微分、二值化后字符內(nèi)邊界是黑色(0);黃底黑字和白底黑字車牌經(jīng)過微分、二值化后字符內(nèi)邊界是亮色(255)。因此,搜索要考慮這兩種情況。若對暗區(qū)進(jìn)行搜索沒有找到車牌字符的連通域,說明不是藍(lán)底白字和黑底白字車牌,只需要對該二值圖像按亮區(qū)進(jìn)行搜索即可。搜索算法如下:
    while(自下向上,從左至右掃描,若有連通域(暗或亮),
    置成當(dāng)前連接域)
        {
                 BFS層次遍歷連通域,得矩形邊界
                     及連通域內(nèi)累積像素點數(shù)
            若參數(shù)滿足字符內(nèi)約束條件,則把矩形坐標(biāo)
                加入向量V中
        }
    遍歷矩形向量V,找出滿足字符間約束條件的矩形元
    素坐標(biāo)集合A。若A元素不足7個,則應(yīng)用線性擬合找
    出未知車牌字符坐標(biāo)。
    算法中“字符內(nèi)約束條件”是指矩形窗口長寬的極小值、極大值、長寬比范圍及連通域內(nèi)像素數(shù)范圍等;“字符間約束條件”是指車牌字符的高度應(yīng)該相近,矩形坐標(biāo)應(yīng)該集中在一個區(qū)域中。
    對圖3(a)二值圖像進(jìn)行了搜索,得到的車牌字符分割圖像如圖3(b)所示(用白色標(biāo)志),可以很清楚地看出找到每個車牌的矩形坐標(biāo)。當(dāng)然圖像上還有用白色標(biāo)識出的其他矩形區(qū)域,通過簡單約束條件就可以消除掉。
2.4 有效區(qū)域設(shè)定
    車牌區(qū)域在圖像中占有很小的一部分,很容易受到其他因素干擾,影響車牌識別的精確度。通過對大量車牌圖片的分析可以得出,要想識別出車牌,車牌圖像應(yīng)有一定大小并要在整個圖像的下半部分。因此,之前的所有算法及其功能僅針對圖像下半部分操作,無須涉及上半部分圖像元素,最大限度地屏蔽了上半部分圖像元素對車牌識別的影響。
    總之,可以根據(jù)實際需要設(shè)置一定范圍的有效區(qū)域,提高車牌識別效率。
3 有一定傾角示例
    本文算法對有一定傾角的車牌也是適用的。圖4(a)是原始彩色圖像,圖4(b)是將圖4(a)轉(zhuǎn)化為灰度圖像,圖4(c)是形態(tài)學(xué)微分、二值化后圖像,圖4(d)是根據(jù)圖4(c)進(jìn)行連通域跟蹤、字符矩形定位,并用白色顯示在原始彩色圖像上,可以用簡單的分類方法把偽字符的白色矩形去掉。

    本文運用形態(tài)學(xué)微分算法,通過巧妙選擇連通區(qū)域直接獲得了車牌每個字符的矩形區(qū)域,省去了常規(guī)方法中車牌定位功能,提高了時間效率。而且,本算法本質(zhì)上是對車牌字符內(nèi)部的連通域進(jìn)行搜索,因此若把這些點的坐標(biāo)都記錄下來,也能很快識別出具體的字符內(nèi)容來。
    當(dāng)然,還有一些問題有待進(jìn)一步研究:(1)車牌字符至少要多大,才能適應(yīng)本算法?(2)車牌字符與車牌底色至少反差多大,才能適應(yīng)本算法?(3)若搜索到的字符矩形區(qū)域少于7個,如何更好地外推出其他字符的位置?(4)如何更好地定義“字符間”約束條件?
參考文獻(xiàn)
[1] 賈曌峰,陳繼榮.基于字符檢測的車牌定位方法[J].計算機(jī)工程,2010,36(3):192-194.
[2] 王成,黎紹發(fā),何凱.基于簡化PCNN的車牌定位算法[J].計算機(jī)工程,2010,36(24):178-179,182.
[3] 張云剛, 張長水. 利用Hough 變換和先驗知識的車牌字符提取法[J]. 計算機(jī)學(xué)報, 2004,27(1):130-135.
[4] 張美多,郭寶龍. 車牌識別系統(tǒng)關(guān)鍵技術(shù)研究[J].計算機(jī)工程, 2007,33(16):186-188.
[5] 李文舉,梁德群,張旗,等. 基于邊緣顏色對的車牌定位新方法[J]. 計算機(jī)學(xué)報,2004,27(2):204-208.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。