1. 程式人生 > >多目標跟蹤綜述:Multiple Object Tracking: A Literature Review

多目標跟蹤綜述:Multiple Object Tracking: A Literature Review

摘要

多目標跟蹤因其學術和商業潛力,在計算機視覺中逐漸備受關注。儘管如今已經有多種多樣的方法來處理這個課題,但諸如目標重疊、外觀劇變等問題仍然是它所面臨的重大挑戰。在本文中,我們將提供關於多目標跟蹤最綜合、最新的資訊,檢驗當下最新技術突破,並對未來研究提出幾個有趣的方向。據我們所知,關於這個課題還沒有被廣泛調查研究過,因此我們將盡力提供近世紀以來關於多目標跟蹤最全面的介紹。本文的主要貢獻點如下四條:1)多目標跟蹤系統的關鍵方向,包括公式(formulation),分類(categorization),關鍵原則(key principles),以及測評(evaluation);2)根據現有技術所屬的不同方向來進行討論,再將每個方向的方法劃分為成組,然後對組內方法的原則、優缺點進行討論;3)檢驗現有公開的實驗並且總結在主流資料集上的實驗結果,再進行量化地對比,與此同時指出分析中發現的幾個有趣的問題;4)提供在MOT研究中會遇到的問題的討論,以及可能在以後的工作中會出現的潛在可研究方向。

1、介紹

多目標跟蹤(Multiple Object Tracking or Multiple Target Tracking, MOT or MTT)主要任務是在給定視訊中同時對多個感興趣的目標進行定位,並且維持他們的ID、記錄他們的軌跡。這些目標可以是路上的行人【1~2】,路上的車輛【3~4】,操場上的運動員【5~7】,或者多組動物(鳥【8】,蝙蝠【9】,螞蟻【10】,魚【11~13】,細胞【14~15】,等等),甚至是一個單目標中的不同部分【16】。在本文中我們主要關注行人跟蹤的研究,有如下三個原因:第一,與生活中其他物體相比,行人是典型的非剛體目標,MOT的理想例子;第二,在實際應用中存在大量的含有行人的視訊,這意味著巨大的商機;第三,據資料統計,至少70%的MOT研究都是針對行人的。

作為計算機視覺中的一項中級(mid-level)任務,多目標跟蹤依賴於高階(high-level)任務,如姿態估計【17】,動作識別【18】和行為分析【19】。它有許多實際應用,如視訊監控【20】,人機互動【21】和虛擬現實【22】。這些實際需求引起了人們對這一話題的極大興趣。與之相對的,單目標跟蹤(Single Object Tracking, SOT)主要集中在設計複雜的外觀模型和/或運動模式,解決具有挑戰性的問題如尺度變化,出平面旋轉和光照變化,而多目標跟蹤還有額外的兩個任務需要解決:確定目標的數量(通常隨時間變化),和維持各自的ID。除了SOT和MOT的共同問題外,MOT還需要處理更復雜的關鍵問題包括:1)頻繁遮擋;2)軌道初始化和終止;3)相似的外觀;4)多目標間的相互影響。為了解決所有這些問題,在過去的幾十年裡,人們提出了廣泛的解決方案。這些解決方案集中在MOT系統的不同方面,使得MOT研究人員,特別是新手,很難對這個問題有全面的瞭解。因此,在本文中,我們提供了關於多目標跟蹤問題各個方面的詳細討論。

1.1、與其他相關綜述的不同

據我們所知,關於多目標跟蹤的問題還沒有一個全面的文獻綜述。然而,也有一些與多目標跟蹤有關的其他文獻資料,如表1所示。我們將這些文獻分為三組,然後著重指出我們之間的差異如下:

  • 第一類【19~21】【23~24】在將跟蹤作為一個單獨部分來討論的同時,還詳細討論了MOT的各個方面。例如,將目標跟蹤作為高階任務的過程中的一個步驟進行討論,如人群建模【19】【23~24】。類似地,在【20~21】中,將目標跟蹤劃為行為識別【21】或視訊監視系統【20】的一部分。
  • 第二類【25~28】專注於一般視覺跟蹤技術【25~27】或一些特定的問題如外觀模型【28】,但這類文獻涉及範圍更廣。相反,本文更全面地關注多目標跟蹤。
  • 第三類【29~30】介紹並討論一般視覺跟蹤【29】和特定的多目標跟蹤的基準(benchmark)【30】,他們更注重實驗研究而不是文獻綜述。

1.2、貢獻

1.3、本文組織結構

1.4、外延符號(Denotations)

2、MOT問題

2.1、問題公式(Formulation)

