張奧祥
摘要:智能交通管理應(yīng)用趨勢(shì)逐步加升,車牌識(shí)別是智能交通中重要的一部分。車牌識(shí)別應(yīng)用于許多場(chǎng)合如停車場(chǎng)管理、小區(qū)門(mén)禁、高速收費(fèi)處等。該文利用圖像處理技術(shù)和MATLAB軟件的使用來(lái)研究車牌的識(shí)別,利用Canny算子進(jìn)行車牌的邊緣檢測(cè),在字符分割中應(yīng)用投影法進(jìn)行分割,應(yīng)用模板匹配進(jìn)行車牌的字符識(shí)別。
關(guān)鍵詞:圖像圖像處理;Canny算子;投影法;模板匹配;MATLAB
中圖分類號(hào):TP3? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)19-0205-03
隨著現(xiàn)代社會(huì)車輛的不斷增多,車牌識(shí)別的重要性不言而喻,車牌識(shí)別的應(yīng)用使得交通運(yùn)輸和管理的效率增長(zhǎng)了許多。車牌識(shí)別技術(shù)近幾十年來(lái)不斷地改進(jìn)、發(fā)展。文中主要把車牌識(shí)別歸納為四大部分:車牌圖像的預(yù)處理、車牌定位、車牌字符分割、車牌字符識(shí)別。
1 圖像預(yù)處理
1.1 圖像灰度化
現(xiàn)代相機(jī),手機(jī)等拍攝設(shè)備所采集的圖片均為彩色圖片,但在車牌識(shí)別中,彩色圖片對(duì)車牌的精確定位并沒(méi)有益處,會(huì)耗費(fèi)大量的時(shí)間和計(jì)算工作,因此我們要對(duì)彩色圖片進(jìn)行灰度化。彩色圖像通過(guò)灰度處理轉(zhuǎn)化為灰度圖像這一過(guò)程叫作圖像灰度化,彩色圖像的每個(gè)像素的顏色由R、G、B三個(gè)分量組成,即紅、綠、藍(lán)三種顏色。每種顏色都有255種灰度值可以進(jìn)行選擇,(0表示黑色,255表示白色)?;叶葓D像就是R、G、B三個(gè)分量灰度值相同的一種特殊圖像。
1.2 圖像去噪
圖像去噪的常用方法為:均值濾波、中值濾波、高斯濾波。均值濾波在對(duì)于邊緣的去噪過(guò)于劇烈,在去噪的同時(shí)對(duì)圖像的部分細(xì)節(jié)也有損壞,反而會(huì)使圖像變得更加模糊,不能很好地去除噪聲點(diǎn)。高斯濾波對(duì)于邊緣噪聲的去除效果欠佳。中值濾波可以很好地去除圖像中的噪聲點(diǎn),但是在夜間的時(shí)候,由于光照強(qiáng)度反光等因素的影響,導(dǎo)致夜間車輛圖像各像素點(diǎn)灰度值差距較大,利用中值濾波進(jìn)行圖像平滑導(dǎo)致濾波之后的灰度值變化較大,圖像有些失真,尤其是車牌區(qū)域,字符的清晰較濾波之前反而變得更加模糊。因此,中值濾波運(yùn)用于夜間車輛識(shí)別系統(tǒng)中還存在一定的缺陷。
本文首先將圖像進(jìn)行高斯濾波處理,對(duì)圖像的像素點(diǎn)附近鄰域的灰度值進(jìn)行相應(yīng)的加權(quán)平均,這樣能有效地消除近似高斯噪聲的噪聲部分,然后對(duì)高斯濾波之后的圖像采取中值濾波處理。既利用了中值濾波對(duì)圖像平滑處理的優(yōu)勢(shì),又解決了中值濾波在夜間對(duì)車牌識(shí)別的一定的缺陷。
1.3 車牌的邊緣性檢測(cè)
不同的圖像灰度值是不同的,常規(guī)情況下邊界處會(huì)有明顯的邊緣,利用此特征可以進(jìn)行圖像的分割。需要注意的是:圖像的邊緣并不等同于物體間的邊界,圖像中像素的值有突變的地方即為圖像邊緣,而物體間的邊界是指在現(xiàn)實(shí)世界中真實(shí)存在與物體之間的邊界。邊緣存在的地方未必存在邊界,同樣,邊界存在的地方不一定有邊緣。現(xiàn)實(shí)場(chǎng)景中的物體是三維的,而圖像只具有二維信息,從三維到二維的投影成像不可避免地會(huì)丟失一部分圖像的信息;此外,光照和噪聲對(duì)成像過(guò)程的影響也是不可避免。
常用的邊緣檢測(cè)算法:(1)Sobel算子;(2)Roberts算子;(3)Laplace算子;(4)Canny算子。設(shè)計(jì)選用Canny算子進(jìn)行車牌圖像的邊緣性檢測(cè)。圖像邊緣作為一種圖像的基本特征,被應(yīng)用于圖像處理的實(shí)際案例中。圖像的邊緣檢測(cè)是獲得車牌輪廓的重要方式。車牌邊緣特征明顯,獨(dú)立存在一定區(qū)域,并且中國(guó)車牌有著特有的背景和尺寸,對(duì)于車牌定位和邊緣的提取都有很大的幫助。
1.4 圖像二值化
圖像的二值化,實(shí)際上就是把圖像上的灰度值設(shè)置為0(黑)或白(255),目的是將圖像的背景和前景分離,達(dá)到僅有黑白的視覺(jué)效果。將256個(gè)亮度等級(jí)的灰度圖像通過(guò)適當(dāng)?shù)拈撝颠x取,然后獲得仍然可以反映圖像整體和局部特征的二值化圖像?;叶鹊燃?jí)有256個(gè),給我們呈現(xiàn)出不同色彩的視覺(jué)效果。本文是對(duì)車牌進(jìn)行識(shí)別,首先我們要通過(guò)處理采集車牌圖像中的信息,對(duì)車牌區(qū)域進(jìn)行定位。因此,在進(jìn)行車牌的邊緣檢測(cè)后,我們需要進(jìn)一步進(jìn)行二值化使車身和車牌分離。
本文選用Otsu算法(最大類間方差法也稱“大津法”)進(jìn)行圖像二值化。其原理是利用圖像的灰度特性,把灰度圖像分成背景和前景(目標(biāo))兩部分。背景和前景之間的類間方差越大,就說(shuō)明構(gòu)成圖像的這兩部分的差別越大,若部分目標(biāo)被誤分為背景或者部分背景被誤分為目標(biāo),將會(huì)導(dǎo)致兩部分差別變小。因此,使類間方差最大的分割意味著錯(cuò)分概率最小。
2 車牌定位
2.1 我國(guó)車牌的特點(diǎn)
我國(guó)的車牌是根據(jù)GA36-2014《中華人民共和國(guó)機(jī)動(dòng)車號(hào)牌》的規(guī)定進(jìn)行機(jī)動(dòng)車的車牌底色和數(shù)字顏色的搭配。我國(guó)的機(jī)動(dòng)車號(hào)牌的種類十分豐富,常見(jiàn)的有黃底黑字車牌、黑底白字車牌、藍(lán)底白字車牌。其中尤為常見(jiàn)的為普通小汽車所掛的藍(lán)底白字車牌,其長(zhǎng)度是440MM,寬度是140MM,由7的字符和一個(gè)點(diǎn)分隔符組成,第一個(gè)字符為漢字,后面6位由字母和阿拉伯?dāng)?shù)字組成;車牌中每個(gè)字符的寬度都為45MM,高度都為90MM,車牌中第二個(gè)字符和第三個(gè)字符的間隔是35MM,其余相鄰的字符間的距離都是15MM。
2.2 車牌定位算法
數(shù)學(xué)形態(tài)學(xué)是由一組形態(tài)學(xué)的代數(shù)運(yùn)算子組成的,包括的基本運(yùn)算有四個(gè): 膨脹、腐蝕、開(kāi)運(yùn)算和閉運(yùn)算,它們?cè)诙祱D像和灰度圖像中各有特點(diǎn)。在這些基本運(yùn)算的基礎(chǔ)上還可推導(dǎo)和組合出各種有關(guān)數(shù)學(xué)形態(tài)學(xué)實(shí)用算法。形態(tài)學(xué)處理文中主要應(yīng)用了開(kāi)運(yùn)算和閉運(yùn)算操作方式。在簡(jiǎn)述開(kāi)、閉運(yùn)算前需要對(duì)膨脹和腐蝕以簡(jiǎn)單介紹下。
膨脹:其實(shí),膨脹就是求局部最大值的操作。按數(shù)學(xué)方面來(lái)說(shuō),其就是求局部最大值的操作。膨脹運(yùn)算在填補(bǔ)圖像各部分小圖像的間隙處理方面非常有益。
腐蝕:腐蝕與膨脹是一對(duì)相反的操作。數(shù)學(xué)角度出發(fā),腐蝕就是求局部最小值的操作。腐蝕運(yùn)算可以有效地清除圖像中無(wú)意義的雜亂小圖像。
開(kāi)運(yùn)算是一種復(fù)合運(yùn)算,其就是圖像先進(jìn)行一次腐蝕運(yùn)算,對(duì)腐蝕后得到的圖像再進(jìn)行膨脹運(yùn)算。
閉運(yùn)算也算是一種復(fù)合運(yùn)算,計(jì)算過(guò)程于開(kāi)運(yùn)算的順序相反,先進(jìn)行膨脹運(yùn)算,再進(jìn)行腐蝕運(yùn)算。
3 車牌字符分割
字符分割環(huán)節(jié)是承上啟下的部分,在上述的車牌定位得到大概的車牌區(qū)域后,接著需要把字符分割出來(lái),進(jìn)而繼續(xù)進(jìn)行下面的字符識(shí)別環(huán)節(jié)。車牌字符分割的目的就是,把定位到的車牌分割成8個(gè)區(qū)域,漢子和后面的6個(gè)字符,把點(diǎn)分隔符去除。只有字符精確的分割出來(lái),在下一環(huán)節(jié)的字符識(shí)別中才能更加準(zhǔn)確。也就是說(shuō),字符分割直接影響字符識(shí)別的結(jié)果。
3.1 車牌校正處理
車牌校正是車牌定位和字符分割不可或缺的環(huán)節(jié)。在車牌的抓拍過(guò)程中可能由于攝像頭一定程度的傾斜,司機(jī)再掛車牌時(shí)造成一定的傾斜,或者由于車牌的損壞造成的獲取的車牌圖像存在一定程度的角度傾斜。車牌整體的傾斜直接導(dǎo)致了,車牌上字符的傾斜,字符間的間隔大小也發(fā)生了改變。所以這種傾斜不僅會(huì)給下一步字符分割帶來(lái)困難,最終對(duì)車牌識(shí)別的正確率造成影響。因此,我們需要對(duì)車牌進(jìn)行校正,車牌最常見(jiàn)的是水平水平方向的傾斜。常用的方法是Hough變換法和Radon變換法。本文使用了Hough變換法對(duì)車牌進(jìn)行校正。
利用Hough變換進(jìn)行車牌邊框的檢測(cè),確定邊框水平線的傾斜角度,根據(jù)傾斜角度,進(jìn)行相應(yīng)的旋轉(zhuǎn),獲得校正后的圖像。具體步驟如下:
(1)圖像預(yù)處理。讀取圖像,轉(zhuǎn)換為灰度圖像,去除離散的噪聲點(diǎn)。
(2)利用邊緣檢測(cè),對(duì)圖像中的水平線進(jìn)行強(qiáng)化處理。
(3)基于Hough變換檢測(cè)車牌圖像的邊框,獲取傾斜角度。
(4)根據(jù)傾斜角度,對(duì)車牌圖像進(jìn)行傾斜校正。
3.2 字符分割預(yù)處理-邊框去除
由于車牌定位時(shí)對(duì)位置的限制并不是十分精確,車牌的上下邊框、鉚釘?shù)葧?huì)有噪聲產(chǎn)生影響字符分割的精確,為了提高分割準(zhǔn)確度,在分割之前需要對(duì)車牌進(jìn)行鉚釘和邊框的去除操作。文中采用統(tǒng)計(jì)白色像素點(diǎn)個(gè)數(shù)的方法去除車牌的上下左右邊框。去邊框后,如圖所示。
3.3 字符分割
字符分割的方法有很多種,沒(méi)有一種是萬(wàn)能的,我們應(yīng)該視我們的實(shí)驗(yàn)而定。常用的字符分割的方法:基于投影法的字符分割、基于模板匹配的字符分割、基于字符輪廓的字符分割等等。文中所使用的字符分割算法為基于垂直投影的字符分割算法。
基于垂直投影的字符分割算法:利用車牌相鄰字符間的空白間隔來(lái)對(duì)字符進(jìn)行切割。其方法的主要流程為首先把處理后的車牌圖像進(jìn)行二值化處理,接著二值化處理;然后再對(duì)此圖像在垂直方向上進(jìn)行投影;通過(guò)投影,會(huì)形成一定的波峰和波谷,然后找到兩峰之間的波點(diǎn)。
4 車牌字符識(shí)別
字符識(shí)別是車牌識(shí)別的最后一步,也可以說(shuō)是整個(gè)車牌識(shí)別體系中最重要的一個(gè)環(huán)節(jié),準(zhǔn)確的識(shí)別字符,最終車牌的識(shí)別成功率才會(huì)提高。在車牌定位、車牌字符分割的成功鋪墊下,在這一環(huán)節(jié),我們只要選擇一個(gè)合適的字符識(shí)別的算法,便可以高效、準(zhǔn)確的識(shí)別字符。常見(jiàn)的字符識(shí)別的方法有:基于字符特征匹配的字符識(shí)別算法、基于神經(jīng)網(wǎng)絡(luò)的字符識(shí)別算法、基于支持向量機(jī)SVM的模式識(shí)別算法和利用模板匹配的字符識(shí)別。
本文利用模板匹配方法對(duì)車牌字符進(jìn)行識(shí)別。其原理簡(jiǎn)單來(lái)講就是創(chuàng)建一個(gè)字符庫(kù),把分割的車牌字符與庫(kù)里的字符進(jìn)行匹配。首先我們根據(jù)我國(guó)的車牌特征,創(chuàng)建一個(gè)字符庫(kù)。序號(hào)0-9為阿拉伯?dāng)?shù)字0-9,序號(hào)10-35為26個(gè)英文字母,36-66為31個(gè)省市包括自治區(qū)的車牌標(biāo)志(此處未包括香港、澳門(mén)自治區(qū),臺(tái)灣地區(qū)),如:北京“京”、安徽“皖”、上?!皽钡鹊?。然后利用MATLAB軟件進(jìn)行算法的使用對(duì)車牌字符進(jìn)行匹配。
5 總結(jié)與展望
通過(guò)運(yùn)用圖像圖形處理的相關(guān)知識(shí)以及MATLAB的應(yīng)用,完成了車牌識(shí)別的整個(gè)過(guò)程。文中把車牌識(shí)別概括為四大部分:車牌圖像的預(yù)處理、車牌的定位、車牌字符分割和車牌字符識(shí)別,四個(gè)部分依次進(jìn)行,環(huán)環(huán)相扣,每前一步的操作都影響著后一步的進(jìn)行。文中應(yīng)用了OTSU算法、Canny算子的邊緣檢測(cè),相比的其他方法,對(duì)車牌識(shí)別的效率和成功率更高。
文中僅對(duì)常見(jiàn)的藍(lán)色車牌進(jìn)行了實(shí)驗(yàn)研究,對(duì)一些特殊的車牌(如:警用、部隊(duì)、大使館以及新能源等等)還需要進(jìn)一步的改進(jìn)和探究。在最后一步的字符識(shí)別中,還存在一定的錯(cuò)誤,比如把“0”識(shí)別成了“O”。后面還需要進(jìn)行更多的試驗(yàn),進(jìn)而是車牌識(shí)別的成功率更上一層樓。
參考文獻(xiàn):
[1] 顧李云.基于圖像處理的車牌識(shí)別算法的研究與設(shè)計(jì)[D].南京郵電大學(xué),2018.
[2] 孫春泉.車牌識(shí)別中關(guān)鍵算法的研究與改進(jìn)[D].安徽理工大學(xué),2018.
[3] 黃辰陽(yáng).基于圖像處理的車牌識(shí)別方法研究[D].廣東工業(yè)大學(xué),2018.
【通聯(lián)編輯:代影】