基於灰值形態學的汽車牌照提取方法論文
摘要:提出了一種利用灰度形態變換快速提取汽車牌照區域的方法。利用灰度形態變換對輸入的影象進行濾波,根據牌照的大致尺寸和濾波影象的模板卷積得到幾個牌照的候選區域,最後分析候選區域內水平方向的波峰高寬比波峰數得到真正的牌照區域。
關鍵詞:灰值動態學卷積模板卷積投影牌照識別
基於影象理解的汽車牌照自動識別系統是智慧交通系統一個重要分支,有著非常廣泛的應用前景,而把汽車牌照從複雜的汽車影象中分割出來是汽車牌照自動識別系統必須解決的關鍵問題。在過去的十幾年中,各國的科研人員提出了不少提取汽車牌照的方法。Choi和Kim提出利用Hough變換尋找垂直邊緣提取汽車牌照的方法,此方法由於許多汽車前部散熱器產生的垂直邊緣和某些牌照邊框的扭曲或某些汽車牌照沒有邊框而魯棒性較差。S.K.Kim和H.J.Kim提出的基於遺傳演算法分割提取汽車牌照的方法,最大缺點是耗時長,難以進行實時處理。S.H.Park提出的一種基於神經網路提取汽車牌照的方法,使用二個時延神經網路在水平和垂直方向對輸入影象進行濾波,得到牌照的候選區域,然後利用牌照的長寬比、面積、面積與周長比來區分真正的牌照區域與類牌照區域。此方法要求影象中的牌照尺寸基本不變,一旦影象中的牌照尺寸發生了較大的變化,必須對神經網路重新進行訓練。T.R.Crimmins提出了一種數字形態學方法,此方法用不同尺寸的每個可能字元作為結構元素,採用擊中擊不中方法先提取輸入影象中的字元,再根據牌照字元的語法得到汽車牌照,這種方法計算量非常大且易受噪聲影響。C.H.Poon提出了一種灰值形態學方法,它透過檢測字元中的直線段和字元間的空間來提取牌照,這種方法耗時較多,且沒有利用版照的尺寸資訊。C.M.Hwang提出了空間頻率方法,它利用牌照區域內空間頻率變化大的特性,對影象進行一階差分。差分圖在牌照區域內形成多個峰,然後利用峰的幅度、寬度和密度區分真正的牌照區域與類牌照區域。這種方法具耗時少、抗噪能力強的優點。本文提出的灰值形態學方法僅利用了牌照區域內空間頻率變化大的特性而且利用了牌照區域字元筆劃具有高曲的特性,因而比單純的空間頻率方法更加有效。透過建立牌照與卷積運算元形態學結構元素尺寸的相互關係。本文提出的方法對不同尺寸牌照具有很好的魯棒性。
1數字形態學
數字形態學是一種重要的數字影象處理方法和理論。在數字形態學中,兩種最基本的變換或運算是腐蝕和膨脹,其它形態學變換都可透過它們來定義。下面列出了一些灰值形態學變換的定義。
影象f(x,y)平移(a,b)定義為:
f(a,b)(x,y)=f(x-a,y-b)
影象f(x,y)相對於原點的反射為:
f^(x,y)=f(-x,-y)
二幅影象f(x,y)和g(x,y)的最小記為(f∧g)(x,y)。
當(x,y)位於影象f的定義域D(f)和影象g的定義域D(g)的交集D(f)∩D(g)內時:
(f∧g)(x,y)=min{f(x,y),g(x,y)}
否則:
(f∧g)(x,y)=0
二幅影象f(x,y)和g(x,y)的最大記為(f∨g)(x,y)。
當(x,y)
位於影象f的定義域D(f)和影象g的定義域D(g)的交集D(f)∩D(g)內時:
(f∨g)(x,y)=max{f(x,y),g(x,y)}
當(x,y)∈D(f)且(x,y)∈D(g)時
(f∨g)(x,y)=f(x,y)
當(x,y)∈D(g)且(x,y)∈D(f)時
(f∨g)(x,y)=g(x,y)
f(x,y)被g(x,y)膨脹定義為:
(f⊙g)(x,y)=max{f(x-a,y-b)+g(a,b)}
(a,b)∈D(g)
f(x,y)被g(x,y)腐蝕定義為:
(f⊙g)(x,y)=max{f(x-a,y-b)-g(a,b)}
(a,b)∈D(g)
開運算定義:
fog=(f⊙g)⊙g
閉運算定義:
f·g=(f⊙g)⊙g
Top-Hat變換定義:
Hat(f,g)=f-fog
與Top-Hat變換相對的是波谷檢測器(Valley變換),其定義為:
Valley(f,g)=(f·g)-f
形態學梯度有下面三種形式:
Grad(f)=f-(f⊙g)
Grad(f)=(f⊙g)-f
Grad(f)={}/2
2牌照提取演算法
在牌照提取演算法中,需要用到卷積、模板卷積和卷積投影等概念。下面對它們進行定義。
對於影象m×n,i=0...m-1,j=0...n-1,模板p×q。p<m,q<n,其卷積、模板卷積和卷積投影都是一維陣列。
水平模板卷積
垂直模板卷積投影vmp:
水平模板卷積投影hmp:
圖1中牌照區域的長為173象素、高為36象素。從左到右、從上到下的8條曲線依次為牌照區域灰度圖第10~17條水平方向的灰度值。透過觀察發現,在牌照區域的水平方向不令空間頻率變化大,而且具有許多陡峭的峰(欲)和高曲率點。而灰值形態學的梯度變換可以對影象進行高通濾波,灰值形態學的Top-Hat變換和Valley變換可以撮高曲率點、波峰和波谷。
進行形態學變換,需要考慮二個因素:結構元素和變換型別。變換型別準備採用灰值形態學的梯度變換、Top-Hat變換和Valley變換。結果元素採用n×1的維水平結構,以提取水平方向上的高頻分量、波峰和波谷。結構元素的大小n對Top-Hat變換和Valley變換的結果結構元素的大
小n對Top-Hat變換和Valley變換的結果有著很大的影響,因此問題的關鍵是怎樣確定n。
分析圖1中水平方向的灰度曲線,發現在穿過字元的水平線上,灰度曲線波峰的寬度與字元垂直筆劃的寬度存在著某種線性關係。根據中國汽車牌照的一般規範,牌照上字元的垂直筆劃寬度與牌照的寬度也存在著某種線性關係。結構元素的尺寸n與灰度曲線波峰的寬度又可建立一種線性關係。因此可建立n與牌照寬度w的一種近似線性的關係:
n=Integer{(w/k)+b}
式中的Integer()表示對括號內的值取整。w、b都為整數。根據經驗令w、b分別為25和0,則:
n=Integer(w/25)
由上式可知,當牌照的寬度w變化25個象素時,結構元素的大小n才變化1個單位,也就是說n對w不是很敏感。
牌照區域提取演算法包括以下幾步:
(1)縮小影象:對輸入的灰值汽車影象進行隔行隔列抽樣,得到一幅大小為四分之一原因的新影象。接下列抽樣,得到一幅大小為四分之一原圖的新影象。接下來的處理均在新影象上進行,這樣可以大大減少處理時間,提高演算法的效率。根據形態學的尺度變換相容性原理,對影象縮小(放大)後再進行形態學變換,只要對結構元素做相應的變換,結果不變。
(2)水平分割:對汽車影象進行水平分割,得到幾個可能含牌照的水平區域。
(3)垂直分割:對第(2)步所得到的每一個水平區域進行垂直分割,得到一些牌照的候選區域。
(4)牌照區域甄別:分析各個候選區域得出真正的牌照區域。
2.1水平分割
分別對汽車影象進行灰值形態學的梯度變換、Top-Hat變換和Valley變換,如圖2。一般來說,在大多數汽車車牌照自動識別系統應用中,CCD攝取的'汽車影象中牌照的大致寬度和高度是已知的。如果牌照的寬度為w∈(a,b),則取水平模板m×1,其中m=(a+b)/2。用模板分別對影象的梯度圖、Top-Hat變換圖和Valley變換圖進行水平模板卷積。對每幀變換圖取每一行模板水平卷積的最大值,得到1個一維陣列,3幅變換圖共得到3個一維陣列g1,ti和vi,其中i大於等於1,而小於等於影象的高度,其曲線如圖2的b、c、d。觀察圖2可以發現,由於受車體上其它字元和車前燈等因素的影響,僅僅依靠梯度圖較難對牌照進行水平定位,而結合Top-Hat變換圖和Valley變換圖,能更好地對牌照進行水平定位。據此,構成了1個一維陣列pi。
pi=gi×ti×vi
其曲線如圖3。取圖3中最高峰的位置作為牌照的水平中線,為了確保不會出錯,把次高峰也作為牌照的另一備選位置。了高峰和次高峰的位置,分割出2個寬為汽車影象寬度,高為牌照的最大可能高度b的區域,如圖4中的a和b。
2.2垂直分割
對圖4中的a和b二個區域分別進行灰值形態學的梯度變換、Top-Hat變換和Valley變換,並在垂直方向對變換圖進行卷積得到3個一維陣列gi、ti和vi,其中i大於等於1,而小於等於影象的寬度w,其曲線如圖5和圖6。qi=gi×ti×vi
的曲線如圖7。利用下面的公式分別對圖4中的a和b進行垂直分割。
{(m,n)|qi>kT,i=m...n,n-m+1∈(a,b)}
其中:T=Max(qi),k為一經驗值,(a,b)為牌照的寬度範圍。
i=l...w
分割結果如圖8所示。
2.3牌照區域甄別
分別標註牌照二候選區的水平峰值(或谷值)點,如圖9(a)中的白點,標註的峰值點要求峰高與峰寬的比大於一經驗閥值;分別把牌照二候選區二值化,如圖9(b);然後把候選區峰值(或谷值)點圖與二值化圖作與運算得到有效峰點(或谷點)圖,如圖9(c)。在有效峰點(或谷點圖中統計有效行數。如果一行內有效峰點(或谷點)數大於T1而小於T2,為有效行,則認為有效行數多者為真正的牌照區域。其中T1和T2為經驗值。
從複雜的汽車影象中如何把牌照區域分離出來,是汽車牌照自動識別系統必須解決的問題。本文提出了一種利用灰度形態變換快速提取汽車牌照區域的訊號。針對牌照區域內空間頻率變化大和牌照區域內字元筆劃具有高曲率的特性,筆者利用灰值形態學的梯度變換、Top-Hat變換和Valley變換,對輸入的影象進行濾波,接著根據牌照的大致尺寸得到幾個牌照的候選區域,最後分析候選區域內水平方向的波峰的高寬比和波峰資料得到真正的牌照區域。實驗表明本文提出的方法定位準確率高,抗噪能力強,且耗時較少,能夠滿足實時性要求。