在過往研究中,MOT問題已經從不同的角度形成了不同公式,這使我們很難從高層的角度來理解這個問題。本文中,我們泛化了公式,並認為現有的研究可以由這些公式統一。據我們所知,這項嘗試以前從未有過。

通常來說,多目標跟蹤可以認為是多變數估計問題。給定一個影象序列,表示第t幀第i個目標的狀態,表示在第t幀下所有目標的狀態序列,表示第i個目標的狀態序列,其中分別表示目標i出現的第一幀和最後一幀,表示所有目標從第一幀到第t幀的狀態序列。需要注意的是每一幀目標的ID都可能不同。

相應的,在最常用的tracking-by-detection,或Detection Based Tracking(DBT)結構下,表示第t幀第i個觀測目標(observation),表示在第t幀下所有目標的觀測目標,表示所有目標從第一幀到第t幀的觀測目標序列。

多目標跟蹤的目的是找到所有目標“最好的”狀態序列,在所有觀測目標的狀態序列上的條件分佈上,可以通過使用MAP(maximal a posteriori)估計法泛化建模得到:

以往研究中提到的不同MOT演算法,其目的現在可以被認為是設計不同方法來解決上述的MAP問題。它們的方法要麼是基於概率預測方面的【6】【31~37】,要麼是基於決策優化方面的【16】【38~48】。

基於概率預測的方法通常用兩步迭代演算法來解決式(1)的,其中是動態模型,是觀測模型。

基於決定性優化的方法則是直接最大化概率函式,在觀測集上作為代表

或最小化能量函式

其中Z是歸一化因子,保證是一個概率分佈。

2.2、MOT分類(Categorization)

由於難以使用一個通用的標準來對一個特定的MOT方法進行分類,所以我們使用多個標準來區分MOT方法。接下來將會根據三個標準劃分:初始化方法、處理模式和輸出型別。至於選擇上述三種的原因是,這符合一個任務的自然流程。

2.2.1、初始化方法

大多數現存的MOT研究可以根據目標如何初始化分為兩類:Detection-Based Tracking(DBT)和Detection-Free Tracking(DFT)。

DBT:如圖1上層所示,首先檢測目標,然後連結到軌跡中。這種策略也通常被稱為“tracking-by-detection”。給定一個序列,在每幀中進行特定型別的目標檢測或運動檢測(基於背景建模)【50~51】,得到目標假設, 然後進行順序或批量跟蹤,將檢測假設連線到軌跡中。有兩個問題值得注意:第一,由於提前訓練目標檢測器,DBT大部分關注特定的目標型別,如行人、車輛或人臉。第二,DBT的效能非常依賴於所採用的目標檢測器的效能。

DFT:如圖1下層所示,DFT【52~55】需要在第一幀手動初始化一定數量的目標,然後在後續幀定位這些物體。相對來說,DBT更受歡迎,因為它可以自動發現新目標、自動終止消失的目標。而DFT就不能處理新目標出現的情況,但它不需要提前訓練目標探測器。表3列出了DBT和DFT之間的主要差異。

2.2.2、處理模式

MOT也可以分為online跟蹤核offline跟蹤,其差別在於在處理當前幀時,後幾幀的觀測目標是否被利用到。Online,也成為causal,只依靠直到當前幀的前面的資訊。相對的ffline則能使用未來幀的資訊。

Online跟蹤:在online跟蹤【52~54】【56~57】中,影象序列是一步步處理的因此該跟蹤方式也稱序列跟蹤。如圖2上層所示,a,b,c三個圈表示三個不同的目標,綠色箭頭表示過去的觀測目標,其結果由目標的位置和ID表示。

Offline跟蹤:Offline跟蹤【1】【46~47】【51】【58~63】利用一組幀來處理資料。如圖2下層所示,來自所有幀的觀測目標需要提前獲取,然後經分析計算組成最後的輸出。注意到由於計算複雜度和記憶體限制,不總是一次性處理所有幀,而是考慮將資料分成幾個短一點的視訊,對於每組分層或順序處理得到結果。表4列出了兩類處理模式的不同。

2.2.3、輸出型別

這個標準根據輸出的隨機性將MOT方法分成基於決策的和基於概率的。基於決策的跟蹤輸出是恆定的無論執行方法多少次,而基於概率的跟蹤每次執行都可能產生不同輸出結果。兩者差異來源於2.1節提到的優化方法。

2.2.4、討論

3、MOT組成成分

在設計MOT演算法的時候有兩個問題需要考慮:一個是怎樣測量幀內目標的相似性,另一個是基於這個相似性怎樣判斷幀間目標是否相同。前者主要包括外觀,運動,交叉,排斥和碰撞的建模問題,後者主要和資料關聯有關。

3.1、外觀模型

