童 赟, 楊興明, 范樓苗
(合肥工業大學 計算機與信息學院, 合肥230601)
近年來,大量的監控攝像機被應用于公共場所,用來保證公眾安全。 通過視頻監控來查找交通事故、違法犯罪等異常行為的相關證據。 然而在現實應用中,由于異常行為發生的幾率小,其外觀復雜多變,無關冗余信息的干擾等,這些因素使得異常行為檢測仍然是相當困難的。
早期的異常行為檢測的方法是通過社會力來對行人行為運動分析[1]。 例如,通過定義描述不同場景的物理力來檢測人群中的異常行為,這種方法無法表達行為的高層語義特征[2]。 隨著深度學習技術的發展,卷積神經網絡被用來學習行為的深度表達,有專家提出通過從RGB 和光流來捕捉行為時空運動信息的雙流網絡,但是二維卷積神經網絡只能捕捉很少的時序信息[3]。 而利用三維卷積神經網絡(C3D)來學習視頻幀的時序信息,大大提高了行為識別的準確率,但對于異常行為的運動分析卻沒有顯著效果[4]。 例如:當人群中發生偷竊行為時,僅從運動和外觀上并不能充分地分析出個體的行為。 對此,考慮通過使用社會力模型去挖掘復雜行為的更深層次的信息來解決這個問題。 即通過阻礙力,擠壓力和侵犯力三種不同形式的社會力來描述監控視頻下的復雜的行為,通過三維卷積神經網絡對這些社會力特征進行分析,從而實現對監控視頻下的異常行為檢測。
針對視頻中無關冗余信息的干擾,在基于社會力模型的多通道的三維卷積神經網絡中,引入注意力機制來增強輸入特征的顯著性,提高視頻中的異常行為檢測效率和正確率。 本文的主要貢獻如下:
(1)提出了一種新的基于社會力模型多通道的三維卷積神經網絡學習框架,通過社會力模型定義3 種不同形式的社會力來描述監控視頻下的復雜行為,利用三維卷積神經網絡對這些社會力特征進行分析,從而實現復雜場景下的異常行為檢測。
(2)引入了注意力機制模塊去除冗余信息的干擾,增強輸入特征的顯著性。 通過在基于社會力模型多通道的三維卷積神經網絡中,加入注意力機制,增強特征顯著性的方法來提高異常行為檢測的效率。
(3)實驗結果表明,該方法在UCF-Crime 數據集上的AUC 值達到了79.23%,高于大多數先進的方法。
異常行為檢測的目的是從監控視頻場景中檢測不同尋常的行為或者動作,其關鍵就是異常行為的表達,而異常行為特有的時空結構特性,為研究者指明了方向。
早期的異常檢測使用的手工特征包括軌跡特征,HOG 特征,HOF 特征以及光流特征等。 檢測模型很多,例如:通過學習目標運動模式的場景模型來檢測異常[5];半監督自適應隱馬爾可夫模型來對正常事件進行建模[6];通過多個固定監視器來收集底層的統計信息,利用指數分布來描述局部光流的規則直方圖,從而實現監控視頻下的實時異常檢測[7];通過混合概率主成分分析(MPPCA)特征來構建時空馬爾可夫隨機場模型(MRF)來檢測異常,這種方法減少了噪聲對異常行為檢測的影響,提高了檢測的正確率[8];基于時間和空間的混合動態紋理模型(MDT)來同時檢測時間和空間上的異常[9];稀疏編碼或字典學習也是對正常模式建模的常用方法,通過稀疏組合學習來降低視頻幀的冗余度進行異常檢測,有效提高了異常檢測的速度[10];依據動態稀疏編碼通過滑動窗口確定異常事件發生位置來檢測異常[11];利用暴力流描述符來檢測人群中的暴力行為[12];基于物理方程來定義三種啟發式規則來區分暴力和非暴力行為,進而實現異常行為檢測[13]。
隨著深度學習技術的發展,研究人員提出了很多異常檢測方法。 例如:利用多層的自編碼器學習目標的運動和外觀信息特征表示,并通過單類分類器去預測異常得分[14];利用3D 卷積自編碼器(Conv-AE)去建模正常的視頻幀,并使用重構誤差來檢測異常[15];利用LSTM 自編碼器來建模正常行為的外觀和運動模式[16];通過稀疏自編碼器來提取特征,利用遞歸神經元網絡來預測后面的特征,根據預測誤差來區分異常[17];設計3D 自編碼器,實現幀的重建與預測,來實現異常檢測[18];時間相干稀疏編碼(TSC)算法,通過堆疊RNN(sRNN)來映射TSC,根據預測誤差來實現異常檢測[19];根據正常幀可預測而異常幀不可預測,設計了一種基于幀預測網絡的異常檢測模型[20];通過C3D 和全連接網絡來獲取異常得分的深度多示例(MIL)排序的學習框架來判斷異常[21]。 受這些利用注意力機制[22-23]來減少無關冗余信息干擾的啟發,本文引入注意力機制來去除視頻中的冗余信息的干擾,提出了一種基于社會力模型和注意力機制的異常行為檢測的方法。 在新的異常數據集上的實驗結果表明,此方法取得了良好的效果。
模型框架,如圖1 所示。 首先,通過三種社會力來描述視頻中行為,計算出視頻幀的社會力特征。其次,將原始視頻幀,光流圖和計算得到的社會力圖分別輸入到引入了注意力機制的C3D 網絡中,將提取到的特征通過注意力機制模塊得到注意力機制的權重,并將其與原始特征相乘,生成顯著性增強的新特征。 最后,將所得到的新特征通過三層全連接層進行特征學習,實現視頻中的異常行為檢測。
社會力模型包括阻礙力,擠壓力和侵犯力三種。通過在圖像上放置一個粒子網絡,移動這些粒子與它們覆蓋的相應流場,利用相鄰流場矢量的雙線性插值來計算粒子的有效速度。 將運動粒子視為個體,利用社會力模型計算不同個體之間的相互作用力。 將得到的相互作用力映射到圖像平面上,從而得到每一幀中每個像素的力流。
(1)阻礙力。 對于復雜行為,從外觀和運動上,不能很好地分析其運動模式,因此提出了一種新的社會力——阻礙力。 個體通常會選擇最直接的路徑方向到達目的地,但可能由于障礙物的存在,個體的速度會隨之發生變化,根據速度的變化可以判斷是否發生了異常,稱這種社會力為阻礙力,可以表示為公式(1):

