李新煜,楊艷靜,舒 暢
(電子科技大學通信與信息工程學院,四川成都 611731)
車牌識別系統是智能交通系統的重要組成部分,其任務是增強分割車牌信息,以自動識別汽車牌號,是車輛跟蹤檢測等智能交通管理系統的技術基礎[1]。天氣往往對車牌識別的效果有著較大的影響。除此之外,由于車牌本身污漬的影響或者拍攝相機的角度和曝光程度造成的圖像上的噪聲更是較大地影響了圖像識別的精確度。因此在識別前期的預處理顯得尤為重要,首先要消除天氣帶來的干擾和因為相機曝光過度和不足造成的圖像失真,其次要通過預處理盡可能消除污漬和拍攝角度造成車牌信息的不清晰或者丟失,最后預處理應該給BP神經網絡提供一系列清晰地單個字符,以實現BP神經網絡高速精確地車牌識別。
1.1.1 基于Dark Channel Prior的去霧
在實際應用中,因為大霧帶來的設備對車牌識別問題難以解決。何愷明博士基于暗原色先驗的單一圖像去霧方法,可以有效地解決戶外環境下由霧造成的成像不清、對比度降低等問題。這種方法來自對戶外無霧圖像數據庫的統計規律,它基于觀察得到這一關鍵事實:絕大多數戶外無霧圖像的每個局部區域都存在至少一個顏色通道的強度值較低的像素。利用這些像素的信息,通過一定的方法就可以估計出霧的濃度和去霧后的圖像。
文中采用McCarney大氣散射模型,其廣泛用于計算機視覺和圖形學領域中[2]
通過對公式的逆運算可以得到去霧后圖像的復原公式

由式(1)和式(2)可以看出整個復原過程主要依賴于大氣光A和透射率t(x)的確定。基于暗原色先驗的原理,利用暗原色值和霧天圖像退化模型,可以估計出成像時刻的霧濃度和透射率t(x)[3]假設大氣光A已知并且在一個局部區域內,在透射率保持一致的條件下,可求得帶霧圖像的大氣透射率為

但是何愷明在提出其方法時,他基于大量的觀察得到大部分圖片是滿足暗原色先驗條件的,因此在運算中近似地使用了

由于明亮區域的像素值較高式(4)并不能恒成立。實驗表明,當遇到明亮的區域時,式(4)的分母<1,因此透射率的實際值大于根據暗通道先驗估計的數值;特別是當圖像的近景中存在白色物體、天空、較大面積偏白色區域和大面積的水等亮度較大的區域,物體上的像素有可能被選作整幅圖像的光強,這時白色物體附近由于不存在像素值接近于0的暗原色的點存在,如果仍然采用式(3)計算,那么得到t(x)將接近于0,從而使去霧效果失真。文中對暗原色計算透射率公式進行了修正[4]

對于大氣光A的求取,有多種方法,文中采用通過暗原色來提高大氣光的估測精確度。一般估測大氣光的方法會直接采用最大強度值的像素作為大氣光,但實際情況中,最亮的像素可能并非是大氣光而是發光物體或光滑的反光物體。利用暗原色方法,首先選取暗原色中亮度最大的0.1%像素。在以上像素中,輸入圖像中強度最大的像素點被選定為大氣光[5]。它們并不一定是整幅圖像里最亮的點。這一基于暗原色先驗的簡單方法與“最明亮像素”方法相比,更準確地描述了真實大氣光的情況。實際處理效果和車牌處理前后對比如圖1所示。

圖1 處理結果比對
1.1.2 基于直方圖均衡的圖像增強
Dark Channel Prior是一種去霧方法,但這種算法固有的缺陷是無法處理強光下曝光過度和雨天由于雨水、反光引起的模糊。通常情況下,因為陰霾雨雪、沙塵等惡劣天氣造成的圖像退化都是由于對比度降低、顏色失真[6]。
直方圖均衡是一種快速有效的圖像處理手段,是經典的圖像信息增強算法之一,它是依據各灰度值在被處理圖像中的出現頻率確定直方圖分布,并對出現頻率高的灰度值對應的區域作灰度拉伸以達到增加亮度和對比度的目的。
全局的灰度變化往往不能取得滿意的結果,為突出感興趣的目標或灰度區間,抑制相對不感興趣的灰度區間,文中采用分段函數的直方圖變換方法。分段函數直方圖變換公式如下

