白雁力,周信東
(桂林電子科技大學(xué)教學(xué)實踐部,廣西 桂林 541004)
車牌識別是智能交通系統(tǒng)的重要組成部分,而車牌定位直接關(guān)系到的車牌識別的成敗。目前常用的車牌定位算法分為兩大類:1)灰度圖像處理。該方法基于空間信息處理,以檢測車牌邊界為目的,常見的方法有直方圖處理,數(shù)學(xué)形態(tài)學(xué)、區(qū)域生長和Hough變換等[1-4];2)彩色圖像處理。該方法通過對圖像背景和目標顏色的區(qū)分進行車牌定位[5-6]。兩類算法都具有對于低噪聲、邊緣特征不復(fù)雜、車身顏色與車牌顏色明顯不同的圖片能實現(xiàn)較高定位率的優(yōu)點,但是由于圖像的不確定性,也都存在對高噪聲、車輛前臉邊緣異常復(fù)雜和車身顏色與車牌區(qū)域顏色接近的圖片定位準確率低的缺點。所以,車牌定位算法的研究和優(yōu)化仍然是重點。
針對上述兩類算法對高噪聲、車牌與車身顏色相近圖片定位率低的缺點,在微分算子[7]的基礎(chǔ)上,進行車牌定位算法研究。該算法從突出車牌區(qū)域和搜索車牌邊界兩方面,進行車牌定位。突出車牌區(qū)域采用基于歐氏距離變換[8]原理改進二階微分算子;搜索車牌邊界,利用一階微分算子對曲線的波峰和波谷進行處理,并通過微分值、曲線占空比等參數(shù)確定車牌邊界。
微分算子是圖像處理中的重要算子,其算法實現(xiàn)簡單,廣泛應(yīng)用于圖像邊緣檢測。常用的微分算子有一階微分算子和二階微分算子。
一階微分算子是根據(jù)單個像素在鄰域內(nèi)的灰度跳變,依據(jù)邊緣鄰近一階方向?qū)?shù)變化規(guī)律,突出圖像邊緣。一階微分算子有單方向和無方向兩種。
單方向一階微分由豎直方向和水平方向組成,分別為式(1)和式(2)
無方向一階微分主要是邊緣檢測算子,如Roberts算子、Sobel算子和Prewitt算子。
從圖像的景物細節(jié)的灰度分布特性可知,有些灰度變化特性一階微分的描述不是很明確,為此,采用二階微分能夠獲得更加豐富的景物細節(jié)[8]。由此可見,二階微分算子對于圖像細節(jié)的突出要比一階微分算子效果好。常見的二階微分算子是基于3×3鄰域的,主要有Laplacian算子和Canny算子。
二階微分算子可由領(lǐng)域內(nèi)的二階方向?qū)?shù)表示,水平方向和豎直方向分別為式(3)和式(4)
根據(jù)二階微分算子在提取細節(jié)上的優(yōu)勢,并結(jié)合采樣圖像的情況,本文決定選取二階微分算子應(yīng)用于車牌的定位。在車牌定位過程中,基于以下原因,先進行豎直方向定位,再進行水平方向定位:1)車牌在豎直方向邊框信息比水平方向邊框信息豐富,且易判斷;2)車牌在豎直方向的跨度比水平方向的跨度小得多,能通過單波峰特性搜索車牌;3)車牌在豎直方向上的位置,大多數(shù)都處于圖像的下方,比水平方向容易判斷。
上文提到,二階微分算子能夠提取更好的圖像細節(jié),能有效地幫助車牌定位,但是由于天氣、光線等因素的影響,并不能在所有的圖像中突出車牌細節(jié),特別是高噪聲圖像。在這種情況下,豎直方向二階微分算子已經(jīng)不能夠滿足實際車牌定位的需求,必須加以改進和修正,以達到更好的適應(yīng)性。
2.1.1 改進的豎直方向二階微分算子
改進豎直方向二階微分的原理是通過對二階微分在4個方向進行拓展,然后通過歐氏距離原理將4個方向的二階微分歸一化到豎直方向,改進后的二階微分能夠比單一方向更突出邊框。
1)二階微分算子的拓展
基于3×3模板的二階微分算子,可以拓展出二階微分的交叉算子。交叉算子1為
2)歐氏距離變換
所謂歐氏距離就是通常所說的空間兩點之間的直線距離。在二維空間中,是兩點間的直線長度。設(shè)I為n×n的二維圖像,I(i,j)表示圖像中點(i,j)的像素值。對于I中的任意兩點p1(i1,j1)和p2(i2,j2),它們之間的歐氏距離為
由歐氏距離變換的定義可以推導(dǎo)出,基于圖像的距離變換是求出每個像素點的最近鄰特征點,即能找出圖像在多個方向的相似點。歐氏距離變換在數(shù)字圖像處理中的應(yīng)用范圍很廣泛,尤其對于圖像的細節(jié)提取是一個很好的參照。
3)改進的豎直方向二階微分算子
通過微分算子拓展和歐氏距離變換原理,本文將所有的二階微分算子進行組合,并歸一化到豎直方向,分為以下2個步驟:
(1)依據(jù)歐氏距離變換原理,將水平方向和兩個交叉方向的微分算子,進行組合,公式為
2.1.2 投影曲線的平滑和閾值處理
圖1為原始圖像,由圖2和圖3進行對比可以看出,通過修正后算子的處理,在投影曲線上去除了很多的噪聲影響,能夠通過明顯的波峰突出車牌區(qū)域。但是,為了方便搜索車牌,須在投影曲線上保證車牌區(qū)域存在獨立的單波峰特性。為了讓投影曲線具備這一特性,就必須對投影曲線進行平滑和閾值處理。
圖1 原始圖像
1)曲線平滑
曲線平滑的目的是讓投影曲線具備車牌區(qū)域單波峰特性。本文采用高斯平滑函數(shù)對曲線進行處理。高斯函數(shù)濾波算法實現(xiàn)如下
2)投影曲線閾值處理
平滑處理后,曲線具備車牌區(qū)域單波峰特性,但是仍然是一個連通曲線。所以,必須對曲線進行閾值處理,使其波峰具備獨立特性。
本文采用的閾值處理方法主要由波谷一階微分處理、點閾值處理和曲線值均值處理3個部分組成。
(1)波谷一階微分處理
采用對曲線的波峰點和波谷點進行一階微分處理,目的在于突出車牌邊界;
(2)點閾值處理
采用波谷點微分值和波谷點數(shù)值2個條件進行均值閾值處理,目的在于去除不屬于車牌的邊界。當該點的微分值和曲線值分別低于微分和曲線的均值時,將該點賦值為0;當該點是波谷時,如果微分值大于曲線值,則保留該點。
(3)曲線均值閾值處理
在以上2個處理的基礎(chǔ)上,保留曲線中數(shù)值大于平均值的點。通過閾值處理,車牌區(qū)域必定存在于2個較大微分值的波谷之間,圖4是平滑和閾值處理后的曲線圖,虛線為閾值處理后仍然存在的波谷微分值。
圖4 平滑和閾值處理后的曲線
2.1.3 豎直方向搜索車牌
車牌搜索由區(qū)域選定和區(qū)域判斷兩部分組成。
1)區(qū)域選定
通過上述步驟的處理,在投影曲線上可以發(fā)現(xiàn),車牌所在的區(qū)域必定在2個存在的波谷微分值中間,圖4中用虛線表示。
2)區(qū)域判斷
通過圖4可以看到,曲線上車牌區(qū)域的波峰值并不是最大值,所以在選定區(qū)域后,還需要通過參數(shù)判斷車牌。
標準參數(shù)有:參數(shù)1,區(qū)域內(nèi)非零曲線值存在的比例;參數(shù)2,2個波谷微分值之比;參數(shù)3,邊界波谷微分值是否是最大或第二大的微分值。
通過對50幅圖像的數(shù)據(jù)統(tǒng)計,得到表1。
表1 參數(shù)值統(tǒng)計
根據(jù)統(tǒng)計的數(shù)據(jù),將3個參數(shù)的標準值分別設(shè)定為0.7,0.6和1。在搜索中,以任意一個參數(shù)作為定位標準,效果都不好。通過對數(shù)據(jù)統(tǒng)計和分析,3個參數(shù)之間存在交集。最后,采用任意2個參數(shù)作為定位的標準。定位的統(tǒng)計數(shù)據(jù)如表2所示。
表2 滿足參數(shù)條件的定位統(tǒng)計
圖5是豎直方向上車牌定位效果圖。
圖5 豎直方向定位效果
在車牌豎直方向定位后,去除了大部分的干擾。在小干擾的情況下,本文直接采用水平方向二階微分處理,并對投影曲線進行閾值處理,進行車牌水平方向定位。
2.2.1 車牌區(qū)域在投影曲線中的特點分析
通過對水平方向二階微分處理后的投影曲線(如圖6所示)分析,車牌區(qū)域存在以下特點:車牌每個字符處于2個波谷之間,整個車牌區(qū)域由許多的波谷和波峰組成;在車牌區(qū)域中相鄰的波谷值和波峰值相差都很大。
圖6 水平二階微分處理投影曲線
2.2.2 局部與整體相結(jié)合的閾值處理方法
通過閾值處理,既要保留車牌區(qū)域中較小的波谷點,又要讓車牌區(qū)域在曲線保持最大連通區(qū)域。本文基于車牌區(qū)域相鄰2個波谷值和波峰值相差很大的特性,采用局部均值和整體均值進行對比的閾值處理方法,對曲線進行處理,具體方法如下:1)計算曲線的整體的均值,并將該值作為過濾條件;2)計算區(qū)域均值,即任意相鄰的波谷點和波峰點之間區(qū)域;3)閾值處理,當區(qū)域均值大于整體均值時保留,否則要去除。
通過區(qū)域與整體相結(jié)合的方法,一方面能保留車牌區(qū)域內(nèi)數(shù)值較小的波谷點,突出數(shù)值較大的波峰,另一方面能夠讓實現(xiàn)車牌處于曲線最大的、獨立的連通區(qū)域。曲線閾值處理效果如圖7所示。
圖7 曲線閾值處理效果
2.2.3 水平方向車牌定位實現(xiàn)
通過曲線的連通區(qū)域可以觀察到,車牌的邊界都是出于曲線的波峰部分,最終以該連通曲線的第一個波峰點和最后一個波峰點作為車牌的左右邊界,如圖8所示。
圖8 最終定位效果
為檢測算法的穩(wěn)定性,采用不同環(huán)境下的540幅車牌圖像進行測試。采集圖像的特點為:1)背景多樣化,包括城市道路、高速公路路和收費站;2)車牌尺寸不同。
具體測試結(jié)果見表3。
表3 各種環(huán)境下車牌定位情況
在測試中,有20幅圖像定位不準確,原因在于:1)白天環(huán)境下,城市道路車輛較多,往往兩車之間相距很近,形成定位干擾;2)晚上環(huán)境下,城市道路車輛頭燈太亮和采集圖像噪聲太大,形成定位干擾;3)收費站環(huán)境下,車輛停車位置和欄桿位置的距離小,特別是大型貨車。
車牌定位關(guān)系著車牌識別系統(tǒng)的成敗。在豎直方向定位上,用改進的二階微分算子進行處理,并通過對投影曲線進行平滑處理、閾值處理及對波峰波谷點的一階微分算子處理,可以消除車牌顏色和環(huán)境不同的影響,得到較好的候選車牌;對候選車牌,利用曲線占空比、波谷微分值比和波谷微分值大小等因素綜合判斷,實現(xiàn)準確定位。在車牌水平方向定位中,采用二階微分算子處理,并對投影曲線進行局部均值和整體均值的閾值處理,可以保留車牌字符之間投影值較小的波谷點,讓車牌區(qū)域處于連通,并最終實現(xiàn)車牌水平方向的定位。該算法進一步改進需要通過大量的實驗,優(yōu)化微分算子和閾值的選取,提高該算法在各種背景下的適應(yīng)性和穩(wěn)定性。
[1]SUBHRANSU M,JITENDRA M.Object detection using a max-margin Hough transform[C]//Proc.IEEE Conference on Computer Vision and Pattern Recognition,2009.[S.l.]:IEEE Press:1038-1045.
[2]葉茂亮,劉長松,丁曉青,等.基于筆畫分析和形態(tài)學(xué)的汽車牌照定位算法[J].電視技術(shù),2005,29(5):85-87.
[3]ANAGNOSTOPOULOS C N,ANAGNOSTOPOULOS I,LOUMOS V,et al.A license plate recognition algorithm for intelligent transportation system applications[J].IEEE Transactions on Intelligent transportation System,2006,7(3):377-392.
[4]黃文杰,王海濤,姬建崗.基于公路收費系統(tǒng)的車牌定位與字符分割算法[J].電視技術(shù),2006,30(2):85-87.
[5]聶洪印,周衛(wèi)東,劉輝.多顏色模型和綜合特征下的車牌定位新方法[J].計算機工程與應(yīng)用,2010,46(12):221-223.
[6]謝建平.一種基于快速最近特征線的汽車牌照識別方法[J].電視技術(shù),2006,30(4):93-96.
[7]阮秋琦.數(shù)字圖像處理基礎(chǔ)[M].2版.北京:清華大學(xué)出版社,2009.
[8]孫即祥.圖像處理[M].2 版.北京:科學(xué)出版社,2009.