朱珠
(上海工程技術大學電子電氣工程學院, 上海201600)
論文重點介紹單鏡頭條件下的多目標跟蹤。數據關聯和隨機集理論是解決多目標跟蹤問題的兩種主流思想[1],數據關聯要求在跟蹤的多個采樣周期期間對數據進行關聯,這樣可以為建立目標航跡提供初始信息,同時也就需要對觀測數據進行融合和測量,以此來確定跟蹤生命周期。該算法的關鍵技術是尋找同一對象與前兩幀之間的關系,缺點是顯而易見的,一旦數據關聯錯誤,多目標跟蹤將失敗[2]。
結合卷積神經網絡的發展現狀,避開傳統的數據關聯和隨機集理論,嘗試先對SSD 模型進行離線訓練,然后進行全視頻幀檢測來解決多目標跟蹤問題,并且取得了良好的跟蹤效果。該方法避免了由誤差累積引起的跟蹤盒偏移現象,跟蹤魯棒性和長期跟蹤能力顯著提高。
SSD方法是基于一個前向傳播的CNN 網絡,該網絡產生一些列固定大小的Bounding Boxes,以及每個Box 中包含物體實例的可能性,即得分,然后進行一個非極大值抑制(Non-maximum Suppression)得到最終的預測。早期網絡層基于用于高質量圖像分類(在任何分類層之前被截斷)的標準體系結構,作者稱之為基本網絡。然后,向網絡添加輔助結構以產生具有關鍵特征的檢測。
Multi-scale Feature Maps for Detection在基礎網絡的末端添加了額外的卷積層,這些層的尺寸逐漸減小,并且可以在多個尺度下進行預測。用于預測的卷積模型對于每個特征層(參見Overfeat和YOLO,它們在單個比例尺特征圖上操作)是不同的。
Convolutional Predictors for Detection每個添加的特征層(或者可選地在基礎網絡結構中的現有特征層),可以使用一系列的卷積濾波器來產生一系列大小固定的預測集。這些在圖1中的SSD網絡體系結構中有所表示。對于一個具有p通道且大小為m×n的特征層,使用的卷積濾波器就是3×3×p的內核,產生的預測要么是歸屬類別的一個得分,要么是一個相對于默認盒坐標的形狀偏移。在每個特征圖的m×n的位置上,使用3×3的內核它就會產生一個輸出值。邊框偏移輸出值是相對于默認值測量的。

圖1 SSD網絡模型
在G P U 并行計算能力的支持下, 諸如Caffe、TensorFlow、Torch和Theano等許多深入學習的基本框架得到了迅速發展。其中,以Caffe框架支持的SSD為代表的一系列神經網絡模型具有很大的影響力。隨著卷積神經網絡模型的不斷優化,單幀圖像的模型訓練和目標檢測時間不斷縮短。目前,最新的卷積神經網絡模型可以在GPU環境下檢測高達78幀/秒的幀速率。在幀周圍基本達到了實時檢測的能力。
在快速R-CNN網絡模型的基礎上,設計了一種簡單的多目標跟蹤框架,并通過實驗驗證了該算法的可行性。與傳統的多目標相比跟蹤算法,該方法可以進行長期跟蹤,有很明顯的優勢。
本文的算法包括訓練和跟蹤兩部分。由于卷積神經網絡訓練時間較長,很難用樣本反饋在線更新網絡模型,所以實時性較差。因此,本文的實踐就是對網絡模型進行了提前改進即離線培訓,沒有在線更新。模型訓練完成后,直接嵌入多目標跟蹤程序框架中,以檢測方式完成各幀中目標的定位與跟蹤。模型試驗的結果將計算目標的預測位置和相似性得分,并根據這兩個方面的信息確定目標的最終狀態。在本文中,該程序直接用矩形框滿足相似性要求,并且不顯示其余信息。
首先利用樣本集訓練神經網絡模型,然后利用訓練神經網絡模型提取目標特征,對目標進行跟蹤匹配。

