李震霄,孫 偉,劉明明,鄭麗麗,陳劭穎
1.中國礦業(yè)大學 信息與控制工程學院,江蘇 徐州221116
2.地下空間智能控制教育部工程研究中心,江蘇 徐州221116
3.江蘇建筑職業(yè)技術(shù)學院 智能制造學院,江蘇 徐州221000
近年來基于視覺的車輛檢測和跟蹤技術(shù)在電子警察、卡口監(jiān)控、道路監(jiān)控等設(shè)備中得到了廣泛應用。但是設(shè)備中大多采用傳統(tǒng)的圖像處理方法實現(xiàn)車輛的檢測與跟蹤,算法在復雜場景下的監(jiān)控效果不夠理想。隨著深度學習算法的迅速發(fā)展,其在復雜場景下表現(xiàn)出的優(yōu)越性,已經(jīng)逐漸取代傳統(tǒng)算法。但是深度學習算法對設(shè)備的硬件性能要求較高,如果將其應用在電子警察、智能監(jiān)控攝像頭等邊緣設(shè)備中,需考慮其性能限制[1-2]。
在多目標跟蹤算法中,按照軌跡生成的順序可分為離線和在線兩種情形,通常,基于在線的多目標跟蹤更適用于實際情況。根據(jù)系統(tǒng)初始化策略的不同多目標跟蹤可分為基于檢測的跟蹤算法和不依賴檢測的跟蹤算法。基于檢測的目標跟蹤在跟蹤之前,每一幀圖像中的目標都已經(jīng)檢測到,其包含一個獨立的檢測模塊,檢測器的性能對目標在后續(xù)跟蹤過程中起到巨大影響。不依賴檢測的跟蹤往往在初始幀人工選定目標,后續(xù)幀中對選定目標進行跟蹤,對于非第一幀出現(xiàn)的目標或中間消失的目標無法處理[3]。
考慮本文交通監(jiān)控場景中對多車輛跟蹤存在的實時性和目標多變等問題,選擇基于檢測的多目標跟蹤算法。使用深度學習算法作為檢測模塊,對車輛獲取實時準確的檢測,利用檢測結(jié)果實現(xiàn)多車輛跟蹤。
深度學習檢測算法大致分為基于候選框的方法與基于回歸的方法兩類,前者的發(fā)展歷程為RCNN[4]、Fast-RCNN[5]、Faster-RCNN[6],需要先提取大量候選框后再分類與回歸;后者不同于前者,只需通過一次前向傳播就能得到最終的檢測結(jié)果,代表算法有YOLO[7]、SSD[8]。前者的優(yōu)點在于準確率高,后者優(yōu)點則是速度快。毛其超等[9]針對復雜的交通監(jiān)控場景下車輛漏檢和車輛重疊等問題,引入空洞卷積和Soft-NMS 機制改進Faster-RCNN 算法,改進算法提高了檢測準確性,但是算法無法在低性能硬件設(shè)備上部署。杜金航等[10]針對道路車輛檢測算法存在的檢測精度低和速度慢等問題,改進YOLOv3 主干網(wǎng)絡,提升車輛檢測算法速度,利用Kmeans 聚類重新得到錨點框,提升算法精度,改進算法中沒有考慮網(wǎng)絡不同層間的特征融合,忽略了特征信息融合對檢測精度的重要性。柳長源等[11]利用輕量級網(wǎng)絡Mobilenetv2 替換YOLOv3 的主干網(wǎng)絡,同時融合不同尺度的特征層解決傳統(tǒng)檢測算法對道路車輛小目標檢測效果差、檢測速度慢等問題。
在多目標跟蹤算法中,許多學者從外觀模型、運動模型等方面入手,實現(xiàn)目標之間的準確關(guān)聯(lián)。在外觀模型的構(gòu)建中,如HOG、顏色直方圖等傳統(tǒng)手工特征發(fā)揮著重要作用。但是在復雜場景中,手工設(shè)計的特征針對性較強,難以取得滿意的效果。同時在擁擠場景中,對于外觀相似的目標,僅僅使用外觀模型容易造成錯誤關(guān)聯(lián),為此Bewley等[12]利用卡爾曼濾波構(gòu)建運動模型,輔助基于深度特征的外觀模型進行數(shù)據(jù)關(guān)聯(lián),取得了不錯的跟蹤效果。李俊彥等[13]使用YOLOv3 目標檢測和KCF 跟蹤算法結(jié)合,實現(xiàn)對多目標車輛的長時跟蹤,但是KCF 作為單目標跟蹤算法,在多車輛跟蹤過程中需要為每一個車輛賦予一個單目標跟蹤器,在多車輛跟蹤中跟蹤速度較低。周蘇等[14]使用YOLOv3 算法和卡爾曼濾波跟蹤算法結(jié)合,利用YOLOv3的中間層特征計算外觀特征相似度并且結(jié)合馬氏距離構(gòu)造的坐標特征相似度進行多目標關(guān)聯(lián),實現(xiàn)多車輛跟蹤,算法解決了車輛跟蹤過程中出現(xiàn)車輛交叉遮擋情況下造成的錯誤軌跡。Sadeghian 等[15]利用LSTM 網(wǎng)絡融合外觀模型和運動模型的歷史信息,使用數(shù)據(jù)驅(qū)動的方法在跟蹤過程中獲得目標間的準確關(guān)聯(lián)。
基于上述研究,本文構(gòu)建基于深度學習的輕量級目標檢測算法YOLOv3-Mobilenetv2;利用LSTM 長短時記憶網(wǎng)絡進行軌跡預測,使用Deepsort 跟蹤算法的匹配策略,提出多車輛跟蹤算法L-Deepsort;最后融合YOLOv3-Mobilenetv2和L-Deepsort算法,得到本文基于檢測的多目標跟蹤算法MYL-Deepsort,算法在保證跟蹤精度的前提下,滿足嵌入式設(shè)備的實時性要求。
YOLOv3 在特征提取階段使用Darknet-53 的基礎(chǔ)網(wǎng)絡,基礎(chǔ)網(wǎng)絡中大量使用殘差連接,減小模型訓練的難度;引入特征金字塔結(jié)構(gòu),解決物體檢測中的多尺度問題;特征圖預測前,將淺層特征與深層特征進行特征融合,使淺層特征圖也包含豐富的語義信息。YOLOv3輸入416×416 的圖像,經(jīng)過基礎(chǔ)網(wǎng)絡進行特征提取,獲得13×13、26×26、52×52 特征圖。采用K-means 算法對數(shù)據(jù)集中的邊界框進行聚類,得到9 個錨框,從大到小分為3組,分別分配給13×13、26×26、52×52特征圖。將特征圖劃分為S×S個等大的網(wǎng)格區(qū)域,每個網(wǎng)格預測3 個邊界框。每個單元格為每個邊界框預測4 個值(tx,ty,tw,tz)與存在目標的置信度σo。如果數(shù)據(jù)集中有k個類別,最終特征圖的輸出維度為3×(5+k)維。
Mobilenetv2[16]作為輕量級網(wǎng)絡結(jié)構(gòu),使用深度可分離卷積減少模型的參數(shù)量與計算量,為了提高特征提取能力,提出了倒殘差和線性瓶頸結(jié)構(gòu),廣泛地應用于移動端和嵌入式設(shè)備中。本文YOLOv3-Mobilenetv2檢測算法使用Mobilenetv2 替換YOLOv3 主干網(wǎng)絡,同時為了獲取淺層特征信息,引入Bottom-up[17]連接。
2.2.1 深度可分離卷積
深度可分離卷積將標準卷積分解為深度卷積和標準點卷積兩個過程,先使用單通道卷積核與輸入特征圖的每個通道進行卷積,然后使用1×1 的點卷積進行信息融合。具體操作如圖1所示。
圖1 標準卷積與深度可分離卷積對比
設(shè)輸入特征圖的大小為W×H,采用SAME 填充,以圖1方式計算兩者的參數(shù)量C和運算量F。對比深度可分離卷積和傳統(tǒng)卷積的參數(shù)量和運算量:
從式(1)可知,深度可分離卷積有效減少運算量與參數(shù)量。
2.2.2 倒殘差塊與線性瓶頸
倒殘差塊在前向傳播的過程中起到了特征重用的效果,同時在反向傳播時緩解梯度消失,解決了網(wǎng)絡退化的問題。由于深度卷積參數(shù)少、計算量低,特征提取的過程中獲取的信息較少。如果使用殘差塊先降維,則深度卷積在特征提取中獲取的信息較少,損失增大。為此使用倒殘差塊,先采用第一個1×1 的卷積升維,使深度可分離卷積在高維度中提取特征,可以提高模型的表達能力,減少信息損失,隨后經(jīng)過第二個1×1卷積降維,使其與輸入特征圖通道數(shù)相同。
倒殘差的目的是減少參數(shù)數(shù)量,但是這種結(jié)構(gòu)在輸出時,特征圖的通道數(shù)很少,由于Relu激活函數(shù)在低維空間的非線性映射將會造成部分特征信息變?yōu)?,從而導致特征流失。為了保證特征的完整性,使用線性結(jié)構(gòu)替換第二個1×1 卷積后的Relu 層,形成線性瓶頸結(jié)構(gòu)。圖2(a)是Mobilenetv2 中步長為1 的特征提取模塊,使用倒殘差塊和瓶頸結(jié)構(gòu),圖2(b)是Mobilenetv2 中步長為2 的特征提取模塊,進行下采樣操作,使用線性瓶頸結(jié)構(gòu)。
圖2 Mobilenetv2模塊
Mobilenetv2 網(wǎng)絡通過使用深度可分離卷積降低網(wǎng)絡的計算量和參數(shù)量,替換YOLOv3 算法的主干網(wǎng)絡Darknet-53,形成輕量級目標檢測算法YOLOv3-Mobilenetv2。YOLOv3-Mobilenetv2 算法與YOLOv3 算法相比在模型尺寸上縮小14 倍,算法沿用YOLOv3 中的特征金字塔結(jié)構(gòu)和多尺度特征融合策略,解決物體檢測中的多尺度問題,豐富的特征圖的語義信息。但是在網(wǎng)絡逐漸加深的過程中,特征圖分辨率降低,13×13 特征圖中的細節(jié)信息逐漸丟失,為此在13×13特征圖上引入Bottom-up連接,在52×52特征圖中使用步長為4的卷積進行下采樣,與13×13 特征圖進行像素加融合,增強高層特征圖位置信息。YOLOv3-Mobilenetv2的網(wǎng)絡結(jié)構(gòu)如圖3所示。
圖3 YOLOv3-Mobilenetv2算法網(wǎng)絡結(jié)構(gòu)
Deepsort 算法是基于檢測的多目標跟蹤算法,在Sort算法的基礎(chǔ)上引入深度外觀模型,利用重識別數(shù)據(jù)集訓練深度余弦模型[18],在保證實時性的前提下,取得了較高的跟蹤準確度。通過卡爾曼濾波構(gòu)建運動模型,對目標的運動狀態(tài)進行預測,使用8 個參數(shù)(cx,cy,γ,h,c'x,c'y,γ',h')描述目標的位置和運動信息。其中(cx,cy)表示目標檢測框的中心坐標,γ是檢測框的長寬比,h表示檢測框的高度信息。(c'x,c'y,γ',h')則表示前面4 個參數(shù)的速度信息。融合外觀模型和運動模型使用級聯(lián)匹配策略進行目標關(guān)聯(lián),隨后使用匈牙利算法進行匹配指派。級聯(lián)匹配之后,對未匹配的檢測、未確認狀態(tài)的跟蹤器和未匹配的跟蹤器進行IOU匹配,隨后再次使用匈牙利算法進行匹配指派。
Deepsort算法中使用的運動模型為卡爾曼濾波,為一種線性軌跡預測方法,通過輸入軌跡的歷史位置坐標,利用特定函數(shù)進行預測,輔助外觀模型進行目標匹配。但是目標在運動過程出現(xiàn)遮擋,檢測結(jié)果帶來的噪聲等干擾時,運動狀態(tài)為非線性,使用卡爾曼濾波在非線性狀態(tài)下不能進行準確的軌跡預測。針對非線性問題雖然出現(xiàn)擴展卡爾曼濾波、無跡卡爾曼濾波、粒子濾波等基于統(tǒng)計學的傳統(tǒng)軌跡預測方法,但是傳統(tǒng)的軌跡預測方法需要對運動目標進行建模,在建模的過程中需要先驗的假設(shè)條件來初始化,先驗知識需要通過大量的數(shù)學統(tǒng)計和數(shù)學推導得到。但是先驗知識是有限的,對于在現(xiàn)實復雜的場景下,難以利用數(shù)學公式進行建模。同時,基于統(tǒng)計學的軌跡預測在建立模型的過程中也不可避免地會引入誤差,此時軌跡的預測精度取決于模型的合理建立。但是基于深度學習的軌跡預測采用完全數(shù)據(jù)驅(qū)動的方法,不需要對數(shù)據(jù)進行假設(shè),只需要利用大量的數(shù)據(jù)訓練,便可以得到符合真實世界描述的模型?;谏疃葘W習的LSTM 長短時記憶網(wǎng)絡由于其具有記憶功能,同時可以解決RNN 存在的梯度消失和梯度爆炸問題,常被用于機器翻譯、語音識別、股票預測等各類時間序列預測。為此,本文使用LSTM網(wǎng)絡替代卡爾曼濾波進行軌跡預測,基于Deepsort 中的匹配策略,構(gòu)建L-Deepsort 多目標跟蹤算法,提高Deepsort 算法中運動模型預測的準確度。
3.2.1 LSTM算法介紹
LSTM網(wǎng)絡增加了記憶單元,在時間序列預測中可以長時間記住之前輸入信息。LSTM結(jié)構(gòu)如圖4所示。
圖4 中的矩形方塊稱為LSTM 的記憶塊,其中包括三個門,分別為忘記門、輸入門、輸出門,門控狀態(tài)分別表示為it、ft、ot和一個記憶單元,通過門控結(jié)構(gòu)控制信息在記憶單元的傳輸。
圖4 LSTM單元結(jié)構(gòu)
3.2.2 基于LSTM的軌跡預測
由于車輛基本都以直線方式進行運動,在交通場景的多車輛跟蹤過程中,如果能夠獲取車輛在1~t時刻的歷史坐標,則可以通過車輛的歷史狀態(tài)來預測未來車輛運動狀態(tài)。如圖5為本文軌跡預測模型的網(wǎng)絡結(jié)構(gòu)圖。
圖5 LSTM軌跡預測網(wǎng)絡結(jié)構(gòu)
LSTM 神經(jīng)網(wǎng)絡中,沿用Deepsort 算法中卡爾曼濾波的目標框的中心坐標(cx,cy),邊框高度h參數(shù),為了減少預測誤差,將邊框長寬比γ變?yōu)檫吙驅(qū)挾葁。通過對車輛在每一時刻檢測到的目標框的中心坐標(cx,cy),邊框?qū)挾葁,邊框高度h,來確定其位置Xt。在輸入層將t-5 到t時刻的車輛位置Xt的狀態(tài)信息(cx,cy,w,h)作為LSTM的輸入,預測t+1 時刻的狀態(tài)信息。兩層LSTM網(wǎng)絡的超參數(shù)設(shè)置如表1所示。
表1 LSTM網(wǎng)絡參數(shù)
本文融合上述YOLOv3-Mobilenetv2 檢測與LDeepsort 跟蹤算法,構(gòu)建MYL-Deepsort 多車輛跟蹤算法。算法流程如圖6所示。
(1)首先通過YOLOv3-Mobilenetv2 車輛檢測算法對輸入的實時視頻進行目標檢測,得到檢測目標的邊界框和特征信息,利用非極大值抑制得到目標檢測框。
(2)設(shè)Age為目標跟蹤幀數(shù),當Age>5時,使用3.2.2小節(jié)構(gòu)建的預測模型預測下一幀的狀態(tài);對于每一個目標,計算該幀檢測結(jié)果距上次匹配成功的幀數(shù)a,成功匹配時,參數(shù)a置0,否則在LSTM預測過程中參數(shù)a遞增,當參數(shù)a大于閾值A(chǔ)max時,則判斷目標丟失,結(jié)束對該目標的跟蹤。
(3)對檢測目標和跟蹤預測目標的匹配中,先使用級聯(lián)匹配對已確認狀態(tài)的跟蹤器進行匹配,并且使用匈牙利算法進行匹配指派在級聯(lián)匹配中,分別需要進行運動相似度匹配和外觀相似度匹配。
運動相似度匹配:使用平方馬氏距離計算LSTM軌跡預測狀態(tài)和新到檢測目標之間的相似值,將最小值作為運動相似度,如式(8):
其中,dj為第j個檢測框的狀態(tài)信息,yi為第i條軌跡在當前時刻的預測狀態(tài)信息,Si則是由LSTM 軌跡預測得到的在當前時刻觀測空間的協(xié)方差矩陣。
使用二值函數(shù)式(9)對式(8)的匹配度進行限制:
圖6 MYL-Deepsort算法流程圖
外觀匹配時:本文基于Deepsort算法中深度余弦外觀匹配模型進行外觀相似度計算,但是Deepsort算法中使用的外觀匹配模型是在行人重識別數(shù)據(jù)集中訓練的,不適用于車輛跟蹤。為此使用VERI 車輛重識別數(shù)據(jù)集[19]進行重新訓練,將訓練好的模型應用于Deepsort和本文算法L-Deepsort 中進行實驗對比。外觀匹配時,Deepsort中將每個跟蹤目標成功關(guān)聯(lián)的最近100幀特征向量存儲到一個集合中,使用余弦距離計算當前檢測目標與集合中特征向量的最小值,將最小值作為外觀相似度。但是本文車輛和Deepsort中行人的運動方式不同,行駛的車輛大多情況下是直線運動,不像行人通常會出現(xiàn)隨意走動,突然改變位置等情況,車輛的外觀特征是逐漸變化的,相鄰兩幀的車輛外觀相似度最高。為此本文不再構(gòu)建車輛外觀特征集合,只計算檢測結(jié)果與跟蹤車輛最近時刻的相似度,避免了其他時刻的干擾,這樣關(guān)聯(lián)性更強,跟蹤效果更好。余弦相似度計算公式如式(10):
其中rj為每個檢測框dj計算得到的外觀描述符。
對以上運動相似度和外觀相似度兩種度量方式線性加權(quán),得到最終的匹配值,如式(12):
(4)隨后對未確認狀態(tài)的跟蹤器、未匹配的跟蹤器和未匹配的檢測,進行IOU 匹配,再次使用匈牙利算法進行匹配指派。
(5)對參數(shù)進行更新及后續(xù)處理。
實驗配置:英特爾酷睿I7-8700k 處理器,NVIDIA GTX 1060 6 GB顯存,軟件環(huán)境為Windows10,CUDA8.0,OpenCV2.49和keras深度學習框架。
目標檢測數(shù)據(jù)集:選用當前最全面的自動駕駛場景下的數(shù)據(jù)集KITTI,其中包含市區(qū)、鄉(xiāng)村、高速等場景采集的真實圖像數(shù)據(jù),KITTI 數(shù)據(jù)集部分示例如圖7 所示。本文將KITTI 數(shù)據(jù)集原來的8 類轉(zhuǎn)換為實驗需要的4 類。保留Car 類,將Van、Truck、Tram 這3 類數(shù)據(jù)樣本合并為Truck類,剩余類別刪除。在修改后的7 481張帶標簽圖片中,選取6 001張作為訓練集,740張作為訓練驗證集,740張作為測試集。將其分別轉(zhuǎn)化為VOC數(shù)據(jù)集格式,便于后續(xù)算法評測。
圖7 KITTI數(shù)據(jù)集部分示例
多目標跟蹤數(shù)據(jù)集:選用KITTI-Tracking 數(shù)據(jù)集,KITTI-Tracking 數(shù)據(jù)集部分示例如圖8 所示,數(shù)據(jù)集中由21條訓練序列和29條測試序列組成,序列為2,3,4,5,6,7,8,9,10,11,12,18,20 的數(shù)據(jù)符合車輛道路行駛場景,選取上述序列作為多目標跟蹤測試數(shù)據(jù)集。
圖8 KITTI-Tracking數(shù)據(jù)集部分示例
軌跡預測數(shù)據(jù)集:選取上述序列中的標注文件,提取Car類目標制作車輛軌跡數(shù)據(jù)集。標簽文件如圖9所示,本文使用3,7,8,9,10列數(shù)據(jù),制作為表示LSTM運動狀態(tài)(cx,cy,w,h)的格式。從每個目標的第一幀起,每次截取長度為7 的數(shù)據(jù)作為一組訓練數(shù)據(jù),前6 幀作為輸入數(shù)據(jù),最后一幀作為訓練標簽。
圖9 KITTI-Tracking標簽格式部分示例
目標檢測。本文選擇均值平均精度mAP,每秒檢測幀數(shù)FPS,模型大小MB(MByte)作為模型的評價指標。計算mAP 需要先計算精確率Precision 和召回率Recall兩個指標,分別表示為:
目標跟蹤。以MOT Challenge 評估標準對本文多目標跟蹤算法進行評價,評價指標如下,評價指標中(↑)表示數(shù)值越高跟蹤效果越好,(↓)則相反。
MOTP(↑):多目標跟蹤精度;
MOTA(↑):多目標跟蹤準確度;
MT(↑):對于大部分被跟蹤的目標、軌跡中80%以上的檢測被準確跟蹤;
ML(↓):對于大部分未被跟蹤的目標、軌跡中20%以下的檢測被準確跟蹤;
IDS(↓):目標發(fā)生身份切換次數(shù);
Speed(↑):不考慮檢測器影響,跟蹤算法每秒跟蹤的幀數(shù)。
4.3.1 檢測算法實驗對比
本文選擇YOLOv3、Tiny-YOLOv3、Mobilenetv2-ssd三種目標檢測算法,均采用預訓練權(quán)重,在KITTI 數(shù)據(jù)集上進行擬合并測試。前2 種網(wǎng)絡的輸入圖像尺寸為416×416,Mobilenetv2-ssd 網(wǎng)絡輸入尺寸為300×300,使用4.2 節(jié)評價指標與本文算法進行對比。實驗結(jié)果如表2 所示,由表知,雖然本文YOLOv3-Mobilenetv2 的mAP 值不及YOLOv3,但是其模型縮小9.16 倍,速度在TX2 平臺是其8 倍。與輕量級網(wǎng)絡Tiny-YOLOv3、Mobilenetv2-ssd 對比,YOLOv3-Mobilenetv2 的mAP 值最高,模型最小,速度達到16 frame/s,滿足實時性要求。
表2 不同目標檢測算法實驗結(jié)果
選取Tiny-YOLOv3和YOLOv3-Mobilenetv2在KITTI數(shù)據(jù)集不同場景中進行可視化對比,實驗效果如圖10所示,Tiny-YOLOv3 中出現(xiàn)漏檢和誤檢的情況,而YOLOv3-Mobilenetv2能準確檢測出Tiny-YOLOv3中漏檢目標。
圖10 不同情景的數(shù)據(jù)集下的檢測結(jié)果
4.3.2 多目標跟蹤算法實驗分析
選取KITTI-Tracking中序列為0002的訓練數(shù)據(jù)集,其中編號為1 和5 的車輛,模擬目標正常行駛和遮擋兩種情況,對目標狀態(tài)值(cx,cy,w,h)分別對比,預測結(jié)果如圖11 所示,藍色表示真實值,紅色為LSTM 軌跡預測值,綠色為卡爾曼濾波預測值。由圖11(a)可知,正常行駛情況下,邊界框的寬w、高h預測誤差相差不明顯,LSTM對中心坐標(cx,cy)的預測更加準確。由圖11(b)可知,目標在60 幀附近發(fā)生遮擋情況時,LSTM 可以及時地做出調(diào)整,而卡爾曼濾波在遮擋后的10幀內(nèi),出現(xiàn)了較大的預測誤差。
圖11 軌跡預測結(jié)果分析
本文選取Sort 和Deepsort 兩種算法和本文算法LDeepsort 進行對比實驗。由表3 知,Sort 算法在速度上占據(jù)絕對優(yōu)勢,Deepsort 引入深度外觀模型后,速度下降明顯,但是其他指標均優(yōu)于Sort算法。本文L-Deepsort算法通過改進Deepsort算法的運動模型,雖然在速度上稍有下降,但是MOTA、MOTP、MT分別提高2.1個百分點、1.5 個百分點、1.2 個百分點,ML 下降0.3 個百分點,同時IDS 減少37 次。為了進一步反映本文算法的跟蹤效果,可視化數(shù)據(jù)集0002序列中編號1的目標,由圖12(a)可知,本文算法從8 幀、102 幀到203 幀一直連續(xù)跟蹤,表現(xiàn)出不錯的跟蹤效果。
4.3.3 組件消融實驗
實驗通過控制變量法驗證改進部分對算法最終性能的影響,算法的基礎(chǔ)框架由Mobilenetv2-YOLOv3 和Deepsort組成,命名為MY-Deepsort,在此基礎(chǔ)上分別引入Bottom-up 連接和LSTM 軌跡預測模型,同時為了符合車輛跟蹤場景,對MY-Deepsort中的外觀匹配策略進行了改進。實驗過程中使用Mobilenetv2-YOLOv3 對KITTI-Tracking 數(shù)據(jù)集中的車輛目標進行檢測,得到檢測結(jié)果。實驗結(jié)果如表4 所示,引入Bottom-up 連接,MOTA和MOTP都有一定提升,表明檢測器的性能對整體的跟蹤效果具有一定影響;引入LSTM軌跡預測模型后,與基礎(chǔ)網(wǎng)絡相比,5個指標均有巨大的改善,表現(xiàn)出優(yōu)秀的效果,并且IDS 下降明顯;同時引入LSTM 和外觀匹配策略,5個指標的跟蹤性能繼續(xù)小幅度提升,IDS參數(shù)的下降說明本文外觀匹配策略使目標間具有較好的關(guān)聯(lián)性;當同時引入上述3 個組件時,跟蹤算法表現(xiàn)出最優(yōu)的效果,不僅MOTA 和MOTP 繼續(xù)提升,同時IDS也達到最小值。
表3 不同跟蹤算法在KITTI-Tracking測試集中的對比
圖12 跟蹤結(jié)果可視化
表4 各組件跟蹤效果
4.3.4 現(xiàn)實場景跟蹤結(jié)果分析
為驗證算法在現(xiàn)實場景中的實用性,對YOLOv3-Deepsort 和本文MYL-Deepsort 兩種算法分別進行性能測試,測試結(jié)果如表5,MYL-Deepsort 算法的MOTA,MOTP 指標低于YOLOv3-Deepsort,從而可知基于檢測的多目標跟蹤算法中,檢測器性能對跟蹤精度和準確度的重要程度。但是本文算法在其他跟蹤指標中均優(yōu)于YOLOv3-Deepsort,可見本文LSTM軌跡預測模型的有效性。同時,YOLOv3-Deepsort在訓練平臺達到13 frame/s,但是在TX2 平臺無法運行,而本文MYL-Deepsort 算法在訓練平臺達到34 frame/s,在TX2平臺達到13 frame/s。選取現(xiàn)實交通監(jiān)控視頻中的車輛進行檢測和跟蹤,可視化15、139、207幀的跟蹤效果,白色框代表跟蹤框,藍色框代表檢測框,如圖12(b)所示,MYL-Deepsort 算法對于剛進入視野中的車輛的檢測和跟蹤效果不太理想,但對大部分進入監(jiān)控范圍內(nèi)的車輛可以準確地檢測和跟蹤。通過對車輛的跟蹤,可以有效地獲取道路信息,輔助交通部門進行交通管制。
本文利用Mobilenetv2替換YOLOv3構(gòu)建輕量級目標檢測算法YOLOv3-Mobilenetv2,作為多車輛跟蹤的檢測模塊。通過實驗表明,本文檢測算法雖然精度有所下降,但是起到了模型壓縮的效果,同時極大地提升了運行速度。引用LSTM 神經(jīng)網(wǎng)絡進行軌跡預測,替換Deepsort 算法中的卡爾曼濾波,有效提升跟蹤算法性能。最后在現(xiàn)實場景下測試本文MYL-Deepsort 算法,實驗表明,算法在保證實時性的情況下,表現(xiàn)出不錯的跟蹤效果。但是基于檢測的多目標跟蹤算法對檢測器的性能要求較高,對檢測器的優(yōu)化是今后的研究重點。
表5 算法跟蹤評價結(jié)果對比