張冬梅,盧小平,張航,余振寶,苗沛基
(河南理工大學(xué) 自然資源部礦山時空信息與生態(tài)修復(fù)重點實驗室,河南 焦作 454000)
為緩解城市交通擁堵狀況,對不同路段和不同時段的車流量監(jiān)測并進(jìn)行統(tǒng)計分析,已成為城市智能交通的重要技術(shù)手段[1]。現(xiàn)有的車流量實時統(tǒng)計方法主要有:①基于環(huán)形線圈傳感器方法,該方法可靠性強(qiáng)、準(zhǔn)確率高,但在安裝和維修方面花費巨大且容易造成道路堵塞。②將微波傳感器、雷達(dá)傳感器、紅外線傳感器或超聲波傳感器的檢測系統(tǒng)懸掛在道路一側(cè)或正上方,通過發(fā)射和回收波形計算車流量。③基于監(jiān)控視頻提取車流量方法[2-3]。
隨著我國“天眼”工程建設(shè)的持續(xù)推進(jìn),基于監(jiān)控視頻影像的車流量統(tǒng)計方法因其布設(shè)范圍廣、數(shù)據(jù)來源廣、復(fù)現(xiàn)性好、處理精度高等優(yōu)點,已被廣泛應(yīng)用于城市智能交通建設(shè)中[4]。基于視頻的車流量統(tǒng)計方法主要有虛擬檢測線法、虛擬線圈法、目標(biāo)跟蹤法等算法。虛擬檢測線法和虛擬線圈法基于圖像像素值的變化來統(tǒng)計車流量,目標(biāo)跟蹤法通過特征匹配來統(tǒng)計車流量。王衛(wèi)鋒等[5]采用虛擬檢測線法,將檢測線放置于檢測道路中心且與道路方向垂直,該算法取得了較好的效果,但統(tǒng)計精度較低。張虹波等[6]采用虛擬線圈法,該算法在虛擬檢測線法的基礎(chǔ)上進(jìn)行改進(jìn)并取得了很好的效果,檢測的實時性和可操作性有所提高,但車輛在行駛過程中變道或設(shè)置的虛擬線圈位置不變,會產(chǎn)生漏檢從而導(dǎo)致統(tǒng)計精度降低。夏永祥等[7-8]采用目標(biāo)跟蹤法統(tǒng)計車流量,該算法抗干擾性能較好,可利用車輛自身的照明特性計算夜間的車流量,實現(xiàn)全天候車流量檢測,但該算法較復(fù)雜。針對上述問題,本文提出一種基于無人機(jī)視頻影像的車流量統(tǒng)計雙虛擬檢測線法,該方法使用無人機(jī)獲取道路某一時間段的視頻影像,將獲得的視頻幀圖像進(jìn)行預(yù)處理并進(jìn)行背景建模與更新,運用改進(jìn)的多幀平均法進(jìn)行初始背景估計,獲到不含運動目標(biāo)的背景模型,通過背景差分法檢測運動目標(biāo)并使用混合高斯背景模型法進(jìn)行背景更新。最后進(jìn)行車輛統(tǒng)計,在視頻幀的中下方設(shè)置雙虛擬檢測線,通過計算雙虛擬檢測線內(nèi)的各連通區(qū)域的面積及長寬比進(jìn)行車流量統(tǒng)計。實驗證明,該算法精度較高,魯棒性較強(qiáng),為突發(fā)交通事件提供可靠的車流量統(tǒng)計方法。
本文提出一種基于無人機(jī)視頻影像的車流量統(tǒng)計雙虛擬檢測線法,是將無人機(jī)采集到的監(jiān)控視頻影像數(shù)據(jù)進(jìn)行預(yù)處理,進(jìn)行背景建模與更新,然后采用雙虛擬檢測線法計算某段道路上特定時間的車流量。
由于受周圍環(huán)境和采集設(shè)備性能的影響,得到的圖像存在噪聲,導(dǎo)致圖像質(zhì)量下降[9-10]。本文采用均值濾波的方法去除噪聲,其數(shù)學(xué)表達(dá)式為:
(1)
式中:h(x,y)是經(jīng)過濾波后輸出的圖像像素值;k為鄰域個數(shù);f(x,y)為該點的像素。均值濾波是典型的線性空間濾波,該算法運算速度快,同時還能保留邊緣信息的優(yōu)點。
1)初始背景估計。對于行駛在道路上的車輛,很難獲得其靜止的背景圖像,必須對獲得的視頻幀進(jìn)行預(yù)處理才能得到靜止的背景圖像。運用多幀平均法提取初始背景的表達(dá)式為:
(2)
式中:B(x,y)為初始背景模型;fi(x,y)為第i幀圖像像素值;N為前N幀圖像。N值越大,提取的初始背景效果越好,多幀平均法求初始背景具有計算簡單,易于實現(xiàn)等優(yōu)點。但在實際提取的時候,由于光照、車流量等因素,往往會在背景圖像中留有陰影且如果N值過大提取時間將會較長。因此本文采用一種改進(jìn)的多幀平均法提取初始背景,通過求前N幀圖像與初始背景圖像像素值之差,選出n幀差值小于閾值T的視頻幀并對選出的n幀圖像求平均值b(x,y),然后利用標(biāo)準(zhǔn)差求出陰影,最終求出不含陰影的背景模型。具體表達(dá)式如下:

