龍思穎 蘭良 梁杏
摘要:目前市場(chǎng)上已有較多應(yīng)用成熟、穩(wěn)定的車牌識(shí)別算法,但是大部分需要在單一背景環(huán)境下,否則識(shí)別效果不佳,所以存在復(fù)雜環(huán)境下(如光照不均、大角度、多車牌、亮度低等)車牌定位與識(shí)別準(zhǔn)確率低的問題。文章提出一種復(fù)雜環(huán)境下多車牌識(shí)別算法來應(yīng)對(duì)此問題,采取了SVM模型定位車牌、外部輪廓和外接矩形法分隔字符、BP神經(jīng)網(wǎng)絡(luò)法識(shí)別字符。其中,對(duì)非連續(xù)性字符(如中文字符)分隔提出改進(jìn)算法,取得良好的效果。
關(guān)鍵詞:多車牌;車牌識(shí)別;傾斜矯正;SVM;神經(jīng)網(wǎng)絡(luò)
0 引言
隨著生活質(zhì)量的提高和科技的發(fā)展,智能交通應(yīng)用越來越廣泛,車牌識(shí)別系統(tǒng)的意義也越來越重要,是智慧交通、智慧城市必不可少的部分。雖然很多成熟的車牌識(shí)別算法準(zhǔn)確率高達(dá)98%以上,應(yīng)用廣泛,但是在低像素圖像或復(fù)雜環(huán)境中識(shí)別準(zhǔn)確率達(dá)不到正常使用的要求。
在許多實(shí)際情況中,監(jiān)控環(huán)境比較復(fù)雜(比如高速公路、城市道路的監(jiān)視圖像會(huì)出現(xiàn)多輛汽車,背景有樹木、房屋等),導(dǎo)致現(xiàn)有的單一背景車牌識(shí)別算法無法直接應(yīng)用。因此,本文提出一種復(fù)雜環(huán)境下多車牌識(shí)別算法來應(yīng)對(duì)此問題,其包括車牌定位、字符分割與識(shí)別三個(gè)主要過程[1]。
1 車牌定位
車牌識(shí)別首先需要快速精準(zhǔn)地進(jìn)行車牌定位,從而準(zhǔn)確找到車牌所在圖像中的具體像素坐標(biāo)。文中車牌定位首先經(jīng)過車牌粗定位獲取大致像素坐標(biāo),再通過車牌精細(xì)定位獲取準(zhǔn)確像素坐標(biāo)。
1.1 車牌粗定位
傳統(tǒng)的車牌粗定位算法有基于RGB圖像顏色處理方法和基于灰度域的紋理特征方法。前者算法對(duì)于圖像邊緣信息、色差不明顯情況下定位不準(zhǔn)確,同時(shí)處理R、G、B三維矩陣運(yùn)算量大,導(dǎo)致定位運(yùn)行效率低;而后者算法復(fù)雜度高[2][3]。本文提出的車牌定位算法無需每一幀像素參與運(yùn)算,降低了運(yùn)算量,提高識(shí)別效率,具體過程如圖1所示。
[TS)]
(1)獲取原始圖像(如圖2所示),將原始圖像縮放成原來的1/3,根據(jù)色彩特征提取可能含有車牌的像素點(diǎn),然后灰度化車牌像素圖像,降低存儲(chǔ)空間,加快運(yùn)算速度。(2)將灰度圖像二值化,通過形態(tài)學(xué)閉運(yùn)算降低噪點(diǎn),同時(shí)刪除像素點(diǎn)<2的連通區(qū)域,采用矩形算子膨脹運(yùn)算,并刪除像素點(diǎn)<200的連通區(qū)域。(3)使用中值濾波降低噪聲,將濾波降噪后的圖像和原始縮放圖像相乘還原車牌RGB圖像,獲取閉合區(qū)域的中心像素坐標(biāo),并根據(jù)中心像素坐標(biāo)和車牌寬高比例摳出車牌圖像區(qū)域,即為粗定位后的輸出(如圖3所示)。
1.2 車牌精細(xì)定位
由于粗定位得到的候選車牌區(qū)域可能會(huì)有很多,車牌精細(xì)定位則是為了突出候選車牌邊框,使精細(xì)定位后的車牌區(qū)域與實(shí)際車牌邊框一致[4]。選擇支持向量機(jī)(SupportVectorMachine,SVM)模型算法將粗定位后輸出圖像依次進(jìn)行SVM訓(xùn)練,根據(jù)訓(xùn)練結(jié)果判斷候選車牌的正確性,剔除偽車牌,并且生成一個(gè)不確定樣本提供給SVM模型。SVM模型訓(xùn)練過程如圖4所示。
對(duì)圖3中粗定位的候選車牌依次進(jìn)行SVM模型訓(xùn)練后獲取到精細(xì)定位的車牌,如圖5所示??梢?,圖3中的假車牌(d)已經(jīng)被識(shí)別剔除。
2 字符分割
車牌分隔是將精細(xì)定位后輸出圖像中的漢字、字母、數(shù)字按原有順序切割分隔成單個(gè)的字符塊。中國內(nèi)地車牌每張分隔成7個(gè)字符塊[5][6],理想情況下車牌區(qū)域經(jīng)過二值化后按垂直方向投影可準(zhǔn)確分割出7個(gè)塊區(qū)域,但實(shí)際中車牌會(huì)出現(xiàn)不清晰、有污漬、存在斷裂字符等,影響垂直投影的準(zhǔn)確度。因此文中提出一種改進(jìn)方法(取外部輪廓+外接矩形)。過程如圖6所示。
2.1 傾斜矯正
由于拍攝位置、道路彎道、坡度影響,可能造成車牌水平、垂直、水平垂直傾斜,因此車牌分割預(yù)處理中要先進(jìn)行傾斜矯正。
2.1.1 水平矯正
水平矯正法是使用Sobel算子檢測(cè)車牌橫向邊框,再進(jìn)行Hough變換檢測(cè)出水平坡度θ,利用極坐標(biāo)系方程如式(1)[7],把原圖像變換到參數(shù)空間完成水平矯正。
2.1.2 垂直矯正
由于垂直方向邊框長(zhǎng)度較短,使用Hough變換進(jìn)行矯正獲取的傾斜角度誤差較大,準(zhǔn)確度低,因此使用投影法對(duì)垂直方向拉伸矯正。投影法先把車牌圖像左邊框每一行的首像素投影到垂直方向上,然后按順序左移剩余像素,將垂直傾斜的平行四邊形拉伸變換成矩形。同時(shí)投影拉伸變換不會(huì)改變車牌原有的字符特征,矯正效果明顯。水平、垂直矯正后獲取圖像如圖7所示。
2.2 灰度化及二值化
精細(xì)定位后輸出的車牌區(qū)域仍然是彩色圖像,由于字符分割需要使用到灰度化圖像,并降低運(yùn)算量,因此將矯正后的車牌進(jìn)行灰度化處理。同時(shí),不同車牌顏色(如藍(lán)底白字和黃底黑字等)使用的二值化參數(shù)不一樣,所以要先判斷車牌的顏色。本文選取車牌中間區(qū)域判定車牌底色,分別在選定區(qū)域查找黃色或藍(lán)色像素點(diǎn)。如果黃色像素占比高于設(shè)定的顏色占比預(yù)設(shè)值,則車牌顏色判斷為黃色;同理,如果藍(lán)色像素占比高于設(shè)定的顏色占比預(yù)設(shè)值,則車牌顏色判斷為藍(lán)色;反之歸為其他顏色車牌。
本文根據(jù)判定的顏色選擇相應(yīng)二值化參數(shù)進(jìn)行處理。為了降低車牌邊緣和鉚釘干擾,選取中間部分區(qū)域分別使用Otsu算法、反向二值化法對(duì)藍(lán)色車牌、黃色車牌進(jìn)行處理。
2.3 提取外部輪廓及外接矩形
提取外部輪廓的方法在處理連續(xù)字符(如英文字母)時(shí)準(zhǔn)確率較高,但在處理非連續(xù)性文字(如“京”“川”“浙”“蘇”等)時(shí)會(huì)出現(xiàn)分割不準(zhǔn)確的問題,因此不能直接使用提取外部輪廓法進(jìn)行字符分割。本文采取對(duì)中文單獨(dú)處理解決此問題。如車牌“京LZ7793”,“京”字后面的字符“L”表示城市代碼,與后續(xù)的車牌號(hào)有一定的間隔,由特殊符號(hào)“·”分隔。
首先在車牌中心橫坐標(biāo)的1/7~2/7之間區(qū)域找到間隔字符,就能找到城市代碼,提取其外接矩形,記錄城市代碼外接矩形寬度w與高度h,再向左偏移確定漢字“京”的外接矩形,其矩形高度與h一致,寬度為1.15w。同時(shí),確保漢字外接矩形在車牌邊緣內(nèi)部。同理,從間隔字符依次向右偏移確定剩余字母或數(shù)字的外接矩形,并按次序生產(chǎn)7個(gè)矩形塊。最后,為了避免字符識(shí)別中對(duì)字符重復(fù)性預(yù)處理,將分割后的字符圖像進(jìn)行雙線性插值處理和歸一化縮放成統(tǒng)一規(guī)格,并盡可能減少縮放過程中的失真。本文選定歸一化后字符圖像縮放規(guī)格大小為10×10。
3 字符識(shí)別
字符識(shí)別典型的算法有人工神經(jīng)網(wǎng)絡(luò)法、特征匹配法、模板匹配法等[8]。經(jīng)過對(duì)比測(cè)試,本文采用BP神經(jīng)網(wǎng)絡(luò)法,對(duì)復(fù)雜環(huán)境、模糊、污漬、變形圖像等效果良好,其網(wǎng)絡(luò)結(jié)構(gòu)如圖9所示。輸入訓(xùn)練集I={(x1,y1),(x2,y2),…,(xn,yn)},xi∈Im,yi∈In,即輸入X=x1,x2,…,xm,輸出Y=y1,y2,…,yn。
文中使用歸一化后10×10字符圖像有100個(gè)像素塊作為特征向量,從10維縱向直方圖和橫向直方圖取到20維特征向量,總計(jì)120維特征向量。自動(dòng)識(shí)別輸出的7個(gè)矩形塊的內(nèi)容,顯然輸出層需要識(shí)別字符類型為31個(gè)省份簡(jiǎn)稱、24個(gè)英文字母(由于字母I、O和數(shù)字1、0具有相似性,因此一般不使用)、10個(gè)數(shù)字,總計(jì)字符類型65種。首先需要給圖9中的bj選定合適的節(jié)點(diǎn)個(gè)數(shù),即選定q的取值。經(jīng)過無數(shù)實(shí)驗(yàn)仿真驗(yàn)證,選定bj層的節(jié)點(diǎn)個(gè)數(shù)為40。由于神經(jīng)網(wǎng)絡(luò)中輸入層節(jié)點(diǎn)數(shù)目與特征向量緯度相匹配,輸出層節(jié)點(diǎn)數(shù)目與目標(biāo)識(shí)別種類相匹配,最終可以確定輸入120個(gè)節(jié)點(diǎn),輸出65個(gè)節(jié)點(diǎn),即:m=120,q=40,n=65。
4 結(jié)語
本文闡述了復(fù)雜環(huán)境中多車牌識(shí)別的過程,采取了SVM模型定位車牌、外部輪廓和外接矩形法分隔字符、BP神經(jīng)網(wǎng)絡(luò)法識(shí)別字符。其中,對(duì)非連續(xù)性字符(如中文字符)分隔提出改進(jìn)算法,取得良好的效果。在實(shí)驗(yàn)過程中,選取了近萬張車牌圖像作為SVM模型訓(xùn)練序列,經(jīng)過大量測(cè)試調(diào)優(yōu)統(tǒng)計(jì),文中的車牌識(shí)別算法準(zhǔn)確率高達(dá)98.53%,并且運(yùn)算簡(jiǎn)單,對(duì)系統(tǒng)或硬件要求不高,適用于復(fù)雜道路環(huán)境。
參考文獻(xiàn):
[1]鄭顧平,閆勃勃,李 剛.基于機(jī)器學(xué)習(xí)的多車牌識(shí)別算法應(yīng)用研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2018(6):129-132.
[2]羅 林.基于視頻的車輛細(xì)節(jié)特征識(shí)別方法研究[D].成都:電子科技大學(xué),2016.
[3]梁大寬.復(fù)雜背景下多車牌識(shí)別算法的研究與軟件系統(tǒng)實(shí)現(xiàn)[D].太原:太原理工大學(xué),2016.
[4]張變蓮,唐慧君,閆旻奇.一種復(fù)雜車輛圖像中的多車牌定位方法[J].光子學(xué)報(bào),2007,36(1):184-186.
[5]HEKaiming,SUNJian,TANGXiaoou.Guidedimagefilte-ring[J].IEEETransactionsonPatternAnalysisandMachineIntelligence,2013,36(6):1397-1409.
[6]X.Yang,Y.Zhao,J.Fang,etal.ALICENSEPLATESEGMENTATIONALGORITHMBASEDONMSERANDTEMPLATEMATCHING[C].ICSP2014ProceedingsonIEEE,2014.
[7]王楠楠.車牌定位及傾斜矯正方法研究[J].工業(yè)控制計(jì)算機(jī),2014,27(11):25-26.
[8]曾 泉,譚北海.基于SVM和BP神經(jīng)網(wǎng)絡(luò)的車牌識(shí)別系統(tǒng)[J].電子科技,2016,29(1):98-101.