外觀是MOT中重要的計算相似度(affinity)的途徑,在單目標跟蹤中,複雜的外觀建模主要用於將目標和背景區分開來,而大多數MOT方法則不將其作為核心建模方法。從技術上可以將外觀模型分為視覺表示和統計測量,前者基於單特徵或多特徵來描述一個目標,後者則是計算不同目標間的相似性。例如目標i和j間的相似性可以寫成:

其中是不同觀測目標的視覺表示,F(·,·)是測量它們相似性的函式。

3.1.1、視覺表示

如圖3,根據特徵的不同,視覺表示也就不同。我們將特徵按如下分類:

Local features:KLT善於尋找好的用於跟蹤的特徵,得到了這些特徵之後,我們可以用來生成短軌跡(trajectories)【62】【74】、估計攝像頭運動【63】【75】,運動聚類【68】等等。光流法也可以認為是local features當我們將畫素單位作為最佳local範圍時,許多MOT方法在進行資料關聯前都會利用光流法來生成短軌跡(tracklets)【76~77】,又由於光流法與運動息息相關,它也常用來對運動資訊編碼【78~79】,還有一類特殊的應用是在擁擠場景中尋找人群運動規律【35】【69】,這是其他特徵所不能做到的。

Region features:和local features相比,region features在更廣的範圍內搜尋例如bounding box。我們按次序對它分類:zero-order,fist-order,up-to-second-order。在這裡次序表示當計算表示時差異的次序,舉例來說,zero-order表示畫素值不進行比較,one-order表示畫素值的差異只計算一次。

  • Zero-order:最常用的表示方法,經典例子是顏色直方圖【34】【62】【71~72】【77】以及原始畫素(raw pixel)模板【80】。
  • First-order:基於梯度的表示方法例如HOG【18】【32】【60】【77】【81】和水平集公式(level-set formulation)【71】經常被使用。
  • Up-to-second-order:區域協方差矩陣【82~83】,被用於【52】【60~61】。
Others:例如深度,常用於提煉檢測假設【71】【84~87】,佔有概率圖(Probabilistic Occupancy Map, POM)【42】【88】,常用與估計一個目標出現在特定區域單位的概率,還有步態(gait)特徵,對於每個人來說是不一樣的【62】。 Discussion:顏色直方圖經常使用,然而其忽略了目標區域的空間分佈。Local features是高效的,但是對遮擋和平面外旋轉(out-of-plane)敏感。基於梯度的特徵例如HOG可以描述目標的形狀並且對一定變化例如光照有適應性,但它不能很好地處理遮擋和變形。區域協方差矩陣相對來說比較魯棒因為它們使用了較多的資訊,但同時帶來了較高的計算複雜度。深度特徵使相似性的計算更準確,但它需要同一場景的多視角資訊或者額外演算法【89】來獲取深度。

3.1.2、統計測量

在上一步視覺表示的基礎上,統計測量計算兩個觀測目標間的相似度,其中又可分為單線索(single cue)和多線索(multiple cue)的方法:

Single cue:使用single cue進行外觀建模的要麼是將距離轉換為相似性,要麼直接計算相似度。例如,歸一化互相關(Normalized Cross Correlation, NCC)常用來對使用原始畫素模板方法的兩對應區域進行計算【2】【69】【80】【90】。在顏色直方圖中,巴氏(Bhattacharyya)距離常用來計算兩直方圖間的距離,然後將該距離轉換成相似性【31】【36】【58】【62~63】【91】,或者將距離放入高斯(Gaussian)分佈中如【38】。相異性(dissimilarity)轉換成概率還能用協方差矩陣來表示。除此之外,在基於點特徵表示方法【33】上還能用到磁帶(bag-of-words)模型【92】。

Multiple cues:不同的cues可以進行互補使外觀模型更加魯棒,我們基於5種融合策略來構建多線索外觀模型如表5:

  • Boosting:從特徵池中序列地選擇一部分特徵來進行基於boosting的演算法,例如在【60】,【49】和【40】中,對於顏色直方圖,HOG,和協方差矩陣描述子,分別採用AdaBoost,RealBoost和HybirdBoost演算法來區分不同目標各自的tracklets。
  • Concatenation:可以將不同特徵連線起來計算。在【46】中就連線了顏色,HOG和光流。
  • Summation:將通過不同特徵得到的相似度加權求和【71】【93】【94】。
  • Product:跟加權求和不同的是將得到的相似度相乘【33】【51】【95】【96】,需要注意的是採用這種方法往往需要進行獨立性假設。
  • Cascading:將使用不同方法的視覺表示級聯計算,通常可以縮小搜尋範圍或者由粗到細地對外觀建模。

3.2、運動模型

