張維維 劉大銘* 高 向
(1、寧夏大學 寧夏 銀川750021 2、中國長江三峽集團有限公司,北京100038)
現在的行為識別大多以卷積神經網絡為基礎網絡,但是卷積神經網絡在行為識別有兩個問題。第一,卷積神經網絡只能提取短時時序信息,對于長時時序信息,卷積神經網絡無法提取。但視頻的長時時序信息很大程度上影響了行為識別的準確率。許多研究者對此作了改進,例如文獻[1,2,3]中,在待識別視頻中固定一段間隔,然后通過稠密采樣來提取長時時序信息。這種方法雖然可行,但是如果視頻長度較長,該方法會需要大量的計算故該方法很難被推廣應用。第二,基于視頻的行為識別算是新興的研究方向,用于行為識別的公開數據集數量不多,種類也有限。這種狀況一方面是由于視頻的收集困難,另一方面也由于視頻標注方面的問題。但是用于視頻行為識別的卷積神經網絡必須基于大量的數據訓練才能優化網絡,數據集的缺少不僅會影響識別網絡的訓練,而且可能會給網絡帶來過擬合[4]的問題。所以,研究人員采用分割稀疏采樣原理得出了時間分割網絡。
時間分割網絡:
研究人員提出了分割稀疏采樣的思路,采樣原理如圖1。首先把視頻等分為K 個片段,在每個短片段采樣一段視頻用于輸入,即為分割稀疏采樣。

圖1 分割稀疏采樣原理
如圖2 所示,針對每個短片段,TSN 采用雙流CNN 中的時間流CNN 捕捉視頻時序結構信息和空間流CNN 捕捉圖像外觀信息,為每個短片段先分別生成一個只針對短片段的時間流CNN 和空間流CNN 預測,然后采用一個聚合函數分別對各個短片段的時間流CNN 和空間流CNN 預測進行聚合,最后將時間流和空間流的聚合結果的加權輸出作為整個視頻的預測結果。

圖2 時間分割網絡結構
具體來說,對于待輸入的視頻V,首先要將其等分為K 個片段{S1,S2,…,SK},然后在每個片段SK中隨機選取一個短片段TK,則K 個部分的所有短片段組成{T1,T2,…,Tk}作為行為識別網絡的輸入,如公式1 所示。

其中,F(TK,W)為卷積網絡函數,卷積網絡的參數為W,作用于短片段TK上,得到該片段的預測結果。G 為聚合函數,聚合各個短片段的預測結果。H 為預測函數,可以得到預測結果屬于每個行為分類的概率。
公式2、公式3 是整個網絡的聚合函數和損失函數。

其中,c 表示人體行為類別的個數,yi表示類別i 的真實分類,gi表示聚合函數G 的第j 個值。
訓練時間分割網絡時,損失函數L 關于參數W 的梯度可以表示為,

從式4 能夠得到,如果我們采用隨機梯度下降法(SGD)[5]來訓練參數模型W,那么聚合函數G 就是對每個短片段的預測分別求導,很大程度減少了計算成本。

圖3 多尺度滑動窗口示意圖
多時間尺度特征提取的原理如圖3 所示。
和經過處理的視頻一樣,若視頻長度為M秒,采樣M個視頻片段{T1,T2,…,TM},將每個片段TM作用于時間分割網絡,就可以得到每個行為類別的預測結果F(TM)。選擇滑動窗口的長度為l(l∈{1,2,4,8,16}),針對M 個預測結果,長度為l 的滑動窗口以0.5 步長滑過。若滑動窗口在第s 秒開始作用,則其包含的時間片段為{Ts+1,Ts+2,…,Ts+l},其預測結果分別為{F(Ts+1),F(Ts+2),…,F(Ts+l)}。所以,該時間窗口的預測結果Ws,l如公式5所示。

經過上述方法,我們得到Nl個滑動窗口,每個窗口的大小均為l,Nl的計算方式如公式6 所示,再用Top-K 池化來作用于這Nl個滑動窗口的預測結果,得到最后的聚合值Gl作為大小為l 的滑動窗口的最終預測結果。其中,K 的取值如公式7。

如上所述,整個視頻的最終預測結果由不同長度滑動窗口的預測結果取平均值得到,本論文滑動窗口的大小為l∈{1,2,4,8,16},最終的結果P 如下式所示

網絡訓練完成后,本文采取3 個數據組的識別率平均值作為整個的識別效果。在本文中,準確率(accuracy)如公9 所示,

我們在待識別的視頻中隨機采取視頻短片段,將其時空特征融合后得到輸入整個識別網絡,這樣得到的就是以不同的采樣間隔得到的時空特征,實驗結果如表1 所示。

表1 基礎雙流卷積神經網絡和多時間尺度的雙流卷及網絡的識別準確率
由表1 可得,與基礎的雙流卷積神經網絡相比,基于多時間尺度的雙流卷積神經網絡不論在UCF101 還是HMDB51 數據集都取得了不錯的效果,在兩個數據集上的識別率都有提升。
如表2 和3 所示,將本文的基于多時間尺度的雙流卷積神經網絡和其他各種行為識別做識別率的比較,數據集還是采用UCF101 和HMDB51 數據集。

表2 不同視頻行為識別方法在UCF101 數據集上的識別準確率
Karpathy 采用Slow Fusion 的方法提高卷積神經網絡對于長時時序的提取能力,以便更充分地利用網絡的時間信息,提高網絡的識別效率。在Slow Fusion[6]中,作者還第一次提出采用不同分辨率的識別框架去提高識別率,其中低分辨率的特征采用context stream 來提取,高分辨率的特征用fovea stream 來學習。由表2 可知,該網絡實現了65.4%的識別效率。
而本文提出的基于多時間尺度的雙流卷積神經網絡不僅充分利用了視頻內容的時間、空間信息,還運用不同尺度的滑動窗口作用于提取到的預測結果,有利于未經處理視頻的識別效率,使得整體的識別效率達到了96.95%。

表3 不同行為識別方法在HMDB51 數據集上的識別準確率
Simonyan 采用了雙流卷積神經網絡的識別框架,利用空間流卷積網絡提取視頻內容的空間特征,利用時間流卷積網絡訓練視頻內容的時間特征,所不同的是,他在兩個流最后一層都訓練softmax 層,得到兩個訓練好的softmax 層后再融合識別,該方法在做平均或者支持向量機訓練分別得到了58.0%和59.4%的識別率。
而本文中使用的基于多時間尺度的雙流卷積神經網絡因為多尺度滑動窗口的作用,整個識別網絡能更好的提取不同時間尺度下的信息,有效提高視頻識別的準確率,本文的基于多時間尺度的雙流卷積神經網絡模型在HMDB51 數據集上得到了74.6%的識別率。
為了解決基礎的雙流卷積神經網絡對于長時時序信息的提取能力不足的問題,本文首先引入了時間分割網絡,該網絡采用分割稀疏采樣原理,解決了雙流卷積網絡只能覆蓋較小視頻內容的問題。然后基于時間分割網絡又提出了多時間尺度的特征提取原理,著重對有效視頻幀占比小、視頻未經處理等的問題有顯著效果。本文對比分析了原始的雙流卷積網絡和本文提出的基于多時間尺度的雙流卷積神經網絡的識別效果,然后分別在UCF101 和HMDB51 數據集上比較分析了本文的識別網絡和其他識別網絡的識別率。綜上,本文的基于多時間尺度的雙流卷積神經網絡能夠有效提取不同時間尺度下的時空信息,能夠有效識別大多數的行為種類,大大提升了視頻的識別率。