尹萬杰,申明亮,溫雙銀
(1.中國市政工程中南設(shè)計研究總院有限公司,湖北 武漢 430010;2.武漢大學(xué),湖北 武漢 430072)
獲取占道封閉施工影響區(qū)域的道路屬性和交通數(shù)據(jù)等,通過數(shù)據(jù)處理與仿真建模,分析施工前和施工期間影響區(qū)域各個路段和路口的交通運行狀態(tài),為研究占道施工時不同疏導(dǎo)方案下的路網(wǎng)通行能力和服務(wù)水平提供基礎(chǔ)數(shù)據(jù)。
調(diào)查范圍的確定是調(diào)查階段的重點問題,范圍過小,后期的交通影響分析可信度不高;范圍過大,則需要投入大量的人力、物力、財力。確定一個合理的數(shù)據(jù)調(diào)查范圍,既能滿足占道施工對交通影響分析的工作需要,又可以最大限度的節(jié)約資源。調(diào)查研究范圍的確定主要基于以下幾點:
(1)施工占道區(qū)相鄰的所有主要路段路口及區(qū)域內(nèi)車流量較大的路段路口;
(2)可能被施工占道區(qū)影響到的交通擁堵點。
現(xiàn)場調(diào)查的內(nèi)容應(yīng)滿足全面且重點反映道路信息,內(nèi)容主要包括:
(1)調(diào)查范圍內(nèi)所有道路的基本參數(shù),包括道路等級、限速信息、車道數(shù)、路口類型等;
(2)調(diào)查范圍內(nèi)的交通控制規(guī)則,包括各路口的紅綠燈配時及相位圖、直行和轉(zhuǎn)向車道分配等;
(3)調(diào)查范圍內(nèi)各個路段的車輛通行數(shù)據(jù),包括車流量、車流轉(zhuǎn)向比、通行時間、最大排隊長度等。
選定的調(diào)查時段應(yīng)盡量反映調(diào)查范圍內(nèi)道路的普遍交通特點,同時應(yīng)降低因特殊天氣、大型聚集性活動等偶然性因素對調(diào)查數(shù)據(jù)的影響。現(xiàn)場調(diào)查采集的數(shù)據(jù)應(yīng)該涵蓋孝感市典型時段的交通數(shù)據(jù),選擇工作日的上下班高峰時期作為調(diào)查時段,選定典型控制調(diào)查時段為早高峰和晚高峰。
目前常用的數(shù)據(jù)采集方式包括線圈、地磁、雷達(dá)、視頻等。通過這些技術(shù)能夠比較方便的直接獲取車流量、車速、排隊長度等交通指標(biāo),每種采集方式都存在其各自的優(yōu)點和缺點。
表1 數(shù)據(jù)采集方式比較
對比可知,線圈、地磁、雷達(dá)前期安裝或后期維護(hù)都存在不同方面的困難,耗費大量人力、物力、財力。經(jīng)過比選,本次調(diào)查采用視頻數(shù)據(jù)采集方式,利用無人機(jī)對路口或路段過往車輛進(jìn)行攝像記錄。攝像拍攝分為高處攝像(采集整個施工區(qū)域范圍內(nèi)的道路基本參數(shù))和定點拍攝(采集各個路口的交通流數(shù)據(jù))。利用開發(fā)的視頻讀取車流量系統(tǒng)獲取所需的車流量數(shù)據(jù),通過人工對視頻資料的整理可獲得道路屬性等交通參數(shù)。
無人機(jī)(UVA)是一種通過無線電遙控設(shè)備或自主程序控制的、可執(zhí)行多種任務(wù)并能回收重復(fù)使用的無人駕駛飛行器。我國對無人機(jī)技術(shù)的研究始于20世紀(jì)50年代,近年來,隨著輕型復(fù)合材料的廣泛應(yīng)用,以及電子與無線電控制技術(shù)的改進(jìn),無人機(jī)技術(shù)得到飛速發(fā)展,隨著大數(shù)據(jù)的全球化,無人機(jī)也作為互聯(lián)網(wǎng)的鏈接端口,被應(yīng)用到數(shù)據(jù)采集領(lǐng)域。
(1)無人機(jī)采集方式的優(yōu)點
無人機(jī)技術(shù)在道路交通數(shù)據(jù)采集領(lǐng)域具有較高的實用價值和廣闊的發(fā)展前景,與傳統(tǒng)交通信息采集技術(shù)相比,利用無人機(jī)進(jìn)行道路交通信息采集具有以下優(yōu)點:
①監(jiān)測范圍廣。無人機(jī)作為一種空中移動設(shè)備,高度機(jī)動,布點靈活,可以突破空間距離的約束,克服道路交通環(huán)境的影響,可監(jiān)測的交通信息范圍廣;
②采集信息豐富。無人機(jī)航拍結(jié)合視頻處理技術(shù)可以獲取車流密度、車流量、平均速度等宏觀交通信息,也可以跟蹤檢測單個車輛運行狀態(tài)或行人、自行車行為等微觀交通信息;
③安裝維護(hù)方便。無人機(jī)組裝后就可以直接使用,起飛方式簡單,對場地要求很低,不會對道路交通運行帶來影響,并且后期維護(hù)、升級方便;
④拍攝成本低。無人機(jī)造價成本低,運行時的能力耗損也低于其他飛行器??梢耘臄z的區(qū)域范圍幾乎沒有限制,而傳統(tǒng)的固定視角檢測器想到要拍攝同樣的區(qū)域范圍,需要投入大量設(shè)備,成本極高。
(2)無人機(jī)的選擇
目前,我國民用無人機(jī)技術(shù)蓬勃發(fā)展,以深圳大疆創(chuàng)新為代表,在無人機(jī)行業(yè)領(lǐng)先數(shù)年,推出了很多便攜實用、安全可靠的無人機(jī)產(chǎn)品。Mavic Air 2這款無人機(jī)是大疆御系列在智能、影像、續(xù)航、飛行安全、圖像傳輸?shù)阮I(lǐng)域全方位提升的里程碑級產(chǎn)品,能以4K/60fps視頻還原拍攝場景,清晰記錄交通運行情況。
(3)無人機(jī)采集視頻的高度確定
對于無人機(jī)拍攝的視頻,車輛讀取的難點主要在于,無人機(jī)航拍視野廣闊,視頻中目標(biāo)車輛體積偏小,增加了目標(biāo)檢測和跟蹤的難度。根據(jù)多次實驗得出結(jié)論,無人機(jī)懸停位置處于道路正上方7~9 時,車輛讀取準(zhǔn)確率能達(dá)到較高水平。當(dāng)懸停高度過低時,距離車輛較近,無人機(jī)過低可能會分散駕駛員的注意力。當(dāng)懸停高度過高時,在視頻中車輛過小,檢測精度降低。
無人機(jī)拍攝的視頻通過計算機(jī)視覺技術(shù)檢測車流量的過程包括車流量的統(tǒng)計和分析工作,統(tǒng)計部分主要包括目標(biāo)檢測;分析部分主要包括目標(biāo)跟蹤與計數(shù)。
目標(biāo)檢測的目的是從圖像中將目標(biāo)物體與背景及其他物體區(qū)分開來,獲取目標(biāo)物體的準(zhǔn)確位置和形狀大小,給出物體的預(yù)判類別,是機(jī)器視覺領(lǐng)域的核心問題之一。對于人類來說,獲取目標(biāo)物體的具體位置是一件非常簡單的事情,但對于計算機(jī)來說,圖像是由數(shù)字構(gòu)成的二維矩陣,所包含的信息量相對較大,很難從數(shù)字矩陣中提取出不同物體的高維特征,再加上有其他物體和雜亂背景的干擾,目標(biāo)檢測變得更加困難。
(1)傳統(tǒng)車流量檢測
傳統(tǒng)的視頻讀取車流量檢測方法主要有:幀間差分法、背景減法、光流法等。
①幀間差分法。幀間差分法的原理是將視頻中相鄰兩幀圖像像素灰度值相減,對于靜止的物體及背景,差值圖像灰度值趨近于0;對于運動物體,差值圖像灰度值則變化很大。當(dāng)差分圖像灰度值超過一定閾值時,可以確定其是否為運動目標(biāo),從而檢測出目標(biāo)物體。
②背景差分法。背景差分法是一種基于統(tǒng)計學(xué)原理的主流目標(biāo)檢測方法,基本思想是事先建立或?qū)崟r獲取一個灰度背景圖像模型,將其與視頻中獲取的圖像幀做差分運算,得到運動目標(biāo)區(qū)域的差分圖像,差分圖像灰度值超過一定閾值時,可以確定其是否為運動目標(biāo),從而檢測出目標(biāo)物體,該算法實現(xiàn)的關(guān)鍵在于背景模型的獲取和更新。
③光流法。光流法通過比較每一幀圖像中目標(biāo)像素灰度位置的變化來檢測目標(biāo)物體。該算法依賴于以下三個基本假設(shè)條件:a亮度恒定。同一目標(biāo)物體在不同幀內(nèi)運動時,亮度不會發(fā)生改變,即像素灰度值不變;b“短時間”或“小運動”。相鄰幀之間的時間足夠短,位移足夠小,保證時間的變化不會引起目標(biāo)物體位置的劇烈變化。c空間一致。成像平面上相鄰的點具有相似的運動。
表2 三類算法優(yōu)缺點對比表
綜上所述,我們可以得知,傳統(tǒng)的視頻讀取車流量檢測方法存在精度不高、對于復(fù)雜場景、光線變化等外界干擾較為敏感等缺點,尤其是針對無人機(jī)拍攝的道路視頻,相對于傳統(tǒng)的固定布設(shè)道路監(jiān)控設(shè)備拍攝的視頻來說,存在更大的干擾性。另一方面,傳統(tǒng)方法閾值的選取對目標(biāo)檢測的精度影響較大,但目前還沒有很好的選取方法。
(2)基于深度學(xué)習(xí)技術(shù)的車流量檢測
近年來,隨著深度學(xué)習(xí)技術(shù)的發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)技術(shù)在目標(biāo)檢測方面取得了不錯的成果,其通過模擬人類大腦的視覺神經(jīng)進(jìn)行工作,檢測的精度和速度遠(yuǎn)遠(yuǎn)超過傳統(tǒng)算法?;谏疃葘W(xué)習(xí)技術(shù)的目標(biāo)檢測方法大致可以分為兩類,一類是基于候選區(qū)域的two-stage,如SPP-net,F(xiàn)aster R-CNN等。這類算法需要事先生成一系列的候選區(qū)域,再利用卷積神經(jīng)網(wǎng)絡(luò)對候選區(qū)域進(jìn)行分類和定位;另一類是基于回歸的one-stage,如YOLO(you only look once),SSD(single shot multibox detector)等。這類算法不需要事先生成候選區(qū)域,而是通過回歸模型直接預(yù)測物體的位置和類別。
車流量檢測過程中對視頻的處理力求結(jié)構(gòu)簡單,速度快,并且車輛體積較大,檢測精度受影響較小,所以one-stage更為適用。另一方面,YOLO系列改進(jìn)算法引入了圖像金字塔,并且檢測層數(shù)包含三層特征層,目標(biāo)檢測精度較SSD系列算法更高。所以,本文將選用YOLO算法來對車輛進(jìn)行檢測。
表3 兩類算法優(yōu)缺點對比表
(3)YOLO目標(biāo)檢測
YOLO系列算法的核心思想是將目標(biāo)檢測問題化為回歸問題來處理,放棄了候選區(qū)域策略,用單一的神經(jīng)網(wǎng)絡(luò)獲取目標(biāo)的位置、大小和分類概率等信息,使識別速度有了極大的提升。YOLO的網(wǎng)絡(luò)結(jié)構(gòu),包括24個卷積層和2個全連接層,其中,卷積層用來提取目標(biāo)物體的特征,全連接層用來預(yù)測目標(biāo)物體的位置和類別概率。
①YOLO的原理
YOLO算法將輸入圖像分割成S×S個網(wǎng)格(Cell),每個網(wǎng)格負(fù)責(zé)預(yù)測是否有物體的中心點落入網(wǎng)格內(nèi),如果有,該網(wǎng)格負(fù)責(zé)檢測出該物體。
每個網(wǎng)格可預(yù)測的邊界框(Bounding Box)信息包括5個數(shù)據(jù):x,y,w,h,c。(x,y)表示目標(biāo)中心點的坐標(biāo),該坐標(biāo)系的原點是目標(biāo)中心點所在網(wǎng)格的左上角,網(wǎng)格右下角坐標(biāo)為(1,1),即目標(biāo)中心點的坐標(biāo)值都作了歸一化處理,介于0~1之間;(w,h)表示目標(biāo)檢測框的大小相對于整張圖像寬度和高度的比例,范圍也介于0~1之間;c是置信度(Confidence),表示該格子內(nèi)存在目標(biāo)的概率。
邊界框置信度計算公式如下:
confidemcescore=Pr(object)×IOU
(1)
(2)
式中:Pr(object)為目標(biāo)物體落入網(wǎng)格內(nèi)的可能性大小。若目標(biāo)物體落入網(wǎng)格內(nèi),Pr(object)=1,若目標(biāo)物體沒有落入網(wǎng)格內(nèi),Pr(object)=0;IOU為預(yù)測邊界框與物體實際邊界框的交并比,表示目標(biāo)物體位置的準(zhǔn)確度;area(·)為面積;BBpre為預(yù)測的邊界框;BBtru為實際的邊界框。
因此,YOLO網(wǎng)絡(luò)最終的輸出維度設(shè)置為S×S×(B×5+C)。
②非極大值抑制
對圖像進(jìn)行目標(biāo)檢測時,同一個目標(biāo)可能會被多次檢測到,即不同的網(wǎng)格以不同的置信度預(yù)測有目標(biāo)物體的中心點落入網(wǎng)格中。車輛檢測中,可以看到車輛被多次檢測,但希望最后僅僅只輸出一個結(jié)果最好的邊界框。非極大值抑制(NMS)就是為了解決一個目標(biāo)被多次檢測的問題,具體操作步驟如下:
Step1:從所有的檢測結(jié)果中刪除c≥0.6的邊界框;
Step2:在剩余邊界框中選擇c值最大的邊界框,作為輸出的邊界框;
Step3:計算c值最大的邊界框與剩余框的重合程度,如果重合程度大于一定閾值(0.5)則刪除;
Step4:重復(fù)2、3步驟,直到判斷完所有的邊界框。
這實際上是一個迭代的過程:第一次迭代選擇c值最大的邊界框,刪除它周圍重復(fù)檢測的邊界框;第二次迭代在剩余的邊界框中選擇c值最大的邊界框,再刪除它周圍重復(fù)檢測的邊界框。這樣不停的迭代就能找到所有的目標(biāo)物體的邊界框。
③YOLO的損失函數(shù)
YOLO算法所采用的損失函數(shù)為均方差損失函數(shù),計算公式如下:
Loss=coordError+noobjError+objError+classError
(3)
coordError=
(4)
(5)
(6)
(7)
(1)目標(biāo)跟蹤
目標(biāo)跟蹤是指在檢測到目標(biāo)物體以后,對視頻圖像當(dāng)前幀的目標(biāo)進(jìn)行預(yù)測并追蹤其在下一幀大小和位置,從而得到目標(biāo)的運動軌跡。目標(biāo)跟蹤可分為單目標(biāo)跟蹤和多目標(biāo)跟蹤,多目標(biāo)跟蹤則需要在單目標(biāo)跟蹤的基礎(chǔ)上進(jìn)行數(shù)據(jù)關(guān)聯(lián),數(shù)據(jù)關(guān)聯(lián)的好壞基本決定多目標(biāo)跟蹤的優(yōu)劣。通過無人機(jī)拍攝的車流量視頻,對車輛進(jìn)行目標(biāo)跟蹤屬于多目標(biāo)跟蹤,因此需要考慮到新目標(biāo)和老目標(biāo)的出現(xiàn)與消失、前后幀中目標(biāo)匹配是否一致以及目標(biāo)之間是否有重疊或遮擋等問題。
為了實現(xiàn)目標(biāo)跟蹤,以前通常采用生成式模型的跟蹤算法,例如粒子濾波法、Meanshift算法、Camshift算法等。這類方法的原理是通過建立目標(biāo)模型來提取目標(biāo)的特征,并在下一幀中找到相似的目標(biāo)特征,進(jìn)行不斷地迭代,最后完成目標(biāo)的定位。但這類方法存在著無法充分利用圖像的背景信息的缺陷,由于目標(biāo)特征存在多樣性和不確定性,僅僅用單一的目標(biāo)模型有很大的局限性,無法準(zhǔn)確跟蹤到目標(biāo)。因此本文采用了目前運用較多的SORT(Simple Online And Realtime Tracking)算法,該算法結(jié)合了卡爾曼濾波追蹤和匈牙利匹配算法,能夠得到較好的跟蹤效果。本節(jié)將從預(yù)測模型、數(shù)據(jù)關(guān)聯(lián)和SORT算法步驟三個方面來介紹。
①預(yù)測模型
SORT算法中的卡爾曼濾波是一種預(yù)測目標(biāo)軌跡的方法,即是在一個包含不確定信息的動態(tài)系統(tǒng)中,即使伴隨著各種干擾,卡爾曼濾波總能對系統(tǒng)的下一次變化做出有依據(jù)的預(yù)測。在SORT算法中,目標(biāo)在不同幀之間的線性運動與其他物體及相機(jī)運動無關(guān),每個目標(biāo)的運動狀態(tài)用式(8)表示。
x=(u,v,s,r,u′,v′,s′,r′)T
(8)
式中:u,v為目標(biāo)的中心坐標(biāo);s,r為目標(biāo)邊界框的比例(面積)和縱橫比,一般被認(rèn)為是常數(shù)。
②數(shù)據(jù)關(guān)聯(lián)
SORT算法中的匈牙利匹配算法是用來關(guān)聯(lián)視頻中前后兩幀的目標(biāo)物體的算法。首先通過卡爾曼濾波預(yù)測當(dāng)前幀中M個目標(biāo)會在下一幀中出現(xiàn)的N個目標(biāo)的位置,然后利用代價矩陣記錄上一幀M個目標(biāo)與下一幀N個目標(biāo)之間的IOU,若計算出的IOU小于程序設(shè)定的閾值,則該關(guān)聯(lián)是無效的。運用IOU能一定程度地解決目標(biāo)物體被短暫遮擋的問題,若目標(biāo)被遮擋物遮擋,則不會檢測到原目標(biāo)而檢測到遮擋物,在遮擋結(jié)束后,對于形狀大小接近的目標(biāo),其IOU會較大,因此就能很快地恢復(fù)正常的關(guān)聯(lián)。
③SORT算法步驟
Step1:對視頻圖像第一幀中的YOLO檢測到的目標(biāo)初始化,并創(chuàng)建新的跟蹤器,得到所有M個目標(biāo)的分類和位置,給每一個目標(biāo)標(biāo)注id名稱;
Step2:通過卡爾曼濾波對M個目標(biāo)進(jìn)行預(yù)測,預(yù)測他們出現(xiàn)在下一幀的位置。再對第二幀中所有的目標(biāo)進(jìn)行目標(biāo)模型的檢測,得到N個目標(biāo)的分類及位置;
Step3:比較第一幀中卡爾曼濾波預(yù)測出來的M個目標(biāo)與第二幀中相同目標(biāo)之間的IOU,并使用匈牙利匹配算法將第一幀和第二幀中的目標(biāo)關(guān)聯(lián)起來。如果出現(xiàn)計算得到的IOU小于程序中初始設(shè)定的閥值,則認(rèn)為該目標(biāo)為未跟蹤的目標(biāo)。通過目標(biāo)在圖中的具體位置來判斷該目標(biāo)是已經(jīng)離開還是剛進(jìn)入圖像;
Step4:后面的每一幀都重復(fù)執(zhí)行上述步驟,直到視頻結(jié)束。
(2)目標(biāo)計數(shù)
在利用跟蹤器對車流量進(jìn)行統(tǒng)計時,需要先對視頻中的車流量統(tǒng)計車道進(jìn)行手工標(biāo)定。我們在垂直于車道方向確定一條前置線,采用兩點確定一條線段的方法,每個車道標(biāo)定一條線段,線段位置通常定于交叉口斑馬線前后。在所有車道的位置標(biāo)定結(jié)束后,自動生成另一條后置線,與道路兩側(cè)邊線一同構(gòu)成一個檢測區(qū)域。
為了驗證視頻讀取車流量系統(tǒng)對無人機(jī)拍攝視頻的車輛讀取性能,本文設(shè)計了如下實驗:利用無人機(jī)拍攝兩個不同路段的視頻樣本,每個視頻時長10 min,對兩個視頻樣本共計8個車道進(jìn)行車輛計數(shù)統(tǒng)計,并與人工計數(shù)進(jìn)行分析比較。
根據(jù)以下公式計算視頻讀取車流量的誤差和正確率:
誤差車輛數(shù)=|系統(tǒng)統(tǒng)計車輛數(shù)人工讀取車輛數(shù)|
(9)
(10)
兩個視頻中每個車道的車輛數(shù)統(tǒng)計結(jié)果見表4。
從實驗結(jié)果可以看出,用開發(fā)的視頻讀取車流量系統(tǒng)對無人機(jī)拍攝的視頻進(jìn)行讀取,得到的結(jié)果具有高達(dá)95%以上的準(zhǔn)確率。
表4 車輛數(shù)統(tǒng)計結(jié)果
項目實際應(yīng)用中,選取6個臨近交叉口或受影響較大的節(jié)點作為數(shù)據(jù)采集點。
以董永路-孝漢大道交叉口為例,視頻采集、轉(zhuǎn)換整理的交通信息和數(shù)據(jù)如下:
后期利用VISSIM軟件進(jìn)行仿真模擬,構(gòu)建包括路段車流量、飽和度、平均車速、平均延誤等指標(biāo)的評價體系進(jìn)行評價并優(yōu)化交通疏導(dǎo)方案,取得了較好的應(yīng)用效果。
無人機(jī)拍攝視頻具有視角廣闊、角度選取靈活、操作便捷、無須安裝維護(hù)、成本低廉等優(yōu)點,再配合后續(xù)一系列技術(shù)手段可得到研究所需,符合制式要求的交通信息和數(shù)據(jù)。這種交通數(shù)據(jù)采集技術(shù)路徑在臨時或短時長項目應(yīng)用上優(yōu)勢明顯,對類似項目有一定借鑒意義。