在物體檢測與識別領域,香港中文大學-商湯科技聯合實驗室在CVPR 2018發表論文,提出基于尺度-時間網格的視頻中物體檢測算法,解決如何優化和平衡視頻物體檢測中精度和速度的難題。本文為商湯科技CVPR 2018論文解讀第6期。
簡介
本文主要研究如何更好地優化和平衡視頻中物體檢測的準確率和檢測速度。物體檢測器為了達到高準確率,往往需要使用高性能的卷積神經網絡來提取圖像特征,導致檢測速度難以滿足實時性的需求。解決這個問題的關鍵在于尋求一種有效的方式,在準確率和檢測速度之間作出平衡。為了尋找一個良好的平衡點,之前的研究工作通常集中在如何優化網絡結構上。本文提出一種新的方法,基于尺度-時間網格(Scale-Time Lattice,簡記為ST-Lattice)來重新分配計算資源。
提出的方法在ImageNet VID 數據集上達到了 79.6 mAP(20fps)和 79.0 mAP(62 fps)的準確率和速度。本文的主要貢獻有:
提出了尺度-時間網格,其為算法提供了豐富的設計空間來對物體檢測性能進行優化;
基于尺度-時間網格,提出了新的視頻中物體檢測的框架,實現了優異準確率和快速檢測速度的平衡;
設計了一些新的技術模塊,包括高效的傳播模塊和動態的關鍵幀選取模塊。
基本思想
視頻中相鄰幀之間有著很強的連續性和信息冗余性,為了提高效率,應該充分利用這些性質來設計新的檢測框架。之前的方法已經對視頻中的物體檢測作了很多探索,通常包含若干個步驟,例如基于單幀的物體檢測,進行跨時間的傳播和空間上位置的修正等,如何用一種更高效的方式將這些獨立的步驟結合起來是一個值得研究的問題。
本文提出的基本思想是在一個計算網格中對計算資源進行更好的分配,將精確但速度較慢的靜態圖像物體檢測器應用于稀疏的關鍵幀上,然后利用一些簡單高效的網絡在時間和空間兩個維度上不斷地傳播和修正這些檢測結果,以達到更好的平衡。
尺度-時間網格
本文將尺度-時間網格表示成一個有向無環圖(如圖1所示)。圖中的每一個節點都表示某個圖像尺度和時間點的中間結果,即一系列檢測框。這些節點以類似網格的方式關聯起來:從左到右遵循時間順序,從上到下圖像尺度(分辨率)逐漸提高。圖中的一條邊代表一個特定的操作,以一個節點的結果作為輸入,輸出另一個節點的檢測結果。我們在圖中定義兩種操作,時間傳播(temporal propagation)和空間修正(spatial refinement)。它們分別對應圖中橫向邊和縱向邊。時間傳播是在同一圖像尺度下,在相鄰的幀之間進行檢測框的傳播。而空間修正是在同一幀下,對檢測框的位置進行修正,獲得更高圖像尺度下的檢測框結果。在尺度-時間網格中,檢測結果會通過上述操作從一個節點傳播到另一個節點,最終到達最底端的所有節點,也即在最大的圖像尺度上每幀的檢測結果。
圖1:
尺度-時間網格示意圖
基于尺度-時間網格,本文的視頻物體檢測算法被分為以下3 個步驟:
在稀疏的關鍵幀上(用基于靜態圖像的物體檢測器)進行檢測,得到稀疏節點上的結果;
規劃一條從上述稀疏的節點到稠密的節點的路徑;
基于上述路徑將關鍵幀上的檢測結果傳播到中間幀,并進行位置修正。
尺度-時間網格的框架為算法提供了豐富的設計空間來平衡優化視頻中物體檢測精度和速度。檢測所需要的總時間是路徑中所有邊的時間之和,包括單幀物體檢測器的時間以及傳播和修正所用的時間。可以通過對不同的邊上分配不同的計算時間,來達到性能與時間上的期望平衡點。
圖2:
尺度-時間網格中的時間傳播網絡(T)
和空間修正網絡(S)
不同模塊的實現
傳播和修正單元(Propagation and Refinement Unit,PRU)
傳播和修正單元(如圖2所示)以相鄰兩個關鍵幀的結果作為輸入,使用時間傳播網絡將結果傳播到中間幀上,然后使用空間修正網絡將結果進行空間位置上的修正。時間傳播網絡主要用于考慮視頻中的運動信息,來預測兩幀之間較大的位移。而空間修正模塊則通過回歸檢測框位置的偏差,來修正檢測框本來的誤差和傳播帶來的誤差。這兩種操作不斷迭代進行來獲得最終的檢測結果。
在時間傳播網絡中,算法使用兩幀之間的運動歷史圖像(Motion History Image,MHI)來表示運動信息,將其輸入到網絡中,回歸物體在這段時間內的位移。相對于光流等常用的運動表示,MHI 的計算速度非常快,使得空間傳播網絡能夠保持較高的效率。
在空間修正網絡中,算法采用與Fast R-CNN 相同的結構,以當前幀的 RGB 圖像作為輸入,來回歸檢測框的偏差。這兩個小網絡在訓練時通過一個多任務的損失函數同時進行優化。
關鍵幀選取
關鍵幀的選取對最終的檢測速度和準確率有著重要的影響。最簡單直接的方法就是在時間軸上均勻地選取關鍵幀,之前的絕大多數方法也都采取了該策略。但本文考慮到幀與幀之間的信息冗余度不同,并不是每一幀都有同等重要的地位,所以需要一種非均勻的采樣策略,在物體運動較快、傳播難度大的時間段內多選取關鍵幀,反之則少選取關鍵幀。
具體過程如下:首先在均勻選取的非常稀疏的幀(例如每隔24幀)上進行單幀的物體檢測,然后根據檢測結果來衡量相鄰兩個關鍵幀之間傳播的難易程度,如果難易程度低于某個閾值,則在這兩幀之間插入一個額外的關鍵幀。計算難易程度時本文考慮了兩個因素,即框的大小以及物體運動快慢,具體公式參見原文。
時間管道重打分(Tube Rescoring)
由于時間上的檢測框傳播,獲得的檢測結果并不是獨立的逐幀結果,而是自然串聯成一個個的物體時間管道(Object Tube)的,那么可以對這些物體時間管道來進行重新分類。本文訓練了一個 R-CNN 作為分類器,對于每個物體時間管道,均勻選取其中 K 幀作為輸入,以它們的平均值作為新的分類結果,根據新的分類結果來調整物體時間管道中每個框的分數。
實驗結果
圖3展示了本文基于尺度-時間網格算法的檢測速度(fps)和準確率(mAP)的曲線,并和之前的方法進行比較。可以看到本文方法優于 baseline 和之前性能先進的方法。
圖3:
不同視頻中物體檢測算法
檢測速度和精度的比較
結論
針對視頻中的物體檢測,本文提出了尺度-時間網格這個靈活的框架,其提供了豐富的設計空間來解決如何平衡準確率和檢測速度的挑戰。該方法將單幀檢測、時間傳播、多尺度空間處理結合起來解決這個問題。實驗結果展示了基于該框架的多種設計和配置,能夠達到與當前先進性能方法近似的準確率,但檢測速度則獲得了大幅提高。該框架不僅可以用于物體檢測,也可以應用在其他視頻相關的任務,如物體分割、物體跟蹤等。
-
檢測器
+關注
關注
1文章
869瀏覽量
47787 -
視頻
+關注
關注
6文章
1956瀏覽量
73142 -
網格
+關注
關注
0文章
139瀏覽量
16062
原文標題:CVPR 2018 | 商湯科技論文詳解:基于尺度-時間網格的視頻中物體檢測算法
文章出處:【微信號:SenseTime2017,微信公眾號:商湯科技SenseTime】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論