劉新平,張 影,王風(fēng)華
(中國石油大學(xué)(華東)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,青島 266580)
隨著中國經(jīng)濟(jì)的迅猛發(fā)展,汽車的保有量越來越高.截至2017年3月底,全國汽車保有量首次超過2 億輛[1].在中國大多數(shù)城市中車流量較大的主要交通要道上,交通擁堵,事故頻發(fā),給市民的生活和日常出行造成了極大的不便.為了改善城市的交通狀況和市民的生活質(zhì)量,通過快速的檢測到交通擁堵時的車輛排隊(duì)現(xiàn)象,實(shí)時得到交通監(jiān)控視頻中的車道占有率等信息對交通概況加以改善是重中之重[2].
傳統(tǒng)的車輛排隊(duì)長度檢測方法主要是利用固定位置的傳感器,如環(huán)路傳感器等.由于傳統(tǒng)方法的成本高以及維護(hù)困難,因此目前車輛排隊(duì)長度檢測方法的研究主要基于視頻檢測器以及基于帶有探測器的聯(lián)網(wǎng)車輛.基于視頻檢測器的檢測方法研究主要有以下幾種.第一種檢測方法分為三步,車輛運(yùn)動狀態(tài)檢測,車輛存在檢測以及車輛排隊(duì)長度檢測.使用三幀時間差分法的運(yùn)動檢測方法對移動車輛進(jìn)行檢測[3],邊緣信息作為車輛存在的標(biāo)志,利用移動的檢測窗口對交叉口的車輛排隊(duì)長度進(jìn)行檢測.文獻(xiàn)[4]使用背景差法在虛擬的檢測窗口監(jiān)控交通路口車輛的出現(xiàn).文獻(xiàn)[5]結(jié)合背景差法和邊緣檢測方法判斷車輛隊(duì)列的存在.文獻(xiàn)[6]使用基于梯度的形態(tài)學(xué)邊緣提取方法判斷車輛存在,使用伸縮窗方法檢測車輛隊(duì)列.然而文獻(xiàn)[3]主要通過時間差分法得到視頻中運(yùn)動的車輛,無法檢測到車輛隊(duì)列的形成.在文獻(xiàn)[4,5]都使用了幀差法和背景差分法,不同點(diǎn)為作為車輛存在的特征不同.第二種檢測方式通過建立世界坐標(biāo)系使用逆透視變換獲得交通道路的鳥瞰,文獻(xiàn)[7]使用該方法可以獲得較為清晰的車輛排隊(duì)結(jié)果,但是依賴于準(zhǔn)確的車道線標(biāo)識并且是在車輛隊(duì)列形成的前提下.由于聯(lián)網(wǎng)汽車技術(shù)的快速發(fā)展和叫車服務(wù)的出現(xiàn),帶有探測器設(shè)備的聯(lián)網(wǎng)車輛越來越多,進(jìn)而出現(xiàn)基于聯(lián)網(wǎng)車輛研究車輛排隊(duì)長度的方法[8],但是目前聯(lián)網(wǎng)車輛的所占比例依舊很小.
針對以上文獻(xiàn)采取的方法以及出現(xiàn)的問題,本文在車輛排隊(duì)長度檢測的過程中主要做了如下工作.第一,改進(jìn)FAST 角點(diǎn)檢測的過程,在檢測窗內(nèi)利用角點(diǎn)信息作為車輛存在的標(biāo)志,同時通過角點(diǎn)位置在相鄰幀間的像素變化與閾值相比較,判斷車輛的運(yùn)動狀態(tài)獲取視頻中的車輛隊(duì)列.第二,結(jié)合PCA 技術(shù)將隊(duì)列中的角點(diǎn)信息壓縮成為一維向量,在孤立的噪點(diǎn)被去除的同時保留了原視頻監(jiān)控中有用的角點(diǎn)信息.第三,對得到的一維向量進(jìn)行可變模板的形態(tài)學(xué)處理,最后轉(zhuǎn)換為實(shí)際排隊(duì)長度.
本文提出一種車輛排隊(duì)長度檢測方法.其方法基于FAST 角點(diǎn)檢測將監(jiān)控視頻中單一車道里的車輛角點(diǎn)特征提取,并使用PCA 提取主成分壓縮為一維向量.最后使用可變模板的形態(tài)學(xué)處理得到車輛排隊(duì)長度.該檢測方法的流程如圖1 所示.