運動模型捕捉目標的動態行為,它估計目標在未來幀中的潛在位置,從而減少搜尋空間。在大多數情況下,假設目標在現實中是平緩運動的,那麼在影象空間(除了突然運動)也是如此。我們將在下面討論線性運動模型和非線性運動模型。

3.2.1、線性運動模型

線性運動模型是目前最主流的模型【32】【97~98】,並且通常在模型中假設目標勻速運動【32】,基於這個假設,有三種不同的方法構建模型:

  • 通過使後繼幀中的目標速度變化得平穩一些來達到速度平整性(smoothness)。在【45】中由損失函式(5)實現,其中是對N幀M個trajectories或目標進行求和:

  • 位置平整性直接影響觀測位置和預測位置的差異。舉【31】為例,△t是tracklet頭尾間的間隔,那麼其平整性就通過將預測位置代入以觀測位置為中心的高斯分佈中達到。在估計階段,前向運動和後向運動都需要考慮,因此線性運動模型的相似度就有式(6),其中"F"和"B"分別表示前向(forward)和後向(backward),同時,觀測位置和預測位置之間的偏移量△p符合以0位中心的高斯分佈。其他關於此類建模方法的例子還有【1】【7】【58~60】【99】。
  • 第三種方法是加速度平整性【99】。在k時刻觀測目標的tracklet的運動狀態的概率分佈有式(7),其中是速度,是加速度,N是均值為0的高斯分佈。

3.2.2、非線性運動模型

雖然線性運動模型比較常用,但由於存在它解決不了的問題,非線性運動模型隨之誕生。它可以使tracklets間運動相似度計算得更加準確,例如【47】就使用非線性運動模型處理目標自由移動的問題。如圖4a,給定屬於同一目標的tracklet T1,T2,線性運動模型【59】將它們連線的概率很低。但如果利用非線性運動模型,T1的尾巴和T2和頭部之間的間隔可以用T0∈S模擬解釋,其中S是support tracklets的集合。如圖4b,T0匹配T1尾巴和T2頭部,那麼T1和T2之間就可以用T0聯通,同時,它們的相似度可以由上一節計算得到。

3.3、互動模型(Interaction Model)

互動模型也稱為相互運動模型,它捕捉目標對其他目標的影響。在擁擠場景中,目標會從其他的目標和物體中感受到“力”。例如,當一個行人在街上行走時,他會調整他的速度、方向和目的地,以避免與其他人碰撞。另一個例子是當一群人穿過街道時,他們每個人都跟著別人,同時引導其他人。事實上,這是兩個典型互動模型的例子,這些模型被稱為社會力模型【100】和人群運動模式模型【101】。

3.3.1、社會力模型(Social Force Models)

社會力模型也被稱為群體模型。在這些模型中,每個目標都被認為依賴於其他目標和環境因素,這種資訊可以緩解擁擠場景中跟蹤效能的下降。在社會力模型中,目標會根據其他物體和環境的觀察來確定它們自己的速度、加速度和目的地。更具體地說,在社會力模型中,目標行為可以由兩方面建模而成:基於個體力和群體力。

Individual force:對於一組目標中的每個個體都有兩種力需要考慮

  • 保真度(fidelity),表示某個體不會改變他原定目的地。
  • 穩定性(constancy),表示某個體不會突然改變他的動量,包括速度和方向
Group force:對於整個組需要考慮三種力:
  • 吸引力(attraction),表示組內個體間距離較近
  • 排斥力(repulsion),表示組內個體間保持一定距離
  • 一致性(coherence),表示組內個體有相似的速度

3.3.2、人群運動模式模型(Crowd Motion Pattern Models)

受到人群模擬技術【23】的啟發,其運動模式也被用於進行人群中的目標跟蹤。通常這類模型適用於目標密度非常高的超密集場景,這時目標都比較小,那些外觀、個人運動模式線索就會受到極大干擾,所以人群運動模式就相對比較適合。

該類模式又分結構化模式和非結構化模式,結構化模式主要得到集體的空間結構而非結構化模式主要得到不同個體運動的模式(modalities)。通常來說,運動模式由不同方法學習得到例如ND tensor voting【74】,Hidden Markov Models【36】【104】,Correlated Topic Model【76】,甚至考慮場景結構【69】,然後運動模式可作為先驗知識輔助目標跟蹤。

3.4、排斥模型(Exclusion Model)

排斥是在尋找解決MOT的方法時,為了避免物理碰撞規定的約束,這種約束在現實中也是成立的比如兩個不同的目標不能同時出現在同一個物理位置中。對於給定的多個檢測響應(responses)和多個trajectory假設,通常存在兩個約束,第一個是檢測層面的排斥(detection-level exclusion)【105】,例如在同一幀中兩個不同的檢測響應不能被分配給同一個目標,第二個是軌跡層面的排斥(trajectory-level exclusion),例如兩條軌跡不能無限逼近彼此。

