辛明遠 梅勁松 蔣銀男
(1.南京航空航天大學自動化學院 南京 211106)(2.南京拓控信息科技股份有限公司 南京 210019)
近年來,隨著我國鐵路建設快速發(fā)展,鐵路成為了更多人的出行選擇,鐵路車輛的日常檢修隨之變得尤為重要。各種檢修數(shù)據(jù)通常以車號為索引進行存儲和調(diào)用,快速而準確的車號定位算法是車號識別系統(tǒng)的基礎。車號區(qū)域由于光照、背景等影響會導致圖像中含有大量干擾。因此,定位算法的關鍵就是要有較好的魯棒性。目前已有的定位方法有投影法[1]、基于顏色及形態(tài)學的車號定位[2~3]、基于筆畫寬度變換的車號定位[4]等,但是對復雜光照下的多型車廂的客運列車車號定位沒有討論。
針對此問題,根據(jù)車號紋理特點,本文提出了一種基于小波分解的定位算法,提高了復雜光照下的多種車號定位的準確率,具有較好的魯棒性。對提取的車號圖像采用基于局部灰度特性[5~7]的閾值分割方法,并結合連通域個數(shù)指導最終閾值分割,相比于傳統(tǒng)的二值化方法獲得了較好的效果。
本文研究對象是客運列車車號彩色圖像,尺寸為500×375,如圖1所示,由于列車檢修大都在晚上,圖像不僅顏色不同,而且由于光線的影響,導致車號區(qū)域光照不均勻,并存在一些噪點。為了提高車號定位精度,需對原始圖像進行預處理。本文預處理主要包括灰度化、中值濾波和拉普拉斯銳化,之后對預處理圖像車號區(qū)域進行紋理分析,研究車號區(qū)域紋理特點。
圖1 原始圖像
首先,將采集到的彩色圖像轉化為灰度圖像,本文采用經(jīng)典的加權平均值法實現(xiàn)灰度化,將RGB圖像轉化為YUV圖像,一般提取Y分量實現(xiàn)灰度化,YUV空間與RGB空間的轉換關系常表示如下:
由于光照不均勻,車號區(qū)域對比度不強,導致車號的定位、分割等處理難以進行,為了增加對比度,需對圖像銳化處理,本文采用拉普拉斯銳化方法增加對比度。
拉普拉斯算子是一種各向同性微分算子,適合改善因為光線漫反射造成的圖像模糊,在二維情況下,離散的拉普拉斯算子表達式為
上式等號右邊兩項分別表示x方向和y的二階差分,進一步有
實驗結果如下,對比發(fā)現(xiàn),圖3車號輪廓更加清晰,對比度高且噪點減少。
圖2 灰度圖像
圖3 預處理結果
根據(jù)客運列車車號涂刷標準可知,車號區(qū)域縱向邊緣比較豐富,其他區(qū)域如車窗部分水平邊緣比較豐富,車號區(qū)域等細節(jié)信息包含在圖像的高頻部分,以下是關于預處理后的車號區(qū)域紋理分析的實驗,取x=190(x∈1∶375)(圖3車號區(qū)域中間位置)的一條數(shù)據(jù)線,采用小波分解[8]進行紋理分析,采用哈爾小波對該條數(shù)據(jù)線進行多層分解后發(fā)現(xiàn)車號區(qū)域是一個高頻紋理區(qū),在前3層的分解中,車號區(qū)域紋理特征明顯,較容易分離出來,第4層及第4層后的干擾逐漸增多,高頻特性逐漸變?nèi)?,實驗結果如圖4所示。
圖4 車號區(qū)域垂直高頻特性變化
由于客運列車車身及車號顏色較多,光照變化較大,傳統(tǒng)的定位算法效果往往不太理想,本文引入小波分解及形態(tài)學處理[9~10]完成車號定位,并采用基于局部灰度均值和標準差的二值化算法,對車號進行閾值分割。
根據(jù)車號區(qū)域紋理分析實驗,本文對預處理后的車號圖像選擇兩層分解的細節(jié)信號進行車號定位,算法步驟描述如下:
1)使用哈爾小波對預處理圖像進行兩層分解提取垂直高頻分量;
2)使用改進的 Canny邊緣檢測算法[11]進行邊緣檢測;
3)形態(tài)學處理,使用線性算子進行閉運算[12~13],使檢測的邊緣信息連接成連通區(qū)域,根據(jù)圖像中車號長度和實驗,選取的線性算子為[1,1,1,1,1,1,1,1,1,1,1];
4)根據(jù)客運列車車號的噴刷規(guī)則以及實際采集圖像中的車號長寬等先驗知識,結合小波分解圖像尺寸變換關系,采用最小外接矩形分割,將滿足約束條件的區(qū)域提取出來,完成車號的定位。約束條件:車號尺寸250×50,長和寬的誤差分別為5個像素。
該算法有效克服了光照不均勻及不同顏色對于車號定位的影響,實驗結果如圖5所示,其中,圖(a)是經(jīng)過小波分解得到的圖像,可見車號紋理清晰,其他區(qū)域邊緣信息則被弱化,噪點減少;圖(b)和(c)是邊緣檢測的圖像,未改進前邊緣檢測易發(fā)生斷裂,改進后邊緣信息更完整;圖(d)是采用線性算子經(jīng)過閉運算后得到的圖像;圖(e)是采用最小外接矩形分割并結合先驗知識得到的定位結果。
圖5 車號定位
閾值分割的作用是將客運列車車號與背景分割開來,是車號字符分割與識別前非常重要的一步。常用的方法一般可分為全局閾值法和局部閾值法,二者的典型代表是大津法[14~15]和 Niblack法。通過對比,本文采用基于局部灰度均值和標準差的二值化算法對提取的車號圖像進行閾值處理,其原理為對圖像中(x,y)處的點,在它的R×R鄰域內(nèi),計算鄰域內(nèi)灰度均值m(x,y)和標準差s(x,y),然后用下式計算閾值進行分割:
式中K是修正系數(shù)。
此外,由于客運列車車號顏色與車廂顏色有多種,經(jīng)過閾值處理后,字符灰度值不統(tǒng)一,而且Niblack算法雖然突出了細節(jié),但有時閾值處理后會出現(xiàn)干擾。針對此問題,本文提出一種連通域個數(shù)指導閾值分割的算法,得到車號字符灰度值統(tǒng)一的圖像,并去除初次閾值處理后產(chǎn)生的干擾。算法步驟描述如下:
1)采用Niblack法對提取出的車號灰度圖進行初次閾值處理,根據(jù)大量實驗,窗口大小R=7,K=0.7;
2)采用最小外接矩形分割,記分割出的連通域數(shù)為num,用來指導初次閾值處理圖像是否進行顏色翻轉,考慮到字符之間有時會出現(xiàn)粘連并根據(jù)實驗,如果num<10,進行翻轉處理,如果num≥10,不進行處理;
3)遍歷每個連通域的最小外接矩形,根據(jù)車號涂刷規(guī)則等先驗知識模塊,將干擾去除,得到閾值處理最終圖像。
實驗結果如圖6所示,圖(a)是定位結果;圖(b)是采用大津法得到的閾值分割圖像,字符容易發(fā)生斷裂;圖(c)是采用Niblack法并進行翻轉得到的圖像,可見車號字符二值化效果較好,但有時會出現(xiàn)一些干擾;圖(d)是本文方法得到的最終閾值分割結果,可見符合字符分割識別要求,且不含干擾。
圖6 車號的閾值分割
為了驗證本文算法的有效性,從某機務段現(xiàn)場采集了700張含有車號的圖片作為驗證集,涵蓋了我國主力客運列車車廂,除了前述車型的車號圖像,圖7展示了另外兩種具有代表性的車號圖像及其定位和閾值分割結果,可見,在多種車廂及復雜光照下,定位及二值化效果較好。
圖7 樣本圖片及處理結果
表1對比了投影法、基于顏色及形態(tài)學的定位算法,本文算法在定位精度及漏檢率方面具有一定優(yōu)勢。
表1 試驗對比結果
本文提出了一種基于小波分解的客運列車車號定位及閾值分割方法,相對于傳統(tǒng)方法有以下三點改進:1)在預處理階段,采用拉普拉斯銳化算法,增加灰度圖像對比度;2)引入小波分解提取垂直高頻分量,并采用改進的Canny邊緣檢測算法,突出車號紋理特征,降低干擾;3)在閾值分割階段,本文提出一種以連通域個數(shù)指導最終閾值分割的方法,并引入先驗知識去除局部自適應閾值分割產(chǎn)生的干擾。實驗結果表明,在應對不同顏色的多種車型、光照變化等影響因素時,定位及閾值分割有較好的魯棒性。