圖1 檢測方法流程圖
(1)對交通路口攝像頭采集到的實(shí)時路況視頻進(jìn)行預(yù)處理.其中包括灰度化視頻圖像以及噪聲去除.
(2)通過對交通路口監(jiān)控視頻的第一幀圖像人工標(biāo)定感興趣區(qū)域.
(3)判斷檢測窗內(nèi)角點(diǎn)位置的運(yùn)動狀態(tài)從而判斷車輛排隊(duì)的形成.
(4)對隊(duì)列中獲得的角點(diǎn)特征應(yīng)用PCA 處理壓縮成一維向量來表征車輛隊(duì)列長度.
(5)對PCA 的結(jié)果進(jìn)行形態(tài)學(xué)處理確定隊(duì)列長度.
由于攝像機(jī)透鏡成像的原因,造成監(jiān)控視頻中車道線的成線不會呈現(xiàn)平行狀態(tài),而是會呈現(xiàn)不規(guī)則的梯形狀態(tài),如圖2 中某一交通路口取得的四個場景.
目前車道線檢測的研究主要集中于使用霍夫變換,線段檢測器等,然而現(xiàn)實(shí)中交通背景雜亂,遮擋物多,車道線的檢測依賴于背景模型的建立,在背景模型建立的相對完美的情況下車道線的檢測才會發(fā)揮其作用.因此傳統(tǒng)的車道線檢測方法難以準(zhǔn)確提取出感興趣區(qū)域,較為精確的車道線檢測方法則負(fù)載過重,使用成本高.在固定的紅綠燈停車區(qū)域內(nèi),攝像頭的位置是不變的,而車道感興趣區(qū)域的提取關(guān)鍵在于感興趣區(qū)域內(nèi)的4 個頂點(diǎn),本文通過人工標(biāo)定的方式獲得車道區(qū)域的4 個頂點(diǎn).在車道區(qū)域內(nèi)單一車道平均分布.劃分出單一車道內(nèi)的區(qū)域便于進(jìn)行后續(xù)的方法.

圖2 感興趣區(qū)域的提取
椒鹽噪聲是導(dǎo)致圖像質(zhì)量下降的主要噪聲之一,這種噪聲表現(xiàn)為某一像素相對于其鄰域內(nèi)的其它像素的灰度值突變而與圖像中的邊緣細(xì)節(jié)一樣具有較大梯度值,從而對圖像的分析與角點(diǎn)的判斷造成困難[9],因此有效濾除椒鹽噪聲并保護(hù)圖像細(xì)節(jié)成為保證所采集車輛圖像質(zhì)量的一個重點(diǎn).中值濾波為去除椒鹽噪聲最有效的方法,它將每一像素點(diǎn)的灰度值設(shè)置為該點(diǎn)某鄰域窗口內(nèi)的所有像素點(diǎn)灰度值的中值,較好地保留了圖像細(xì)節(jié).
高斯噪聲是另一種導(dǎo)致所采集車輛圖像質(zhì)量下降的噪聲,它的存在會給后續(xù)工作中的角點(diǎn)特征提取帶來很大的困難[9],本文選擇均值濾波方法進(jìn)行高斯噪聲的去除.例如,當(dāng)前像素位置為(x,y),m 為該模板中包含當(dāng)前像素在內(nèi)的像素總個數(shù).作為處理后圖像在該點(diǎn)上的灰度值為g(x,y).

