王瀟瀟, 張雪芹
(華東理工大學(xué)信息科學(xué)與工程學(xué)院,上海 200237)
多目標(biāo)跟蹤是指通過分析視頻來識別和跟蹤行人、汽車等多個目標(biāo)物體,在視頻監(jiān)控[1]、自動駕駛[2]、動作識別[3]及人群行為分析等實際應(yīng)用中都依賴于多目標(biāo)跟蹤算法。目前多目標(biāo)跟蹤仍然是一個具有挑戰(zhàn)性的視覺任務(wù),其主要困難在于同時跟蹤多個目標(biāo)時,由于目標(biāo)之間的遮擋和外觀相似性,容易造成跟蹤目標(biāo)丟失或者目標(biāo)標(biāo)識(ID)切換等問題。近年來,深度學(xué)習(xí)在圖像分類[4-6]、目標(biāo)檢測[7-9]等計算機視覺任務(wù)中取得了成功,推動了多目標(biāo)跟蹤技術(shù)的進步,與深度神經(jīng)網(wǎng)絡(luò)相結(jié)合的多目標(biāo)跟蹤算法成為研究熱點[10]。
多目標(biāo)跟蹤框架一般都是基于檢測的跟蹤框架,即在已知當(dāng)前視頻幀目標(biāo)檢測框的情況下,進一步匹配得到目標(biāo)的ID?;跈z測的多目標(biāo)跟蹤框架的基本流程是:目標(biāo)檢測、目標(biāo)檢測框的特征提取、目標(biāo)檢測框和軌跡框的相似度計算及數(shù)據(jù)關(guān)聯(lián)[11]。檢測階段主要依賴于目標(biāo)檢測算法,而目前對多目標(biāo)跟蹤算法的研究主要集中在后二項。
針對目標(biāo)檢測框的特征提取問題,由于多目標(biāo)跟蹤場景下一般都存在多個目標(biāo)遮擋、交互的情況,因而提取判別性的特征很困難。特征提取階段最常用的方法是卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN),或者是將CNN 提取的外觀特征和人工提取的特征相結(jié)合。基于深度學(xué)習(xí)的外觀特征提取算法能夠有效提取目標(biāo)的外觀特征,但是當(dāng)多個目標(biāo)外觀相似且發(fā)生重疊時,ID 切換率仍然較高。Wojke 等[12]將行人重識別網(wǎng)絡(luò)提取的外觀特征與位置特征相結(jié)合,用卡爾曼濾波器預(yù)測目標(biāo)框位置,計算匹配相似度矩陣,改善了SORT 算法[13]ID 切換率高的問題。He 等[14]通過構(gòu)建目標(biāo)軌跡的運動模型、外觀模型以及尺度模型,減弱目標(biāo)部分遮擋對外觀特征的影響。Lee 等[15]將金字塔網(wǎng)絡(luò)和Siamese網(wǎng)絡(luò)結(jié)合,采用上采樣和合并策略為金字塔分層創(chuàng)建特征,將深層特征與淺層特征合并在一起,以提供更具有判別性的特征。然而這幾種方法沒有很好地利用不同時序的目標(biāo)軌跡框的特征。
在多目標(biāo)跟蹤中的相似度計算方面,Chen 等[16]將行人重識別模型和前景網(wǎng)絡(luò)結(jié)合成一個外觀模型,利用該模型中前景網(wǎng)絡(luò)的位置敏感得分圖(Position-Sensitive Score Map)作為空間注意力,減少目標(biāo)檢測框的背景以及遮擋的影響,通過前景分?jǐn)?shù)聚合外觀特征并用歐式距離計算相似度。Xu 等[17]通過訓(xùn)練Siamese 網(wǎng)絡(luò)來學(xué)習(xí)不同ID 目標(biāo)間的差異度量,并在該網(wǎng)絡(luò)中分別提取目標(biāo)全局和局部特征,減輕遮擋對多目標(biāo)跟蹤結(jié)果的影響,用歐式距離計算度量網(wǎng)絡(luò)輸出特征的相似度。Hao 等[18]使用GoogLeNet 來提取外觀特征,利用余弦距離來計算檢測框和軌跡框之間的相似度,并結(jié)合運動預(yù)測計算整體相似度。然而這些方法只使用訓(xùn)練得到的深度模型提取外觀特征,在相似度度量方面,將提取的特征直接使用預(yù)設(shè)好的距離度量如余弦距離或歐式距離求相似度,可能會造成ID 切換率和誤報率較高的問題。
在多目標(biāo)跟蹤的數(shù)據(jù)關(guān)聯(lián)算法方面,Sun 等[19]構(gòu)建了一個端到端的計算視頻幀中所有行人目標(biāo)檢測框和軌跡框數(shù)據(jù)關(guān)聯(lián)成本矩陣的深度模型,通過直接學(xué)習(xí)成本矩陣來構(gòu)建獨特的損失函數(shù),但該方法只提取了目標(biāo)中心點的特征,沒有完全學(xué)習(xí)到整個目標(biāo)框的外觀表達。Thoreau 等[20]構(gòu)建了基于度量學(xué)習(xí)的Siamese 網(wǎng)絡(luò),以此來學(xué)習(xí)多個目標(biāo)在不同視頻幀的相似度,其數(shù)據(jù)關(guān)聯(lián)算法使用外觀模型和運動模型,并通過給這兩個模型賦予固定的相似度權(quán)重,融合得到最后的檢測框和軌跡框的相似度,但是這種預(yù)先給外觀模型和運動模型設(shè)定固定權(quán)重的方式不能自適應(yīng)學(xué)習(xí)外觀模型和運動模型各自的重要性。
以上方法證明了深度學(xué)習(xí)方法在外觀特征提取、相似度計算以及數(shù)據(jù)關(guān)聯(lián)過程中的有效性,不同模型在數(shù)據(jù)關(guān)聯(lián)算法中的融合使用可以增加模型的性能,但是針對相似目標(biāo)難區(qū)分、目標(biāo)軌跡框誤報率高的問題,仍有進一步提高的空間。
針對復(fù)雜多目標(biāo)跟蹤場景中行人目標(biāo)ID 切換率高和誤報率高的問題,本文提出了一個基于CNNGRU 度量網(wǎng)絡(luò)的多目標(biāo)跟蹤框架。該框架主要包括行人重識別模型、CNN-GRU 度量網(wǎng)絡(luò)和數(shù)據(jù)關(guān)聯(lián)算法。在CNN-GRU 深度度量網(wǎng)絡(luò)中統(tǒng)一提取目標(biāo)的外觀特征和運動特征,并學(xué)習(xí)其時間關(guān)聯(lián)性,使得目標(biāo)具有更好的判別性,降低目標(biāo)的ID 切換率。同時,通過訓(xùn)練使網(wǎng)絡(luò)學(xué)習(xí)目標(biāo)不同時序歷史軌跡框正確匹配的概率值,抑制目標(biāo)軌跡中的誤檢以及低質(zhì)量目標(biāo)框?qū)δ繕?biāo)整體特征的影響,降低誤報率;在CNN-GRU 度量網(wǎng)絡(luò)結(jié)構(gòu)中直接聚合不同時序的目標(biāo)歷史軌跡框的外觀特征,再由該度量網(wǎng)絡(luò)直接輸出目標(biāo)軌跡框和檢測框特征的相似度。該相似度與行人重識別模型輸出的特征計算得到的相似度再通過數(shù)據(jù)關(guān)聯(lián)算法,最終計算出匹配結(jié)果。
本文提出的基于CNN-GRU 的多目標(biāo)跟蹤框架如圖1 所示。
該多目標(biāo)跟蹤框架主要由以下3 個部分組成:
(1)目標(biāo)框提取?;谀繕?biāo)檢測算法提取視頻當(dāng)前幀的目標(biāo)檢測框,而軌跡框是歷史視頻幀計算得到的目標(biāo)軌跡框。
(2)相似度計算。采用CNN-GRU 度量網(wǎng)絡(luò)計算目標(biāo)檢測框和軌跡框的相似度。在該網(wǎng)絡(luò)中,先使用CNN 提取目標(biāo)框的深度特征,再采用兩個GRU 分別學(xué)習(xí)目標(biāo)歷史軌跡框的外觀特征和運動特征的時間關(guān)聯(lián)性,以及學(xué)習(xí)目標(biāo)保存的每個歷史軌跡框正確匹配的概率值,聚合不同時序的目標(biāo)軌跡框的外觀特征,再由CNN-GRU 網(wǎng)絡(luò)輸出目標(biāo)軌跡框和檢測框特征的相似度。采用基于深度學(xué)習(xí)的行人重識別(Reid)網(wǎng)絡(luò)[21]分別提取目標(biāo)檢測框和軌跡框的外觀特征,并計算它們之間的相似度(余弦距離)。
(3)數(shù)據(jù)關(guān)聯(lián)。將Reid 網(wǎng)絡(luò)和CNN-GRU 度量網(wǎng)絡(luò)輸出的相似度結(jié)合,得到檢測框和軌跡框的匹配關(guān)聯(lián)矩陣,通過匈牙利匹配算法[22]最終得到當(dāng)前視頻幀所有檢測框和目標(biāo)軌跡框的匹配結(jié)果。
該框架構(gòu)建了一個直接輸出檢測框和軌跡框相似度的深度度量網(wǎng)絡(luò),通過在該度量網(wǎng)絡(luò)中直接訓(xùn)練相似度以及自適應(yīng)結(jié)合外觀特征和運動特征的方式,應(yīng)對多目標(biāo)跟蹤復(fù)雜的場景變化;通過在深度度量網(wǎng)絡(luò)中學(xué)習(xí)不同時序的歷史目標(biāo)軌跡框外觀特征和運動特征的時間關(guān)聯(lián)性,降低目標(biāo)的ID 切換率;通過學(xué)習(xí)每個目標(biāo)保存的不同時序的歷史軌跡框正確匹配的概率值,降低誤報率。同時結(jié)合深度度量網(wǎng)絡(luò)輸出的相似度和行人重識別網(wǎng)絡(luò)提取的外觀特征的相似度,得到最后的檢測框和軌跡框的匹配結(jié)果,進一步降低目標(biāo)ID 的切換率。
1.2.1 CNN-GRU 度量網(wǎng)絡(luò)結(jié)構(gòu) CNN-GRU 度量網(wǎng)絡(luò)結(jié)構(gòu)如圖2 所示,由一個CNN 網(wǎng)絡(luò)和雙GRU 網(wǎng)絡(luò)構(gòu)成。其中,CNN 網(wǎng)絡(luò)用于提取目標(biāo)框的外觀特征,雙GRU 網(wǎng)絡(luò)分別用于學(xué)習(xí)目標(biāo)外觀特征和運動特征的時間關(guān)聯(lián)性,采用雙GRU 結(jié)構(gòu)學(xué)習(xí)多個時序之間特征的關(guān)聯(lián)性,減少目標(biāo)遮擋、目標(biāo)外觀和速度變化帶來的影響。在該網(wǎng)絡(luò)中,針對ID 切換率高的問題,對外觀GRU 和運動GRU 每個時序的隱狀態(tài)進行拼接,將外觀相似但速度不相似的目標(biāo)區(qū)分開。同時,在雙GRU 拼接以后,通過連接一個全連接層和Sigmoid 函數(shù),將屬于該目標(biāo)的歷史軌跡框與不屬于該目標(biāo)但進入該目標(biāo)軌跡中的誤檢區(qū)分開,以降低誤報率。然后在CNN-GRU 度量網(wǎng)絡(luò)結(jié)構(gòu)中繼續(xù)解決多目標(biāo)跟蹤中目標(biāo)歷史軌跡框的特征聚合問題,并輸出目標(biāo)檢測框和軌跡框的相似度。
表1 CNN-GRU 中的CNN 網(wǎng)絡(luò)結(jié)構(gòu)Table 1 CNN network structure in CNN-GRU
圖3 雙GRU 的結(jié)構(gòu)圖Fig. 3 Structure of dual GRU
(3)度量學(xué)習(xí)。度量學(xué)習(xí)用于學(xué)習(xí)目標(biāo)樣本對之間的距離或者相似度,學(xué)習(xí)度量空間使得實際屬于同個類別的目標(biāo)特征的距離更小。在圖2 描述的CNN-GRU 度量網(wǎng)絡(luò)的結(jié)構(gòu)圖內(nèi),在得到目標(biāo)保存的各個時序的歷史軌跡框正確匹配的概率后,還需學(xué)習(xí)目標(biāo)軌跡框和檢測框特征的相似度,即學(xué)習(xí)一種度量。該度量針對視頻圖像中同一軌跡中的特征向量輸出的相似度要比屬于不同軌跡中的特征向量返回的相似度要大。為了在CNN-GRU 網(wǎng)絡(luò)中得到目標(biāo)軌跡框和檢測框特征的相似度,需要先聚合目標(biāo)歷史軌跡框的特征。
在得到跟蹤目標(biāo)保存的各個時序的歷史軌跡框正確匹配的概率后,以此概率為權(quán)重,聚合多個時序的目標(biāo)歷史軌跡框的特征。對聚合的特征和目標(biāo)檢測框的外觀特征求余弦距離,并經(jīng)Sigmoid 函數(shù)計算目標(biāo)軌跡框和檢測框特征的相似度。
CNN-GRU 度量網(wǎng)絡(luò)中聚合歷史軌跡框特征以及檢測框和軌跡框的相似度計算公式如下:
(4)損失函數(shù)。CNN-GRU 度量網(wǎng)絡(luò)主要采用3 種 損 失 函 數(shù):Softmax loss、Binary cross entropy loss 和Triplet loss。 其 中, 分 類 損 失 使 用 的是resnet18-part 經(jīng)過分類層輸出且L2 歸一化后的特征;Triplet loss 使用的是resnet18-part 全連接層輸出的256 維的特征;Binary cross entropy loss 在該網(wǎng)絡(luò)結(jié)構(gòu)中用在兩個地方,一是雙GRU 結(jié)構(gòu)中全連接層輸出的特征,二是CNN-GRU 網(wǎng)絡(luò)在聚合目標(biāo)軌跡框特征后與檢測框計算的相似度特征。
在CNN-GRU 度量網(wǎng)絡(luò)中有兩處使用到Binary cross entropy loss,分別用于目標(biāo)歷史軌跡框的正確匹配學(xué)習(xí)和相似度學(xué)習(xí)。
正確匹配學(xué)習(xí)的損失函數(shù)公式如下:
相似度學(xué)習(xí)的損失函數(shù)公式如下:
在整個CNN-GRU 度量網(wǎng)絡(luò)的訓(xùn)練中,Softmax loss 損失函數(shù)主要是使得CNN-GRU 度量網(wǎng)絡(luò)中CNN 提取的外觀特征能區(qū)分不同ID 的目標(biāo);Triplet loss 損失函數(shù)主要是使得CNN-GRU 度量網(wǎng)絡(luò)中CNN 提取的不同ID 間的特征距離更遠(yuǎn),同ID 間的目標(biāo)框的特征距離更近;Binary cross entropy loss 損失函數(shù)主要是使得CNN-GRU 度量網(wǎng)絡(luò)學(xué)習(xí)歷史軌跡框中每個時序的軌跡框正確匹配,以及用于目標(biāo)軌跡框和檢測框的相似度學(xué)習(xí)。
其中:xt為GRU 當(dāng)前時序輸入,本文中雙GRU 每個時序的輸入分別為第t-i幀軌跡框的外觀特征ft-i和速度特征;zt為GRU 的更新門; σ 為Sigmoid函數(shù),主要是控制歷史信息的更新;rt為GRU 的重置門,主要是決定以前哪些信息需要重置;h~t為包含當(dāng)前輸入和選擇記憶歷史信息后的輸出;ht為當(dāng)前時序的隱狀態(tài)輸出值,其使用同一個門控zt來遺忘和選擇記憶。zt⊙h~t表示對當(dāng)前時序信息進行選擇性的記憶; ( 1-zt)⊙ht-1表示對上一個時序的隱狀態(tài)的選擇性的遺忘, ⊙ 表示向量對應(yīng)元素相乘(Element-wise multiplication);Wz、Wt、W和Uz、Ut、U為訓(xùn)練階段學(xué)習(xí)到的權(quán)重矩陣。GRU 每個時序的隱狀態(tài)的更新都意味著遺忘上一個時序傳遞下來的隱狀態(tài)的某些維度的信息,并選擇性地加入當(dāng)前時序輸入的某些維度的信息,從而學(xué)習(xí)視頻目標(biāo)軌跡框之間的外觀和速度的時間關(guān)聯(lián)性,即每個時序保留一些利于區(qū)分當(dāng)前目標(biāo)框和其他目標(biāo)的特征維度,遺忘一些冗余的特征維度。
在多目標(biāo)跟蹤中檢測框和跟蹤框之間的相似度函數(shù)是數(shù)據(jù)關(guān)聯(lián)的重要組成部分,為了求得相似度需要從視頻圖像中提取特征。研究證明從基于行人重識別任務(wù)的卷積神經(jīng)網(wǎng)絡(luò)中學(xué)到的深層特征,可以結(jié)合到多目標(biāo)跟蹤算法中以提高跟蹤性能[23]。
本文采用文獻[21]提出的行人重識別的網(wǎng)絡(luò)結(jié)構(gòu),命名為Reid。該網(wǎng)絡(luò)由GoogLeNet 和部分對齊全連接(fc)層的K個分支組成,并利用大規(guī)模的行人重識別數(shù)據(jù)集Market1501 等對網(wǎng)絡(luò)進行訓(xùn)練。使用余弦距離度量Reid 網(wǎng)絡(luò)提取的外觀特征的距離。
數(shù)據(jù)關(guān)聯(lián)是指根據(jù)歷史軌跡框和檢測框的匹配矩陣得到每個檢測框?qū)?yīng)的目標(biāo)ID。其中,匹配矩陣的每一項是歷史目標(biāo)軌跡框和檢測框特征的距離。
在得到匹配矩陣以后,還需利用每個跟蹤目標(biāo)的卡爾曼濾波器在當(dāng)前幀預(yù)測的目標(biāo)位置,限制與當(dāng)前目標(biāo)軌跡框匹配的檢測框的范圍。最后,使用匈牙利匹配算法匹配所有軌跡框和剩下的檢測框,得到最后的目標(biāo)ID 和檢測框的匹配結(jié)果。
基于CNN-GRU 的多目標(biāo)跟蹤算法的完整描述如下:
-當(dāng)一個軌跡連續(xù)3 幀與檢測框匹配,就認(rèn)為這個軌跡的跟蹤狀態(tài)變?yōu)榇_定狀態(tài),并將其添加到軌跡集合中
本文采用標(biāo)準(zhǔn)的多目標(biāo)跟蹤數(shù)據(jù)集MOT16 和MOT17[24]進行實驗。MOT16 數(shù)據(jù)集共有14 個視頻序列,其中7 個為帶有標(biāo)注信息的訓(xùn)練集,7 個為測試集。MOT16 主要標(biāo)注的目標(biāo)是移動的行人與車輛,擁有不同拍攝視角、不同天氣狀況的復(fù)雜場景視頻。MOT17 數(shù)據(jù)集與MOT16 具有相同的視頻,但是MOT17 數(shù)據(jù)集中每個視頻提供3 組公開的目標(biāo)檢測結(jié)果:分別來自Faster R-CNN[8]、DPM 和尺寸池化檢測器SDP[25]。本文采用MOT16 訓(xùn)練集中可用的460 個可跟蹤目標(biāo)訓(xùn)練CNN-GRU 度量網(wǎng)絡(luò)。
在訓(xùn)練CNN-GRU 度量網(wǎng)絡(luò)的過程中,采用隨機采樣同個目標(biāo)軌跡中的相鄰的幀組成訓(xùn)練集正樣本,并且在軌跡集中加入負(fù)樣本(即在目標(biāo)軌跡框出現(xiàn)的視頻幀中隨機選擇其他目標(biāo)框作為負(fù)樣本)構(gòu)成訓(xùn)練集。這樣即使目標(biāo)軌跡中加入了其他目標(biāo)檢測框,也可以通過在聚合歷史特征時通過式(2)給它分配低權(quán)重來降低其對整體軌跡特征的影響。
針對本文關(guān)注解決的問題,采用MOTA、IDF1、IDs 和FP 作為主要評估指標(biāo)。其中MOTA 指標(biāo)結(jié)合了漏報、誤報和ID 切換率,其得分能夠很好地表征跟蹤精度,但不能評估軌跡一致性;IDF1 是識別F1 分?jǐn)?shù),表示正確識別的檢測數(shù)與平均groundtruth 和檢測數(shù)量之比,能更好地度量身份匹配的一致性[26];IDs 表示目標(biāo)發(fā)生ID 切換的次數(shù);FP 表示假正例(誤報)的數(shù)量。MOTA 的計算公式如下[27]:
其中:FP 表示整個視頻中誤報的數(shù)量;FN 表示整個視頻中漏檢的數(shù)量; I DSW 表示目標(biāo)ID 發(fā)生變化的數(shù)量; GT 表示ground-truth 目標(biāo)框的個數(shù)。
本實驗的CPU 配置為Intel Core-i7-8750H @2.2 GHz,GPU 是NVIDIA GeForce GTX1060。
實驗主要關(guān)注多目標(biāo)的跟蹤結(jié)果,其中,在MOT17 數(shù)據(jù)集上的對比實驗采用該數(shù)據(jù)集提供的公開目標(biāo)檢測結(jié)果;在MOT16 數(shù)據(jù)集上的驗證實驗的跟蹤器檢測部分的檢測結(jié)果使用文獻[28]的結(jié)果。
(1)有效性驗證實驗。為了驗證CNN-GRU 度量網(wǎng)絡(luò)的有效性,首先在MOT16 訓(xùn)練集上進行驗證實驗。設(shè)跟蹤器的基線模型(基礎(chǔ)多目標(biāo)跟蹤器)由卡爾曼濾波器(位置限定)+IOU 關(guān)聯(lián)+匈牙利匹配算法組成,命名為baseline?;€模型+CNN-GRU 度量網(wǎng)絡(luò)組成的多目標(biāo)跟蹤器命名為b-cnngru?;€模型+行人重識別網(wǎng)絡(luò)組成的多目標(biāo)跟蹤器命名為breid。b-reid+CNN-GRU 網(wǎng)絡(luò)命名為Ours(+)。為了進一步證明所提數(shù)據(jù)關(guān)聯(lián)方法的有效性,實驗還比較了將(行人重識別網(wǎng)絡(luò)輸出特征計算的相似度)×(CNN-GRU 輸出的相似度)作為總的相似度分?jǐn)?shù)的方法,命名為Ours(*)。
圖4、圖5 分別示出了b-reid、Ours(+)和Ours(*)在IDF1、IDs 兩個指標(biāo)上的比較結(jié)果。表2 示出了baseline、b-reid、b-cnngru、Ours(+)和Ours(*)在多個指標(biāo)上的比較結(jié)果。
圖4 基于IDF1 指標(biāo)的效果驗證Fig. 4 Verification of effects based on IDF1 index
圖5 基于IDs 指標(biāo)的效果驗證Fig. 5 Verification of effects based on IDs index
表2 中向下的箭頭表示該指標(biāo)越小越好;向上的箭頭表示該指標(biāo)越大越好。從表2 的結(jié)果可以看出,b-cnngru 的MOTA 得分比b-reid 高0.1%,且bcnngru 的IDF1、FP 和IDs 指標(biāo)均優(yōu)于b-reid,說明在baseline 中加入CNN_GRU 度量網(wǎng)絡(luò)比在baseline 中加入Reid 網(wǎng)絡(luò)的整體性能要高。與b-reid 相比,Ours(*)的IDF1 提高1.0%,IDs 下降了9.2%;Ours(+)的IDF1 提 高3.4%,IDs 下 降 了21.5%,F(xiàn)P 下 降 了5.9%,MOTA 提高0.3%。這幾個模型的FN 相差不多,b-cnngru 和Ours(+)略有增加。綜合來看,多目標(biāo)跟蹤框架中加入CNN-GRU,對目標(biāo)ID 切換次數(shù)、目標(biāo)誤報率有較好的改進作用,目標(biāo)ID 的一致性也有所提升,結(jié)合使用Reid 可以得到更好的跟蹤性能。5 種跟蹤器的運行速度比較結(jié)果如表3 所示。其中Hz 表示多目標(biāo)跟蹤器在基準(zhǔn)數(shù)據(jù)集上的處理速度(即每秒幀數(shù),不包括檢測器部分,只包含跟蹤部分的處理速度)。
表2 CNN-GRU 的效果驗證(MOT16)Table 2 Effects verification of CNN-GRU (MOT16)
表3 CNN-GRU 的處理速度驗證結(jié)果(MOT16)Table 3 Processing speed verification of CNN-GRU (MOT16)
從表3 中可以看出,在基線模型中加入行人重識別網(wǎng)絡(luò)會使整個跟蹤器的處理速度降低,因為視頻中每個行人框都要提取外觀特征會消耗一定的時間。加入CNN-GRU 度量網(wǎng)絡(luò)后,處理上需要更多的時間。
(2)雙GRU 驗證實驗。為了驗證CNN-GRU 度量網(wǎng)絡(luò)中雙GRU 的有效性,比較了在雙GRU 結(jié)構(gòu)中只使用運動GRU 或外觀GRU 時的性能(去掉雙GRU 結(jié)構(gòu)中的Concat)。在MOT16 訓(xùn)練集上進行驗證實驗,實驗結(jié)果如表4 所示。其中,Ours(+)使用的是單CNN 和雙GRU 的結(jié)構(gòu),而GRU-v 是使用單CNN 和運動GRU 的跟蹤器,GRU-a 是使用單CNN和外觀GRU 的跟蹤器。
由表4 的實驗結(jié)果可知,只使用單個運動GRU或者單個外觀GRU 時,多個性能指標(biāo)如MOTA、IDF1、FP、FN 和IDs 均差于在跟蹤器中使用雙GRU的效果,使用雙GRU 結(jié)構(gòu)性能高于只使用單個GRU 的性能。
表4 CNN-GRU 的雙GRU 效果驗證(MOT16)Table 4 Effects verification of dual GRU in CNN-GRU(MOT16)
(3)跟蹤效果驗證實驗。為了進一步驗證加入CNN-GRU 度量網(wǎng)絡(luò)后多目標(biāo)跟蹤算法的改進效果,圖6 示出了b-reid 模型和Ours(+)模型在兩個多目標(biāo)跟蹤場景的對比效果圖。
在圖6 視頻場景(a1,a2)中,具有相似外觀的目標(biāo)4 和目標(biāo)8 發(fā)生重疊遮擋??梢钥闯?,對于breid 模型,在相似外觀的目標(biāo)4 和8 發(fā)生重疊遮擋后發(fā)生了ID 切換;而對于Ours(+)模型,這些目標(biāo)在重疊遮擋以后依舊可以被正確區(qū)分,沒有產(chǎn)生ID 切換。在圖6 視頻場景(b1,b2)中,對于b-reid 模型,目標(biāo)21 的軌跡框在第2 幀時被遮擋,且在第3 幀后目標(biāo)21 的軌跡框中加入了目標(biāo)37 的檢測框,發(fā)生了ID 切換和誤檢;而對于Ours(+)模型,目標(biāo)26 在第3幀時匹配到其他目標(biāo)檢測框,但由于本文模型可學(xué)習(xí)不同時序目標(biāo)框正確匹配的概率,因此可重新正確識別目標(biāo)。
圖6 視頻多目標(biāo)場景的跟蹤效果對比圖Fig. 6 Comparison of tracking effect of video multi-target scene
(4)與現(xiàn)有跟蹤器的對比實驗。將本文所提跟蹤器與MOT 官網(wǎng)(https://motchallenge.net/)上近幾年提出的多目標(biāo)跟蹤器性能進行比較。實驗在MOT17 測試集(該測試集包含3 組檢測結(jié)果)上進行,實驗結(jié)果見表5。
由表5 可以看出,在MOT17 測試集上,與MASS[29]和FPSN[15]跟蹤器相比,本文提出的跟蹤器雖然整體精度略低,但是有更低的誤報率以及更低的ID 切換次數(shù)。與GMPHD_DAL[30]、SORT17[13]和GMPHD_N1Tr[31]相比,除FN、Hz 外,本文提出的跟蹤器總體指標(biāo)都有提升。與SAS_MOT17[32]相比,本文提出的跟蹤器有更高的MOTA 分?jǐn)?shù)和更低的誤報率。與多個跟蹤器的處理速度相比,本文提出的跟蹤器的速度居中??偟膩碚f,在MOT17 數(shù)據(jù)集的實驗結(jié)果表明,CNN-GRU 多目標(biāo)跟蹤器在跟蹤準(zhǔn)確度、ID 切換次數(shù)和誤報率方面具有良好的綜合性能。
表5 MOT17 測試集結(jié)果Table 5 Comparison with public detector on MOT17 test dataset
本文提出了一種多目標(biāo)跟蹤框架,該框架主要包括行人重識別模型、CNN-GRU 度量網(wǎng)絡(luò)和數(shù)據(jù)關(guān)聯(lián)算法。在CNN-GRU 深度度量網(wǎng)絡(luò)中統(tǒng)一提取目標(biāo)的外觀特征和運動特征,并學(xué)習(xí)其時間關(guān)聯(lián)性,使得目標(biāo)具有更好的判別性,以此降低ID 切換率。同時,通過訓(xùn)練使CNN-GRU 度量網(wǎng)絡(luò)學(xué)習(xí)目標(biāo)保存的不同歷史時序軌跡框正確匹配的概率值,抑制目標(biāo)軌跡中的誤檢以及低質(zhì)量目標(biāo)框?qū)δ繕?biāo)整體特征的影響;通過在CNN-GRU 度量網(wǎng)絡(luò)結(jié)構(gòu)中直接聚合不同時序的歷史軌跡框的外觀特征,再由該度量網(wǎng)絡(luò)直接輸出目標(biāo)軌跡框和檢測框特征的相似度。該相似度與行人重識別模型輸出的特征計算得到的相似度通過數(shù)據(jù)關(guān)聯(lián)算法,最終計算出匹配結(jié)果。將Reid 網(wǎng)絡(luò)和CNN-GRU 度量網(wǎng)絡(luò)輸出的相似度結(jié)合進一步降低目標(biāo)的ID 切換率。實驗評估結(jié)果表明,本文提出的框架能夠有效降低ID 切換率和誤報率,提高跟蹤精度。未來考慮加入邊界框回歸來修正目標(biāo)檢測結(jié)果不夠精確的目標(biāo)框的坐標(biāo)。