(3)
式中:gj(x,y)為前N幀圖像與初始背景模型差小于閾值的視頻幀像素。
(4)
式中:b(x,y)為選出的n幀平均像素值。
(5)
式中:K(x,y)為初始背景中陰影部分。
P(x,y)=|b(x,y)-k(x,y)|
(6)
式中:P(x,y)為最終不含陰影的背景圖像。
2) 運動目標(biāo)檢測。運動目標(biāo)檢測的核心是將背景與目標(biāo)進(jìn)行分離并獲得想要的目標(biāo)區(qū)域[11]。常用的目標(biāo)檢測方法有:光流法[12-14]、幀差法[15-17]、背景差分法[18-20]。
光流法檢測運動目標(biāo)不需要提前獲得背景信息,但因其算法復(fù)雜、計算量大、抗噪性差,很難提取速度較慢的運動物體。幀差法是通過相鄰視頻幀實行相減運算,得到差分圖像,但由于相鄰視頻幀之間的時間間隔較短,檢測到的運動目標(biāo)會出現(xiàn)許多空洞。本文采用背景差分法檢測前景目標(biāo),此方法是利用當(dāng)前幀與改進(jìn)后的背景圖像之間的差值進(jìn)行檢測,當(dāng)前幀與背景圖像相差較大的區(qū)域即為前景目標(biāo),該方法實現(xiàn)方便,可快速分離前景目標(biāo)。計算公式如下:
d(x,y)=|fi(x,y)-P(x,y)|
(7)
式中:d(x,y)表示差分像素值;fi(x,y)為第i幀的視頻幀像素值;P(x,y)為最終不含陰影的背景圖像。

(8)
式中:D(x,y)為運動目標(biāo)像素值;T是二值化閾值。
3) 背景更新。由于光照、噪聲等原因,道路背景不斷變化,因此必須對初始背景進(jìn)行更新。本文采用混合高斯背景模型法進(jìn)行背景更新,該算法首先對視頻序列圖像中每個像素點建立K個高斯分布,同時使用所建立的K個高斯分布的加權(quán)來描述視頻中的場景[9]。通過像素點與高斯模型是否匹配區(qū)分背景點與前景點。像素點的概率定義為:
(9)