實際操作中,文中對彩色圖像的RGB3個通道分別進行分段線性直方圖均衡操作,將最亮和最暗部分的值削弱,中間部分增強。之后再將3個通道疊加還原出修正后的彩色圖像。
1.1.3 圖層合并
考慮到實際應用中需要兼顧各種天氣對成像帶來的影響,最終無霧的圖像是將原有霧圖像經Dark Channel Prior處理的結果和通過線性直方圖均衡處理的結果,按照一定的比例疊加所得到的,這樣可以保證圖像在整體無霧的前提下細節和曝光得到良好的控制。直方圖均衡和圖層合并后的結果如圖2所示。圖2(a)大雪天氣原圖;圖2(b)大雪天氣Dark Channel Prior算法結果;圖2(c)直方圖處理結果;圖2(d)最終結果;圖2(e)雨霧天氣原圖;圖2(f)雨霧天氣最終結果;圖2(g)大霧天氣原圖;圖2(h)大霧天氣最終結果。
1.2.1 閾值分析和開閉運算
由于天氣帶來的影響,一般車牌上的數字會殘缺不全或部分信息不清晰,而由于環境因素對車牌造成的污染使得識別和圖像分割難以進行。
針對這樣的情況首先需要進行閾值分析,將環境因素對車牌識別帶來的影響降到最低。實際操作中通過計算全圖像所有像素灰度值均值A;然后使用如下公式進行灰度圖像的二值處理

圖2 各種天氣條件下處理結果及車牌細節對比

在識別前,為保證識別能夠高效正確地進行,需要用圖像形態學的方法對車牌不清晰或者缺失的部分進行圖像還原,為保證還原能夠盡可能真實地反映原圖像信息,先對原圖像取輪廓,求取輪廓運算使用的是文獻[7]的方法。之后對輪廓進行二值形態學處理。二值形態學中最基本的兩種運算膨脹和腐蝕運算[8]。在二值空間中,兩種運算的定義分別為
腐蝕運算

膨脹運算

實際處理中采用由膨脹腐蝕組合而成的開閉運算,開運算可以消除細小物體,在纖細點分離出物體,平滑物體邊界;閉運算填充物體內細小空洞,連接相鄰物體,在不明顯改變物體面積的情況下平滑其邊界。開閉運算的定義式如下
開運算

閉運算

利用二值形態學,先采用閉運算,再采用開運算。重復操作適當的次數可以得到較為清晰滿意的結果。但開閉運算并非重復的次數越多越好,閉運算會填補某些數字中的空隙,比如數字“8”就可能因為多次閉運算而被填成實心進而對識別產生影響。
通過閾值分析法和二值形態學方法處理后的結果如圖3所示,從上到下依次為:原圖、灰度圖、閾值分析結果、邊緣提取圖、開閉運算后結果。

圖3 通過閾值分析法和二值形態學方法處理后的結果
1.2.2 圖像的分割處理
文中采用的BP神經網絡識別方法需要對車牌信息逐位識別,因此需要在識別前將車牌中的幾位數字和字母信息提取出來。進行這類圖像分割的方法有多種,文中依然采用二值形態學的方法并稍加拓展。
經過大量的觀察和實驗,所有車牌的數字和字母間都有固定的間距,而通過二值形態學開閉運算的圖像增強,這些字符間的空隙基本都能保留。在一張的車牌圖像匯總所有數字和26個字母在車牌中最細的部分也要占5個像素的寬度,比如字母“L”的尾部。這樣,利用二值形態學的腐蝕運算

