郭保青, 馬學(xué)志, 余祖俊, 王耀東, 朱力強(qiáng)
(北京交通大學(xué) 機(jī)械與電子控制工程學(xué)院, 北京 100044)
近年來(lái),我國(guó)高速鐵路快速發(fā)展,對(duì)鐵路防災(zāi)提出了更高的要求。快速準(zhǔn)確地檢測(cè)侵入鐵路限界的異物對(duì)保障乘客生命財(cái)產(chǎn)安全、維護(hù)鐵路安全運(yùn)營(yíng)具有重要意義。
目前鐵路異物侵限檢測(cè)方法主要分為接觸式和非接觸式[1],接觸式一般在鐵路沿線(xiàn)安裝防護(hù)網(wǎng),當(dāng)有異物入侵破壞防護(hù)網(wǎng)時(shí)觸發(fā)報(bào)警,這種方法只能檢測(cè)較大的入侵異物且成本較高。非接觸式一般采用紅外、激光、微波和視頻等手段檢測(cè)入侵異物,其中視頻方式由于具有安裝簡(jiǎn)單、結(jié)果直觀的特點(diǎn)應(yīng)用最為廣泛。文獻(xiàn)[2]利用背景差分和矢量聚類(lèi)的方法檢測(cè)運(yùn)動(dòng)目標(biāo),采用光流法跟蹤目標(biāo)取得了較好效果。文獻(xiàn)[3]提出一種基于超像素的鐵路異物檢測(cè)算法,使用SVM分類(lèi)器極大地提高了系統(tǒng)性能。文獻(xiàn)[4]也提出了一種基于前景目標(biāo)統(tǒng)計(jì)分布的鐵路背景更新算法,在提高運(yùn)算速度的同時(shí)解決了傳統(tǒng)背景更新算法難以解決的鬼影問(wèn)題。為了提高處理速度,文獻(xiàn)[5]嘗試?yán)肍PGA實(shí)現(xiàn)鐵路目標(biāo)運(yùn)動(dòng)趨勢(shì)分析的異物監(jiān)測(cè)方法。上述基于視頻圖像的鐵路異物侵限監(jiān)測(cè)研究都是基于定焦槍機(jī)實(shí)現(xiàn)的,需要事先在圖像中劃定1個(gè)固定的監(jiān)測(cè)區(qū)域,當(dāng)異物侵入該區(qū)域時(shí)進(jìn)行報(bào)警。除了定焦槍機(jī)以外,鐵路沿線(xiàn)及站內(nèi)布置有大量的PTZ(Pan-Tilt-Zoom)相機(jī),這些相機(jī)一旦姿態(tài)或焦距調(diào)整后,其監(jiān)測(cè)區(qū)域也將發(fā)生變化,此時(shí)針對(duì)固定槍機(jī)的目標(biāo)檢測(cè)算法無(wú)法應(yīng)用。如果能在PTZ相機(jī)參數(shù)變化后自動(dòng)識(shí)別限界區(qū)域,針對(duì)固定槍機(jī)的檢測(cè)算法就能應(yīng)用于這類(lèi)相機(jī),因此研究針對(duì)PTZ相機(jī)的鐵路限界自動(dòng)識(shí)別方法具有重要意義。
針對(duì)PTZ相機(jī),文獻(xiàn)[6]利用圖像局部特征建立了1種球面模型,利用支持向量機(jī)訓(xùn)練該模型,實(shí)現(xiàn)了該球面模型上運(yùn)動(dòng)目標(biāo)的跟蹤。文獻(xiàn)[7-8]同時(shí)使用1個(gè)PTZ相機(jī)和1個(gè)固定相機(jī)進(jìn)行運(yùn)動(dòng)目標(biāo)跟蹤,其中文獻(xiàn)[7]通過(guò)同一采樣點(diǎn)在2個(gè)相機(jī)中的相對(duì)位置關(guān)系確定2個(gè)相機(jī)光學(xué)中心的相對(duì)位置,得到2個(gè)相機(jī)視野的變換關(guān)系;文獻(xiàn)[8]提出Tsai擴(kuò)展算法完成相機(jī)標(biāo)定,然后利用固定相機(jī)選擇目標(biāo),利用PTZ相機(jī)跟蹤運(yùn)動(dòng)目標(biāo)。以上文獻(xiàn)都是利用PTZ相機(jī)進(jìn)行運(yùn)動(dòng)目標(biāo)跟蹤的方法,但并不關(guān)心目標(biāo)與場(chǎng)景的位置關(guān)系。在鐵路場(chǎng)景中,異物侵限檢測(cè)的目的是判斷是否有異物侵入了鐵路限界。因此,對(duì)于鐵路PTZ相機(jī),參數(shù)變化后首先要確定新視野中鐵路限界的位置。由于相機(jī)姿態(tài)和焦距調(diào)整比較頻繁,不可能每次進(jìn)行手動(dòng)標(biāo)記,必須研究自動(dòng)識(shí)別鐵路限界的方法。
鐵路限界可以用鋼軌位置定義,因此自動(dòng)識(shí)別鐵路限界的首要任務(wù)就是檢測(cè)圖像中的鋼軌。針對(duì)鋼軌的檢測(cè),文獻(xiàn)[9]應(yīng)用彩色圖像中不同區(qū)域HSL色彩空間中色相值突變特征提取圖像中的鋼軌邊界點(diǎn),對(duì)多條不同等分線(xiàn)處鋼軌邊界點(diǎn)進(jìn)行直線(xiàn)擬合確定鋼軌邊緣。文獻(xiàn)[10]提出一種局部線(xiàn)性檢測(cè)算子(LLPD)用于鐵路場(chǎng)景鋼軌檢測(cè),該算法將局部線(xiàn)型歸納為8個(gè)二值圖像內(nèi)的模板。文獻(xiàn)[11]基于Radon變換推導(dǎo)出Bresenham算法用于直線(xiàn)鋼軌檢測(cè)。文獻(xiàn)[12]提出一種基于Canny邊緣檢測(cè)和聚合接續(xù)法的鋼軌邊緣提取方案。文獻(xiàn)[13]提出一種基于高速CCD相機(jī)移動(dòng)立體成像技術(shù)進(jìn)行鐵路建筑物限界狀態(tài)和相關(guān)參數(shù)快速自動(dòng)檢測(cè)的方法。以上算法都是針對(duì)白天光線(xiàn)充足條件下且鋼軌占據(jù)相機(jī)視野絕大部分的簡(jiǎn)單場(chǎng)景下的鋼軌檢測(cè),適用性較差。
本文主要解決PTZ相機(jī)姿態(tài)或焦距變化后在新視野中自動(dòng)識(shí)別鐵路限界的問(wèn)題。通過(guò)匹配PTZ相機(jī)參數(shù)改變前后圖像中對(duì)應(yīng)的Sift特征點(diǎn)確定兩幅圖像間的變換矩陣,利用該矩陣將原圖中的鐵路限界區(qū)域轉(zhuǎn)換到當(dāng)前圖像中。為了使變換后的圖像在原圖中都能找到匹配點(diǎn),將相機(jī)的最大視野圖像作為待匹配的原圖;由于光線(xiàn)多變,不能保證在所有時(shí)刻的圖像中都能找到原始圖像中的匹配點(diǎn),本文提出基于分時(shí)圖像融合的匹配模板生成方法。模板中的鐵路限界通過(guò)自動(dòng)檢測(cè)圖像中的鋼軌實(shí)現(xiàn),為了增強(qiáng)圖像中的鋼軌特征,提出了基于小波分析、形態(tài)學(xué)分析與連通域標(biāo)記的預(yù)處理方法;針對(duì)增強(qiáng)后的二值圖,提出基于平行鋼軌極向投影檢測(cè)圖像中鋼軌的方法。由于每次都在當(dāng)前圖像中自動(dòng)檢測(cè)鋼軌運(yùn)算量較大,為了提高運(yùn)算速度,相機(jī)姿態(tài)或焦距變化后采用Sift匹配算法確定當(dāng)前圖像與模板圖像中的匹配點(diǎn)對(duì),進(jìn)而計(jì)算兩幅圖像間的變換矩陣,利用該矩陣將模板圖像中的限界區(qū)域轉(zhuǎn)換為當(dāng)前圖像中的限界區(qū)域。
當(dāng)PTZ相機(jī)姿態(tài)或焦距變化后,預(yù)設(shè)的限界區(qū)域?qū)?huì)發(fā)生變化,為了能夠通過(guò)特征匹配在新圖像中找到限界,需要維護(hù)一個(gè)匹配模板。由于天氣、光照等自然因素的變化,相機(jī)不同時(shí)刻的圖像質(zhì)量差別較大,不能直接使用某幅圖像作為匹配模板,需要找到1個(gè)在不同光照下都能使用的通用模板用于后續(xù)特征點(diǎn)對(duì)的匹配。
由于PTZ相機(jī)可通過(guò)軟件設(shè)置“預(yù)置位”,當(dāng)相機(jī)恢復(fù)至“預(yù)置位”時(shí),相機(jī)的姿態(tài)和焦距即可自動(dòng)恢復(fù)為原來(lái)的參數(shù)。本文利用PTZ相機(jī)的這一特點(diǎn)通過(guò)分時(shí)圖像融合方法得到適合各種復(fù)雜光線(xiàn)條件的匹配模板,并定期進(jìn)行更新,使模板包含更豐富的信息。
為了能在匹配模板中找到對(duì)應(yīng)的匹配點(diǎn),調(diào)整相機(jī)角度、焦距,使待檢測(cè)的區(qū)域位于相機(jī)焦距最小時(shí)的視野中心位置,此時(shí)的相機(jī)視野最大,并將此時(shí)相機(jī)的姿態(tài)和焦距記錄為“預(yù)置位”。為了使匹配模板能夠適應(yīng)復(fù)雜的光線(xiàn)條件,模板更新公式為
Mi(x,y)=αMi-1(x,y)+βIYi(x,y)
(1)
式中:Mi(x,y)為本次更新后的匹配模板;Mi-1(x,y)為上次更新后的匹配模板;IYi(x,y)為當(dāng)前時(shí)刻相機(jī)恢復(fù)“預(yù)置位”處采集的圖像;α、β為融合系數(shù)。為進(jìn)一步增強(qiáng)模板的適用性,需根據(jù)實(shí)際光線(xiàn)條件對(duì)融合系數(shù)α、β進(jìn)行調(diào)整。在白天光線(xiàn)充足條件下,適當(dāng)增大α,減小β;在夜間光照不足時(shí),適當(dāng)減小α,增大β。根據(jù)現(xiàn)場(chǎng)實(shí)驗(yàn)經(jīng)驗(yàn),白天時(shí)取α=0.8,β=0.2,夜間時(shí)取α=0.6,β=0.4。
初始匹配模板M0的獲得是通過(guò)分別在白天和夜間預(yù)置位采集1幅圖像,并將采集到的兩幅圖像按照式(2)融合實(shí)現(xiàn)。
M0(x,y)=0.25Id(x,y)+0.75In(x,y)
(2)
式中:M0(x,y)為初始匹配模板;Id(x,y)為白天獲取的預(yù)置位圖像;In(x,y)為夜晚獲取的預(yù)置位圖像。利用白天和夜間圖像按照1∶3的比例融合成的初始模板,見(jiàn)圖1。
(a) 白天圖像 (b) 夜天圖像 (c) 初始模板圖1 初始模板生成
獲得初始模板后, PTZ相機(jī)每天0:00時(shí)刻和12:00時(shí)刻恢復(fù)預(yù)置位,分別獲取1幅夜間和白天圖像不斷更新匹配模板,該模板圖像包含了不同時(shí)段不同天氣條件下的信息,具有更強(qiáng)的適應(yīng)性。
由于匹配模板中鐵軌的位置是固定的,因此可以通過(guò)檢測(cè)模板中的鋼軌實(shí)現(xiàn)模板圖像限界區(qū)域的自動(dòng)識(shí)別。為了突出圖像中的鋼軌特征,需要對(duì)模板圖像進(jìn)行預(yù)處理操作。本文采用的預(yù)處理操作主要分為Haar小波分析、形態(tài)學(xué)斷線(xiàn)重連和連通域標(biāo)記初步確定鋼軌3個(gè)步驟。
小波變換中,近似值是大的縮放因子產(chǎn)生的系數(shù),表示信號(hào)的低頻分量,細(xì)節(jié)值是小的縮放因子產(chǎn)生的系數(shù),表示信號(hào)的高頻分量。通過(guò)比較Biorthgonal、Symlets、Haar常用小波基的效果,Haar小波在運(yùn)行速度和特征提取效果上都占優(yōu),因此本文使用Haar小波完成圖像分析。
Haar基函數(shù)φ(x)定義為
(3)
Haar小波函數(shù)ψ(x)定義為
(4)
對(duì)1個(gè)包含4個(gè)像素的一維圖像a([a(1)a(2)a(3)a(4)])進(jìn)行Haar小波變換得到圖像b,變換過(guò)程為
(5)
式中:[b(1)b(2)]是原圖像的近似(低頻)圖,包含圖像a的大部分能量,但是分辨率是原圖像的一半,[b(3)b(4)]是原圖像的細(xì)節(jié)(高頻)圖,能量很少。表1以[11 9 5 7]為例,展示了2次Haar小波變換的結(jié)果。
表1 Haar小波變換過(guò)程
從表1可以看出,每進(jìn)行1次小波變換,分辨率減半,因此分辨率為1×4的圖像最多只能進(jìn)行2次小波變換。本文首先對(duì)原始圖像逐行完成1次小波變換,再逐列完成1次小波變換,得到原圖像的水平、豎直均近似(LL),水平近似、豎直細(xì)節(jié)(HL),水平細(xì)節(jié)、豎直近似(LH)和水平、豎直均細(xì)節(jié)(HH)4個(gè)分量圖,原圖分辨率為960×1 280,小波變換后各分量圖分辨率為480×640。因?yàn)榧?xì)節(jié)分量圖能量很小,不利于直接觀察,因此分別對(duì)HL、LH、HH 3個(gè)分量圖做直方圖均衡化,結(jié)果見(jiàn)圖2。
(a) LL (b) HL
(c) LH (d) HH圖2 Haar小波變換結(jié)果
圖2(a)保留了原圖的絕大部分能量,與原圖非常相似,對(duì)LL分量圖進(jìn)行處理的意義不大。對(duì)比其他3個(gè)細(xì)節(jié)分量圖,發(fā)現(xiàn)圖2(b)在保留部分原圖信息的基礎(chǔ)上,鋼軌特征比較突出,因此選用HL分量圖進(jìn)行后續(xù)操作。
利用Biorthgonal、Symlets、Haar小波基提取的HL分量圖見(jiàn)圖3,其中Haar小波保留的鋼軌特征最完整、最突出;3種小波分析的運(yùn)算時(shí)間見(jiàn)表2,由表2可見(jiàn),Haar小波在運(yùn)算時(shí)間和處理效果上都有一定的優(yōu)勢(shì)。
(a) Biorthgonal小波 (b) Symlets小波 (c) Haar小波 圖3 不同小波分析結(jié)果
表2 不同小波基運(yùn)算時(shí)間比較s
為方便后續(xù)處理,對(duì)HL分量圖做二值化操作。觀察發(fā)現(xiàn),圖像整體偏“白”,為了獲得效果較好的二值化圖像,需設(shè)定較大的二值化閾值,本文選定的二值化閾值為240,二值化操作原理為
(6)
式中:D(x,y)為二值化后點(diǎn)(x,y)處的像素值;HL(x,y)為HL分量圖坐標(biāo)(x,y)處灰度值。
二值化結(jié)果見(jiàn)圖4(a)。由圖4(a)可見(jiàn),鋼軌的某些部分存在“斷裂”情況,這會(huì)對(duì)后期的鋼軌檢測(cè)帶來(lái)嚴(yán)重影響。本文通過(guò)一次形態(tài)學(xué)閉運(yùn)算解決二值圖像中鋼軌的“斷裂”問(wèn)題,完成斷線(xiàn)重連。形態(tài)學(xué)閉運(yùn)算是一種重要的形態(tài)運(yùn)算,包括先膨脹后腐蝕兩個(gè)過(guò)程。
膨脹是圖像向外擴(kuò)張的過(guò)程,可以用于橋接縫隙,填補(bǔ)物體中的細(xì)小空洞,而腐蝕則是向內(nèi)收縮的過(guò)程,可以用于消除獨(dú)立的點(diǎn)或小物體。定義集合A為一幅圖像,S為進(jìn)行形態(tài)學(xué)操作的結(jié)構(gòu)元素,設(shè)其幾何中心為S[o]。用S對(duì)A進(jìn)行膨脹可以表示為A⊕S,其中⊕為膨脹算子。膨脹運(yùn)算定義為
A⊕S={x|S[x],S[o]∩A≠?}
(7)
式(7)表明膨脹過(guò)程就是將結(jié)構(gòu)元素的中心S[o]與圖像A進(jìn)行與操作,若結(jié)果非空,此時(shí)結(jié)構(gòu)元素所在區(qū)域即變?yōu)閳D像A中此處的目標(biāo)區(qū)域,將結(jié)構(gòu)元素S在圖像A內(nèi)平移,遍歷整幅圖像,S掃過(guò)的區(qū)域集合即為A中的目標(biāo)區(qū)域。
用S對(duì)A進(jìn)行腐蝕可以表示為AΘS,其中Θ為腐蝕算子。腐蝕運(yùn)算定義如下
AΘS={o|S[o],S[x]?A}
(8)
式(8)表明腐蝕結(jié)果就是將S在A中平移,遍歷整幅圖像,當(dāng)S完全被A包圍時(shí)S的中心S[o]掃過(guò)的區(qū)域集合。
通過(guò)先膨脹后腐蝕的形態(tài)學(xué)閉運(yùn)算,完成了目標(biāo)中細(xì)小空洞的填充、相鄰目標(biāo)的連接和目標(biāo)邊緣的平滑,完成了二值圖像中鋼軌的斷線(xiàn)重連,使鋼軌特征更加突出,結(jié)果見(jiàn)圖4(b)和圖4(c)。
形態(tài)學(xué)閉運(yùn)算后的圖4(c)中仍存在許多獨(dú)立的“白點(diǎn)”,以及一片較大的白色區(qū)域,這些都會(huì)影響后期鋼軌檢測(cè)的效果。本文提出基于8鄰域的連通域標(biāo)記方法以降低上述影響。連通域標(biāo)記就是將二值圖像中彼此相鄰(8鄰域)的“白點(diǎn)”(像素值為1)標(biāo)記為同一個(gè)目標(biāo)的過(guò)程。
連通區(qū)域的標(biāo)記示意見(jiàn)圖5,過(guò)程為
圖5 連通域標(biāo)記示意
Step1掃描第1行,得到兩個(gè)塊[2,4]和[7,10],分別標(biāo)記為1和2。
Step2掃描第2行,得到兩個(gè)塊[4,5]和[7],但是他們分別與上一行的兩個(gè)塊1、2的8鄰域有重疊區(qū)域,所以將[4,5]標(biāo)記為1,將[7]標(biāo)記為2。
Step3掃描第3行,同樣得到兩個(gè)塊[1,2]和[6,7],[1,2]與上一行被標(biāo)記的塊的8鄰域均沒(méi)有重疊區(qū)域,所以將其標(biāo)記為一個(gè)新的塊3,而[6,7]與上一行兩個(gè)塊的8鄰域都有重疊,所以標(biāo)記為兩者中最小的標(biāo)號(hào),即1,塊1、2實(shí)際為同一個(gè)塊,所以將塊1、2均標(biāo)記為1,將3標(biāo)記為2。
Step4遍歷圖像,直到所有值為1的像素均被標(biāo)記完為止。
完成連通域標(biāo)記后,二值圖像被標(biāo)記為許多不同的目標(biāo),統(tǒng)計(jì)各目標(biāo)所包含的像素?cái)?shù)。實(shí)驗(yàn)中發(fā)現(xiàn),像素個(gè)數(shù)小于150的都是一些零散的噪聲,而像素個(gè)數(shù)大于5 000的多為反光造成的大片白色區(qū)域,將這些確定不是鋼軌的目標(biāo)剔除能夠很大程度上提高后期算法的檢測(cè)精度,過(guò)程為
(9)
式中:i為被標(biāo)記的第i個(gè)目標(biāo);S(i)為第i個(gè)目標(biāo)包含的像素個(gè)數(shù)。
連通域標(biāo)記后利用式(9)初步篩選前后的結(jié)果見(jiàn)圖6,從圖6中可以看出,經(jīng)過(guò)上述預(yù)處理后鋼軌特征更加突出,便于后期檢測(cè)。
(a) 篩選前 (b) 篩選后圖6 連通域標(biāo)記處理結(jié)果
經(jīng)過(guò)上述預(yù)處理后,圖像中的鋼軌特征已非常突出,但仍存在許多干擾噪聲,準(zhǔn)確地檢測(cè)所有鋼軌位置仍面臨挑戰(zhàn)。本文針對(duì)現(xiàn)實(shí)場(chǎng)景中直線(xiàn)鋼軌平行的特點(diǎn),提出利用Hough變換檢測(cè)兩條鋼軌確定消隱點(diǎn),進(jìn)而利用極向投影檢測(cè)其他鋼軌位置的方法。
根據(jù)攝像機(jī)成像模型,經(jīng)過(guò)透視投影成像后,空間相互平行的直線(xiàn)將在成像平面中相交于一點(diǎn),稱(chēng)為消隱點(diǎn)。消隱點(diǎn)成像模型見(jiàn)圖7,三維場(chǎng)景中的正方形棋盤(pán)格經(jīng)過(guò)透視投影成像后在圖像平面中,其中所有縱向直線(xiàn)相交于O1點(diǎn),所有橫向直線(xiàn)相交于O2點(diǎn),這兩個(gè)點(diǎn)分別為兩束平行線(xiàn)的消隱點(diǎn)。由于鐵路直線(xiàn)區(qū)段場(chǎng)景中所有鋼軌都是平行的,利用透視投影關(guān)系可知,這些鋼軌具有相同的消隱點(diǎn),確定消隱點(diǎn)有助于鋼軌的檢測(cè)。
圖7 消隱點(diǎn)成像模型
消隱點(diǎn)可以利用現(xiàn)實(shí)平行線(xiàn)束中任意兩條平行線(xiàn)在圖像中的交點(diǎn)確定,因此只要在鐵路場(chǎng)景圖像中檢測(cè)出兩條鋼軌即可確定平行鋼軌的消隱點(diǎn)。鋼軌檢測(cè)利用Hough變換實(shí)現(xiàn),Hough變換是一種由二維空間到參數(shù)空間的映射,常用于圖像空間中的直線(xiàn)特征檢測(cè)。由于二維空間的某一點(diǎn)對(duì)應(yīng)于參數(shù)空間的某條直線(xiàn),二維空間的共線(xiàn)性對(duì)應(yīng)于參數(shù)空間的共點(diǎn)性,因此可以通過(guò)對(duì)參數(shù)空間某個(gè)點(diǎn)對(duì)應(yīng)的計(jì)數(shù)提取二維空間中的直線(xiàn)參數(shù)。本文中利用Hough變換檢測(cè)圖像中鋼軌的結(jié)果,見(jiàn)圖8。
圖8 Hough變換檢測(cè)結(jié)果
圖8中檢測(cè)結(jié)果并不理想,6條鋼軌不能全部準(zhǔn)確檢測(cè),同時(shí)還檢測(cè)出了許多其他位置的直線(xiàn),存在誤檢與漏檢情況。由于直線(xiàn)鐵路區(qū)段各股道的鋼軌相互平行,表現(xiàn)在圖像平面上即為各鋼軌直線(xiàn)應(yīng)相交于相同的消隱點(diǎn)。本文使用Hough變換檢測(cè)直線(xiàn)特征最明顯的兩條直線(xiàn)確定鋼軌消隱點(diǎn),其位置通過(guò)求解兩條鋼軌直線(xiàn)方程的交點(diǎn)獲得,見(jiàn)圖9。
圖9 獲得消隱點(diǎn)
由于實(shí)際場(chǎng)景中其他鋼軌與檢測(cè)出的兩條鋼軌相互平行,因此,圖像中的其他鋼軌也應(yīng)通過(guò)該消隱點(diǎn)。本文提出的極向投影直線(xiàn)檢測(cè)方法就是以消隱點(diǎn)為中心,沿各角度向消隱點(diǎn)做極向投影,統(tǒng)計(jì)各方向上白色像素點(diǎn)的個(gè)數(shù)。若某角度上存在一條鋼軌直線(xiàn),則該方向上的白色像素累加值必定是一個(gè)峰值??紤]到鋼軌只存在于消隱點(diǎn)下方,為減小運(yùn)算量,角度范圍取(-180°,0°),步長(zhǎng)為0.5°。
獲取某方向像素累加值的關(guān)鍵是得到該方向的直線(xiàn)方程,過(guò)消隱點(diǎn)(x0,y0)且方向?yàn)棣鹊闹本€(xiàn)截距。
b=y0-tanθ·x0
(10)
則該直線(xiàn)可以表示為
y=tanθ·x+b=tanθ·(x-x0)+y0
(11)
式(11)為過(guò)消隱點(diǎn)(x0,y0)方向?yàn)棣鹊闹本€(xiàn)方程??紤]到像素彼此正交的排列方式,大部分像素點(diǎn)并不會(huì)恰好在直線(xiàn)上,實(shí)際以橫坐標(biāo)x為自變量,通過(guò)式(11)求得縱坐標(biāo)y,對(duì)y四舍五入求整即可得到位于直線(xiàn)周?chē)南袼攸c(diǎn)坐標(biāo),見(jiàn)圖10?!啊恪睘橄[點(diǎn),“×”為橫坐標(biāo)固定情況下直線(xiàn)周?chē)南袼攸c(diǎn),求該方向的極向投影即把圖10中所有星號(hào)點(diǎn)的像素值相加。
圖10 極向投影示意
以0.5°步長(zhǎng)遍歷消隱點(diǎn)(-180°,0°)范圍內(nèi)所有方向,極向投影累加公式為
(12)
式中:(x,y)為角度θ時(shí)由式(11)確定的像素坐標(biāo);g(x,y,θ)為對(duì)應(yīng)像素點(diǎn)的數(shù)值。
圖9的極向投影曲線(xiàn)見(jiàn)圖11。由圖11可見(jiàn),極值點(diǎn)對(duì)應(yīng)的角度上存在著直線(xiàn),因?yàn)閷?shí)際圖像中存在6條鋼軌,因此極向投影值最大的6個(gè)極值點(diǎn)即為圖像中6條鋼軌的位置,由極值點(diǎn)確定各鋼軌的角度后,
圖11 極向投影曲線(xiàn)
(a) 檢測(cè)的鋼軌 (b) 最外鍘鋼軌與限界區(qū)域圖12 最終檢測(cè)結(jié)果
利用式(11)即可求得所有鋼軌直線(xiàn)方程,由此求得的6條鋼軌的位置見(jiàn)圖12(a),圖12(b)中白色粗線(xiàn)是由最外側(cè)兩條鋼軌向外平移一定距離確定的限界區(qū)域。
由于上述鋼軌檢測(cè)算法計(jì)算量較大,若每次相機(jī)姿態(tài)和焦距改變后均執(zhí)行以上過(guò)程耗時(shí)較長(zhǎng),不利于實(shí)時(shí)檢測(cè)。為此,本文僅在設(shè)備初始化時(shí)利用上述方法自動(dòng)識(shí)別限界區(qū)域并標(biāo)記關(guān)鍵點(diǎn),當(dāng)相機(jī)姿態(tài)或焦距改變后,通過(guò)Sift特征匹配方法將模板中的限界區(qū)域映射到新圖像中。
應(yīng)用特征匹配將匹配模板中的限界區(qū)域映射到新圖像中的過(guò)程見(jiàn)圖13。圖13左部為匹配模板,模板中的限界區(qū)域用多邊形ABCD表示;當(dāng)相機(jī)的姿態(tài)和焦距發(fā)生變化后獲取的新圖像見(jiàn)圖13右部。此時(shí)可以通過(guò)特征點(diǎn)匹配確定兩幅圖像之間的變換矩陣,進(jìn)而將匹配模板中的限界區(qū)域映射到新圖像中獲取新的限界區(qū)域。假設(shè)匹配過(guò)程中找到了4對(duì)特征點(diǎn)對(duì)(1-1′, 2-2′, 3-3′, 4-4′),利用這4對(duì)特征點(diǎn)可以確定匹配模板與當(dāng)前圖像的坐標(biāo)變換矩陣T,利用變換矩陣T將原圖中限界區(qū)域的4個(gè)頂點(diǎn)ABCD變換到當(dāng)前圖像中得到A′B′C′D′,四邊形A′B′C′D′與當(dāng)前圖像的交集即為當(dāng)前圖像中的限界區(qū)域,見(jiàn)圖13右部中粗線(xiàn)框。
圖13 限界區(qū)域標(biāo)記示意
本文選用Sift算法完成模板圖像與當(dāng)前圖像的特征匹配。首先分別檢測(cè)兩幅圖像中的Sift特征點(diǎn),在兩幅圖像的特征點(diǎn)中尋找到具有相同特征矢量的特征點(diǎn)作為匹配點(diǎn)對(duì),剔除匹配點(diǎn)對(duì)中的誤匹配點(diǎn),根據(jù)匹配點(diǎn)對(duì)計(jì)算兩幅圖像間的仿射變換矩陣,再利用變換矩陣將匹配模板中的限界區(qū)域關(guān)鍵點(diǎn)映射到新圖像中得到新圖像中,對(duì)應(yīng)的關(guān)鍵點(diǎn)坐標(biāo),進(jìn)而在新圖像中自動(dòng)標(biāo)記出新的限界區(qū)域。
Sift算法是將二維圖像I在DoG(Difference-of-Gaussian)尺度空間中檢測(cè)出的局部極值作為特征點(diǎn),具有良好的獨(dú)特性和穩(wěn)定性。DoG算子生成過(guò)程為
D(x,y,σ)=
(G(x,y,kσ)-G(x,y,σ))I(x,y)=
L(x,y,kσ)-L(x,y,σ)
(13)
式中:D(x,y,σ)為DoG算子;I(x,y)為圖像(x,y)處的像素值;L為尺度空間;G(x,y,kσ)、G(x,y,σ)分別為不同尺度空間下的二維高斯分布,表示為
(14)
式中:σ為高斯分布的均方差。
通過(guò)式(13)尋找圖像中的極值點(diǎn),以每個(gè)極值點(diǎn)為中心,提取其4×4鄰域內(nèi)每個(gè)點(diǎn)的8個(gè)方向的梯度方向,共128維信息作為其特征向量。如果兩幅圖像中某兩個(gè)特征點(diǎn)的128維特征向量相似,這兩個(gè)點(diǎn)便可判定為一組匹配點(diǎn)對(duì)。為保證結(jié)果的準(zhǔn)確性,本文采用RANSAC方法剔除誤匹配點(diǎn)對(duì),剔除后匹配結(jié)果見(jiàn)圖14。
圖14 剔除誤匹配點(diǎn)對(duì)
當(dāng)兩幅圖像的正確匹配點(diǎn)數(shù)目不少于3對(duì)時(shí),即可通過(guò)匹配點(diǎn)對(duì)的坐標(biāo)求得兩幅圖像間的變換矩陣T,可計(jì)算出新圖像中限界區(qū)域關(guān)鍵點(diǎn)的像素坐標(biāo)。
(X,Y)=(X0,Y0)T
(15)
式中:(X,Y)為新圖像中限界區(qū)域的坐標(biāo)矩陣;(X0,Y0)為匹配模板中限界區(qū)域的坐標(biāo)矩陣;T為通過(guò)Sift匹配點(diǎn)利用最小二乘法計(jì)算得到的變換矩陣。
不同時(shí)段和相機(jī)方位與焦距調(diào)整前后自動(dòng)識(shí)別的限界區(qū)域見(jiàn)圖15。匹配模板中利用鋼軌極向投影自動(dòng)識(shí)別的限界區(qū)域見(jiàn)圖15(a),夜間場(chǎng)景的匹配結(jié)果見(jiàn)圖15 (b),相機(jī)旋轉(zhuǎn)后利用Sift匹配獲取的限界見(jiàn)圖15(c),相機(jī)焦距變化后利用Sift匹配獲取的限界見(jiàn)圖15(d)。從匹配結(jié)果可以看出,該方法不受光線(xiàn)條件的影響,當(dāng)相機(jī)姿態(tài)或焦距變化后,均能在新圖像中準(zhǔn)確地標(biāo)記出限界區(qū)域。
為了比較兩種算法在運(yùn)行時(shí)間上的差異,分別利用兩種方法對(duì)20組相機(jī)姿態(tài)或焦距調(diào)整后的圖像進(jìn)行限界區(qū)域計(jì)算,兩種方法的運(yùn)行時(shí)間見(jiàn)表3。
(a) 模板限界 (b) 夜間識(shí)別的限界
(c) 相機(jī)旋轉(zhuǎn)后的限界 (d) 焦距調(diào)整后的限界圖15 Sift匹配結(jié)果
表3 算法運(yùn)行時(shí)間s
實(shí)驗(yàn)結(jié)果表明,基于Sift匹配的限界識(shí)別方法相比基于圖像預(yù)處理后進(jìn)行極向投影的方法能將平均運(yùn)行時(shí)間從7.093 s縮短到3.784 s,計(jì)算時(shí)間縮短47%,雖然3.78 s時(shí)間仍然較長(zhǎng),但由于該算法只在檢測(cè)到相機(jī)姿態(tài)或焦距變化后進(jìn)行,能夠滿(mǎn)足使用要求。
本文針對(duì)PTZ相機(jī)姿態(tài)和焦距變化后由于限界區(qū)域改變導(dǎo)致無(wú)法自動(dòng)進(jìn)行異物侵限判斷的問(wèn)題,提出一種基于平行鋼軌極向投影的鐵路限界區(qū)域自動(dòng)識(shí)別方法。首先采用不同時(shí)段獲取的相機(jī)最大場(chǎng)景圖像經(jīng)過(guò)分時(shí)圖像融合獲得匹配模板,然后應(yīng)用Haar小波分析、形態(tài)學(xué)閉運(yùn)算和連通域標(biāo)記進(jìn)行圖像預(yù)處理,突出圖像中的鋼軌特征,進(jìn)而利用Hough變換檢測(cè)出特征最明顯的兩條鋼軌獲得平行鋼軌消隱點(diǎn),并利用通過(guò)消隱點(diǎn)的極向投影曲線(xiàn)峰值獲取其他鋼軌的準(zhǔn)確位置。為了提高運(yùn)算速度,當(dāng)檢測(cè)到相機(jī)參數(shù)變化后,采用Sift匹配算法獲取匹配模板與新圖像的變換矩陣T,并利用T矩陣將匹配模板圖像中自動(dòng)識(shí)別的限界區(qū)域映射到新圖像中獲得新的限界。鐵路現(xiàn)場(chǎng)的實(shí)驗(yàn)表明,本文算法能夠準(zhǔn)確地識(shí)別PTZ相機(jī)姿態(tài)和焦距調(diào)整后新場(chǎng)景中的限界區(qū)域,對(duì)基于PTZ相機(jī)的鐵路異物侵限研究具有重要參考價(jià)值。