王 勇,靳偉昭,馮 偉,全英匯
(西安電子科技大學(xué) 電子工程學(xué)院,陜西 西安 710071)
近年來,國內(nèi)外公共安全問題日益凸顯,暴力沖突事件頻發(fā),如倫敦、巴黎、紐約等城市發(fā)生的非法暴力行為,此類事件對公共安全危害極大。因此,及時地發(fā)現(xiàn)并處理此類事件,對維護公共安全具有非常重要的意義。
早期的暴力行為檢測,主要采用人工設(shè)計特征的方法。GIANNAKOPOULOS等[1]和LIN等[2]使用音頻、血液和火焰等關(guān)聯(lián)特征來檢測暴力場景。2016年,ZHANG等[3]提出了光流方向直方圖描述符進(jìn)行暴力行為檢測,此描述符通過對候選區(qū)域光流直方圖進(jìn)行重新排列、添加上下文信息和歸一化后構(gòu)造而成,最后使用支持向量機(Support Vector Machines,SVM)分類器進(jìn)行分類。2017年,SENST等[4]提出拉格朗日時空興趣點描述符用于暴力行為檢測,將基于方向的拉格朗日場測度集成到時空興趣點描述符中用于提取暴力行為特征,然后使用詞袋模型提取特征直方圖,最后使用支持向量機進(jìn)行特征分類。2018年,ZHOU等[5]從運動區(qū)域中提取了兩種低層次的視覺特征:低層次方向梯度直方圖特征和低層次光流方向直方圖特征,然后在詞袋模型下對低層特征進(jìn)行處理,再由支持向量機分類器進(jìn)行分類。2019年,SAMUEL等[6]使用方向梯度直方圖提取圖像空間特征,然后利用雙向長短期記憶網(wǎng)絡(luò)對時序特征進(jìn)行聚合。同年,MAHMOODI等[7]采用全局閾值和自適應(yīng)閾值來獲取光流的大小和方向變化,從而構(gòu)建光流大小及方向直方圖描述符,最后使用支持向量機分類器進(jìn)行分類。2020年,DEEPAK等[8]設(shè)計了一種時空梯度自相關(guān)特征描述暴力行為,最后使用支持向量機進(jìn)行特征分類。
在曲棍球比賽數(shù)據(jù)集和人群暴力數(shù)據(jù)集上,文獻(xiàn)[5]中的方法效果最佳。然而,上述基于手工特征的方法過度依賴于先驗知識,對于特定的小規(guī)模數(shù)據(jù)集特征提取效果較好,但對于其它數(shù)據(jù)集的適應(yīng)性較差且特征提取效率較低。
隨著深度學(xué)習(xí)在計算機視覺領(lǐng)域的巨大成功,研究人員逐漸將深度網(wǎng)絡(luò)模型應(yīng)用于暴力行為檢測領(lǐng)域。2016年,DONG等[9]提出了一種新的多流卷積神經(jīng)網(wǎng)絡(luò)框架,通過卷積神經(jīng)網(wǎng)絡(luò)分別對空間網(wǎng)絡(luò)的RGB圖像和時間網(wǎng)絡(luò)的光流圖像與加速度流圖像進(jìn)行處理,最后對分類結(jié)果進(jìn)行融合得到最終分類結(jié)果。2017年,ZHOU等[10]構(gòu)建了暴力行為識別網(wǎng)絡(luò)模型,采用行為識別領(lǐng)域的雙流卷積神經(jīng)網(wǎng)絡(luò)框架分別對RGB圖像、光流圖像和加速度流圖像提取特征。2020年,LI等[11]提出了一種新的多流卷積神經(jīng)網(wǎng)絡(luò)框架,分別通過基于注意力機制的卷積神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)處理RGB圖像從而獲取空間特征,并通過光流圖像提取時間特征,進(jìn)而得到時空特征。但上述多流深度神經(jīng)網(wǎng)絡(luò)模型過于復(fù)雜且計算量過大。周智等[12]參考視頻行為識別領(lǐng)域三維卷積網(wǎng)絡(luò)的思路構(gòu)建了一個較為簡單的暴力行為檢測模型,直接使用三維卷積網(wǎng)絡(luò)提取時空特征。實驗結(jié)果表明,上述方法在暴力行為檢測方面比人工設(shè)計特征的方法提取特征效率更高,但網(wǎng)絡(luò)參數(shù)較多,網(wǎng)絡(luò)模型較復(fù)雜。
針對三維卷積神經(jīng)網(wǎng)絡(luò)中暴力行為檢測準(zhǔn)確度較低、網(wǎng)絡(luò)參數(shù)過多不易擬合的缺陷,筆者提出了一種(2+1)D密集殘差網(wǎng)絡(luò)的暴力行為檢測方法。此網(wǎng)絡(luò)結(jié)構(gòu)借鑒了行為識別領(lǐng)域優(yōu)秀的R(2+1)D網(wǎng)絡(luò)[13]結(jié)構(gòu),采用 (2+1)D卷積核替代三維卷積核,可以更加有效地提取暴力行為特征。受文獻(xiàn)[14]中的ResNet-D的結(jié)構(gòu)啟發(fā),文中將三維殘差模塊分支進(jìn)行優(yōu)化,由于原殘差模塊中步長(stride)為2的卷積操作忽略了3/4的特征信息,因此將其優(yōu)化為步長為2的池化操作和步長為1的卷積操作。另外將殘差模塊中兩個卷積層間進(jìn)行密集拼接,不僅可以增加特征復(fù)用,還可以減輕梯度消散問題。
筆者提出的(2+1)D密集殘差網(wǎng)絡(luò)模型結(jié)構(gòu)如圖1所示。模型共有1個(2+1)D卷積層、4個(2+1)D密集殘差模塊、1個全局池化層、1個全連接層、1個分類層器。使用5個卷積模塊進(jìn)行時空特征提取,卷積層后是全局平均池化層,再其次是全連接層,并在所有卷積層和全連接層之后使用批量正則化,從而加快網(wǎng)絡(luò)的優(yōu)化速度,最后分類器采用Softmax進(jìn)行分類。
圖1 (2+1)D密集殘差網(wǎng)絡(luò)結(jié)構(gòu)
TRAN等[13]提出了一種三維時空特征提取方法,通過將三維卷積核優(yōu)化為(2+1)D卷積核,即空間二維卷積與時間一維卷積實現(xiàn)三維時空卷積,有效減小了訓(xùn)練時長并提高了分類精度。因此,文中采用(2+1)D卷積核構(gòu)造卷積模塊,實現(xiàn)三維時空特征提取。此外,在(2+1)D卷積核中兩個子卷積之間增加一個修正線性單元(Rectified Linear Unit,ReLU)函數(shù),使得網(wǎng)絡(luò)中非線性操作的數(shù)量增加了1倍,進(jìn)而可以提高網(wǎng)絡(luò)分類精度。其網(wǎng)絡(luò)結(jié)構(gòu)如圖2(b)所示。
(a) 三維卷積核網(wǎng)絡(luò)結(jié)構(gòu)
殘差模塊是殘差網(wǎng)絡(luò)的基本組成部分,可以有效地減少梯度彌散問題。它分為直接映射和殘差兩部分(如圖3所示),數(shù)學(xué)公式可表示為
x1=h(x0)+F(x0,w0) ,
(1)
其中,h(x0)表示直接映射部分,F(xiàn)(x0,w0)表示殘差部分,x0表示輸入特征圖,x1表示輸出特征圖。由于x0與x1的特征圖數(shù)量不同,直接映射部分需要對特征圖進(jìn)行降維處理。
圖3 殘差模塊結(jié)構(gòu)圖
由于原始?xì)埐钅K結(jié)構(gòu)中直接映射部分stride=2的卷積操作忽略了原特征圖中3/4的信息,導(dǎo)致丟失某些有用的特征。因此,文中通過將殘差模塊直接映射部分優(yōu)化為stride=2的均值池化操作和stride=1的卷積操作,stride=1的卷積操作可以保證特征信息不丟失,同時均值池化操作可以使高層特征具有更大的感受野,還可以增加它的平移不變性,具體如圖4所示。
另外,借鑒密集連接的思想,在圖4結(jié)構(gòu)之上將殘差模塊中兩個卷積層間特征圖進(jìn)行拼接,使得殘差塊中的兩個卷積層輸出的特征圖可以重復(fù)使用,以強化特征的傳輸減輕梯度消散問題,從而構(gòu)建了(2+1)D密集殘差模塊,如圖5所示。
圖4 改進(jìn)后殘差模塊結(jié)構(gòu)圖
分別在兩個數(shù)據(jù)集上對3D-CNN網(wǎng)絡(luò)[12]、R(2+1)D網(wǎng)絡(luò)、改進(jìn)后R(2+1)D網(wǎng)絡(luò)、(2+1)D密集殘差網(wǎng)絡(luò)進(jìn)行了對比分析。3D-CNN網(wǎng)絡(luò)是周智等借鑒行為分類領(lǐng)域的C3D網(wǎng)絡(luò)構(gòu)建的暴力行為檢測模型;R(2+1)D網(wǎng)絡(luò)是C3D網(wǎng)絡(luò)的升級版;改進(jìn)后R(2+1)D網(wǎng)絡(luò)是由改進(jìn)后殘差模塊構(gòu)建而成;(2+1)D密集殘差網(wǎng)絡(luò)是依據(jù)(2+1)D密集殘差模塊構(gòu)建而成的。
實驗數(shù)據(jù)集包括曲棍球比賽數(shù)據(jù)集和自制數(shù)據(jù)集。曲棍球比賽數(shù)據(jù)集是暴力行為檢測領(lǐng)域最常用數(shù)據(jù)集,由冰球比賽場景中的視頻剪輯而成,共包括1 000個視頻片段,500個暴力行為視頻,500個非暴力行為視頻。圖6為曲棍球比賽數(shù)據(jù)集中的暴力行為示例圖,圖7為非暴力行為示例圖。
由于曲棍球比賽數(shù)據(jù)集背景過于單一,筆者自制了一個暴力行為數(shù)據(jù)集,此數(shù)據(jù)集中的視頻主要包括50個從網(wǎng)上電影中剪輯的視頻片段、1 000個曲棍球比賽數(shù)據(jù)集中的視頻片段、200個Movies數(shù)據(jù)集中的視頻片段以及250個從UCF101數(shù)據(jù)集中拳擊動作集、相撲動作集、曲棍球點球動作集以及拳擊訓(xùn)練動作集挑選的視頻片段。該數(shù)據(jù)集共有1 500個視頻,包括750個暴力行為視頻和750個非暴力行為視頻。自制數(shù)據(jù)集示例幀如圖8與圖9所示,此數(shù)據(jù)集背景多樣,背景光線變化明顯,更加具有挑戰(zhàn)性。
圖6 曲棍球比賽數(shù)據(jù)集暴力行為示例圖
2.2.1 實驗環(huán)境
實驗訓(xùn)練的軟件平臺為:Google Colaboratory云平臺,硬件平臺為:Tesla P100 GPU,開發(fā)框架為:pytorch 0.40,開發(fā)語言為:python 3.6。
2.2.2 網(wǎng)絡(luò)架構(gòu)
采用經(jīng)典的殘差網(wǎng)絡(luò)7層架構(gòu)。該架構(gòu)首先以時間長為16 幀,空間大小112×112的圖像作為輸入,然后使用5層卷積模塊提取暴力行為時空特征,再使用全局池化層(Global Average Pooling)與全連接層(Fully Connected Layer,F(xiàn)C layer)進(jìn)行特征向量轉(zhuǎn)換,最后使用Softmax層進(jìn)行分類,具體網(wǎng)絡(luò)結(jié)構(gòu)如表1所示。為清晰表達(dá)出網(wǎng)絡(luò)架構(gòu),表中省略了卷積模塊2~卷積模塊5中直接映射部分。
表1 網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)
文中所用4種網(wǎng)絡(luò)模型的參數(shù)量(Parameters,Params)以及計算量(FLoating point Operations Persecond,F(xiàn)LOPs),如表2所示。
表2 網(wǎng)絡(luò)模型參數(shù)量對比
由表2可知,筆者構(gòu)建的2種網(wǎng)絡(luò)結(jié)構(gòu)相比3D-CNN網(wǎng)絡(luò)和R(2+1)D網(wǎng)絡(luò),網(wǎng)絡(luò)參數(shù)量更少,網(wǎng)絡(luò)參數(shù)更加高效,網(wǎng)絡(luò)更易優(yōu)化。
2.2.3 損失函數(shù)及評價指標(biāo)
文中實驗采用動量梯度下降法對網(wǎng)絡(luò)進(jìn)行優(yōu)化,初始學(xué)習(xí)率為0.005,每隔20代學(xué)習(xí)率乘以0.1,權(quán)重衰減設(shè)置為0.000 5,動量因子設(shè)置為0.9,批處理大小設(shè)置為16,損失函數(shù)使用二分類交叉熵函數(shù)
L=-(ylog(y1)+(1-y)log(1-y1)) ,
(2)
其中,L表示損失值(Loss),y1表示模型預(yù)測樣本是正例的概率;y表示樣本標(biāo)簽,如果樣本屬于正例,y取值為1,否則取值為0。實驗中暴力行為類別為正例,非暴力行為為負(fù)例。
文中采用精度作為網(wǎng)絡(luò)的評價標(biāo)準(zhǔn):
(3)
其中,A表示精度值,TP表示測試樣本的真實類別是正例并且模型預(yù)測的結(jié)果也是正例的樣本數(shù)量,TN表示測試樣本的真實類別是負(fù)例并且模型將其預(yù)測為負(fù)例的樣本數(shù)量,T表示測試樣本的總數(shù)。
文中為驗證(2+1)D密集殘差網(wǎng)絡(luò)的性能分別在曲棍球比賽數(shù)據(jù)集和自制數(shù)據(jù)集上,分別對3D-CNN網(wǎng)絡(luò)、R(2+1)D網(wǎng)絡(luò)、改進(jìn)后R(2+1)D網(wǎng)絡(luò)以及(2+1)D密集殘差網(wǎng)絡(luò)進(jìn)行了訓(xùn)練及測試。
首先將數(shù)據(jù)集以4∶1的比例劃分為訓(xùn)練集和測試集。隨機選取每個視頻的16幀圖像作為一個視頻序列,并將每一幀圖像的大小調(diào)整為171×128。訓(xùn)練時,將訓(xùn)練集以4∶1的比例劃分為訓(xùn)練和驗證兩部分,在訓(xùn)練的過程中,為提高數(shù)據(jù)多樣性并且避免過度擬合問題,文中將視頻序列中的每幀圖像隨機裁剪為112×112的圖像,再以50%的概率對每幀圖像進(jìn)行水平翻轉(zhuǎn)操作,將這些圖像作為網(wǎng)絡(luò)的輸入。驗證和測試過程中,從每幀圖像中心位置裁剪出尺寸大小為112×112的圖像作為網(wǎng)絡(luò)的輸入。
在曲棍球比賽數(shù)據(jù)集上,筆者分別對R(2+1)D網(wǎng)絡(luò)(n1)、改進(jìn)后R(2+1)D網(wǎng)絡(luò)(n2)及(2+1)D密集殘差網(wǎng)絡(luò)(n3)進(jìn)行了訓(xùn)練。如圖10~13所示,在訓(xùn)練過程中損失函數(shù)Loss值整體呈現(xiàn)下降趨勢,準(zhǔn)確率整體呈上升趨勢,當(dāng)訓(xùn)練進(jìn)行到30輪后,Loss值和準(zhǔn)確率均基本達(dá)到穩(wěn)定狀態(tài),其中(2+1)D密集殘差網(wǎng)絡(luò)的Loss值最小,準(zhǔn)確率最高。數(shù)據(jù)分析參見圖10~圖13。
在自制數(shù)據(jù)集上,筆者分別對3D-CNN網(wǎng)絡(luò)(n0)、R(2+1)D網(wǎng)絡(luò)(n1)、改進(jìn)后R(2+1)D網(wǎng)絡(luò)(n2)及(2+1)D密集殘差網(wǎng)絡(luò)(n3)進(jìn)行了訓(xùn)練。如圖12所示,在訓(xùn)練過程中損失函數(shù)Loss值整體呈現(xiàn)下降趨勢,準(zhǔn)確率整體呈上升趨勢,當(dāng)訓(xùn)練進(jìn)行到40輪后,Loss值和準(zhǔn)確率均基本達(dá)到穩(wěn)定狀態(tài),其中(2+1)D密集殘差網(wǎng)絡(luò)的Loss值最小,準(zhǔn)確率最高。
從表3中可以看出,在曲棍球比賽數(shù)據(jù)集和自制數(shù)據(jù)集上,改進(jìn)后R(2+1)D網(wǎng)絡(luò)相比原網(wǎng)絡(luò)取得了更好的結(jié)果,準(zhǔn)確率相比原網(wǎng)絡(luò)分別提高了約2.30%和1.00%,從而驗證了文中對殘差模塊直接映射部分改進(jìn)的有效性;筆者構(gòu)建的(2+1)D密集殘差網(wǎng)絡(luò)與改進(jìn)后(2+1)D網(wǎng)絡(luò)相比,準(zhǔn)確率分別提高了約1.47%和 0.93%,從而驗證了密集殘差模塊的有效性。
另外,改進(jìn)后的R(2+1)D網(wǎng)絡(luò)和(2+1)D密集殘差網(wǎng)絡(luò)均比3D-CNN網(wǎng)絡(luò)取得了更好的結(jié)果。在曲棍球比賽數(shù)據(jù)集上,準(zhǔn)確率分別比3D-CNN網(wǎng)絡(luò)提高了約1.21%和 2.68%,在自制數(shù)據(jù)集上,準(zhǔn)確率分別比3D-CNN網(wǎng)絡(luò)提高了約0.67%和 1.61%。從而驗證了該網(wǎng)絡(luò)模型的有效性及優(yōu)越性能。
表3 網(wǎng)絡(luò)模型實驗結(jié)果對比
筆者提出了一種(2+1)D密集殘差網(wǎng)絡(luò)的暴力行為檢測方法,其中(2+1)D密集殘差模塊可以有效提取暴力行為時空特征。在公開的經(jīng)典暴力行為檢測數(shù)據(jù)集曲棍球比賽和自制數(shù)據(jù)集上與其他三種網(wǎng)絡(luò)進(jìn)行了實驗對比評估,驗證了該網(wǎng)絡(luò)模型能夠更好地表示暴力行為信息,是一種簡單有效的暴力行為檢測方法。在今后研究中,筆者將考慮采用遷移學(xué)習(xí)、模型融合和擴充數(shù)據(jù)集等方法來提高網(wǎng)絡(luò)的識別精度及魯棒性,構(gòu)建更加貼近實際生活應(yīng)用的網(wǎng)絡(luò)模型。