智能交通系統(tǒng)中交通流量統(tǒng)計的實時要求非常高,因此交通車流量統(tǒng)計算法通常基于感興趣區(qū)域的檢測和分析[21]。基于雙虛擬檢測線的車流量統(tǒng)計法,首先確定雙虛擬檢測線的位置即感興趣區(qū)域,一般設(shè)置在視頻幀的中下方,以調(diào)節(jié)感興趣區(qū)域內(nèi)前景目標(biāo)的像素間距從而分隔開車輛,緩解車輛斷裂的影響。當(dāng)有車輛經(jīng)過雙虛擬檢測線時,利用邊緣跟蹤技術(shù)獲取雙虛擬檢測線內(nèi)連通區(qū)域邊緣的定位并標(biāo)記,采用四連通法計算當(dāng)前幀連通區(qū)域的個數(shù)并逐個計算連通區(qū)域的面積和長寬比。設(shè)置前景目標(biāo)的面積閾值R和長寬比閾值r并根據(jù)閾值選擇前景目標(biāo)并計數(shù)。為避免重復(fù)計數(shù),引入狀態(tài)變量flag,當(dāng)有前景目標(biāo)經(jīng)過雙虛擬檢測線時,狀態(tài)變量flag=1;當(dāng)沒有前景目標(biāo)經(jīng)過雙虛擬檢測線時,狀態(tài)變量flag=0。
設(shè)置感興趣區(qū)域時,雙虛擬檢測線的位置和寬度對檢測精度有一定的影響。雙虛擬線的位置一般設(shè)置在離攝像頭較近的地方以防止出現(xiàn)粘連現(xiàn)象,檢測線的寬度一般為最小車長的2/3左右。在當(dāng)前幀計算連通區(qū)域的個數(shù)并逐個計算連通區(qū)域的面積和長寬比,公式如下:

(10)

(11)
∑flag=SUM
(12)
式中:e,f和p,q分別為連通區(qū)域g(x,y,i)在x,y軸的坐標(biāo);sum和m分別為連通區(qū)域的面積和長寬比;R和r為閾值;SUM為當(dāng)前幀車輛數(shù)。
本文的車流量統(tǒng)計算法步驟如下:
①視頻幀影像二值化后,當(dāng)有車輛經(jīng)過雙虛擬檢測線,利用邊緣跟蹤技術(shù)獲取雙虛擬檢測線內(nèi)連通區(qū)域邊緣的定位并用長方形標(biāo)記出來,長方形各邊的坐標(biāo)為距離連通區(qū)域最近的像素值,通過計算長方形各邊的邊長獲得連通區(qū)域的面積和長寬比。
②設(shè)置狀態(tài)變量flag=0,將得到的連通區(qū)域的面積和長寬與設(shè)置的閾值進(jìn)行比較,當(dāng)sum>R且m>r時,則狀態(tài)變量flag=1,認(rèn)為有車輛經(jīng)過雙虛擬檢測線,否則狀態(tài)變量flag=0,認(rèn)為沒有車輛經(jīng)過雙虛擬檢測線。然后flag 重置為0,逐個計算并分析當(dāng)前幀剩余通區(qū)域的面積及長寬比。
③設(shè)置SUM初始值為0,在當(dāng)前幀累加狀態(tài)變量flag,計算當(dāng)前幀車輛數(shù)并將當(dāng)前幀車輛數(shù)與前一幀車輛數(shù)比較。若當(dāng)前幀車輛數(shù)大于前一幀中車輛數(shù)時,則將當(dāng)前幀與前一幀車輛數(shù)之差累加到總數(shù)量上,若當(dāng)前幀車輛數(shù)小于或等于前一幀車輛數(shù)時,不進(jìn)行累加,繼續(xù)下一幀的計算,SUM重置為0。
本文算法引進(jìn)了目標(biāo)車輛大小的狀態(tài)變量并結(jié)合雙虛擬檢測線內(nèi)連通區(qū)域的變化情況來統(tǒng)計車流量。該算法可同時檢測多車道的車輛,避免車輛在兩車道之間行駛時出現(xiàn)漏檢現(xiàn)象,且運算量小、實時性好、魯棒性強(qiáng)。
實驗采用大疆PHANTOM 4 PRO無人機(jī)作為道路監(jiān)控視頻源,選取某城市主干道車流量較大的一段作為研究區(qū),時間為16點。首先使用無人機(jī)獲取監(jiān)控影像并對每一幀圖像進(jìn)行濾波處理,處理結(jié)果如圖1所示。之后對實驗數(shù)據(jù)進(jìn)行初始背景估計,處理結(jié)果如圖2所示,使用改進(jìn)的多幀平均法獲得的初始背景可消除陰影,提高精度。最后設(shè)置雙虛擬檢測線并將視頻幀二值化進(jìn)行車輛統(tǒng)計,本實驗視頻幀高度為240,分別在160與200像素處設(shè)置雙虛擬檢測線并累計統(tǒng)計車流量,結(jié)果如圖3所示。

