楊峰, 李建奇
一種車牌圖像二次定位算法
楊峰, 李建奇
(湖南文理學(xué)院 電氣與信息工程學(xué)院, 湖南 常德, 415000)
針對車牌識別系統(tǒng)中關(guān)鍵性的定位環(huán)節(jié)提出了一種二次定位算法, 在預(yù)處理后對車牌圖像先進(jìn)行粗略定位, 再進(jìn)行精確定位。該算法前后銜接緊密, 靈活有效地利用了二值圖像所受干擾主要來自車牌上方這一特征, 對圖像由下至上搜索定位; 利用 Hough變換對圖像進(jìn)行多直線檢測, 確定邊界后實(shí)現(xiàn)精確定位。在Matlab平臺上的測試結(jié)果表明, 該算法速度快, 準(zhǔn)確率較高。
預(yù)處理; 粗定位; 精定位; Hough變換
車牌識別(License Plate Recognition, 簡稱LPR)系統(tǒng)在智能交通管理領(lǐng)域扮演著重要的角色, 為當(dāng)前研究熱點(diǎn)。LPR系統(tǒng)一般包括車牌定位、分割、識別3個環(huán)節(jié), 其中定位作為分割的前提, 其準(zhǔn)確度直接影響到后續(xù)的分割與識別效果。定位錯誤即丟失目標(biāo), 會導(dǎo)致系統(tǒng)識別錯誤, 因此, 保證車牌定位的精準(zhǔn)度十分關(guān)鍵。
本文闡述了一種車牌二次定位的方法, 并在Matlab平臺上進(jìn)行了測試。
車牌正式定位之前, 對圖像按以下步驟及順序進(jìn)行預(yù)處理。
(1) 圖像變換。由設(shè)備拍攝的車牌圖像都是彩色的, 其每個像素都由R、G、B三個顏色分量形成, 因此數(shù)據(jù)量大, 給系統(tǒng)的存儲和處理帶來較重負(fù)擔(dān)。灰度(Gray)圖像不包含彩色信息, 其值量化為256級,因此, 對灰度圖像的處理更方便。彩色圖像由RGB空間變換為灰度空間的轉(zhuǎn)化關(guān)系為[1]IGray= 0.299IR+ 0.587IG+ 0.114IB。
(2) 像素調(diào)整。由于每幅圖像由不同的設(shè)備拍攝, 導(dǎo)致像素不一致。像素太低則成像質(zhì)量低, 增加
(3) 灰度拉伸。車牌圖像在拍攝時往往由于光線環(huán)境原因造成圖像的亮度偏暗或者偏亮, 這都會影響圖像的后續(xù)處理。因此, 將圖像按圖 1的變換方式把感興趣的灰度范圍拉開[2], 豐富灰度層次, 達(dá)到增強(qiáng)對比度的效果, 把其它灰度范圍壓縮, 以減少干擾。圖像灰度范圍拉伸前后效果見圖2。灰度拉伸變換函數(shù)表達(dá)式為
圖1 灰度拉伸變換
圖2 灰度拉伸
(4) 濾波。為了去除圖像中噪聲的影響, 提高圖像質(zhì)量, 需要進(jìn)行噪聲濾波。噪聲的種類很多, 所采用的濾波方法也各不相同。本文用3 × 3掩模算子[3](圖3)進(jìn)行高斯濾波。從圖3可知, 算子中心像素的權(quán)值最大, 所以在計(jì)算均值時這一像素尤為重要, 而距離中心較遠(yuǎn)特別是角點(diǎn)位置的像素相對次要,這是為了降低濾波處理產(chǎn)生的附加模糊效應(yīng)。圖像進(jìn)行高斯濾波前后的效果如圖4所示。
圖3 3 × 3掩模算子
圖4 高斯濾波
(5) 圖像二值化[4–5]。將灰度圖像各像素與其當(dāng)前行前一個像素的灰度值進(jìn)行比較, 若差值的絕對值超過事先設(shè)定的閾值T(本文設(shè)為35), 則令值為1, 否則值為0。按此完成灰度圖像的二值化, 即提取沿水平方向圖像灰度躍變的特征。實(shí)踐證明此法與傳統(tǒng)的邊緣檢測相比效果更理想。用行內(nèi)像素比較是考慮到圖像中的車牌區(qū)域橫向較縱向的變化特征更明顯?;叶葓D像經(jīng)不同方法二值化后的效果如圖5所示。
圖5 二值化
2.1橫向粗定位
圖6 灰度圖
車牌自身的特征已經(jīng)被眾多方法所充分利用, 然而車牌周圍的環(huán)境特點(diǎn)卻一直沒有得到重視。統(tǒng)計(jì)與觀察發(fā)現(xiàn)絕大多數(shù)的圖像中, 車牌下方的區(qū)域與上方的區(qū)域相比干擾因素要少很多, 這是因?yàn)橄路蕉际瞧降牡孛姹尘?上方則會有中網(wǎng)、車燈、車身棱角, 有時還包含有樹木、房屋、圍欄、廣告牌等敏感信息。針對這一特點(diǎn),對圖6所示經(jīng)預(yù)處理后的各灰度圖像分別二值化后(圖7)從最后一行像素開始, 采取如下策略[6–7]:
① 若當(dāng)前一行1值像素的數(shù)量大于一定閾值T(文中設(shè)定T = 60), 便記下行數(shù)Y1, 否則, 當(dāng)前行數(shù)減1, 重復(fù)執(zhí)行①;
圖7 二值化圖
② 當(dāng)前行數(shù)減1, 若當(dāng)前一行1值像素的數(shù)量大于閾值 T, 便記下行數(shù) Y2, 否則, 重復(fù)執(zhí)行②;
③ 若Y1與Y2距離超過較小的一個高度閾值(在400 × 300分辨率下, 車牌高度應(yīng)大于30, 所以閾值選定為30)時, 保存Y1與Y2。否則, 排除此Y1和Y2, 當(dāng)前行數(shù)減1, 執(zhí)行①。
Y1、Y2即是沿橫向進(jìn)行切割的位置, 為了保證車牌的完整, 可將這個位置向下和向上均適當(dāng)?shù)匮由煅a(bǔ)償, 故此次切割是橫向的粗定位。圖 8(a)、8(b)、8(c)分別是圖 7(a)、7(b)、7(c)由橫向粗定位切割得到的結(jié)果。①、②中若用相鄰2行的像素來判定, 穩(wěn)定性會更好, 此時應(yīng)擴(kuò)大閾值。
圖8 沿橫向粗略切割
2.2縱向粗定位
對圖8的各切割結(jié)果實(shí)施以下步驟[8–9]: 用與其寬度相等的正方形窗口以一定步距從左至右滑動, 當(dāng)滑窗中值 1的像素?cái)?shù)量占比大于一定閾值時, 此時窗口所在列位置記為 X1, 然后以同樣方式從右向左搜索, 獲得列位置X2。在X1、X2處沿縱向切割, 完成縱向粗略定位。圖9(a)、9(b)、9(c)分別是圖8(a)、8(b)、8(c)縱向粗略定位的結(jié)果。
圖9 沿縱向粗略切割
2.3精定位
由于粗略定位還不能滿足后續(xù)識別算法的要求, 所以需要進(jìn)行更精確的定位。利用Hough變換直線檢測可實(shí)現(xiàn)精定位。Hough變換的優(yōu)點(diǎn)是容錯性強(qiáng), 如果待檢測直線被干擾或被遮擋引起局部斷裂, 經(jīng)過Hough變換, 在參數(shù)空間中依然可得到明顯的峰值單元[10]。
將圖9(a)、9(b)、9(c)所示圖像分別進(jìn)行多直線檢測, 得到如圖10(a)、10(b)、10(c)的結(jié)果。對這個結(jié)果中各圖像, 將所有直線端點(diǎn)行號的最小值與最大值分別確立為車牌上邊界和下邊界坐標(biāo), 將左端點(diǎn)列號的中值確立為左邊界, 右端點(diǎn)列號的中值確立為右邊界。此時的定位是一種精確定位, 也是最終的定位。精確定位后的結(jié)果如圖11(a)、11(b)、11(c)所示。圖12(a)、12(b)、12(c)分別為圖11(a)、11(b)、11(c)回歸到灰度圖像的定位效果。
圖10 Hough變換多直線檢測
圖11 精定位
圖12 回歸到灰度圖像的定位
在Matlab平臺上對276幅原始車牌圖像進(jìn)行了測試。每幅圖像測試時間在4~7 s之間, 測試結(jié)果顯示, 262幅車牌實(shí)現(xiàn)了精準(zhǔn)定位, 8幅車牌實(shí)現(xiàn)了次精準(zhǔn)定位, 錯誤定位的有6幅, 總體成功率(精準(zhǔn)與次精準(zhǔn))達(dá)到了94.9%。次精準(zhǔn)定位有6幅是尾部車牌, 由于尾部車牌處于一個凹槽中, 在光線照射下會使圖像產(chǎn)生邊緣灰度躍變, 這種干擾導(dǎo)致直線端點(diǎn)位置群體性失準(zhǔn), 使切割區(qū)域較精確定位區(qū)域?qū)?圖13), 另外2幅次精準(zhǔn)定位則是受到了其它干擾所致。出現(xiàn)定位錯誤的圖像中有3幅是因拍照時車牌距拍攝地太遠(yuǎn)(圖 14(a)), 導(dǎo)致目標(biāo)成像太小, 甚至模糊, 因而不適應(yīng)橫向定位時的閾值, 粗定位時出錯。有 2幅因光線環(huán)境過于昏暗使得灰度均值大幅降低(圖 14(b)), 產(chǎn)生低灰度堆聚現(xiàn)象, 壓縮了灰度差別,致使圖像不適應(yīng)二值化的閾值, 二值化圖像效果不好, 影響了算法的后續(xù)處理。
圖13 次精確定位
圖14 不同環(huán)境下的車牌
本文所述車牌圖像二次定位算法, 因利用了一些在其它方法中沒有被利用或者沒有被充分利用的車牌及環(huán)境特征, 因此與常用的方法相比, 本文方法的時間復(fù)雜度更低。從測試結(jié)果看, 本文方法具有較理想的定位成功率, 若樣本為相同設(shè)備、距離、角度、光線等條件下的圖像, 定位成功率會更高。由于樣本圖像在各種不同的條件下拍攝所得, 成像質(zhì)量參差不齊, 導(dǎo)致個別樣本因成像質(zhì)量太低而無法定位。由于在實(shí)際應(yīng)用中, 車牌定位對算法的要求很高, 因此, 車牌定位算法還可進(jìn)一步改進(jìn)與完善。
[1] 李戰(zhàn)明, 徐錦鋼. 車牌識別系統(tǒng)中的車牌圖像預(yù)處理研究[J]. 科學(xué)技術(shù)與工程, 2008(8): 2 082–2 084.
[2] 田巖. 數(shù)字圖像處理與分析[M]. 武漢: 華中科技大學(xué)出版社, 2010: 185–211.
[3] 潘巍, 劉宏宇, 安榮. 一種梯度特征與區(qū)域合并的車牌定位方法[J]. 計(jì)算機(jī)工程與應(yīng)用, 2011, 47(18): 204–206.
[4] 劉濛, 吳成東, 樊玉泉. 復(fù)雜背景圖像中的車牌定位算法[J]. 中國圖像圖形學(xué)報(bào), 2010, 15(9): 1 357–1 360.
[5] 王善發(fā), 吳道榮. 基于灰度跳變的車牌定位算法及其實(shí)現(xiàn)[J]. 計(jì)算機(jī)仿真, 2012, 29(1): 318–322.
[6] 付煒, 趙正則, 王大江. 基于水平灰度跳邊和垂直投影的車牌定位方法[J]. 電子測量技術(shù), 2008(3): 61–65.
[7] 韓立明, 王波濤. 車牌識別中關(guān)鍵技術(shù)的研究與實(shí)現(xiàn)[J]. 計(jì)算機(jī)工程與設(shè)計(jì), 2010, 31(17): 3 919–3 923.
[8] 姜香菊, 路小娟, 劉二林. 基于MATLAB的車牌定位算法的分析與仿真[J]. 自動化與儀器儀表, 2010(4):18–20.
[9] 王剛, 冀小平. 基于MATLAB的車牌識別系統(tǒng)的研究[J]. 電子工程設(shè)計(jì), 2009(11): 72–73.
[10] 岡薩雷斯, 伍茲, 艾丁. 數(shù)字圖像處理[M]. 阮秋琦, 譯. 北京: 電子工業(yè)出版社, 2005: 296–304.
(責(zé)任編校: 江河)
A two-step algorithm of license plate location
Yang Feng, Li Jianqi
(College of Electrical and Information Engineering, Hunan University of Arts and Science, Changde 415000, China)
Aiming at key of location in license plate recognition system, a two-step algorithm that includes preprocessing, rough location and precise location is proposed. The algorithm’s head and rear are tightly-linked, the feature that most of interference is above plate is made use of by searching from bottom to top of binary image. Multi-lines detecting based on Hough transform pinpoint the edge, and precise location is realized at last. According to the results of testing on Matlab platform, this algorithm has a high accuracy rate and fast running speed, it provides a new reference and method for license plate location.
preprocessing; rough location; precise location; Hough transform
TP 391.41
1672–6146(2016)03–0010–04
10.3969/j.issn.1672–6146.2016.03.003
楊峰, 33599149@qq.com。
2016–05–20
國家自然科學(xué)基金(61403136); 湖南省自然科學(xué)基金(14JJ5008)。了出錯的概率; 像素太高會使計(jì)算量增大, 影響處理速度。因此有必要將各幅圖像像素進(jìn)行調(diào)整。經(jīng)大量實(shí)驗(yàn)發(fā)現(xiàn), 400 × 300是一個合適的分辨率, 故將所有灰度圖像統(tǒng)一調(diào)整至400 × 300。