王澤偉,高丙朋
(新疆大學 電氣工程學院,新疆 烏魯木齊 830047)
異常行為識別與檢測在安防領域有著廣泛的應用前景,與其它種類的行為識別相比,異常行為識別研究更具有實際意義。視頻中的人類行為識別是近年來研究的熱點,在很多領域都有著重要的應用價值,如智能監控、視頻檢索、智能人機交互等[1,2]。視頻不僅具有外觀信息還具有運動信息,因此結合時空信息對異常行為識別將具有更高的識別率。
根據所使用特征的方法可以將其分為兩類:基于傳統方法和基于深度學習的方法。與傳統方法相比深度學習方法[3-5]識別準確率更高,魯棒性更強。Zeiler等[6]使用視頻幀RGB圖像作為數據進行訓練和測試,將卷積神經網絡與行為識別任務相結合,使用UCF101數據集進行行為識別測試,識別率為64%。Annane等[7]提出一種雙流卷積神經網絡結構,獲取幀與幀之間的運動信息,采用單幀RGB圖像與光流圖像共同作為訓練數據,最后通過softmax輸出結果,但是模型收斂速度較慢。
本文嘗試采用雙流卷積神經網絡模型解決視頻中異常行為分類問題,將時空CNN應用于細粒度異常行為識別任務中。提出了一種基于時空特征融合的方法,研究前期、中期、后期融合對識別率的影響以進一步提高異常行為識別的準確率。利用VGGNet16構建網絡模型,使用UCF101數據集進行網絡的預訓練,將模型遷移學習到CASIA數據集上進行測試并與現有方法進行比較。
卷積神經網絡是一種源于人工神經網絡的深度學習方法,有著預處理工作較少,避免人工設計和提取特征,有較好的自學習能力和很強的自適應性的特點。本文充分考慮時間流信息對識別率的影響,設計一種雙流卷積神經網絡結構,空間流卷積神經網絡和時間流卷積神經網絡的結構如圖1所示。

圖1 雙流卷積神經網絡結構
空間流CNN可以從靜止圖像中有效地學習紋理、輪廓、興趣點等外觀信息,具有與Simonyan等[8]提出的VGGNet相同的結構。以224*224*3的單幀RGB圖像為輸入,輸出不同異常行為類別的概率分布。空間流CNN由13個卷積層和3個全連接層構成。13個卷積層卷積核尺寸為3*3、步長為1,被堆疊成5個塊。最大池化層內核尺寸為2*2,步長為2,連接在每個卷積塊之后。全連接層可以將卷積特征映射到特征向量上。最后使用Softmax分類器,通過4個神經元輸出不同異常行為類別的概率分布。
時間流CNN可以有效地學習運動信息,預測不同異常行為類別的概率,與空間流CNN具有相似的結構,只是它以224*224*2L大小的疊加光流作為輸入。通過使用Brox等[9]提出的方法計算相鄰L個視頻幀之間位移光流的疊加。L個(L=10)連續幀的疊加光流形成2L通道輸入du和dv是兩幀之間位移矢量場的橫軸和縱軸。推導如式(1)所示

(1)
其中,IT∈R×C×2L是時間流CNN的輸入,R、C和L代表視頻的行、列和幀長度。
以單幀RGB圖像和疊加的光流作為輸入,空間流學習幀內靜態線索,時間流學習幀間動態線索,每個流分別預測不同類別的概率。如何將空間流和時間流結合起來進行最終識別還需要進一步的研究,本文研究了3種不同的時空融合方法來結合兩種流。
在前期的融合策略中,空間流和時間流是在網絡開始時結合起來的。產生3+2L通道的輸入(單幀RGB圖像的3個通道和疊加光流的2L通道)。然后,整個網絡(VGG16)以疊加的3+2L通道圖像作為輸入,提取時空特征,對不同的行為類別進行分類,其中FC為全連接層。圖2顯示了前期融合網絡。

圖2 前期融合流程
與前期的融合策略相比,在中期融合策略中,單幀RGB圖像及其疊加的光流分別輸入空間流和時間流。兩個流分別提取外觀特征和運動特征。然后將提取的外觀特征向量與運動特征向量進行線性組合,構成一個8192-D的時空特征向量。融合的時空特征可以表示為式(2)
f(2d-1)=fs t(d),
f(2d)=ftp(d)
(2)
其中,fs t代表4096-D外觀特征,ftp代表4096-D運動特征,f是融合的時空特征。融合的時空特征f通過以下公式進行歸一化如式(3)所示
(3)

圖3 中期融合流程
對于后期融合,空間流和時間流中的SoftMax分類器直接用于分數融合,如圖4所示。

圖4 后期融合流程
我們定義fs t是空間流CNN提取的4096維矢量,ftp是時間流CNN提取的4096維矢量。概率p(j|fs t) 和p(j|ftp) 可通過Softmax分類器計算如式(4)和式(5)所示
(4)
(5)

根據貝葉斯原理[10],通過后期融合計算融合概率p(j|fs t,ftp)。 表示如式(6)所示

(6)