3.4.1、檢測層面的排斥模型

"soft" modeling:通過最小化損失函式去懲罰違反約束的例子稱為軟建模:有這樣一種特殊排斥圖,給定所有的檢測響應,這些檢測響應就代表圖中的結點,每個結點只和同時存在的另一些結點相連,在圖構建完成後,通過排斥約束,鼓勵連線結點像Tr(YLY)一樣擁有不同標記值,使分配的標記值最大化。其中L代表拉普拉斯(Laplacian)矩陣,表示所有|V|個結點分配的標記值,Tr(·)表示矩陣中的軌跡範數(trace norm)。

"hard" modeling:通過在檢測層面新增補充額外的約束來硬建模。...

3.4.2、軌跡層面的排斥模型

通常來說如果兩靠的較近的檢測假設擁有不同的軌跡,那麼將受到軌跡層面排斥模型的懲罰。...

3.5、遮擋處理

遮擋是MOT最難處理的問題之一,這也是ID交換(ID switches)和軌跡分段的主要原因。

3.5.1、部分到整體(Part-to-whole)

該策略是建立在目標的一部分仍可見的假設上的,也確實在大部分情況發生。一種比較流行的方法是將全域性目標(類似一個跟蹤框,bounding box)分割成幾個部分,然後對每個部分計算相似度,具體來說就是當發生遮擋時,被遮擋的那些部分的相似度權重降低,而提高沒被遮擋部分的相似性權重。至於如何進行分割,有將目標均勻地切分成一個個格子的【52】,也有以某種形態例如人來切分目標的,比如在【49】中分成了15個不重疊的部分,還有在【77】【111】中由DPM檢測器【110】得到的部分。

重構誤差用於判斷某個部分是否被遮擋。外觀模型只根據可見部分進行更新是"hard"的方法,也存在"soft“方法在【49】中。兩tracklets j和k之間的相似度可由下式計算得到,其中f是特徵,i是部分的下標,權重由部分間的遮擋關係學習得到。在【77】中,通過人身體部分的連線可以得到部分的軌跡,進一步得到整個人的軌跡。

"Part-to-whole"策略也可以應用在基於點聚類特徵的跟蹤中,其中點聚類特徵認為具有相似運動的特徵點都屬於相同目標,只要一個目標的一些部分仍然可見,那麼這個方法就是可行的【62】【68】【112】。

3.5.2、假設與測試(Hypothesize-and-test)

該策略不直接處理這檔問題,而是根據已有的觀測目標,先進行假設,然後測試假設是否成立來解決問題。

Hypothesize:【38】基於距離和尺度都相近的觀測目標對,來生成遮擋假設,假設遮擋,對應的遮擋假設就是,其中分別是的位置和時間戳,分別是的大小和外觀特徵。這個方法將遮擋視為干擾,而在其他研究【113】【114】中,遮擋模式被用來輔助檢測,更具體來說,不同的檢測假設由融合了兩種不同程度和模式的遮擋的目標綜合結合而成,如圖5.

Test:在【38】中,假設觀測和原觀測一起作為損耗流框架的輸入,然後使用MAP來得到最優解。在【114】和【113】中,多行人檢測器是在檢測假設上進行訓練的,這樣就大大降低了檢測碰撞的難度。

3.5.3、緩衝與恢復(Buffer-and-recover)

該策略在發生遮擋前記錄目標狀態並且將發生遮擋時的觀測目標存入緩衝區中,當遮擋結束後,目標狀態基於緩衝區的觀測目標和之前記錄的狀態恢復出來。當發生遮擋時,【71】保持最多15幀的trajectory,然後推斷髮生遮擋時潛在的軌跡。當目標重新出現時,重新進行跟蹤並且ID也維持不變,在【34】中使用到這種方法。當跟蹤狀態因為遮擋而產生歧義時觀測模式就會啟動【115】,只要有足夠的觀測目標,就會產生假設來解釋觀測目標。以上就是"buffer-and-recover"策略。

3.5.4、其他

除了上述方法外,還有一些其他方法例如,【116】將目標作為在影象空間中的高斯分佈,然後顯式地對所有目標對的遮擋率,以部分能量差函式的形式建模;還有將多種方法結合起來進行遮擋處理。

3.6、預測(Inference)

3.6.1、概率預測(Probabilistic Inference)

概率預測方法通常將目標狀態作為不確定的分佈,而跟蹤演算法的目的是基於現有的觀測目標,用多種概率學方法去估計那個概率分佈。這類演算法通常只需要過去或現在的觀測目標,所以它也特別適合online跟蹤。因為只有現存的觀測目標才被用於估計,所以可以很自然地在目標狀態序列中使用Markov特性假設,該假設包括兩方面,讓我們回顧2.1節的公式。