圖1 中值濾波前后對比圖

圖2 初始背景的比較

圖3 車輛統(tǒng)計
選擇合適的視頻幀速度和閾值,確保車輛在雙虛擬檢測線線內(nèi)僅出現(xiàn)一次。實驗中視頻長度為35 s,視頻幀速度為30幀/s,實際車輛為9輛,使用本文算法得到的結(jié)果為8輛,正確率為89%。利用連通區(qū)域分析對車輛進(jìn)行統(tǒng)計,當(dāng)有車輛通過時,連通區(qū)域的面積增加,同時會出現(xiàn)一個峰值,每個峰值代表一個車輛。如圖4所示,視頻幀中共有10個峰值,但有2個峰值在最低點附近,小于實驗中設(shè)置的閾值,不被計入總數(shù)之中。分析出現(xiàn)誤檢的主要原因如下:①車輛顏色分布不均勻,進(jìn)行二值化時,造成亮度分布不均,進(jìn)而導(dǎo)致提取的前景目標(biāo)不完整,造成一輛車可能同時出現(xiàn)幾個外接距長方形,從而造成程序的誤檢。②車輛目標(biāo)由遠(yuǎn)及近駛向攝像頭,前景目標(biāo)在視頻流中的位置發(fā)生改變,所提取的連通區(qū)域的面積由小變大,不同大小的車輛面積變化趨勢不一樣,所設(shè)置的雙虛擬檢測線的位置可能不能適應(yīng)于所有的車輛,從而造成誤檢。
為驗證算法的有效性,在該主干道分別采集了高峰期和非高峰期兩時間段的視頻影像數(shù)據(jù),每個時間段分別采集5組數(shù)據(jù),每組數(shù)據(jù)的視頻幀長度為10 min,使用本文算法與虛擬線圈法比較,結(jié)果如表1和表2所示。

表1 非高峰期時段車流量統(tǒng)計結(jié)果

表2 高峰期時段車流量統(tǒng)計結(jié)果
從上述表中可以看出,本次實驗在非高峰期時間段采用雙虛擬線檢測線法統(tǒng)計結(jié)果平均正確率為92.94%,虛擬線圈法為87.08%,本文算法比虛擬線圈法提高了5.86%。高峰期時間段采用雙虛擬檢測線法統(tǒng)計結(jié)果平均正確率為91.62%,虛擬線圈法為84.42%,本文算法比虛擬線圈法提高了7.0%。因此本文算法優(yōu)于虛擬線圈法,具有一定的實用性,本文提出的車流量算法能避免因跨車道行駛而出現(xiàn)的漏檢現(xiàn)象且可以排除檢測區(qū)域內(nèi)的非車輛前景目標(biāo)。
本文針對車流量的統(tǒng)計問題,提出了一種基于無人機(jī)視頻影像的車流量統(tǒng)計雙虛擬檢測線算法,同時采用改進(jìn)的多幀平均法消除初始背景陰影來提高精度,并在MATLAB R2014a平臺上得以實現(xiàn)。經(jīng)過多次實驗驗證,說明本文所實現(xiàn)的算法能在初始背景精度較高的情況下進(jìn)行準(zhǔn)確率較高的車流量統(tǒng)計。