例如選取結構元素為的列像素進行掃描,并進行如下運算

運算結果保證每兩個獨立字符間都至少有一列全1像素,根據字符間間隙可以將一張車牌圖像分割成獨立的字符。

圖4 圖像分割結果
BP(Back Propagation)神經網絡,由信息的正向傳播和誤差的反向傳播兩個過程組成。輸入層各神經元負責接收來自外界的輸入信息,并傳遞給中間層各神經元;中間層是內部信息處理層,負責信息變換,根據信息變化能力的需求,中間層可以設計為單隱層或多隱層結構;最后一個隱層傳遞到輸出層各神經元的信息,經進一步處理后,完成一次學習的正向傳播處理過程,由輸出層向外界輸出信息處理結果。當實際輸出與期望輸出不符時,進入誤差的反向傳播階段。誤差通過輸出層,按誤差梯度下降的方式修正各層權值,向隱層、輸入層逐層反傳。周而復始信息正向傳播和誤差反向傳播過程,是各層權值不斷調整的過程,也是神經網絡學習訓練的過程,此過程一直進行到網絡輸出的誤差減少到可以接受的程度,或者預先設定的學習次數為止[9]。
在實際設計中,本次試驗根據BP神經網絡的基本模型和BP算法,建立了如圖5所示的3層BP神經網絡。文中筆者測試過程中忽略了車牌上的漢字,實際只對26個字母和10個數字進行了識別測試,因此采用36個輸出層節點。隱含層神經元數一句經驗公式K=2n+1[10]進行計算。

圖5 3層BP神經網絡
BP神經網絡因其較大的計算量和復雜性,收斂速度較慢,目前有一些方法可以提高收斂速度,在此不再贅述。
BP神經網絡筆者共提取了50個數字樣本和78個字母樣本供神經網絡進行學習,測試30組車牌樣本共180個字符。其中數字132個字母48個。筆者使用Matlab進行了識別仿真,由于條件限制,單個數字平均有5個學習樣本,單個字母平均有2個學習樣本。統計情況如表1所示。

表1 統計情況
實驗表明,文中的圖像與處理部分能夠有效地消除各類惡劣天氣情況對攝像機成像帶來的影響,尤其是大霧天氣和雨雪天氣造成的陰霾,分辨度降低等情況基本可以得到完全解決。利用數學形態學的算法可以有效地增強車牌信息,并在一定情況下還原部分信息。由于條件限制,筆者沒能利用BP進行更多組的車牌識別測試,但是僅50個學習樣本達到78%的數字識別率證明了使用BP神經網絡進行后期識別的可行性。
[1]唐漢征.車牌識別系統的工作原理及其應用[J].現代電子工程,2004(2):59-61.
[2]TAN R.Visibility in bad weather from a single image[C].Korea:CVPR,2008.
[3]嵇曉強,戴明,孫麗娜,等.暗原色先驗圖像去霧算法研究[J].光電子·激光,2011(6):926 -930.
[4]王永超.基于暗通道先驗的圖像去霧算法研究[D].大連:大連理工大學,2011.
[5]HE Kaiming,SUN Jian,TANG Xiaoou.Single image Haze removal using dark channel prior[J].IEEE Trance on Computer Visionand Pattern Recognition,2011,33(12):2341 -2353.
[6]趙曉霞,王汝琳,張莉莉.惡劣天氣下降質圖像增強算法研究[J].微計算機信息,2010(8):3 -4.
[7]姜恒,高潤智,蘇紅旗.基于分區的自適應Canny邊緣檢測[J].科技創新導報,2011(28):10.
[8]孫繼平,吳冰,劉曉陽.基于膨脹/腐蝕運算的神經網絡圖像預處理方法及其應用研究[J].計算機學報,2005(6):985-990.
[9]焦李成.神經網絡理論[M].西安:西安電子科技大學出版社,1993.
[10]譚勇,朱斌.基于改進特征提取的BP神經網絡車牌識別[J].重慶理工學院學報,2009(6):42 -45.