第一,當前目標狀態只依賴於之前的狀態,其次,當使用一階(first-order)Markov特性時則只依賴於最後一個狀態,即

第二,觀測目標只和它的狀態有關,也就是說,它是條件獨立的,即

這兩方面各自和動態模型和觀測模型有關,前者與跟蹤策略相關,後者則提供有關目標狀態的觀測測量。預測(predict)一步是根據之前的觀測來估計當前的狀態,具體來說,當前狀態的後驗概率分佈,是通過以動態模型來整合上一目標狀態空間,從而估計得到的。更新(update)一步是根據觀測模型得到的測量來更新狀態的後驗概率分佈。

根據這些等式,目標狀態可以通過迭代計算predict和update兩步來得到,然而實際上,目標狀態分佈不能不先簡化假設,因此沒有能計算得到完整狀態分佈的解法。另外,對於多目標而言,狀態集的維數是非常大的,導致整合步驟更加困難,因此需要有對應的降維方法。

多種多樣的概率預測模型被用於多目標跟蹤中【36】【95】【117~118】,例如卡爾曼濾波【35】【37】,擴充套件卡爾曼濾波【34】以及粒子濾波【32~33】【52】【93】【119~122】。

卡爾曼濾波(kalman filter):適用於線性系統和服從高斯分佈的目標狀態。

擴充套件(Extended)卡爾曼濾波:通過泰勒展開(Taylor expansion)估計,進一步適用於非線性系統。

粒子濾波(Particle filter):基於蒙特卡洛取樣(Monte Carlo sampling)的模型在粒子濾波演算法問世後風靡一時【10】【32~33】【52】【93】【119~121】。該方法用一組有權重的粒子來對分佈建模,從而通過改變自己的分佈可以得到任意的假設【32~33】【36】【93】。

3.6.2、確定性優化(Deterministic Optimization)

相對於概率預測,確定性優化旨在是找到MOT最大的後驗解決(maximum a posteriori, MAP)辦法。這種方法更適合offline跟蹤,因為需要提前獲得所有幀的觀測目標,然後全域性性地將屬於同一目標的觀測目標串聯成一條軌跡,關鍵問題在於怎樣找到最優的連線。

Bipartite graph matching:通過將MOT問題建模成偶圖匹配,兩個不相交的結點集在online跟蹤中可以存在trajectories和新的檢測目標,或者在offline跟蹤中存在兩個tracklets集,結點間的權重則代表trajectories和檢測目標間的相似度,然後要麼使用貪心偶匹配演算法【32】【111】【123】,要麼使用匈牙利(Hungarian)優化演算法【31】【39】【58】【66】【124】,來決定兩結點集如何進行匹配。

Dynamic Programming:擴充套件動態規劃【125】,線性規劃【126~128】,二次布林規劃(quadratic boolean programming)【129】,最短K路徑(K-shortest paths)【18】【42】,集合覆蓋(set cover)【130】和subgraph multicut【131】【132】,都是被用於解決檢測目標和tracklets之間關聯問題的方法。

Min-cost max-flow network flow:網路流是一個帶有權重邊的有向圖。對於MOT,圖中結點是檢測響應或tracklets,流是連線兩個結點的指示器,為了滿足流平衡的需求,需要增加源(source)節點和匯聚(sink)節點,如圖6。一個trajectory對應一個流邊,從源節點轉移到匯聚節點的總流數等於trajectories的數目,轉移損耗是所有連線的假設的負對數似然(negative log-likelihood),注意,全域性最優解可以在多項式時間內得到,例如使用push-relabel演算法。這類方法在【18】【38】【41】【43】【90】【133】都被使用到。

Conditional random field:在【1】【59】【105】【134】中都有使用到這種方法。定義一個圖G=(V,E),其中V是結點集,E是邊集,低層(low-level) tracklets作為圖的輸入,每個結點表示觀測目標【105】或者tracklets對【59】,每個label通過預測得到,然後用來推斷都是觀測目標屬於哪些track跟蹤目標或者來連線哪些tracklets。

MWIS(maximum-weight independent set):它是屬性圖中非相鄰節點的權重最大的子集。而在上述CRF模型中,屬性圖中的結點代表後繼幀的tracklets對,結點的權重表示tracklet對間的相似度,而且tracklets對擁有相同方向的話,那麼它們的邊是聯通的。在【46】【97】中資料關聯是用MWIS建模的。

3.6.3、討論

實際中,確定性優化或能量最小化比概率預測更常用,儘管概率預測提供更直接、完整的解決方法,但它們往往是難以推測的,而相反,能量最小化則能夠在一定時間內得到“足夠好”的解決辦法。

