1框架流程

2、平滑處理
3、二值化
局部自適應(yīng)二值化是針對灰度圖像中的每一個像素逐點進行閾值計算,它的閾值是由像素周圍點局部灰度特性和像素灰度值來確定的。局部閾值法是逐個計算圖像的每個像素灰度級,保存了圖像的細節(jié)信息,非均勻光照條件等情況雖然影響整個圖像的灰度分布缺不影響局部的圖像性質(zhì),但也存在缺點和問題,相比全局閾值法來說,它的計算時間較長,但適用于多變的環(huán)境。設(shè)圖像在像素點(x,y)處的灰度值為f(x,y),考慮以像素點(x,y)為中心的(2w+1)*(2w+1)窗口(w為窗口寬度),則局部自適應(yīng)二值化算法可以描述如下:
a.計算圖像中各點(x,y)的閾值w(x,y)
W(x,y)=0.5*(max f(x+m,y+n)+min f(x+m,y+n))
b.如果f(x,y)>w(x,y),則二值化結(jié)果為1,代表字符區(qū)域的目標點;否則二值化結(jié)果為0,代表背景區(qū)域的目標點。
4、車牌定位
?
Canny邊緣檢測算子的方向性質(zhì)保證了很好的邊緣強度估計,而且能同時產(chǎn)生邊緣梯度方向和強度兩個信息,即能在一定程度上抗噪聲又能保持弱邊緣,因此采用以canny算子做邊緣檢測。
Canny算法步驟:
(1)去噪任何邊緣檢測算法都不可能在未經(jīng)處理的原始數(shù)據(jù)上很好地處理,所以第一步是對原始數(shù)據(jù)與高斯 mask 作卷積,得到的圖像與原始圖像相比有些輕微的模糊(blurred)。這樣,單獨的一個像素雜訊在經(jīng)過高斯平滑的圖像上變得幾乎沒有影響。
(2)用一階偏導(dǎo)的有限差分來計算梯度的幅值和方向。
(3)對梯度幅值進行非極大值抑制。
僅僅得到全局的梯度并不足以確定邊緣,因此為確定邊緣,必須保留局部梯度最大的點,而抑制非極大值。
非極大值抑制產(chǎn)生的二值灰度矩陣的潛在點中按照高閾值尋找邊緣,并以所找到的點為中心尋找鄰域內(nèi)滿足低閾值的點,從而形成一個閉合的輪廓。然后對于不滿足條件的點直接刪除掉。
行掃描定位
車牌細定位的目的是為下一步字符的分割做,就是要進一步去掉車牌冗余的部分。在一幅經(jīng)過適當(dāng)二值化處理 含有車牌的圖像中,車牌區(qū)域具有以下三個基本特征:1.在一個不大的區(qū)域內(nèi)密集包含有多個字符;
2.車牌字符與車牌底色形成強烈對比;
3.車牌區(qū)域大小相對固定,區(qū)域長度和寬度成固定比例。
根據(jù)以上特征,車牌區(qū)域所在行相鄰像素之間0 到1和1到0 的的變化會很頻繁,變化總數(shù)會大于一個臨界值,這可以作為尋找車牌區(qū)域的一個依據(jù)。 因此根據(jù)跳變次數(shù)與設(shè)定的閾值比較,就可以確定出車牌的水平區(qū)域。
由于車牌一般懸掛在車輛下部,所以采用從上到下,從左到右的方式對圖像進行掃描。車牌的字符部分由7個字符數(shù)與兩個豎直邊框組成,則車牌區(qū)域內(nèi)任一行的跳變次數(shù)至少為(7+2)*2=18次。從圖像的底部開始向頂部進行掃描,則第一組連續(xù)數(shù)行且每行的跳變次數(shù)都大于跳變閾值,同時滿足連續(xù)行數(shù)大于某個閾值。
在車牌的水平區(qū)域中,最高行與最低行的差值即為車牌在圖像中的高度。我國車牌區(qū)域為矩形,寬高比約為3.14,取3.14*H作為車牌的寬度。在水平區(qū)域內(nèi)選擇任意一行,用L長的窗口由左至右移動,統(tǒng)計窗口中相鄰像素0,1的跳變次數(shù)并存入數(shù)組中。若窗口移動到車牌的垂直區(qū)域時,窗口內(nèi)的跳變次數(shù)應(yīng)該最大。因此在數(shù)組中找到最大值,其對應(yīng)的區(qū)域即為車牌的垂直區(qū)域。
5、模板匹配
?
?
評論