雖然以往很多車輛檢測算法都是基于背景減法[10],但經(jīng)驗(yàn)表明,這些方法對光照條件的變化比較敏感,基于這個原因許多研究人員建議使用邊緣[11],紋理和角點(diǎn)等低層次特征作為某一區(qū)域車輛存在的標(biāo)志.本文從車道上發(fā)現(xiàn)的角點(diǎn)特征信息來推斷隊(duì)列長度.這種方法在光照變化前具有非常好的魯棒性.
從早期的Moravec 到Harris,再到SIFT,SURF 等,可以說特征提取的算法層出不窮,在后續(xù)的研究中也提出了各種改進(jìn)的算法.其中SIFT 和SURF 提取到的特征非常的優(yōu)秀,但是時間消耗依然十分巨大,這就使得系統(tǒng)的實(shí)時性不是很好,降低了系統(tǒng)的性能.Edward Rosten 和Tom Drummond 經(jīng)過研究[12]于2006年提出了一種FAST 特征點(diǎn),并在2010年修改后發(fā)表,簡稱FAST[13].FAST 實(shí)際上是在不影響結(jié)果的前提下,文獻(xiàn)[14]簡化了Harris 檢測方法.
如圖3 中,FAST 關(guān)鍵點(diǎn)檢測是對興趣點(diǎn)所在圓周上的16 個像素點(diǎn)進(jìn)行判斷,假設(shè)p 為中心像素點(diǎn),pi 為p 點(diǎn)周圍圓形區(qū)域內(nèi)16 個像素點(diǎn)的一點(diǎn),首先計(jì)算圖中p1、p9、p5、p13 與中心p 的像素差,若它們的絕對值有至少3 個超過閾值,再進(jìn)行下一步,否則不存在角點(diǎn).下一步計(jì)算p1 到p16 這16 個點(diǎn)與中心p 的像素差,若它們有至少9 個超過閾值,則是特征點(diǎn);否則不存在角點(diǎn).

圖3 FAST 角點(diǎn)檢測示意圖

N(x)為x 點(diǎn)的像素值.t 為實(shí)際上比較強(qiáng)度時的閾值.當(dāng)x 為TRUE 時,I(x)值為1,當(dāng)x 為FALSE 時,I(x)值為0.車輛角點(diǎn)特征提取如圖4.

圖4 車輛角點(diǎn)特征的提取
以往對于車輛排隊(duì)長度的測量方法大部分基于滑動窗方法[15],然而滑動窗方法對于攝像機(jī)遠(yuǎn)端車輛的識別誤差大.因此本文對FAST算法改進(jìn)的第一點(diǎn)是將角點(diǎn)特征關(guān)鍵點(diǎn)集按照映射的原理生成一副新的圖像.該圖像只在對應(yīng)于原圖像存在角點(diǎn)的位置有值,便于使用這張圖像進(jìn)行PCA 處理得到一維向量,該圖像如圖5.
以往的車輛排隊(duì)長度方法首先通過判斷車輛運(yùn)動的狀態(tài),再通過發(fā)現(xiàn)車輛的角點(diǎn),邊緣等特征.本文對FAST算法改進(jìn)的第二點(diǎn)是將運(yùn)動檢測方法融入到算法的過程中.首先,在停車線前設(shè)置虛擬檢測區(qū),在使用FAST算法遍歷檢測區(qū)的同時,對檢測到角點(diǎn)信息的位置運(yùn)用運(yùn)動檢測方法得到車輛在視頻中的運(yùn)動狀態(tài)并判斷是否形成車輛隊(duì)列.本文中運(yùn)動檢測方法使用幀間差分的思想,將其與前一幀圖像的相同位置作比較.當(dāng)虛擬檢測區(qū)內(nèi)車輛處于靜態(tài)時[4],默認(rèn)通處于擁堵狀態(tài)并測量車輛排隊(duì)長度.

圖5 角點(diǎn)特征映射圖
在視頻中車道前某一位置,設(shè)置一大小合適的檢測窗,使用改進(jìn)后的FAST 角點(diǎn)算法得到靜態(tài)的點(diǎn)和動態(tài)的角點(diǎn).