4、MOT測評

對於給定的MOT方法,需要根據評分指標和資料集定量地評估其效能。這尤關重要,一方面,必須測量不同組成成分和引數對整體效能的影響,才能設計出最佳的系統。另一方面,可以與其他方法直接比較。而效能評估往往並不簡單,我們將在本節中看到。

4.1、指標(Metrics)

MOT方法的評價指標是至關重要的,因為它們為公平定量的比較提供了途徑。本節簡要介紹不同的MOT評估指標,由於許多方法不採用跟蹤檢測策略,它們通常測量檢測效能以及跟蹤效能,因此,在MOT方法中採用了目標檢測的度量標準。基於此,MOT指標大致可以分為兩組,分別用於評估檢測和跟蹤,如表7所示。

4.1.1、檢測指標

準確度(Accuracy):常用召回率和精度指標以及每幀平均誤報率(False Alarms per Frame, FAF)作為MOT指標[1]。[63]使用False Positive Per Image(FPPI)評價檢測效能。多目標檢測的準確性(Multiple Object Detection Accuracy, MODA),一個全面的評估標準,將誤檢和漏檢的相對數納入考慮範圍,由[135]提出。精度(Precision):多目標檢測精度(Multiple Object Detection Precision, MODP)測量的是檢測目標和ground truths之間的誤差[135]。

4.1.2、跟蹤指標

準確度(Accuracy):它度量演算法跟蹤目標的準確程度。ID Switches[80]則統計MOT演算法在目標之間切換的次數。多目標跟蹤的準確性(MOTA)【136】將false positive率、false negative率和錯配(mismatch)率結合成一個單獨的數,對整體的跟蹤性給出一個比較合理評估。儘管仍有一些弊端,但這是目前最普及的MOT評估方法。精度(Precision):三個指標,多目標跟蹤精度(MOTP),跟蹤距離誤差(TDE)[36]和OSPA[137]。它們描述了通過bounding box重疊和/或距離來測量目標跟蹤的精確程度。具體而言,在[137]中還考慮了基數(cardinality)錯誤。完整性(Completeness):完整性度量指的是ground truth trajectories被跟蹤的完整度。大多數跟蹤(Mostly Tracked, MT)、部分跟蹤(Partly Tracked, PT)、大部分丟失(Mostly Lost, ML)和分段(Fragmentation, FM)[40]的數量屬於這一組。魯棒性(Robustness):通過從遮擋中恢復出來的能力來評估MOT演算法的度量標準,包括在[51]中的從短期遮擋恢復(Recopver from Short-term occlusion, RS)和長期遮擋恢復(RL)。

4.2、資料集

表8給出了當下最經常被使用的一些資料集。這些資料集在MOT中至關重要,但是仍然存在一些問題:第一,資料集的規模相對於SOT來說較小;第二,由於近幾年行人檢測技術取得進展,所以大部分資料集集中在行人上,然而最近關於多類目標的檢測也有一定成果,因此可以考慮多將資料庫放在多類目標的檢測與跟蹤上。

4.3、公開演算法

4.4、基準結果(Benchmark Results)

(原文)由於篇幅問題,只展示了最常用的資料集PETS2009-S2L1序列的跟蹤結果,如表10。需要注意的是,表中的資料可能不會特別直觀,原因如下:

  • 不同的方法,基於online和offline兩種不同的框架,很難去度量它們之間的好壞,因為offline的方法需要更多的資訊。
  • 不同檢測假設,同一種方法可能由於採用不同的檢測方法而得到不同的結果。
  • 視角問題,有些方法可能需要多視角資訊而有些則只用單視角。
  • 先驗知識,例如場景結構和行人數目等,一些方法需要提前得到。
嚴格來說要想得到真正客觀公平直觀的測評結果,是需要非常細緻的控制變數的,例如要想測試某兩個資料關聯方法好不好使,需要保證兩組方法的其他部分一致才比較準確。儘管如此,我們還是能通過這個表得到許多有用的資訊的:能通過直觀的比較能得到大致比對結果,為以後的研究工作做鋪墊,並且瞭解了MOT的發展程序。 表11是offline方法和online方法的比較,圖7圖8是從09年到15年各指標浮動曲線。

5、總結

本文描述了視訊中多目標跟蹤(MOT)任務的相關方法和問題,也是過去十年裡的第一個全面的綜述文獻,提出了一個統一問題公式和一些現有方法的分類方式,介紹了star-of-the-art MOT演算法的關鍵因素,並討論了MOT演算法的測評包括評價指標、公開資料集,開原始碼的實現,和基準測試結果。雖然在過去幾十年中已經取得了很大進展,但在當前的MOT研究中仍然存在一些問題有待研究。

