王新杰 黃順 黃益平 張曉姿
摘 要: 車牌識別問題是現(xiàn)代交通工程領(lǐng)域中研究的重點和熱點問題之一,受到人們越來越多的關(guān)注。車牌識別處理一般分為車牌定位、字符分割與字符識別這三個主要部分。本文提出一種車牌照定位、字符分割算法,利用車牌照的顏色、車牌照顏色邊緣化與幾何特征等共同定位車牌。二值化投影法對普通車牌進行粗略的字符分割,并通過字符的寬度、字符幾何特征與字符的個數(shù),進行精確分割,最終分割出有效的車牌字符。實驗數(shù)據(jù)表明該算法能對車牌進行有效的定位與字符分割。
關(guān)鍵詞: 圖像處理;車牌識別;字符分割
1.引言
隨著社會經(jīng)濟的發(fā)展、汽車數(shù)量急劇增加,對交通控制、安全管理的要求日益提高,運用電子信息技術(shù)實現(xiàn)安全、高效的智能交通成為交通管理的主要發(fā)展方向。車牌識別系統(tǒng)的運用大大提高交通管理的效率,有利于交通管理的科學化、規(guī)范化,同時節(jié)省了人力、物力。車牌識別系統(tǒng)廣泛應(yīng)用于電子收費、出入控制、公路流量監(jiān)控、失竊車輛查詢和停車場車輛管理等需要車牌認證的場合;尤其在高速公路收費系統(tǒng)中,實現(xiàn)不停車收費提高公路系統(tǒng)的運行效率,車牌系統(tǒng)更具有不可替代的作用,因而從事車牌技術(shù)的研究具有極其重要的現(xiàn)實意義和巨大的經(jīng)濟價值。在車牌識別系統(tǒng)中對車牌照的定位與車牌字符進行分割是車牌識別的一個重要環(huán)節(jié),車牌照定位與字符分割的結(jié)果將直接影響字符識別正確率。本文將會對車牌字符分割提出一些新的算法及改進。
2.車牌識別的原理
車牌識別系統(tǒng)的基本工作原理為:將攝像頭采集的彩色RGB圖像數(shù)據(jù)傳輸?shù)紻SP。由于彩色RGB圖像數(shù)據(jù)包含大量顏色信息,不僅會占用MCU太多的存儲空間而且還會降低系統(tǒng)的執(zhí)行速率,因此通常先需要將采集過來的彩色數(shù)據(jù)轉(zhuǎn)化為灰度圖像,以加快系統(tǒng)處理速度。得到灰度圖像,進行濾波等預(yù)處理,然后邊緣提取,由車牌定位算法找出車牌,取出車牌,用字符分割將車牌字符分割出來,同時將分割的字符縮放到與模板相同的像素點,然后進行二值化與模板進行差值比對,得到最相似的字符,最終得到車牌信息。
3.車牌照定位
3.1 顏色法車牌粗定位
經(jīng)過攝像頭提取圖片后進行車牌圖片預(yù)處理,將預(yù)處理后的車牌圖片RGB模型轉(zhuǎn)換為HSI模型[1]。H表示色調(diào)、S表示飽和度、I表示亮度,模型轉(zhuǎn)換公式如(1)所示。利用車牌的顏色特征進行車牌的粗略定位。普通車牌底色為藍色,因此只需將符合車牌顏色特征的區(qū)域篩選出來。在大量的測試數(shù)據(jù)中得到符合藍色車牌條件;則當像素點滿足公式(2)時將二值化圖像中的此像素點置1,不滿足時置0。
3.2藍白邊緣化與車牌幾何特征進行區(qū)域篩選
使用顏色邊緣檢測篩選車牌區(qū)域。將車牌照原圖的藍白邊緣像素點置成1,其它像素點置成0,得到邊緣化二值圖像。邊緣化方法采用從左往右跳變掃描法。從左往右依次掃描,當像素點的HSI從滿足車牌藍色點到像素點HSI不滿足車牌藍色點作為一個邊緣點。將此邊緣點置1,其它置0,如公式(3)所示,得到藍白邊緣化圖片。然后使用形態(tài)學開閉處理勾勒出車牌所在區(qū)域的輪廓,根據(jù)車牌照的幾何特點的先驗知識去除不滿足要求的輪廓,最后得到車牌區(qū)域的輪廓位置。
3.3車牌提取
使用所得到車牌輪廓濾除干擾區(qū)域,得到車牌的唯一所在位置。根據(jù)的輪廓位置將二值化圖像的干擾區(qū)域全部置0。使用水平投影得到車牌照的上下位置坐標,使用垂直投影方法得到車牌照的左右位置坐標。水平投影方法:從左往右依次掃描二值化圖像,記錄一行中白色像素點的個數(shù),最后將白色像素點個數(shù)進行水平投影。設(shè)置閾值,當像素點的個數(shù)超過閾值時,即得到車牌照的上下邊框位置。垂直投影方法:從上往下依次掃描二值化圖像,記錄一列中白色像素點的個數(shù),最后將白色像素點進行垂直投影。設(shè)置閾值,當像素點的個數(shù)超過閾值時,即得到車牌照左右邊框的位置。最后根據(jù)具體位置在原圖中提取出車牌照。
4.字符分割
4.1改進垂直投影粗分割
本文使用一種由粗到細的分割方法。使用二值化車牌照的垂直投影、車牌字符的個數(shù)、車牌字符的寬度與高度的比例等先驗知識相結(jié)合的方法進行車牌字符的分割[2]。將提取出來的車牌圖片進行亮度均衡化、灰度化、二值化、柳丁去除和車牌字符第三個白點的去除等預(yù)處理,然后進行字符分割。對預(yù)處理后的二值化車牌照進行垂直投影,傳統(tǒng)的垂直投影法使用列方向黑色像素點的個數(shù)進行垂直投影,這種方法對于有污染的車牌分割效果并不好,因此使用差值垂直投影法進行字符的分割。從上往下逐行掃描車牌照二值圖像,當遇到黑色像素點時,記錄位置為i1。然后由下往上掃描,當遇到黑色像素點的位置i2,此列的垂直投影高度h=i1-i2。轉(zhuǎn)到下一列繼續(xù)掃描。這種投影方法能有效的解決因污染所帶來的干擾。設(shè)置一個閾值r,本文中r=2,當一列中的投影高度h小于r時,此列為字符的間隔列。使用此方法粗略分割出所有字符邊界,記做LPosition[i], RPosition[i]。此次分割出來的字符包括完整字符、干擾字符與車牌邊框等。
4.2根據(jù)先驗知識進行字符細分割
每個字符的寬度為BUFF[i],BUFF[i]=RPosition[i]- LPosition[i];車牌高度為CharHeight;相鄰字符寬度差為CharDif。根據(jù)經(jīng)驗值當BUFF[i]>CharHeight/3.4并且BUFF [i]< CharHeight時表示車牌字符寬度,當相鄰的兩個字符寬度在|CharDif|<3時表示這兩個字符為車牌字符寬度[3]。將滿足所有條件的字符寬度相加除以滿足條件字符個數(shù)得到車牌字符的寬度CharWidth。
從左往右掃描首先找到第一個滿足|(BUFF[i]- CharWidth)|<3的字符記char1。假設(shè)當車牌第一個字符為左右分開結(jié)構(gòu)的字符時(如陜、川等),此時得到的char1為車牌的第二個字符。當車牌第一個字符為連續(xù)的字符時,此時的char1為車牌的第一個字符。從char1向右搜索第二個滿足上述條件的字符記做char2。根據(jù)經(jīng)驗知道,車牌第二個與第三個字符之間的間隔比其他字符間隔要寬2.8倍。根據(jù)車牌高度得到閾值Q,當char2與char1的差小于閾值Q時確定char1是車牌字符的第一個字符,char2是車牌字符的第2個字符。此時根據(jù)字符寬度CharWidth向右掃描依次得到剩下的字符char3, char4,char5,char6,char7。當char2與char1的差大于閾值Q時得到,char1是車牌字符的第二個字符,char2是車牌字符的第三個字符。根據(jù)字符寬度CharWidth從char1向左掃描得到車牌的第一個漢字字符,再次根據(jù)char2,向右邊掃描依次得到剩下的4個車牌字符。
此方法能夠解決大部分第一個漢字字符為左右偏旁、字符斷裂、字符粘連、左右邊框殘留等易分割出錯的問題。
5.結(jié)論
本文對車牌定位、字符分割提出了一種由粗到細的定位與分割算法。利用車牌照的顏色紋理特征,車牌照的幾何大小、形狀等共同定位車牌,該方法能有效的濾除因光照、其他干擾所帶來的噪聲,對于車牌定位有較高的準確性。在字符分割同樣使用由粗到細的算法,該算法對于左右偏旁漢字具有很好的分割效果在實際應(yīng)用中有一定的參考價值。
參考文獻
[1]康健新.基于圖像的車牌識別系統(tǒng)的設(shè)計和實現(xiàn)[D].吉林大學,2014.
[2]謝偉生.車牌定位及字符分割算法的研究與實現(xiàn)[D].西南交通大學,2010.
[3]李云.車牌定位與字符分割算法的研究及實現(xiàn)[D].電子科技大學,2010.