楊 軫, 張秋晨
(同濟(jì)大學(xué) 道路與交通工程教育部重點(diǎn)實(shí)驗(yàn)室,上海 201804)
城市交叉口是城市道路的重要結(jié)點(diǎn),交叉口內(nèi)各種機(jī)動(dòng)車(chē)流、非機(jī)動(dòng)車(chē)流與行人流相互交織,與普通路段相比更容易誘發(fā)交通事故.據(jù)國(guó)家統(tǒng)計(jì)局統(tǒng)計(jì),2015年我國(guó)共發(fā)生交通事故約18.8萬(wàn)起,造成約5.8萬(wàn)人傷亡,帶來(lái)直接經(jīng)濟(jì)損失達(dá)上億元[1],其中發(fā)生在交叉口的事故占據(jù)了30%,交叉口安全問(wèn)題仍亟待解決[2].
研究交叉口安全問(wèn)題需要觀測(cè)大量數(shù)據(jù),目前常見(jiàn)的數(shù)據(jù)采集方法有人工法、線圈法、GPS法和視頻法,其中視頻法由于信息量大、可溯源、魯棒性強(qiáng)等特點(diǎn),應(yīng)用最為廣泛.視頻法根據(jù)其自動(dòng)化程度可分為人工處理法和自動(dòng)處理法.
人工處理法指通過(guò)人為觀察或點(diǎn)選軌跡獲取交通對(duì)象的數(shù)量、速度或行為等信息.慈玉生等[3]通過(guò)人工記錄獲取交叉口過(guò)街人數(shù)的分布情況,并基于該分布提出了機(jī)動(dòng)車(chē)綜合延誤計(jì)算模型.William等[4]以行人過(guò)街的起終點(diǎn)為特征點(diǎn),統(tǒng)計(jì)了香港不同過(guò)街設(shè)施處行人的過(guò)街速度與過(guò)街流量.Su等[5]利用視頻數(shù)據(jù)對(duì)右轉(zhuǎn)車(chē)輛與行人的交通沖突進(jìn)行觀測(cè),并提出了基于沖突概率的右轉(zhuǎn)專(zhuān)用相位設(shè)置方法.張曉瑋[6]選用3名經(jīng)過(guò)專(zhuān)業(yè)培訓(xùn)的觀察員觀測(cè)交叉口沖突,并通過(guò)人工標(biāo)點(diǎn)的方法繪制沖突軌跡,選取TTC(time to collision)、PET(post encroachment time)和DST(deceleration to safety)為評(píng)價(jià)指標(biāo)對(duì)沖突嚴(yán)重程度進(jìn)行劃分.唐克雙等[7]使用坐標(biāo)處理軟件George2.1通過(guò)點(diǎn)擊視頻中目標(biāo)位置由軟件自動(dòng)完成軌跡生成與真實(shí)坐標(biāo)轉(zhuǎn)換,獲得進(jìn)口道車(chē)輛從綠閃前2s至紅燈亮起時(shí)的時(shí)空軌跡,實(shí)現(xiàn)了交通參數(shù)的半人工采集,并基于該軌跡構(gòu)建了危險(xiǎn)駕駛行為預(yù)測(cè)模型.綜上,人工法處理交通視頻的可靠性較高,數(shù)據(jù)采集難度較低,但需花費(fèi)較多人力和時(shí)間,且采集的樣本量較少,無(wú)法進(jìn)行大規(guī)模的數(shù)據(jù)分析.
隨著近年來(lái)計(jì)算機(jī)視覺(jué)技術(shù)的發(fā)展,越來(lái)越多的學(xué)者嘗試采用自動(dòng)檢測(cè)的方法處理交通視頻.自動(dòng)處理法指利用圖像處理算法自動(dòng)捕捉視頻中的交通對(duì)象,并保存其時(shí)空軌跡以供后續(xù)研究[8].自動(dòng)處理法具有采集信息量大、效率高的優(yōu)點(diǎn),且隨著硬件設(shè)備與處理算法的不斷發(fā)展,處理的準(zhǔn)確率與穩(wěn)定性也在不斷提升.Sayed等[9]利用視頻自動(dòng)提取交叉口車(chē)輛軌跡,并提出了基于HMM(Hidden Markov Model)的交通沖突預(yù)測(cè)方法.王俊驊等[10]結(jié)合背景差法和區(qū)域跟蹤法提取機(jī)動(dòng)車(chē)輛在交叉口的行駛軌跡并對(duì)交通沖突進(jìn)行分析.Guo等[11]等利用光流法獲取交叉口內(nèi)各交通對(duì)象的軌跡并根據(jù)交通沖突評(píng)價(jià)設(shè)置外側(cè)左轉(zhuǎn)車(chē)道對(duì)交叉口安全的影響.
上述研究雖然都實(shí)現(xiàn)了對(duì)交通視頻的自動(dòng)化處理,但仍存在著提取目標(biāo)類(lèi)型單一或軌跡連續(xù)性不強(qiáng)的局限性,且不能很好地處理目標(biāo)遮擋與停滯現(xiàn)象.如文獻(xiàn)[9]僅提取了交叉口車(chē)輛的行駛軌跡,忽視了行人和非機(jī)動(dòng)車(chē)對(duì)交叉口安全的影響,文獻(xiàn)[10]提出的視頻處理方法對(duì)于行進(jìn)中車(chē)輛的跟蹤效果較好,但對(duì)停滯車(chē)輛的跟蹤效果一般.
針對(duì)上述局限性,提出一種交叉口視頻處理方法,可采集交叉口內(nèi)所有交通對(duì)象的時(shí)空軌跡,并對(duì)目標(biāo)停滯與遮擋現(xiàn)象有一定的魯棒性.
算法整體流程為:
(1) 前景提取.基于ViBe(visual background extractor)算法獲取視頻中運(yùn)動(dòng)目標(biāo)前景,并進(jìn)行形態(tài)學(xué)處理.
(2) 目標(biāo)跟蹤.提取目標(biāo)特征點(diǎn),基于KLT (Kanade Lucas Tomasi)光流提出新型目標(biāo)跟蹤OPC(object-point-contour)算法,在視頻中提取目標(biāo)圖像軌跡.
(3) 軌跡后處理.對(duì)圖像軌跡進(jìn)行分離修正,根據(jù)目標(biāo)活動(dòng)區(qū)域與特征信息進(jìn)行交通對(duì)象分類(lèi),并將圖像坐標(biāo)轉(zhuǎn)換為現(xiàn)實(shí)坐標(biāo).
(4) 結(jié)果輸出.根據(jù)目標(biāo)時(shí)空軌跡點(diǎn)計(jì)算速度、加速度等運(yùn)動(dòng)參數(shù).
交叉口內(nèi)人車(chē)混行,背景復(fù)雜,直接在全圖中檢測(cè)交通對(duì)象耗時(shí)嚴(yán)重,準(zhǔn)確率也較低,常用方法是先通過(guò)背景建模提取前景區(qū)域,然后再對(duì)前景圖像進(jìn)行目標(biāo)檢測(cè)與跟蹤.目前常見(jiàn)的前景提取方法有幀差法[12]和混合高斯法[10].幀差法對(duì)相鄰2幀或3幀進(jìn)行差分,保留差異較大的像素作為前景,計(jì)算量小且對(duì)運(yùn)動(dòng)變化敏感,但目標(biāo)內(nèi)部留下的空洞部分形成鬼影,為后續(xù)目標(biāo)跟蹤帶來(lái)諸多困難.混合高斯模型(GMM)為每個(gè)像素點(diǎn)構(gòu)建單個(gè)或多個(gè)高斯分布模型,通過(guò)計(jì)算概率確定像素點(diǎn)是否屬于前景.GMM的優(yōu)點(diǎn)是可適應(yīng)背景輕微變化、對(duì)光照與景物擾動(dòng)有較好穩(wěn)定性,缺點(diǎn)是計(jì)算效率低、對(duì)高清視頻處理速度較差且對(duì)停滯目標(biāo)的提取效果一般,當(dāng)目標(biāo)顏色與背景顏色接近時(shí)也會(huì)存在較大誤差[13].
ViBe[14]是一種基于樣本一致性的背景建模方法,采用隨機(jī)更新和鄰域更新,保證了樣本值平滑的生命周期,使檢測(cè)結(jié)果更為準(zhǔn)確.ViBe作為一種新型的背景建模方法,在交通視頻處理領(lǐng)域應(yīng)用尚不廣泛.與GMM相比,ViBe對(duì)背景擾動(dòng)的穩(wěn)定性較弱,但可較好地提取停滯目標(biāo)和接近背景顏色目標(biāo)的前景.由于視頻處理系統(tǒng)面向交叉口全對(duì)象,輸入視頻多為俯視拍攝,樹(shù)木、電線等擾動(dòng)較大的景物圖像一般不會(huì)出現(xiàn)在交叉口內(nèi)部,因此可通過(guò)設(shè)置感興趣區(qū)從而較方便地排除背景擾動(dòng)影響.另一方面,交叉口內(nèi)行人與非機(jī)動(dòng)車(chē)行為模式復(fù)雜,存在較多的停滯現(xiàn)象,且人群著裝各異,易與地面背景產(chǎn)生混淆,這些因素使得ViBe十分契合提取前景的需求.
ViBe算法根據(jù)第1幀圖像進(jìn)行模型初始化,故第1幀中的前景目標(biāo)會(huì)被誤認(rèn)為背景,導(dǎo)致目標(biāo)離開(kāi)該區(qū)域后會(huì)出現(xiàn)“虛假前景”現(xiàn)象(表1),為后續(xù)目標(biāo)檢測(cè)帶來(lái)干擾.為消除“虛假前景”現(xiàn)象,采用GMM對(duì)ViBe進(jìn)行改進(jìn).首先使用GMM訓(xùn)練視頻前500幀圖像,得到初始背景;然后以背景作為ViBe的第1幀輸入,重新訓(xùn)練背景并提取前景圖像;最后對(duì)前景圖像中的感興趣區(qū)進(jìn)行濾波和形態(tài)學(xué)處理,以消除噪聲并增強(qiáng)前景目標(biāo)連通性.
表1對(duì)比了使用GMM、ViBe和本文使用的改進(jìn)ViBe算法提取前景的效果.可以看到,GMM提取的前景輪廓與目標(biāo)相比有較為明顯的縮水,不利于后續(xù)特征點(diǎn)提??;ViBe由于存在“虛假前景”,誤將路面檢測(cè)為運(yùn)動(dòng)目標(biāo);相比之下,本文方法可較好地提取交叉口內(nèi)全交通對(duì)象的前景,為后續(xù)的目標(biāo)跟蹤提供準(zhǔn)確的前景輸入.
獲得交叉口前景圖像后,對(duì)前景中的目標(biāo)進(jìn)行識(shí)別和跟蹤.利用連通性可將前景圖像劃分成諸多前景輪廓C,1個(gè)輪廓可能包含1個(gè)或多個(gè)目標(biāo)O.目標(biāo)跟蹤要做的就是將每一幀的輪廓與目標(biāo)通過(guò)某種規(guī)則匹配起來(lái),并對(duì)同一目標(biāo)的輪廓變化進(jìn)行動(dòng)態(tài)更新.KLT法[15]是一種經(jīng)典的光流估算差分方法,包括特征角點(diǎn)檢測(cè)和光流匹配兩部分,特征點(diǎn)是指圖像灰度值發(fā)生劇烈變化的點(diǎn)或者在圖像邊緣上曲率較大的點(diǎn),穩(wěn)定的特征點(diǎn)需具有良好的旋轉(zhuǎn)不變性和縮放不變性.光流匹配的原理是假定特征點(diǎn)的局部鄰域內(nèi)光流恒定不變,利用最小二乘對(duì)特征點(diǎn)鄰域內(nèi)所有像素求解基本光流方程.KLT法通過(guò)綜合多個(gè)附近像素的信息,可以有效解決光流方程固有的模糊性問(wèn)題,并且圖像噪點(diǎn)和光照變化具有較強(qiáng)穩(wěn)定性.基于KLT光流,以特征角點(diǎn)P為媒介,可實(shí)現(xiàn)輪廓C與目標(biāo)O的動(dòng)態(tài)匹配.匹配過(guò)程包括目標(biāo)初始化、特征點(diǎn)更新、輪廓-目標(biāo)匹配、目標(biāo)屬性更新4個(gè)步驟.
表1 GMM、ViBe、本文方法提取前景效果對(duì)比
設(shè)第n幀圖像中的特征點(diǎn)為集合Pn.
Pn={pn,i|1,…,I}
(1)
式中:Pn表示第n幀的特征點(diǎn)集合;pn,i表示第n幀的第i個(gè)特征點(diǎn);I表示單幀特征點(diǎn)總數(shù),出于特征點(diǎn)性能的考慮,設(shè)置max(I)=500,并根據(jù)交叉口大小適當(dāng)調(diào)整.
對(duì)前景輪廓依次編號(hào),并分配給輪廓內(nèi)的所有特征點(diǎn),同一輪廓內(nèi)的特征點(diǎn)擁有相同的輪廓編號(hào),即
Cn={cn,j|j=1,…,J}
(2)
?pn,i∈cn,j,C(pn,i)=j
(3)
式中:Cn表示第n幀的輪廓集合;cn,j表示第n幀的第j個(gè)輪廓;C(pn,i)表示特征點(diǎn)pn,i所屬的輪廓編號(hào);J表示單幀輪廓總數(shù).
當(dāng)n=1時(shí),系統(tǒng)需進(jìn)行目標(biāo)初始化,目標(biāo)對(duì)象包含5個(gè)屬性,分別為編號(hào)、時(shí)間序列、圖像中心序列、圖像面積和特征點(diǎn)集合,即
Ok=(k,Fk,Ck,Ak,{Pn(Ok)|n∈fk})
(4)
式中:Ok表示第k個(gè)目標(biāo)的屬性集合,k初始化后不可改變;Fk、Ck、Ak分別表示目標(biāo)Ok出現(xiàn)的幀數(shù)、每幀中心位置和每幀面積,為動(dòng)態(tài)數(shù)組,隨后續(xù)跟蹤增加長(zhǎng)度,且三者長(zhǎng)度一致;Pn(Ok)表示目標(biāo)Ok在第n幀的特征點(diǎn)集合.由于第1幀默認(rèn)不存在遮擋與分離現(xiàn)象,因此目標(biāo)與輪廓編號(hào)呈一一對(duì)應(yīng)關(guān)系,得到目標(biāo)在第1幀的特征點(diǎn)集合如式(5):
P1(Ok)={p1,i|C(p1,i)=k}
(5)
之后便可根據(jù)目標(biāo)對(duì)應(yīng)的前景輪廓計(jì)算其中心位置與面積,并與其特征點(diǎn)一并保存,完成目標(biāo)初始化.
從第2幀開(kāi)始,每幀圖像都以前一幀的特征點(diǎn)作為輸入,并利用KLT光流進(jìn)行跟蹤,以得到更新后的特征點(diǎn).為保證光流特征點(diǎn)的穩(wěn)定性,通過(guò)反向檢測(cè)去除前后匹配不一致的特征點(diǎn),并添加由該幀圖像新檢測(cè)出的特征點(diǎn)pn+1,i,如式(6)、(7)、(8):
pn+1,i=K(pn,i)
(6)
(7)
(8)
式中:K(p)表示對(duì)點(diǎn)p進(jìn)行正向光流跟蹤;K-1(p)表示對(duì)點(diǎn)p進(jìn)行逆向光流跟蹤;p′為點(diǎn)p反向檢測(cè)后的鏡像點(diǎn);D(p,p′)表示兩點(diǎn)之間的距離;tk為KLT反向檢測(cè)的穩(wěn)定閾值,tk越小,兩幀間的匹配精度越高,但在視頻分辨率較低時(shí)易出現(xiàn)目標(biāo)丟失情況.
輪廓與目標(biāo)匹配是目標(biāo)跟蹤的關(guān)鍵所在,其匹配準(zhǔn)確率直接影響跟蹤結(jié)果.提出匹配算法OPC,以特征點(diǎn)P為媒介對(duì)每幀生成的前景輪廓與之前跟蹤的目標(biāo)進(jìn)行匹配.對(duì)于第n(n>1)幀圖像,獲得前1幀圖像中各目標(biāo)包含的特征點(diǎn),得到特征點(diǎn)與目標(biāo)的對(duì)應(yīng)關(guān)系.然后更新特征點(diǎn),依據(jù)對(duì)應(yīng)關(guān)系將新特征點(diǎn)分配至各個(gè)目標(biāo).最后根據(jù)輪廓內(nèi)特征點(diǎn)對(duì)應(yīng)的目標(biāo),判斷輪廓與目標(biāo)的匹配情況.典型OPC匹配僅以1個(gè)特征點(diǎn)作為媒介,匹配原理如圖1所示.
在實(shí)際進(jìn)行檢測(cè)時(shí),目標(biāo)往往具有多個(gè)特征點(diǎn),這些特征點(diǎn)可能屬于零個(gè)、1個(gè)或多個(gè)前景輪廓,同樣地,多個(gè)目標(biāo)的特征點(diǎn)也可能匯聚在同一輪廓內(nèi).根據(jù)C-O的映射關(guān)系可將匹配過(guò)程分為如下5種情況.
圖1 一次OPC匹配
2.3.1目標(biāo)與輪廓一一對(duì)應(yīng)
如表2所示,目標(biāo)所有特征點(diǎn)更新后均處在同一輪廓內(nèi),且輪廓內(nèi)無(wú)其他特征點(diǎn),是跟蹤單個(gè)交通對(duì)象時(shí)最理想情況,前后幀的特征點(diǎn)與目標(biāo)按式(9)
表2 目標(biāo)與輪廓一一對(duì)應(yīng)情形
進(jìn)行匹配:
k(pn+1,i)=k(pn,i)
(9)
式中:k(p)表示特征點(diǎn)p所屬的目標(biāo)編號(hào).
2.3.2目標(biāo)無(wú)對(duì)應(yīng)輪廓
如表3所示,目標(biāo)所有特征點(diǎn)均未出現(xiàn)在前景中,說(shuō)明目標(biāo)已離開(kāi)交叉口,中斷對(duì)目標(biāo)的跟蹤.
表3 目標(biāo)無(wú)對(duì)應(yīng)輪廓情形
2.3.3單目標(biāo)對(duì)應(yīng)多輪廓
如表4所示,目標(biāo)的特征點(diǎn)存在于多個(gè)前景輪廓內(nèi).出現(xiàn)該情況有2種可能:① 同一目標(biāo)的前景提取不完全,跟蹤大面積目標(biāo)時(shí)可能出現(xiàn),比如深色車(chē)輛車(chē)頂顏色與路面過(guò)于接近時(shí),ViBe將同一輛車(chē)分成多了個(gè)前景(表4情形1);② 目標(biāo)結(jié)群進(jìn)入交叉口,且在交叉口內(nèi)部分離(情形2).若要判斷分離現(xiàn)象屬于哪種情況需得知分離后的軌跡趨勢(shì),軌跡一致則分離軌跡屬同一目標(biāo),反之則屬于不同目標(biāo).因此,單目標(biāo)對(duì)應(yīng)多輪廓情況在跟蹤過(guò)程中暫不考慮,待整體軌跡生成后再做處理(見(jiàn)3.1節(jié)).
表4 單目標(biāo)對(duì)應(yīng)多輪廓情形
2.3.4多目標(biāo)對(duì)應(yīng)單輪廓
如表5所示,多個(gè)目標(biāo)的特征點(diǎn)全部集中在一個(gè)前景輪廓內(nèi),這是目標(biāo)跟蹤過(guò)程中最常見(jiàn)的一種情況.其形成原因有2種:① 特征點(diǎn)轉(zhuǎn)移,即一個(gè)目標(biāo)的特征點(diǎn)由于某種原因轉(zhuǎn)移至另一個(gè)目標(biāo)上,如表5情形1.由于道路環(huán)境復(fù)雜,圖像中相似特征較多,一些弱特征點(diǎn)難以保證持續(xù)穩(wěn)定的匹配,屬于KLT無(wú)法避免的系統(tǒng)誤差;② 目標(biāo)軌跡交匯產(chǎn)生遮擋,如表5情形2.此時(shí)可利用動(dòng)態(tài)面積分配法確定前景輪廓內(nèi)包含的目標(biāo)數(shù)量:首先根據(jù)OPC匹配算法確定待選目標(biāo),然后按目標(biāo)包含的特征點(diǎn)數(shù)量多少將待選目標(biāo)降序排列,最后循環(huán)對(duì)比目標(biāo)面積和剩余輪廓面積直至二者差超過(guò)閾值,此時(shí)所有遍歷過(guò)的目標(biāo)即為輪廓實(shí)際包含目標(biāo).
表5 多目標(biāo)對(duì)應(yīng)單輪廓情形
2.3.5多目標(biāo)對(duì)應(yīng)多輪廓
該種情況較為罕見(jiàn),多為特征點(diǎn)轉(zhuǎn)移和前景提取不完全同時(shí)發(fā)生導(dǎo)致,因此可將其分解為多個(gè)多目標(biāo)對(duì)應(yīng)單輪廓的情況,利用動(dòng)態(tài)面積分配法進(jìn)行匹配.
待上述匹配過(guò)程完成后,需對(duì)匹配后的目標(biāo)屬性進(jìn)行更新.按輪廓包含目標(biāo)數(shù)是否唯一可分為2種情況.
2.4.1多目標(biāo)對(duì)應(yīng)多輪廓
此時(shí)輪廓內(nèi)所有新舊特征點(diǎn)均重新分配給該目標(biāo),根據(jù)輪廓中心和面積更新目標(biāo)中心和面積.
2.4.2輪廓包含多個(gè)目標(biāo)
若特征點(diǎn)所屬目標(biāo)仍在輪廓內(nèi),則仍分配給該目標(biāo);若不在輪廓內(nèi)或?yàn)樾聶z測(cè)的特征點(diǎn),則利用動(dòng)態(tài)規(guī)劃思想按最小距離進(jìn)行分配,即分配給與其距離最近的特征點(diǎn)所屬目標(biāo),若不存在,則尋找次近特征點(diǎn)的所屬目標(biāo),如此遞歸直至所有特征點(diǎn)均獲得目標(biāo).此情況下目標(biāo)面積不做更新,目標(biāo)中心位置根據(jù)前2幀運(yùn)動(dòng)狀態(tài)推演得到.
至此完成對(duì)一幀圖像內(nèi)所有目標(biāo)的跟蹤,以目標(biāo)屬性作為下一幀的輸入,重復(fù)2.2至2.4節(jié)的步驟直到視頻結(jié)束,即可得到交叉口全對(duì)象的初始軌跡,目標(biāo)跟蹤界面如圖2所示.
當(dāng)目標(biāo)結(jié)群進(jìn)入交叉口時(shí)會(huì)產(chǎn)生軌跡分離現(xiàn)象,需根據(jù)分離軌跡的趨勢(shì)進(jìn)行后處理.處理方法為:提取分離后的軌跡,并對(duì)齊起始點(diǎn)坐標(biāo).設(shè)目標(biāo)Ok的軌跡Tk={tk,l|l∈1,…,N(k)},其中N(k)表示軌跡Tk的長(zhǎng)度;Tk中第l個(gè)坐標(biāo)點(diǎn)tk,l=(xk,l,yk,l),x、y表示點(diǎn)t的橫、縱坐標(biāo).任選2條軌跡Tk1和Tk2使用LCSS(longest common subsequence)算法[16]計(jì)算二者相似長(zhǎng)度L(Tk1,Tk2).
圖2目標(biāo)跟蹤界面
Fig.2Objectstracking
L(Tk1,Tk2)=
(10)
式中:H(Tk)={tk,l|k∈1,…,N(Ti)-1},表示軌跡Tk去除末尾點(diǎn)后的子軌跡;ε為相似閾值,默認(rèn)為真實(shí)坐標(biāo)系下1.6 m(一般小汽車(chē)寬度)對(duì)應(yīng)的圖像距離,需根據(jù)圖像分辨率和拍攝高度進(jìn)行計(jì)算.
由于各目標(biāo)的軌跡長(zhǎng)度不同,為統(tǒng)一標(biāo)準(zhǔn),計(jì)算軌跡相似比S(Tk1,Tk2)以評(píng)價(jià)軌跡間的相似性,S(Tk1,Tk2)=L(Tk1,Tk2)/min(N(k1),N(k2)).若兩軌跡相似比小,則認(rèn)為發(fā)生了多目標(biāo)軌跡分離,將原軌跡分為2條獨(dú)立軌跡保存;反之,則認(rèn)為發(fā)生同目標(biāo)前景輪廓分離,任取其中一條軌跡保存.
初始軌跡跟蹤的是目標(biāo)的圖像中心,存在一定誤差,相比而言特征點(diǎn)的穩(wěn)定性更強(qiáng),因此可用特征點(diǎn)對(duì)初始軌跡進(jìn)行修正,即保證第1幀坐標(biāo)不變的情況下,利用特征點(diǎn)位移代替中點(diǎn)位移,根據(jù)是否存在軌跡分離現(xiàn)象修正過(guò)程可分為2種情況:
(1)若存在軌跡分離現(xiàn)象,則無(wú)法得知其特征點(diǎn)屬于分離后的哪條軌跡,因此使用每幀與分離后軌跡最接近的特征點(diǎn)進(jìn)行修正.
(2)對(duì)其他軌跡而言,特征點(diǎn)跟蹤時(shí)間越長(zhǎng)就說(shuō)明其越穩(wěn)定,因此以第1幀為起始,選取最長(zhǎng)特征點(diǎn)序列進(jìn)行修正,再以修正結(jié)束時(shí)刻為起點(diǎn),循環(huán)此過(guò)程直至所有坐標(biāo)修正完畢.
目前得到的所有軌跡均處于圖像坐標(biāo)系下,為計(jì)算目標(biāo)的真實(shí)交通參數(shù),還需要將圖像坐標(biāo)轉(zhuǎn)換為地面坐標(biāo).不考慮邊緣畸變的情況下,該問(wèn)題可簡(jiǎn)化視平面投影問(wèn)題[6],并通過(guò)透視變換進(jìn)行求解,變換公式為
(11)
(12)
式中:(x,y)為圖像坐標(biāo);(u′,v′)為真實(shí)坐標(biāo);u、v、w為透視變換計(jì)算的中間量;A為轉(zhuǎn)換矩陣,其元素apq(p,q=1,2,3)可通過(guò)代入4組標(biāo)定點(diǎn)求解[6].之后對(duì)所有圖像坐標(biāo)點(diǎn)應(yīng)用式(12)可得到目標(biāo)真實(shí)軌跡(圖3).使用局部加權(quán)回歸法(lowess)對(duì)軌跡進(jìn)行平滑處理,根據(jù)平滑后的時(shí)空軌跡即可計(jì)算目標(biāo)速度,圖4顯示了圖3目標(biāo)的速度和加速度變化情況,可較為明顯地看出目標(biāo)啟動(dòng)—提速—穩(wěn)速的行駛過(guò)程.
圖3 透視變換示意
a 速度曲線
b 加速度曲線
根據(jù)目標(biāo)的軌跡、速度和圖像面積等屬性判斷目標(biāo)屬于機(jī)動(dòng)車(chē)、非機(jī)動(dòng)車(chē)或行人.首先考慮目標(biāo)的一般交通行為,即機(jī)動(dòng)車(chē)僅從機(jī)動(dòng)車(chē)道駛出駛?cè)?,非機(jī)動(dòng)車(chē)僅從非機(jī)動(dòng)車(chē)道駛出駛?cè)耄腥藘H在人行道活動(dòng),此時(shí)可根據(jù)軌跡起終點(diǎn)和分布情況判斷目標(biāo)類(lèi)型,如圖5所示.
圖5 一般交通行為下目標(biāo)分類(lèi)
但現(xiàn)實(shí)中并非所有交通對(duì)象都按規(guī)則行駛,因此還需建立規(guī)則對(duì)非一般行為產(chǎn)生的軌跡進(jìn)行分類(lèi).對(duì)行人而言,由跟蹤特征點(diǎn)生成的軌跡往往存在較大波動(dòng)[17],當(dāng)特征點(diǎn)位于手、腳等位置上時(shí)波動(dòng)更加明顯,故可通過(guò)計(jì)算平滑前后軌跡的差異性輔以速度特征判別行人目標(biāo).
(13)
式中:d(Ok)表示軌跡平滑前后的差異性特征值;Lo(x)、Lo(y)分別表示平滑后的x、y坐標(biāo).
當(dāng)d(Ok)小于某閾值且速度小于3 m·s-1時(shí),目標(biāo)判定為行人.對(duì)非機(jī)動(dòng)車(chē)和機(jī)動(dòng)車(chē)而言,二者軌跡均較為穩(wěn)定,且在交叉口內(nèi)的速度差異性也不明顯,故考慮通過(guò)圖像面積對(duì)二者進(jìn)行分辨,即面積小于一定閾值時(shí)目標(biāo)判定為非機(jī)動(dòng)車(chē),否則為機(jī)動(dòng)車(chē).上述d(Ok)閾值與面積閾值需根據(jù)視頻拍攝角度和高度進(jìn)行標(biāo)定.
整體軌跡后處理的流程如圖6所示,3條軌跡分別代表機(jī)動(dòng)車(chē)、非機(jī)動(dòng)車(chē)和行人.
a 初始軌跡b 特征點(diǎn)修正c 真實(shí)坐標(biāo)轉(zhuǎn)換d 平滑處理
圖6軌跡后處理
Fig.6Trajectorypost-process
輸入視頻的采集地點(diǎn)為上海市嘉定區(qū)新源路與澤普路交叉口(圖7).視頻分辨率為1 920×1 080,時(shí)長(zhǎng)5 min 52 s,幀率30幀·s-1,共10 560幀.系統(tǒng)基于OpenCV3.3由C++和Python實(shí)現(xiàn),并在搭有雙核Intel Xeon E5處理器和64G內(nèi)存的工作站上運(yùn)行.
圖7 視頻采集地點(diǎn)
對(duì)視頻處理后共得到483條軌跡,其中機(jī)動(dòng)車(chē)175條,非機(jī)動(dòng)車(chē)173條,行人135條.目標(biāo)軌跡分布如圖8所示,速度分布如圖9所示.
圖8 目標(biāo)軌跡分布
a 機(jī)動(dòng)車(chē)
b 非機(jī)動(dòng)車(chē)
c 行人
4.3.1軌跡準(zhǔn)確性
對(duì)比人工觀測(cè)軌跡結(jié)果與系統(tǒng)自動(dòng)提取軌跡結(jié)果如表6所示.表6左半部分記錄了系統(tǒng)捕獲情況,其中第1行表示:視頻中實(shí)際出現(xiàn)機(jī)動(dòng)車(chē)180輛,系統(tǒng)成功捕捉到其中162輛車(chē)的軌跡,誤把10輛車(chē)標(biāo)記為非機(jī)動(dòng)車(chē),6輛車(chē)標(biāo)記為行人,漏檢2輛車(chē)(標(biāo)記為背景).右半部分為準(zhǔn)確率計(jì)算,其中捕獲率指系統(tǒng)提取軌跡數(shù)(不分類(lèi)別)與實(shí)際軌跡數(shù)的比值;分類(lèi)準(zhǔn)確率指系統(tǒng)提取到的軌跡中正確分類(lèi)的比例;整體準(zhǔn)確率指系統(tǒng)提取到的正確軌跡數(shù)(斜體)與實(shí)際軌跡數(shù)的比值.從捕獲率來(lái)看,機(jī)動(dòng)車(chē)和非機(jī)動(dòng)車(chē)捕獲率極高,均超過(guò)98%,說(shuō)明少有目標(biāo)丟失的情況,而行人由于目標(biāo)面積小,被誤檢為背景的概率大,捕獲率較前兩者略有降低.從分類(lèi)準(zhǔn)確率來(lái)看,機(jī)動(dòng)車(chē)的分類(lèi)準(zhǔn)確率較高,超過(guò)了90%,行人和非機(jī)動(dòng)車(chē)由于其交通行為的復(fù)雜性,分類(lèi)準(zhǔn)確率有所降低.整體準(zhǔn)確率是前2個(gè)評(píng)價(jià)指標(biāo)的綜合體現(xiàn),機(jī)動(dòng)車(chē)由于體積大,行為規(guī)律性強(qiáng),整體識(shí)別準(zhǔn)確率最高,達(dá)88.89%,相應(yīng)的,行人準(zhǔn)確率最低為83.33%,非機(jī)動(dòng)車(chē)居中為86.00%,系統(tǒng)的平準(zhǔn)準(zhǔn)確率為86.07%.
表6 軌跡準(zhǔn)確性檢驗(yàn)
4.3.2速度準(zhǔn)確性
為檢驗(yàn)?zāi)繕?biāo)個(gè)體軌跡和速度的準(zhǔn)確性,視頻中安排了裝有GPS和測(cè)速儀的機(jī)動(dòng)車(chē)進(jìn)行對(duì)照實(shí)驗(yàn).實(shí)驗(yàn)車(chē)輛分別在交叉口進(jìn)行左轉(zhuǎn)、直行和右轉(zhuǎn)操作,GPS軌跡與系統(tǒng)提取軌跡如圖10所示.可以看出視頻提取的軌跡與實(shí)測(cè)GPS軌跡有較好的重合度,且左右轉(zhuǎn)彎時(shí)軌跡重合度比直行時(shí)要高,這是因?yàn)檗D(zhuǎn)彎車(chē)速較低,從視頻中可以獲得更為密集的數(shù)據(jù),系統(tǒng)的處理精準(zhǔn)度也隨之提升.圖11對(duì)比了實(shí)驗(yàn)車(chē)輛的真實(shí)速度和系統(tǒng)采集速度,與軌跡相似,系統(tǒng)對(duì)轉(zhuǎn)彎的車(chē)速捕捉相較直行更為準(zhǔn)確.表7展示了系統(tǒng)的速度準(zhǔn)確率,平均車(chē)速誤差指實(shí)際平均車(chē)速與系統(tǒng)平均車(chē)速的差異比值.整體準(zhǔn)確率e為每個(gè)采樣點(diǎn)測(cè)速誤差與實(shí)際車(chē)速之比的均值(式(14)),3條軌跡的速度整體準(zhǔn)確率分別為94.07%、85.01%和96.04%,平均值為91.71%.
圖10 GPS軌跡與視頻處理軌跡對(duì)比
(14)
式中:e表示整體準(zhǔn)確率;下標(biāo)u表示采樣點(diǎn)序號(hào);vr、vs分別表示實(shí)際車(chē)速與系統(tǒng)車(chē)速.
a 左轉(zhuǎn)
b 直行
c 右轉(zhuǎn)
行為實(shí)際平均車(chē)速/(m·s-1)系統(tǒng)平均車(chē)速/(m·s-1)平均車(chē)速誤差/%整體準(zhǔn)確率/%左轉(zhuǎn)5.004.951.194.07直行6.687.025.185.01右轉(zhuǎn)2.412.275.696.04平均值3.991.71
表8列出了國(guó)內(nèi)外交通視頻處理研究的典型方法及其適用對(duì)象和準(zhǔn)確性.由于研究對(duì)象和研究目的不同,各研究對(duì)準(zhǔn)確性的檢驗(yàn)指標(biāo)有所差異,但仍具有一定參考價(jià)值.從表中可以看出,與其他研究成果相比,本文提出的視頻處理方法適用于交叉口內(nèi)全體交通對(duì)象,在保持較高的軌跡計(jì)數(shù)與速度檢測(cè)準(zhǔn)確率同時(shí),加強(qiáng)了對(duì)停滯和遮擋現(xiàn)象的魯棒性.
表8 交通視頻研究成果
提出了一種適用于交叉口全對(duì)象的軌跡和運(yùn)動(dòng)參數(shù)自動(dòng)采集方法.方法包含前景提取、目標(biāo)匹配跟蹤和軌跡后處理3個(gè)主要步驟.在前景提取階段,以ViBe為基礎(chǔ),提出了與GMM相結(jié)合的前景提取方法,在保留ViBe強(qiáng)大的背景差分能力的同時(shí),解決了ViBe首幀殘留造成的“虛假前景”現(xiàn)象.在目標(biāo)匹配跟蹤階段,提出了基于KLT光流的輪廓-目標(biāo)匹配算法,算法根據(jù)OPC匹配的情形不同分為5種情況討論,解決了由目標(biāo)間短暫遮擋造成的軌跡中斷問(wèn)題.在軌跡后處理階段,通過(guò)軌跡分離和特征點(diǎn)修正進(jìn)一步優(yōu)化所提取的軌跡,并基于透視變換原理將圖像坐標(biāo)轉(zhuǎn)換為真實(shí)坐標(biāo),從而實(shí)現(xiàn)對(duì)目標(biāo)速度和加速度的提取.最后根據(jù)交通對(duì)象的行為和屬性(速度、圖像面積)對(duì)目標(biāo)進(jìn)行分類(lèi).經(jīng)檢驗(yàn),系統(tǒng)提取的機(jī)動(dòng)車(chē)、非機(jī)動(dòng)車(chē)和行人軌跡準(zhǔn)確率分別為88.89%、86.00%和83.33%,速度準(zhǔn)確率為91.71%.
視頻軌跡采集系統(tǒng)可為交叉口管理與安全研究提供一種高效便捷的數(shù)據(jù)采集手段,但系統(tǒng)的輸入視頻需從較高位置俯視拍攝,存在一定的應(yīng)用局限性,需根據(jù)后續(xù)研究進(jìn)一步改善.