(2)擠壓力。 僅從運動目標的阻礙力這一方面考慮是遠遠不夠的,因此提出了另外一種社會力--擠壓力。 在擁擠的情況下,人群動態不穩定身體接觸頻繁,個體的移動受其與周圍的人接觸的肢體影響。 需要定義擠壓力去分析人群中個體的受力情況,可以表達為公式(2):

其中,F 為擠壓力, nji表示歸一化單位矢量,fi(j) 表示個體i 和個體j 的接觸程度。

圖1 異常行為檢測整體框架圖Fig. 1 Overall framework of anomalybehavior detection
(3)侵犯力。 在發生暴亂的情況下,個體主要向對手方向移動實施暴力動作。 例如,當有兩個或兩個以上的當事人相互打斗并表現出暴力行為,通過上面兩種社會力無法很好地分析,因此引入了侵犯力的概念。 侵犯力可以用公式(3)表示:

通過定義上述三種簡單但有效的社會力來描述人群中個體的行為,進而實現對復雜集群的異常行為分析。
在通過C3D 網絡得到不同通道的卷積特征之后,通過注意力機制對原始特征進行加權,計算注意力權重,使特征能夠更加顯著的表達出異常事件發生區域。 全卷積的注意力模型如圖2 所示, 模型選用FCN32s 作為基礎全卷積網絡,編碼器由8 個卷積層組成。 輸入特征是通過C3D 得到的視頻片段特征Z?= {其中,表示第i 幀的特征, N表示輸入視頻幀數,?=rgb 代表RGB 特征,?=opt 代表光流特征,?=of 代表阻礙力特征,?=cf代表擠壓力特征,?=af 代表侵犯力特征。 對卷積之后的特征經過編碼器進行編碼,而后通過解碼器解碼之后,得到注意力得分,公式(4)、(5):


其中,ZA?表示生成的新特征。

圖2 注意力模型Fig. 2 Attention model
模型由5 個不同的通道組成,都是由C3D 來實現。 通過在每個通道的輸出處定義一個損失函數對每個通道進行訓練,反復生成異常事件的預測分數。對于5 個不同的通道,采用標準的交叉熵損失函數,公式(7):

其中,yn是事件的真實標簽,p?是我們模型的預測得分。 因此本文的損失函數如下:

選用UCF-Crime 數據集,該數據集是目前規模最大的異常數據集,該數據集包含異常行為種類多,對于異常行為檢測研究極具意義。 數據集包含1 900 個監控視頻,共14 類行為,1 類正常行為和13類異常行為。 選用1 610 個視頻(800 個正常視頻,810 個異常視頻)用于訓練,余下的290 個視頻(150個正常視頻,140 個異常視頻)用于測試。
首先,依次提取各段視頻的視頻幀,并將分辨率調整為112×112。 其次,取16 幀視頻幀作為一次輸入,通過C3D 網絡進行特征提取,并將經過注意力模塊進行增強后的特征輸入到三層全連接神經網絡中,其中第一個和第二個全連接層有4096 個單元,最后一層全連接層有2 個單元。 最后,對第一層全連接層采用ReLU 激活函數激活,最后一層全連接層采用sigmoid 激活函數激活。 設置初始學習率為10-3,并采用Adagrad 優化器進行優化。
利用幀級AUC 進行性能評估。 通過逐漸改變規則評分的閾值來計算ROC 曲線,將曲線下面積(AUC)轉換成標量進行性能評估。 AUC 數值越大,異常檢測性能越好。
首先,消融研究不同的社會力對異常檢測性能產生的影響,如表1 所示。 研究發現:C3D 網絡僅僅通過RGB 和光流所學習到的特征去檢測視頻中異常行為是遠遠不夠的,通過定義三種社會力去描述監控視頻中的復雜行為,顯著提升了異常行為檢測的正確率。 當從運動和外觀無法區分異常行為時,考慮速度異常,由于受到障礙物的影響,運動目標的移動速度將會發生變化。 阻礙力相比較于RGB 和光流特征,AUC 值提升了2.87%。 在擁擠場景中,擠壓力就表現出明顯的優勢。 相比較于阻礙力,其AUC 值也從71.16%提升到了74.92%。 侵犯力適用于大多數的暴亂場景中,隨著侵犯力的加入,異常行為檢測性能大大提升,AUC 提升了4.31%,由此說明,本文所提出的社會力能夠有效的實現監控視頻下的異常行為檢測。

表1 不同的社會力對異常行為檢測的影響Tab. 1 The influence of different social forces on abnormal behavior detection
其次,驗證注意力機制對實驗結果的影響。 由表2 可以看出,加入注意力機制比不加的效果更加明顯,通過引入注意力機制,減少無關冗余信息的干擾,從而提高異常行為檢測的準確率。

表2 注意力機制對實驗結果的影響Tab. 2 The influence of experiment result by attention mechanism
最后,將本文的方法和現有大部分異常檢測方法進行比較,AUC 值達到了79.23%,如表3 所示,說明異常行為檢測的效果最好。 將所提出的方法與當前先進算法的性能進行比較,并在UCF-Crime 數據集上繪制了幀級ROC 曲線,從圖3 可以看出,本方法要優于其他的方法,曲線相對平滑,說明模型的穩定性好。 將社會力加入到異常檢測的模型中,從物理層面對視頻中的運動個體進行受力分析,有助于提高異常檢測的正確率;通過引入注意力機制,可以檢測出作用力異常的視頻幀,能夠從視頻幀中提取有用的特征信息,減少了背景以及其他無關冗余信息的干擾,使得異常檢測的正確率顯著提升。

圖3 ROC 曲線圖Fig. 3 The ROC curve

表3 不同異常檢測方法對比Tab. 3 Comparison of different anomaly detection methods
通過為正常幀生成較低的異常得分,而異常幀生成較高的異常得分的方法來實現異常行為檢測。 不同的異常視頻上的可視化結果如圖4(a)~(d)所示。
圖4(a)~(d)中,矩形框表示異常行為所發生的真實區域(groud-truth),曲線表示本方法為所有視頻幀生成的異常得分曲線。 不難看出,在不同的異常行為視頻上,本方法對于正常幀產生了更低的得分,近乎接近0,相比較異常幀,會生成更高的異常分數,通過對異常分數高低的判斷,可以檢測出異常行為發生的區域。

圖4 定性分析結果Fig. 4 Qualitative analysis results
本文提出了一種新的基于社會力模型和注意力機制的異常行為檢測框架,通過提出三種社會力來描述監控視頻下各種復雜行為,利用三維卷積神經網絡來捕捉視頻中的時空語境信息,同時引入注意力機制來減少無關冗余信息的干擾,增加特征的顯著性。 通過在UCF-Crime 數據集上進行實驗驗證,結果表明,該方法明顯優于現有大部分的異常行為檢測的方法。