1. 程式人生 > >基於深度學習的視訊檢測(一)

基於深度學習的視訊檢測(一)

一、簡介

影象目標檢測任務在過去幾年深度學習的發展背景下取得了巨大的進展,檢測效能得到明顯提升。但在視訊監控、車輛輔助駕駛等領域,基於視訊的目標檢測有著更為廣泛的需求。由於視訊中存在運動模糊,遮擋,形態變化多樣性,光照變化多樣性等問題,僅利用影象目標檢測技術檢測視訊中的目標並不能得到很好的檢測結果。如何利用視訊中目標時序資訊和上下文等資訊成為提升視訊目標檢測效能的關鍵。

對於視訊目標檢測來說,一個好的檢測器不僅要保證在每幀影象上檢測準確,還要保證檢測結果具有一致性/連續性(即對於一個特定目標,優秀的檢測器應持續檢測此目標並且不會將其與其他目標混淆,稱之為視訊目標檢測時序一致性)。

視訊目標檢測演算法目前主要使用瞭如下的框架:

  • 將視訊幀視為獨立的影象,利用影象目標檢測演算法獲取檢測結果;
  • 利用視訊的時序資訊和上下文資訊對檢測結果進行修正;
  • 基於高質量檢測視窗的跟蹤軌跡對檢測結果進一步進行修正。

二、單幀影象目標檢測

此階段通常將視訊拆分成相互獨立的視訊幀來處理,通過選取優秀的影象目標檢測框架以及各種提高影象檢測精度的技巧來獲取較為魯棒的單幀檢測結果。

1. 訓練資料選取

需要注意,同一個視訊片段背景單一,相鄰多幀的影象差異較小。所以要訓練現有目標檢測模型,訓練集可能存在大量資料冗餘,並且資料多樣性較差,有必要對其進行擴充。

2. 網路結構選取

不同的網路結構對於檢測效能也有很大影響。同樣的訓練資料,基於 ResNet101 的 Faster R-CNN 模型的檢測精度比基於 VGG16 的 Faster R-CNN 模型的檢測精度高12%左右。今年比賽前幾名的隊伍基本上也是使用ResNet/Inception的基礎網路。

三、改進分類損失

目標在某些視訊幀上會存在運動模糊,解析度較低,遮擋等問題,即便是目前最好的影象目標檢演算法也不能很好地檢測目標。幸運的是,視訊中的時序資訊和上下文資訊能夠幫助我們處理這類問題。比較有代表性的方法有T-CNN中的運動指導傳播(Motion-guided Propagation, MGP)和多上下文抑制(Multi-context suppression, MCS)。

1. MGP

單幀檢測結果存在很多漏檢目標,而相鄰幀影象檢測結果中可能包含這些漏檢目標。所以我們可以藉助光流資訊將當前幀的檢測結果前向後向傳播,經過MGP處理可以提高目標的召回率。如圖1所示將T時刻的檢測視窗分別向前向後傳播,可以很好地填補T-1和T+1時刻的漏檢目標。

這裡寫圖片描述

2. MCS

使用影象檢測演算法將視訊幀當做獨立的影象來處理並沒有充分利用整個視訊的上下文資訊。雖然說視訊中可能出現任意類別的目標,但對於單個視訊片段,只會出現比較少的幾個類別,而且這幾個類別之間有共現關係(出現船隻的視訊段中可能會有鯨魚,但基本不可能出現斑馬)。所以,可以藉助整個視訊段上的檢測結果進行統計分析:對所有檢測視窗按得分排序,選出得分較高的類別,剩餘那些得分較低的類別很可能是誤檢,需對其得分進行壓制(如圖2)。經過MCS處理後的檢測結果中正確的類別靠前,錯誤的類別靠後,從而提升目標檢測的精度。

這裡寫圖片描述

四、利用跟蹤資訊修正

上文提到的MGP可以填補某些視訊幀上漏檢的目標,但對於多幀連續漏檢的目標不是很有效,而目標跟蹤可以很好地解決這個問題。

  • 使用影象目標檢測演算法獲取較好的檢測結果;
  • 從中選取檢測得分最高的目標作為跟蹤的起始錨點;
  • 基於選取的錨點向前向後在整個視訊片段上進行跟蹤,生成跟蹤軌跡;
  • 從剩餘目標中選擇得分最高的進行跟蹤,需要注意的是如果此視窗在之前的跟蹤軌跡中出現過,那麼直接跳過,選擇下一個目標進行跟蹤;
  • 演算法迭代執行,可以使用得分閾值作為終止條件。

得到的跟蹤軌跡既可以用來提高目標召回率,也可以作為長序列上下文資訊對結果進行修正。

五、網路選擇與訓練技巧

對於視訊目標檢測,除了要保證每幀影象的檢測精度,還應該保證長時間穩定地跟蹤每個目標。

評價指標:影象目標檢測mAP評測物件是每個檢測視窗是否精準,而視訊時序一致性評測物件是目標跟蹤軌跡是否精準;影象目標檢測中如果檢測視窗跟Ground Truth類別相同,視窗IoU大於0.5就認定為正例。而評價時序一致性時,如果檢測得到的跟蹤軌跡和Ground Truth(目標真實跟蹤軌跡)是同一個目標(trackId相同),並且其中檢測出的視窗與Ground Truth視窗的IoU大於0.5的數量超過一個比例,那麼認為得到的跟蹤軌跡是正例;跟蹤軌跡的得分是序列上所有視窗得分的平均值。分析可知,如果一個目標的軌跡被分成多段或者一個目標的跟蹤軌跡中混入其他的目標都會降低一致性。
那麼如何保證視訊檢測中目標的時序一致性呢?

  • 保證影象檢測階段每幀影象檢測的結果儘量精準;
  • 對高質量檢測視窗進行跟蹤並保證跟蹤的質量(儘量降低跟蹤中出現的漂移現象);
  • 前面兩步獲取到的跟蹤結果會存在重疊或者臨接的情況,需針對性地進行後處理。

ITLab-Inha團隊提出了基於變換點檢測的多目標跟蹤演算法,該演算法首先檢測出目標,然後對其進行跟蹤,並在跟蹤過程中對跟蹤軌跡點進行分析處理,可以較好地緩解跟蹤時的漂移現象,並能在軌跡異常時及時終止跟蹤。

針對視訊目標檢測的一致性問題,提出了基於檢測和跟蹤的目標管道生成方法。

這裡寫圖片描述
a.基於跟蹤的目標管道/跟蹤軌跡
這裡寫圖片描述
b.基於檢測的目標管道
這裡寫圖片描述
c.基於檢測和跟蹤的融合管道

a 表示使用跟蹤演算法獲取到的目標管道(紅色包圍框),綠色包圍框代表目標的Ground Truth。可以看到隨著時間推移,跟蹤視窗逐漸偏移目標,最後甚至可能丟失目標。MCG-ICT-CAS提出了基於檢測的目標管道生成方法,如 b 所示,基於檢測的管道視窗(紅色包圍框)定位較為準確,但由於目標的運動模糊使檢測器出現漏檢。從上面分析可知:跟蹤演算法生成的目標管道召回率較高,但定位不準;而基於檢測視窗生成的目標管道目標定位較為精準,但召回率相對前者較低。由於兩者存在互補性,所以MCG-ICT-CAS進一步提出了管道融合演算法,對檢測管道和跟蹤管道進行融合,融合重複出現的視窗並且拼接間斷的管道。