p 為檢測到角點(diǎn)的位置.It(p)是像素p 在t 時刻的值,S(p)是p 的鄰域的集合,由于相機(jī)抖動及外界環(huán)境影響,將得到的D(p)與閾值t 相比較得到E(p),即車輛的運(yùn)動狀態(tài).
主成分分析也稱為卡爾胡寧-勒夫變換(Karhunen-Loeve Transform),是一種用于探索高維數(shù)據(jù)結(jié)構(gòu)的技術(shù),還可以用于數(shù)據(jù)壓縮,數(shù)據(jù)預(yù)處理等,新的低維數(shù)據(jù)集會盡可能的保留原始數(shù)據(jù)的變量.本文通過對如圖5 生成的角點(diǎn)映射圖進(jìn)行PCA 就生成了如圖6 所示的一維向量.
使用形態(tài)學(xué)處理對上述得到的不連續(xù)結(jié)果進(jìn)行優(yōu)化.由于在成像過程中近大遠(yuǎn)小的特點(diǎn),對該圖像進(jìn)行形態(tài)學(xué)處理的過程中使用可變模板的形態(tài)學(xué)處理,即式(6),得到的圖形如圖7.

圖6 PCA算法壓縮結(jié)果

圖7 形態(tài)學(xué)處理結(jié)果

其中,B(i,j)表示將B 的中心對準(zhǔn)Ar 的(i,j)位置形成的矩陣范圍,Ar 為使用可變模板B(2r+1,2r+1)膨脹的圖像.而該范圍落在Ar 之內(nèi)的部分是B(i,j)∩Ar.
首先將得到形態(tài)學(xué)處理結(jié)果轉(zhuǎn)換為像素長度[6],如圖8.本文中的車輛排隊(duì)長度由白色區(qū)域構(gòu)成,即從(x,y)=(0,0++)起遇到的第一行白色區(qū)域?yàn)檐囕v排隊(duì)的隊(duì)尾,從(x,y)=(0,img.length--)起遇到的第一行白色區(qū)域.最后由文獻(xiàn)[3]可知,車輛排隊(duì)長度的像素距離[6]可以轉(zhuǎn)換為實(shí)際距離.

圖8 車輛排隊(duì)像素長度
本文選取一個接近十字路口的過街天橋,拍攝一段有車輛排隊(duì)的視頻,攝像頭可采集的像素?cái)?shù)量是1811×1020,攝像機(jī)架設(shè)的高度為6 m,攝像機(jī)光心到車道停車線的實(shí)際距離為 26.5 m.本文選取視頻中不同排隊(duì)長度的四幅畫面,根據(jù)文獻(xiàn)[3]中的攝像機(jī)標(biāo)定技術(shù)對本文中得到的車輛排隊(duì)結(jié)果進(jìn)行了最終的隊(duì)長測量,給出實(shí)際排隊(duì)長度與檢測長度進(jìn)行對比.得到如表1.由表1 可知,檢測的精度高達(dá)98%.
從表1 數(shù)據(jù)可以看出,在攝像機(jī)視野范圍內(nèi),本文算法結(jié)果相較于文獻(xiàn)[6]總體表現(xiàn)不錯,基本控制在2%的錯誤率.在列出的實(shí)驗(yàn)數(shù)據(jù)中,第一組數(shù)據(jù)顯示誤差較大,主要是由于第一輛汽車外觀平滑,不宜檢測到角點(diǎn).文獻(xiàn)[6]中整體表現(xiàn)比較穩(wěn)定,但均值略高于本文方法,因此本文算法相較于其他算法在整體表現(xiàn)上不錯,但卻不穩(wěn)定,在后續(xù)研究中可以增加檢測車輛其他特征的步驟,針對性的提高穩(wěn)定度.

表1 車輛排隊(duì)檢測準(zhǔn)確度
本研究通過改進(jìn)FAST算法過程,將車輛運(yùn)動狀態(tài)的判斷與檢測角點(diǎn)存在運(yùn)用到一起,簡化傳統(tǒng)車輛排隊(duì)長度檢測的過程,縮小規(guī)模,更有利于快速判斷車輛隊(duì)列的存在.然后將主成分分析運(yùn)用到車輛排隊(duì)長度的測量中,在保有大部分信息的特點(diǎn)下解決了對于遠(yuǎn)端車輛測量不準(zhǔn)確的情況,提高了測量的準(zhǔn)確率.