本文所有實驗均在一臺機器上進行,實驗條件為Intel Core-i5 8500 CPU、NVDIA1070 8G顯卡、500G SSD/1T機械硬盤、Windows10操作系統,編程語言Python3.5。整個網絡結構是通過Tensorflow框架實現的。
在數據集方面,我們使用的是CASIA 行為數據集[11]。中科院自動化研究所模式識別國家重點實驗室制作的CASIA行為數據集,視頻中有個人行為,也有人人交互的行為。由正視、俯視、45°側視這3種角度拍攝。收集了14種行為,其中有4種異常行為,包括打架、暈倒、搶劫和砸東西。4種異常行為如圖5所示。
網絡模型調參是通過學習一定量的樣本數據完成的,不但訓練過程的復雜程度較高,數據的計算量也相當的大。數據集中各類行為的數據量不足,導致在訓練網絡模型時易發生過擬合。為了提高模型的泛化能力,防止訓練時發生過擬合,使模型更容易遷移學習到各類行為識別任務中,在模型訓練前,需要對數據集進行擴充,不僅能提高數據容量,模型的學習效果也有相應的提高。
網絡模型的輸入分為兩路,一路是單幀RGB圖像,另一路是光流圖像。我們通過隨機水平翻轉、隨機剪裁、隨機旋轉和加入隨機噪聲的方式對單幀RGB圖像進行數據擴充。而針對光流圖像則通過圖像的翻轉、旋轉和順矢量方向逆轉進行數據擴充。為了提高模型的收斂速率,訓練前輸入圖像需要減去圖像的樣本均值。
對網絡結構進行訓練之前,我們使用OpenCV工具箱預先處理疊加的光流,用UCF101數據集分別預訓練兩個流。為了驗證雙流CNN可以有效地對異常行為進行識別,我們將在UCF101數據集上訓練好的網絡模型遷移到 CASIA數據集上,然后在CASIA數據集中微調兩個流,進行識別,我們將在UCF101數據集上訓練好的網絡模型遷移到 CASIA數據集上,然后在CASIA數據集中微調兩個流。
訓練模型時間流和空間流的網絡參數見表1,其中Input輸入、Learn_rate是學習率、Batch_size是批處理參數、Momentum是沖量系數、Epoch是數據集全部通過卷積神經網絡并返回的次數。
首先,我們對不同的行為分別進行標簽,將75%劃分為訓練集25%劃分為測試集,利用隨機梯度下降法(SGD)對空間流和時間流進行訓練。當訓練超過25次Epoch時,時間流模型和空間流模型的準確率、Loss的變化率開始趨近平穩,模型的參數近似收斂到最優值附近。
通過圖6的Loss值變化曲線可以看出該模型的收斂速度較快。在訓練超過25個Epochs后,時間流和空間流的Loss值均下降并維持在0.5附近,時空雙流卷積神經網絡采用Dropout方法和L2范數正則化能有效避免網絡訓練過擬合,提高特征提取能力。

表1 時間流網絡和空間流網絡參數
其次,為了驗證時空融合卷積神經網絡在行為分類任務上更具有優勢,我們將所提出的體系結構與幾種相應的方法進行了比較。實驗包括多分辨率卷積神經網絡方法和雙流卷積神經網絡方法。Karpathy等[12]使用疊加視頻幀作為輸入,訓練多分辨率CNN識別人類行為。用該方法在CASIA數據集實驗的平均準確率達到79.9%。Koesdwiady等[13]提出了一種基線方法,他們訓練了一個雙流Alexnet,將雙流結構與分數融合結合起來。我們在CASIA數據集上對該方法進行了測試,平均準確率達到84.2%。我們還比較了不同時空融合方法的性能,我們提出的雙流卷積神經網絡與時空融合的方法在CASIA行為數據集上進行比較,實驗結果見表2。由表2中數據可得,本文所提方法與多分辨率方法、雙流卷積神經網絡(Alexnet)方法相比識別率更高。其中,中期融合的方法與多分辨率方法比較,準確率從79.9%提高到88.3%,提高了8.4%。中期融合的方法與基于Alexnet雙流結構的方法比較,準確率從84.2%提高到88.3%,提高了4.1%。

表2 幾種方法準確率對比結果/%
最后,本文采用更深層次的卷積神經網絡模型VGG16來獲取異常行為識別的靜態特征和動態特征。我們分別訓練空間流卷積神經網絡和時間流卷積神經網絡。在測試階段,空間流卷積神經網絡的平均準確率為83.4%,時間流卷積神經網絡的總平均準確率為79.2%,如圖6所示。

圖6 訓練過程Loss曲線和測試過程準確率曲線
針對現有方法對時間信息利用不充分,本文提出一種基于時空融合的雙流卷積神經網絡視頻異常行為識別方法。選擇網絡結構更深的VGG16模型替換原有的Alexnet模型。利用空間流卷積神經網絡學習幀內外觀信息,利用時間流卷積神經網絡捕獲幀間運動信息,研究了不同的融合方法,將空間流和時間流結合起來進行最終識別。為了驗證所提方法的有效性,避免因訓練樣本不足導致模型過擬合現象,本文采用樣本數據集擴充和遷移學習的方法,使用UCF101數據集對模型進行預訓練,然后遷移學習到CASIA數據集上,對打架、搶奪、暈倒、砸東西等行為進行識別和分類。其中中期融合的準確率為88.3%,相比于既有的識別方法,本文提出的基于時空融合的雙流卷積神經網絡模型異常行為識別方法提取特征能力更強,識別準確率更高,具有實際應用意義。