5.1、存在的問題

我們已經討論了資料集的現存問題(4.2節)和公開演算法(第4.3節)。除開這些,還有一些其他問題:

MOT研究中的一個主要問題是,MOT方法的效能在很大程度上取決於目標檢測器。例如,被廣泛使用的tracking-by-detection模式就是建立在一個目標檢測器上的,它提供檢測假設來驅動跟蹤過程。在固定其他部分時,給定不同的檢測假設集,相同的方法將產生具有顯著效能差異的跟蹤結果。有時某方法中的檢測模組沒有任何描述,這就給對比其他方法提高了難度。KITTI和MOTChallenge就在嘗試解決這個問題,也正往一個更有原則、更統一的目標檢測和跟蹤靠攏(參見mot17)。

另一個令人討厭的問題是,在提出MOT解決方法時,一個演算法越複雜,就有越多的引數,這就使調參非常困難。同時,其他人也很難實現這種方法並且重現結果。

某些方法在特定視訊序列中表現良好,然而當在應用於其他視訊下時,它們可能不會產生令人滿意的結果,這可能是因為該方法所使用的目標檢測器是在特定的視訊中被訓練的,因此不能很好地泛化使用在其他視訊序列中。

所有這些問題都限制了MOT研究的進一步發展及其在實際系統中的應用。最近,人們嘗試著解決這些問題,例如,MOT Benchmark[160]提供了大量的有註釋的測試視訊序列、統一的檢測假設、標準評估工具等,這有助於推進MOT技術的進一步研究和發展。

5.2、未來的方向

即使已經研究了幾十年的MOT問題,它仍然存在著許多發展的機會。在這裡,我們想指出一些更普遍的問題,並提供可能的研究方向。

MOT with video adaptation:視訊自適應當前大多數MOT方法需要離線訓練的目標檢測器,然而這就有一個問題:對於特定視訊的檢測結果可能不適用於給定的視訊,這常常限制了多目標跟蹤的效能。所以需要重新定製目標檢測器來提高效能,[166]通過逐步細化通用行人檢測器,使通用行人檢測器適應特定的視訊。這也是改進MOT方法預處理階段的一個重要方向。

MOT under multiple cameras多攝像機[167]。多攝像頭的配置有兩類:第一個是多攝像頭記錄同一個場景,即多視角。然而,這個設定的關鍵問題是如何融合來自多個攝像機的資訊。第二個是每個攝像機記錄一個不同的場景,即一個不重疊的多攝像機網路。在這時,多攝像頭間的資料關聯就成為了一個再識別(reidentification)問題。

Multiple 3D object tracking三維多目標跟蹤,當前大多數方法都集中在2D下的多目標跟蹤,即在影象平面上,包括多攝像頭的情況。3D跟蹤[168],可以提供更準確的位置,大小估計和高層計算機視覺對於遮擋的有效處理。然而,3D跟蹤需要相機校準,或為了攝像頭姿態估計和場景佈局而需要克服其他困難。同時,三維模型設計是另一個需要考慮的問題。

MOT with scene understanding:場景理解,[35],[169],[170]分析了擁擠場景下,例如在高峰時期的地鐵車站和公共場所的遊行示威。在這種情況下,大多數目標是小的和/或被大面積遮擋的,因此很難進行跟蹤。場景理解的分析結果可以提供上下文資訊和場景結構,如果將其更好地融入到MOT演算法中,將有助於跟蹤問題的解決。

MOT with deep learning深度學習,深度學習模型已成為處理各種視覺問題的非常強大的框架,包括影象分類[171],目標檢測[163] [164] [165],單目標跟蹤[ 161 ]。對於MOT問題,深度學習模型提供的強大的目標檢測模型可以顯著提高跟蹤效能[172],[173]。儘管最近已經開始嘗試使用連續神經網路進行線上MOT,但關於使用深度神經網路來進行目標關聯問題的formulation和建模仍需要投入更多的研究。

MOT with other computer vision tasks:其他計算機視覺任務,雖然多目標跟蹤是服務於其他高層次的計算機視覺任務,但也存在這樣的趨勢:將一些彼此能優勢互補的計算機視覺任務結合起來以解決MOT問題。可能的組合包括目標分割[ 174 ],行人再識別[ 175 ],行人姿態估計[ 17 ]和動作識別[ 18 ]。

除了以上的未來方向外,由於目前的MOT的研究主要集中在監控場景中跟蹤多個行人,所以關於其他型別的擴充套件也是不錯的研究方向,例如目標可以是汽車、動物等,場景可以是交通場景,航拍等。因為在不同情況下的不同型別的目標跟蹤問題的設定和難度有可能是完全不同的。

參考文獻