周 智,朱 明,Yahya Khan
(中國科學技術大學 信息科學技術學院,合肥 230022)
基于3D-CNN的暴力行為檢測①
周 智,朱 明,Yahya Khan
(中國科學技術大學 信息科學技術學院,合肥 230022)
大量的研究行為識別方法集中在檢測簡單的動作,如: 步行,慢跑或者跳躍等; 針對于打斗或者動作復雜的攻擊性行為則研究較少; 而這些研究在某些監(jiān)控場景下非常有用,如: 監(jiān)獄,自助銀行,商場等. 傳統(tǒng)的暴力行為識別研究方法主要利用先驗知識來手動設計特征,而本文提出了一種基于3D-CNN結構的暴力檢測方法,通過三維深度神經(jīng)網(wǎng)絡直接對輸入進行操作,能夠很好的提取暴力行為的時空特征信息,從而進行檢測. 從實驗結果可以看出,本文方法能較好地識別出暴力行為,準確率要高于人工設計特征的方法.
動作識別; 暴力檢測; 深度學習; 卷積神經(jīng)網(wǎng)絡
隨著監(jiān)控系統(tǒng)的大量使用,視頻數(shù)據(jù)出現(xiàn)爆發(fā)性的增長. 監(jiān)控系統(tǒng)的作用是進行目標檢測以及異常行為檢測. 隨著數(shù)據(jù)的急劇增長,傳統(tǒng)的依靠人工監(jiān)控已愈發(fā)困難,且效率低下. 因此,依靠人工智能的監(jiān)控系統(tǒng)的研究成為了熱點,其中,對于人的暴力行為的檢測是重要的研究方向.
由于暴力行為的動作比起簡單的跑,跳行為[1,2]要復雜很多,所以也是相關研究中的難點. 目前,針對于暴力行為檢測,許多通用的方法都是通過特征點提取,比如說光流、梯度、顏色等,在使用分類器如SVM,HMM 等,進行暴力檢測. Nam[3]等人提出火焰、血液等特征來檢測暴力行為. Bermejo[4]等人利用STIP對暴力行為進行分類. Tai[5]等人對光流向量進行計算,進而檢測暴力行為. Martin[6]等人使用多尺度的局部二相模式直方圖進行暴力檢測. Wang[7]使用了基于軌跡分析的暴力行為識別方法. 綜上所述,傳統(tǒng)的暴力行為識別主要是采用基于人工設計特征的方法,雖然識別準確率較高,但是也具有某些缺陷,如: 耗時較高,易受噪聲干擾依賴特定數(shù)據(jù)集等. 近年來,以CNN[8,9]為代表的深度學習算法取得了快速發(fā)展,Ji[10]等人首次提出了一種時空卷積神經(jīng)網(wǎng)絡用來進行人體動作識別. Karpathy[11]等人建立了一百萬視頻的行為分析數(shù)據(jù)集,通過多種CNN結構訓練視頻,進而來判斷行為類別.
針對于此,本文采用基于3D-CNN的暴力行為識別方法. 該方法基于深度學習,無需手動提取特征,通過3D-CNN模型自動學習特征,識別暴力行為.
一般,在視頻中應用CNN的一個簡單的方法是對每一幀圖片用CNN來識別,如圖1所示. 但是傳統(tǒng)的2D-CNN結構沒有考慮時間維度上的特征信息. 因此,Ji[8]等人首次提出的3D-CNN模型用來進行動作識別.通過在CNN的卷積層進行3D卷積,從而能夠在空間以及時間維度上都能學習有用的特征,如圖2所示.
3D-CNN是將視頻中的連續(xù)幀作為一個時空立方體,以此作為CNN網(wǎng)絡的輸入,用3D卷積核對時空立方體進行操作,從而提取空間和時間上的特征信息.選取不同的卷積核對立方體進行卷積,就能得到多種時空特征.
Tran[12]等人提出了一種3D深度卷積神經(jīng)網(wǎng)絡的框架-C3D模型. 本文提出了將C3D模型運用于暴力行為檢測的方面,并且在原始的C3D進行了改進,從而能更有效地檢測暴力行為. 本文模型結構如圖3所示,模型共有 8 個卷積層,5 個最大池化層,2 個全連接層,最后加上一個SoftMax層. 所有的3D卷積核大小都是3*3*3,時間和空間維度的步長都為1,Padding為1. 每個卷積層的卷積核個數(shù)可以在圖2中看出. 每個池化層的濾波器大小都是3維的,除了Pool1的濾波器大小是1*2*2,其他的Pool層濾波器大小都是2*2*2.
網(wǎng)絡的輸入視頻大小是171*128*16,通過對輸入進行中心裁剪得到尺寸為112*112*16. 在Conv1a層中采用3*3*3大小的卷積核作用輸入層,卷積核步長為1*1*1,激活函數(shù)為ReLu函數(shù). 選取64種不同的卷積核,這樣共得到 64 個 Feature Map. 其計算過程如下:
圖1 2D 卷積
圖2 3D 卷積
在卷積層Conv1a后面是降采樣層Pool1,采用2*2*1大小的濾波器對Conv1a層的每個特征圖進行降采樣,步長為 2*2*1,這樣做可以使特征圖變小,簡化網(wǎng)絡的計算復雜度. 其計算過程如下所示:
同樣地,卷積層Conv2a和池化層Pool2所采用的的連接方式和計算方式的原理與Conv1a和Pool1相同,Feature Map 個數(shù)為 128 個. 隨后的 3 個層數(shù)都是兩個卷積層后面加一個池化層,Feature Map個數(shù)分別為256,512以及256個. 在Pool5層后面有兩個全連接層,全連接層神經(jīng)元個數(shù)為512個和100個,全連接層后面都接有一個dropout層來減輕網(wǎng)絡過擬合,最后一層是SoftMax層來進行分類.
圖3 本文 3D-CNN 模型
一般來說,不同的輸入可以訓練得到不同的模型,其預測的結果是不同的. 因此在本文中考慮不同的模型之間的組合會對結果產(chǎn)生影響. RGB圖主要反映圖像的表觀信息,故可以提取圖像的其它信息來更好地反映圖像內(nèi)容,并以此作為模型的輸入,通過不同的輸入構造多個不同的3D CNN模型,在分類階段,進行模型融合,計算每個模型的輸出,通過求平均等方法得到最終的預測結果.
光流信息能很好地反映運動目標的方向及速度信息,可以通過提取圖像的光流信息,得到光流圖譜.
圖4 光流圖譜
上式中,n表示區(qū)域內(nèi)的像素點數(shù)目 (n=m2),Ix和Iy表示區(qū)域內(nèi)的光流變量的空間梯度,It為區(qū)域內(nèi)光流變量的時間梯度. 求解上述方程:
在本節(jié)中,為了評估模型的有效性,我們在暴力行為數(shù)據(jù)集HockeyFight上進行測試,HockeyFight數(shù)據(jù)集包含1000個冰球比賽的片段,其中包括暴力視頻和正常比賽視頻各 500 個片段,如圖5 所示. 同時,我們也采用自己準備的ATM數(shù)據(jù)集進行實驗,ATM數(shù)據(jù)集同樣也包含1000個ATM機取款的片段,其中也包括搶劫暴力視頻和正常取款視頻,如圖6所示. 以下是實驗結果的說明.
HockeyFight數(shù)據(jù)集: 包括 1000 個視頻片段,每個片段包含連續(xù)32幀圖片,我們以連續(xù)16幀作為一個樣本,共有2000個樣本. 我們隨機選擇800個打斗樣本和800個正常樣本,作為訓練集,剩余的作為測試集.我們設置初始學習率為0.03,batchsize為30,每次隨機批處理30個片段,分別在不同迭代次數(shù)下,進行了對比實驗,如表1所示.
圖5 HockeyFight數(shù)據(jù)集視頻片段
圖6 ATM 數(shù)據(jù)集視頻片段
從表1可以看出,在迭代次數(shù)為8000時,檢測準確率最高,當?shù)螖?shù)低于8000次的時候,模型訓練不夠充分; 當高于8000次的時候,模型會出現(xiàn)過擬合,準確率都會下降. 圖7表示本文3D-CNN模型的ROC曲線圖,可以看出本文模型能夠有效地檢測出視頻中的暴力場景.
表1 C3D 模型在 HockeyFight數(shù)據(jù)集的準確率
同時,為了進一步驗證模型的有效性,我們與多種手工提取特征的算法進行對比,文獻[4]中提出了兩種行為特征描述子STIP和MoSIFT,并且在Hockey數(shù)據(jù)集上進行驗證,結果如圖8所示.
圖7 HockeyFight數(shù)據(jù)集 ROC 曲線圖
圖8 算法準確率對比
圖8中,本文模型在HockeyFight數(shù)據(jù)集上的準確率達到了93.8%,而文獻[4]中的三種方法的準確率分別為 88.6%,90.9%,91.7%,由上可知,本章提出的模型檢測準確率高于提出的所有方法. 此外,STIP和MoSIFT特征都屬于手工提取特征,本文利用深度學習的方法,直接對輸入進行操作,無需依靠經(jīng)驗手工提取特征,并且耗時也要比STIP和MoSIFT等傳統(tǒng)特征要好.
考慮到不同的模型以及模型組合對實驗結果的影響,我們也做了相關實驗,對比模型分別為: RGB 圖像訓練的模型,RGB+光流圖(FLOW)訓練的模型. 分別選取準確率最高的數(shù)據(jù)進行對比,如表2所示.
從表中可以看出,RGB+FLOW模型融合在一定程度上可以提高準確率,最高準確率達到了94.4%,要高于使用RGB圖像構建的3D-CNN模型的最高準確率.可見合適的模型融合能夠有效地提高識別準確率. 本文中只對比了RGB+FLOW模型的融合,事實上,也可以選擇其它合適的模型進行組合.
表2 模型組合在 HockeyFight數(shù)據(jù)集的準確率
ATM數(shù)據(jù)集: 場景是ATM機自助取款銀行. 我們以連續(xù)16幀作為一個樣本,數(shù)據(jù)集中包含了1500個訓練樣本,其中打斗樣本 700 個,正常樣本 800 個; 500個測試樣本,其中打斗樣本200個,正常取款樣本300個.我們設置學習率為0.3,batchsize為20. 表3所示本文方法在ATM數(shù)據(jù)集上的實驗結果.
表3 C3D 模型在 ATM 數(shù)據(jù)集的準確率
我們可以看出,在迭代次數(shù)為1500次的時候,準確率最高達到了96.8%. 此外,我們也采用STIP(HOG)方法對ATM數(shù)據(jù)集進行了驗證,選取效果最好的準確率,將結果與本文方法作為對比,如表4所示.
表4 本文算法與 STIP 比較
通過表3和表4可以看出,我們提出的算法在ATM數(shù)據(jù)集上的表現(xiàn)也要好于STIP算法,因此,本文的算法在暴力行為檢測中要優(yōu)于文獻提出的三種手工設計特征: STIP(HOG),STIP(HOF),MoSIFT.
本文提出了一種基于3D-CNN的暴力行為檢測方法,與傳統(tǒng)的基于人工合計特征的暴力行為檢測相比,本文基于3D卷積神經(jīng)網(wǎng)絡自動提取時空特征,檢測效果要好于手工設計的特征,也要好于2D維度的CNN模型. 另外,本文方法還對不同模型的組合進行了對比實驗,實驗結果表明合適的模型組合能有效地提高檢測準確率. 隨著相關視頻數(shù)據(jù)的增長,基于3D-CNN的方法在檢測精度方面將更具優(yōu)勢.
1胡瓊,秦磊,黃慶明. 基于視覺的人體動作識別綜述. 計算機學報,2013,36(12): 2512–2524.
2鄭胤,陳權崎,章毓晉. 深度學習及其在目標和行為識別中的新進展. 中國圖象圖形學報,2014,19(2): 175–184.
3Nam J,Alghoniemy M,Tewfik AH. Audio-visual contentbased violent scene characterization. Proc. of 1998 International Conference on Image Processing. Chicago,IL,USA.1998. 353–357.
4Nievas EB,Suarez OD,García GB,et al. Violence detection in video using computer vision techniques. Proc. of the 14th International Conference on Computer Analysis of Images and Patterns. Seville,Spain. 2011. 332–339.
5Martin V,Glotin H,Paris S,et al. Violence detection in video by large scale multi-scale local binary patterns dynamics. MediaEval 2012 Workshop. Pisa,Italy. 2012.
6Hassner T,Itcher Y,Kliper-Gross O. Violent flows: Realtime detection of violent crowd behavior. Proc. of 2012 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops. Providence,RI,USA. 2012.1–6.
7Wang H,Kl?ser A,Schmid C,et al. Action recognition by dense trajectories. Proc. of 2011 IEEE Conference on Computer Vision and Pattern Recognition. Colorado Springs,CO,USA. 2011. 3169–3176.
8Geng YY,Liang RZ,Li WZ,et al. Learning convolutional neural network to maximize Pos@Top performance measure.arXiv:1609.08417,2016.
9Li QF,Zhou XF,Gu AH,et al. Nuclear norm regularized convolutional Max Pos@Top machine. Neural Computing and Applications,2016: 1–10,doi: 10.1007/s00521-016-2680-2.
10Ji SW,Xu W,Yang M,et al. 3D convolutional neural networks for human action recognition. IEEE Trans. on Pattern Analysis and Machine Intelligence,2013,35(1):221–231. [doi: 10.1109/TPAMI.2012.59]
11Karpathy A,Toderici G,Shetty S,et al. Large-scale video classification with convolutional neural networks. Proc. of the IEEE Conference on Computer Vision and Pattern Recognition. Columbus,OH,USA. 2014. 1725–1732.
12Tran D,Bourdev L,Fergus R,et al. Learning spatiotemporal features with 3D convolutional networks. Proc. of 2015 IEEE International Conference on Computer Vision. Santiago,Chile. 2015. 4489–4497.
Violence Behavior Detection Based on 3D-CNN
ZHOU Zhi,ZHU Ming,Yahya Khan
(School of Information Science and Technology,University of Science and Technology of China,Hefei 230022,China)
A large number of research behavioral methods are focused on detecting simple actions such as walking,jogging,or jumping,while less research is on violence or aggressive behavior,but these studies are useful in some surveillance scenarios,such as: Prison,self-help banks,shopping malls and so on. Traditional methods of violent behavior recognition research mainly use a priori knowledge to manually design features. In this paper a violence detection method based on 3D-CNN structure is proposed. The three-dimensional deep neural network directly manipulates on the input,which can be a good extraction of violent behavior of time and space characteristics of information. It can be seen from the experimental results that this method can identify the violent behavior better than the characteristics of hand-craft features.
action recognition; violent detection; deep learning; convolution neural network
周智,朱明,Yahya Khan.基于 3D-CNN 的暴力行為檢測.計算機系統(tǒng)應用,2017,26(12):207–211. http://www.c-s-a.org.cn/1003-3254/6152.html
中科院先導項目課題(XDA06011203)
2017-03-18; 修改時間: 2017-04-10; 采用時間: 2017-05-08