圖2 SSD多目標跟蹤
本實驗主要針對MOT16視頻集,跟蹤對象是人,選取的樣本分為正樣本和負樣本兩類,正樣本是人的目標,樣本數是10000,負樣本是背景信息,樣本數是20000,測試樣本是T。它的號碼是500。樣本信息收集自ImageNet數據庫、UIUC圖像數據庫和PASCALVOC的汽車數據庫。卷積神經網絡模型選用MatConvNet 24.0,模型的訓練和目標識別均采用GPU加速。因此,在參數設置中opts.gpus=1,將學習速率參數設置為pts.learningRate=0.001。在本實驗中,由于只有兩種樣品,卷積神經網絡模型只需要確定候選區域是否包含目標區域和目標的相似性,因此類別數量參數nCls被設置為2,使用準備好的正樣本和負樣本進行模型訓練,并設置迭代次數opts.numEpochs=10000。

表1 卷積神經網絡模型的參數設置
實驗采用計算機CPU i5-6500,3.2GHZ,GTX1050。程序參數設置如下:候選框是初始對象大小的2.5倍,學習率為0.001。為了全面評估所提出的算法,本文評估了在MOT16數據庫上的跟蹤性能,該數據庫包括七個具有挑戰性的視頻序列,包括帶有移動相機的前視場景和自頂向下監控設備。
評估標準用于評估算法的性能包括:多目標跟蹤精度(M O T A ↑)、多目標跟蹤精度(M O T P ↑)、正確跟蹤軌跡占8 0%以上(M T ↑)、正確跟蹤軌跡占2 0%以上( ML↓)、目標ID變化數(IDS↓)、誤檢目標數(FP↓)、漏檢目標數(FN↓)、軌道斷開數(Frag↓)和運行速度(Runtime↑)。比較算法是TBD、NOMT、SORT和POI,且這四種多目標跟蹤算法是目前比較出色的多目標跟蹤算法。

表2 實驗參數設置與評估方法
算法比較測試視頻和測試結果如表3所示。
圖3是測試視頻的效果圖,由上往下,可以看出實線框內的人物被清晰地標注出,表明目標此時被檢測到,并且能夠跟蹤上,圖3中間一圖,玫紅色線框的目標被遮擋而不能被檢測出時,系統嘗試用卡爾曼濾波器預測其出現的位置。
這個測試結果表明文中實現的算法處理多目標跟蹤問題是有效的。當目標不被遮擋且沒有復雜的運動時能夠實現穩定跟蹤,在目標遮擋時間較短時,能預測目標在下一幀的位置,并重新匹配,這就說明算法可以同時對多個目標進行跟蹤。

表3 MOT16 數據庫跟蹤性能比較

圖3 多目標跟蹤效果圖
本文提出了一種基于卷積神經網絡檢測的多目標跟蹤算法。檢測模型在所有視頻幀中執行全圖像檢測。在多個視頻測試集上的實驗表明,該方法可以旋轉目標,變形具有較高的公差。同時,與傳統的多目標跟蹤算法相比,該算法具有明顯的優勢。該算法在長期跟蹤中具有很強的魯棒性,避免了傳統的跟蹤算法由于跟蹤時間的延長導致誤差的累積,最終導致跟蹤失敗的缺點。
本文提出的多目標跟蹤算法結構簡單,所暴露出的一些缺點和不足是今后研究的重點:
(1)該算法只對特定類型的目標進行模型訓練,沒有對跟蹤部分進行深入的設計,因此在跟蹤時所有屬于這些目標的候選區域都將被標記;
(2)在視頻幀中有時會出現錯誤警報和未命中的標簽。下一階段將研究如何將軌跡預測與多目標跟蹤相結合,同時研究正負樣本選擇和訓練迭代參數設置對訓練結果的影響。