張聰聰 何寧
摘要 針對視頻序列中人體動作識別存在信息冗余大、準(zhǔn)確率低的問題,提出基于關(guān)鍵幀的雙流卷積網(wǎng)絡(luò)的人體動作識別方法.該方法構(gòu)建了由特征提取、關(guān)鍵幀提取和時空特征融合3個模塊構(gòu)成的網(wǎng)絡(luò)框架.首先將空間域視頻的單幀RGB圖像和時間域多幀疊加后的光流圖像作為輸入,送入VGG16網(wǎng)絡(luò)模型,提取視頻的深度特征;其次提取視頻的關(guān)鍵幀,通過不斷預(yù)測每個視頻幀的重要性,選取有足夠信息的有用幀并匯聚起來送入神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,選出關(guān)鍵幀并丟棄冗余幀;最后將兩個模型的Softmax輸出加權(quán)融合作為輸出結(jié)果,得到一個多模型融合的人體動作識別器,實現(xiàn)了對視頻的關(guān)鍵幀處理和對動作的時空信息的充分利用.在UCF-101公開數(shù)據(jù)集上的實驗結(jié)果表明,與當(dāng)前人體動作識別的主流方法相比,該方法具有較高的識別率,并且相對降低了網(wǎng)絡(luò)的復(fù)雜度.
關(guān)鍵詞 關(guān)鍵幀;雙流網(wǎng)絡(luò);動作識別;特征提取;特征融合
中圖分類號TP391.41;TP181
文獻(xiàn)標(biāo)志碼A
0 引言
隨著多媒體技術(shù)和網(wǎng)絡(luò)傳輸設(shè)施的不斷發(fā)展,對視頻數(shù)據(jù)處理的需求不斷增加,視頻處理中的一個重要分支是人體行為識別.人體行為識別的目的是分析并理解視頻中的人體的動作和行為,研究如何感知目標(biāo)對象在圖像序列中的時空運動變化.視頻中的人體行為識別在機器人交互、虛擬現(xiàn)實、視頻監(jiān)控等領(lǐng)域有廣泛應(yīng)用.
目前人體行為識別方法主要分為傳統(tǒng)方法和基于深度學(xué)習(xí)的方法,其中,基于深度學(xué)習(xí)的方法在處理大數(shù)據(jù)集上有很大的優(yōu)勢.在人體行為識別中基于雙流網(wǎng)絡(luò)[1]的方法有比較好的成果.雙流架構(gòu)利用視覺幀和相鄰幀之間的光流作為網(wǎng)絡(luò)的兩個獨立輸入,并將其輸出融合作為最終預(yù)測,許多論文使用并擴展文獻(xiàn)[2-4]的雙流架構(gòu).Zhu等[4]提出了一種新型的卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)結(jié)構(gòu),可以在關(guān)聯(lián)幀中暗中捕捉動作信息,并且能夠高效預(yù)測光流,端到端地實現(xiàn)人體行為識別.循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Networks,RNN)能在一定程度上解決視頻中的時序處理和預(yù)測問題,尤其是對視頻序列能夠有效建模的長時短期記憶模型(Long Short-Term Memory,LSTM)[5].但是,LSTM 的輸入是直接從CNN的全連接層中提取的高級特征,而這些特征缺乏時空特征細(xì)節(jié).
視頻相比圖像來說信息更加豐富,但是視頻序列里冗余信息太多,針對這種情況本文提出了一種基于關(guān)鍵幀的雙流卷積網(wǎng)絡(luò)的人體動作識別方法來解決視頻中連續(xù)幀之間的大量冗余的情況,提高識別速度,該方法首先提取出視頻序列的深度特征,然后輸入到關(guān)鍵幀提取模塊,剔除冗余幀,選擇出包含足夠信息的關(guān)鍵幀,然后結(jié)合光流運動特征,對視頻動作進行識別.本文借鑒了文獻(xiàn)[1,6]方法,在雙流網(wǎng)絡(luò)中加入了關(guān)鍵幀選區(qū)模塊,去除冗余幀,來提高行為識別的準(zhǔn)確率.在數(shù)據(jù)集UCF101上進行人體行為識別實驗,實驗結(jié)果表明本文中提出的基于關(guān)鍵幀的雙流卷積網(wǎng)絡(luò)的人體動作識別方法具有有效性.
1 相關(guān)工作
在人體動作視頻序列中,提取的關(guān)鍵幀要能夠反映視頻序列中要表示的人體動作,因為視頻是漸變的,所以幀與幀之間可能存在著冗余,這樣會對人體動作識別的識別率產(chǎn)生不良影響.針對現(xiàn)有的人體動作識別需要輸入固定的視頻幀,選取的視頻幀的幀與幀之間存在信息冗余,采用全部視頻序列進行人體動作識別計算量大、效率低,所以選取視頻序列中的關(guān)鍵幀,去除冗余信息的視頻幀,對于提高動作識別的準(zhǔn)確率和實時性非常重要,比較有效的方法是提取視頻圖像的動作特征,然后基于所提取的特征進行動作識別.
早期針對視頻序列中特征提取的算法主要提取視頻序列全局特征和局部特征,然后進行字典編碼,Bobick等[7]最早采用輪廓來描述人體的運動信息.Gorelick等[8]首次從視頻序列中的剪影信息得到時空體積(Spatial-Temporal Volume,STV),然后用泊松方程導(dǎo)出局部時空顯著點及其方向特征,其全局特征是通過對這些局部特征加權(quán)得到的.為了處理不同動作的持續(xù)時間不同的問題,Laptev等[9]使用了局部HOG(梯度直方圖)和HOF(光流直方圖),Klaser等[10]將HOG特征擴展到三維,即形成了3D-HOG.類似這種將二維特征點檢測的算法擴展到三維特征點的工作是將尺度不變特征變換(Scale Invariant Feature Transform,SIFT)算法[11]擴展到三維SIFT.Scovanner等[12]在Wang等[13]的文章中,比較了各種局部描述算子,并發(fā)現(xiàn)在大多數(shù)情況下整合了梯度和光流信息的描述算子其效果最好.
在基于深度學(xué)習(xí)的方法中,Simonyan等[1]提出了雙流深度網(wǎng)絡(luò),它結(jié)合了空間網(wǎng)絡(luò)和時間網(wǎng)絡(luò),使用RGB幀和提取光流相結(jié)合來進行動作識別.Ng等[14]發(fā)現(xiàn)了雙流網(wǎng)絡(luò)中的一個缺點,即使用標(biāo)準(zhǔn)圖像CNN而不是專用網(wǎng)絡(luò)來訓(xùn)練視頻,這導(dǎo)致雙流網(wǎng)絡(luò)無法捕獲長期時間信息.后來LSTM網(wǎng)絡(luò)也被用來捕捉視頻中的時間動態(tài)和序列相關(guān)性.在文獻(xiàn)[14-15]中提取有序光流用于學(xué)習(xí)每幀的空間特征,而LSTM用于模擬時間演變.本文的關(guān)鍵幀提取模塊與基于注意力機制的算法具有相似性,該關(guān)鍵幀提取模塊使用評判函數(shù)來區(qū)別視頻序列是否包含足夠信息的有用幀,然后將這些有用幀匯集送入分類器,丟棄冗余幀,關(guān)鍵幀模塊也使用了遞歸的思想,不斷預(yù)測下一幀的重要性來選取有用幀.圖1顯示了關(guān)鍵幀模塊的基本示意圖.該關(guān)鍵幀提取模塊由一個3層的多層感知器(Muti-Layer Perceptron,MLP)構(gòu)成,加入預(yù)測函數(shù)f(·)對視頻幀進行預(yù)測評判,通過遞歸的方式使用交叉熵?fù)p失函數(shù)來更好地選取關(guān)鍵幀,丟棄冗余幀.
2 基于關(guān)鍵幀的雙流卷積網(wǎng)絡(luò)人體動作識別
2.1 整體網(wǎng)絡(luò)框架
本文提出的網(wǎng)絡(luò)框架如圖2所示.該模型主要包含3個模塊:深度特征提取模塊、關(guān)鍵幀提取模塊、空間與時間域的特征融合模塊.對于深度特征提取模塊,通過VGG16網(wǎng)絡(luò)的卷積層和第一個全連接層(FC6)來提取視頻圖像的深度特征,輸入3×224×224的圖像數(shù)據(jù),即一張寬224、高224的視頻圖像,網(wǎng)絡(luò)包含5個卷積層,5個池化層,使用ReLU激活函數(shù),輸出4 096個神經(jīng)元.具體來說,從1到5的5層卷積層的濾波器數(shù)目分別是64、128、256、512、512,1個全連接層是4 096個單元.根據(jù)文獻(xiàn)[16]對卷積層的不同深度的內(nèi)核實驗研究結(jié)果,3×3×3的核尺寸大小是對所有卷積層來說最佳的選擇,因此,在此模塊中,所有卷積層均采用3×3×3的內(nèi)核大小,步長為1×1×1.對于最大池化層,除了第一個最大池化的核大小是2×2×1,其余3個最大池化層的核大小為2×2×2,特征提取模塊主要負(fù)責(zé)從視頻序列中提取視頻幀的深度特性Xt生成固定維度的特征向量.關(guān)鍵幀提取模塊主要負(fù)責(zé)從深度網(wǎng)絡(luò)特區(qū)的深度特征中選取有效幀.總體而言,本文的網(wǎng)絡(luò)框架包含了特征提取、關(guān)鍵幀提取和時空特性融合.融合模塊是將空間幀和時間幀按照一定的策略進行融合.通過這種關(guān)鍵幀選取方法使得該網(wǎng)絡(luò)模型對人體動作的識別更加準(zhǔn)確.
關(guān)鍵幀模塊中的預(yù)測函數(shù)f是基于一個多層感知器(MLP)實現(xiàn)的,f函數(shù)的底層操作只依賴于標(biāo)準(zhǔn)的線性和非線性操作,這樣提高了計算速度,能夠更好地集成到卷積神經(jīng)網(wǎng)絡(luò)中進行端到端的學(xué)習(xí),在最終層使用具有tanh非線性和S型激活的3層MLP.我們將合并向量的初始狀態(tài)設(shè)置為與第一幀的特征相同.本文使用Glorot等[17]提出的初始化方法來對關(guān)鍵幀選擇模塊進行初始化.
為了在關(guān)鍵幀模塊能夠更好地預(yù)測視頻幀的重要性和非冗余性,在關(guān)鍵幀模塊中加入了當(dāng)前幀和下一幀之間的相關(guān)性差異比較,這樣不僅能夠丟棄冗余幀,還能更好地選出包含足夠信息的有用幀,提高模型的泛化能力.為了能夠更好地從一個視頻中選擇出有用的信息幀,在預(yù)測函數(shù)后添加了一個基于熵的正則化項,如式(8)所示.這個正則化項加入了峰值分布,能夠更好地選擇有區(qū)別的信息幀,丟棄冗余幀.參數(shù)λ是一個平衡參數(shù),能夠平衡視頻幀的選擇和更好地減少交叉熵?fù)p失函數(shù).如果將λ設(shè)置為相對較高的值,我們希望選擇的幀數(shù)少,這會使分類任務(wù)變得更加困難,例如每個視頻單幀將使其與圖像分類相同.同時,如果λ的值相對較低,則該模型將選擇較大數(shù)量的幀,并且可能過度擬合.本文使用一個標(biāo)準(zhǔn)的交叉損失函數(shù)來表示預(yù)測的視頻幀和真實的視頻幀之間的損失函數(shù),如式(9)所示.
其中,LE(F)表示標(biāo)準(zhǔn)的交叉熵?fù)p失函數(shù),便于梯度下降反向傳播,利于優(yōu)化多層感知器(MLP),可以更好地選取關(guān)鍵幀,丟棄冗余幀.LE(F)表示添加的基于熵的正則化項,添加正則化項能有效地防止過擬合,減少誤差,同時加入平衡參數(shù)λ進一步提高關(guān)鍵幀的選擇.
本文提出的關(guān)鍵幀模塊與文獻(xiàn)[6]中的自適應(yīng)掃描池比較相似,自適應(yīng)掃描池能夠識別視頻中的信息幀,只對這些對象進行池操作,同時丟棄其他無用幀,以端到端可學(xué)習(xí)的方式動態(tài)地匯集視頻幀以進行動作分類,同時產(chǎn)生可解釋的中間狀態(tài).本文使用評判函數(shù)來計算視頻幀的相關(guān)性,通過遞歸的思想,不斷預(yù)測視頻幀的重要性,最后丟棄相關(guān)性比較小的幀,匯集有用幀來進行行為識別.其中在關(guān)鍵幀模塊中預(yù)測函數(shù)的定義使用評判函數(shù)對視頻序列的每一幀進行打分,選取分?jǐn)?shù)較高的作為視頻序列的有用幀,并使用這些有用幀進行行為識別,以此來提高人體行為識別的識別準(zhǔn)確率.同時,本實驗使用VGG-16網(wǎng)絡(luò)模型在一定程度上減少了網(wǎng)絡(luò)的復(fù)雜度.
2.4 時空特征融合
特征融合是將多個基分類器的結(jié)果,按照一定的規(guī)則融合成一個全局的結(jié)果,消除決策本身或決策之間的信息缺陷,提升全局結(jié)果的可靠性和穩(wěn)定性[18].本文使用的基本框架為雙流卷積網(wǎng)絡(luò),空間網(wǎng)絡(luò)提取關(guān)鍵幀的表面信息,時間網(wǎng)絡(luò)輸入視頻幀后提取幀與幀之間的光流,攜帶視頻幀之間的運動信息,兩個深度網(wǎng)絡(luò)都會輸出一個Softmax層,最后通過平均層的決策融合方法,對兩個Softmax層的輸出結(jié)果進行融合.網(wǎng)絡(luò)結(jié)構(gòu)最后都有時間和空間網(wǎng)絡(luò)上兩個基分類器的識別結(jié)果.最終將兩個分支的分類結(jié)果進行加權(quán)融合,以得到關(guān)于視頻中人體行為類別的最終融合結(jié)果.
3 實驗結(jié)果與分析
3.1 數(shù)據(jù)集
本文采用UCF101[19]視頻動作識別數(shù)據(jù)集.UCF-101(2012)包含13 320個視頻(共27 h),101個人類行為類別,涵蓋了較大范圍的人體動作,如體育運動、樂器和人物交互等,分辨率為320×240.UCF101在動作的采集上具有非常大的多樣性,包括外觀變化、姿態(tài)變化、物體比例變化、背景變化、光纖變化等.該數(shù)據(jù)集的大多數(shù)視頻是在無約束的真實環(huán)境下拍攝的,因此視頻存在像素低,受到如光照、遮擋等環(huán)境因素影響的問題.
3.2 實驗結(jié)果與分析
在 Linux 系統(tǒng)搭建Ubuntu16.04的 TensorFlow 平臺下進行實驗.由于深度神經(jīng)網(wǎng)絡(luò)容易陷入過擬合現(xiàn)象,因此本文將模型中空間網(wǎng)絡(luò)和時間網(wǎng)絡(luò)dropout層的丟失率分別設(shè)置為 0.7和0.8.本文使用Simonyan等[1]的雙流網(wǎng)絡(luò)框架為由VGG16網(wǎng)絡(luò)組成的雙流網(wǎng)絡(luò),從每個視頻中均勻采樣25個幀來作為輸入,通過兩個方向上的5個相鄰幀中堆疊X和Y方向光流,為時域網(wǎng)絡(luò)生成20通道光學(xué)流輸入[1,20].使用Wang等[20]提供的工具來提取光流.采用文獻(xiàn)[20]中的TV-L1算法,并通過線性變換離散化了[0,255]范圍內(nèi)的光場來保證和 RGB 數(shù)據(jù)同區(qū)間.初始化用于訓(xùn)練UCF101的空間網(wǎng)絡(luò)來自在ImageNet上訓(xùn)練的VGG-16模型[21-22].為了在UCF101上訓(xùn)練時間網(wǎng)絡(luò),使用了Wang等[20]提供的16 000次迭代快照初始化其卷積層.后期實驗中還使用Resnet網(wǎng)絡(luò)對空間網(wǎng)絡(luò)進行訓(xùn)練,通過增加網(wǎng)絡(luò)的深度,來更好地提取視頻序列的深度特征,最后實驗結(jié)果表明在單只網(wǎng)絡(luò)上的行為識別準(zhǔn)確率比VGG-16的好,但是由于Resnet的網(wǎng)絡(luò)深度較大,更容易發(fā)生過擬合.
將本文的算法與其他人體行為識別方法在UCF101數(shù)據(jù)集上進行比較,結(jié)果如表1所示,可
以發(fā)現(xiàn)本文提出的算法識別準(zhǔn)確率優(yōu)于其他算法,識別效果較好.本文使用雙流卷積神經(jīng)網(wǎng)絡(luò)所獲取的特征結(jié)合了運動表層特征和時序信息兩部分,更好地發(fā)掘了視頻所包含的信息,同時在關(guān)鍵幀識別模塊,我們可以使用更少的視頻幀得出更有用的信息,一方面提高了行為識別的準(zhǔn)確率,另一方面減少了計算的復(fù)雜度.
4 結(jié)束語
目前基于深度學(xué)習(xí)的方法已經(jīng)廣泛應(yīng)用到模式識別等各個領(lǐng)域的研究中,對于人體動作識別任務(wù),本文提出了基于關(guān)鍵幀的深度神經(jīng)網(wǎng)絡(luò)模型,該方法通過不斷地預(yù)測每個視頻幀的重要性,去除冗余幀,選取包含足夠信息的有用幀并匯聚起來進行訓(xùn)練,實現(xiàn)了對視頻段的關(guān)鍵幀處理和對動作的復(fù)雜時空信息的充分利用,從而提高動作的識別率,構(gòu)建了時空雙流深度神經(jīng)網(wǎng)絡(luò)架構(gòu).將本文模型先在ImageNet上進行預(yù)訓(xùn)練和微調(diào),然后應(yīng)用到UCF101數(shù)據(jù)集上,實驗結(jié)果表明,該方法具有較高的識別率,并且相對降低了網(wǎng)絡(luò)的復(fù)雜度.
參考文獻(xiàn)
References
[1]Simonyan K,Zisserman A.Two-stream convolutional networks for action recognition in videos[J].Neural Information Processing Systems,2014,1(2):568-576
[2]Feichtenhofer C,Pinz A,Wildes R P.Spatiotemporal residual networks for video action recognition[J].Neural Information Processing Systems,2016,2(3):3468-3476
[3]Feichtenhofer C,Pinz A,Wildes R P.Spatiotemporal multiplier networks for video action recognition[C]∥IEEE Conference on Computer Vision and Pattern Recognition (CVPR),2017,DOI:10.1109/CVPR.2017.787
[4]Zhu Y,Lan Z Z,Newsam S,et al.Hidden two-stream convolutional networks for action recognition[M]∥Computer Vision-ACCV 2018.Cham:Springer International Publishing,2019:363-378
[5]Hochreiter S,Schmidhuber J.Long short-term memory[J].Neural Computation,1997,9(8):1735-1780
[6]Kar A,Rai N,Sikka K,et al.AdaScan:adaptive scan pooling in deep convolutional neural networks for human action recognition in videos[C]∥IEEE Conference on Computer Vision and Pattern Recognition (CVPR),2016:3376-3385
[7]Bobick A F,Davis J W.The recognition of human movement using temporal templates[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2001,23(3):257-267
[8]Gorelick L,Blank M.Actions as space-time shapes[J].Pattern Analysis and Machine Intelligence,2007,29(12):2247-2253
[9]Laptev I,Marszalek M,et al.Learning realistic human actions from movies[J].IEEE Conference on Computer Vision and Pattern Recognition (CVPR),2008,DOI:10.1109/CVPR.2008.4587756
[10]Klaser A,Marszalek M.A spatio-temporal descriptor based on 3D-gradients[C]∥British Machine Vision Conference,2008,DOI:10.5244/C.22.99
[11]Mikolajczyk K,Mikolajczyk K.Scale & affine invariant interest point detectors[J].International Journal of Computer Vision,2004,60(1):63-86
[12]Scovanner P,Ali S,Shah M.A 3-dimensional sift descriptor and its application to action recognition[C]∥ACM International Conference on Multimedia,2007:357-360
[13]Wang H,Ullah M M,Klaser A,et al.Evaluation of local spatio-temporal features for action recognition[C]∥British Machine Vision Conference,2009,DOI:10.5244/C.23.124
[14]Ng Y H,Hausknecht M,Vijayanarasimhan S,et al.Beyond short snippets:deep networks for video classification[C]∥IEEE Conference on Computer Vision and Pattern Recognition (CVPR),2015:4694-4702
[15]Donahue J,Hendricks L A,Rohrbach M,et al.Long-term recurrent convolutional networks for visual recognition and description[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2014,39(4):677-691
[16]Karpathy A,Toderici G,Shetty S,et al.Large-scale video classification with convolutional neural networks[C]∥IEEE Conference on Computer Vision and Pattern Recognition,2014:1725-1732
[17]Glorot X,Bengio Y.Understanding the difculty of training deep feedforward neural networks[C]∥International Conference on Articial Intelligence and Statistics,2010:249-256
[18]張文宇.基于證據(jù)理論的無線傳感器網(wǎng)絡(luò)決策融合算法研究[D].北京:北京交通大學(xué),2016
ZHANG Wenyu.Research on beliffunction based decision fusion for wireless sensor networks [D].Beijing:Beijing Jiaotong University,2016
[19]Soomro K,Zamir A R,Shah M.Ucf101:a dataset of 101 human actions classes from videos in the wild[J].arXiv Preprint,2012,arXiv:1212.0402
[20]Wang L,Xiong Y,Wang Z,et al.Towards good practices for very deep two-stream convnets[J].arXiv Preprint,2015,arXiv:1507.02159
[21]Deng J,Dong W,Socher R,et al.ImageNet:a large-scale hierarchical image database[C]∥IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR),2009,DOI:10.1109/CVPR.2009.5206848
[22]Simonyan K,Zisserman A.Very deep convolutional networks for large-scale image recognition[J].arXiv Preprint,2014,arXiv:1409.1556
[23]Srivastava N,Mansimov E,Salakhutdinov R.Unsupervised learning of video representations using LSTMs[C]∥The 32th International Conference on Machine Learning (ICML),2015:843-852
[24]Bilen H,F(xiàn)ernando B,Gavves E,et al.Dynamic image networks for action recognition[C]∥IEEE Conference on Computer Vision and Pattern Recognition (CVPR),2016:3034-3042
[25]Feichtenhofer C,Pinz A,Zisserman A.Convolutional two-stream network fusion for video action recognition[C]∥IEEE Conference on Computer Vision and Pattern Recognition (CVPR),2016:1933-1941
Abstract Aiming at the problem of large information redundancy and low accuracy in human motion recognition in video sequences,a human motion recognition method is proposed based on key frame two-stream convolutional network. We construct a network framework consisting of three modules:feature extraction,key frame extraction,and spatial-temporal feature fusion.Firstly,the single-frame RGB image of the spatial domain video and the optical flow image superimposed in the time domain multi-frame are sent as input to the VGG16 network model to extract the depth feature of the video;secondly,the importance of each video frame is continuously predicted,then useful frames with sufficient information are pooled and trained by? neural network to select key frames and discard redundant frames.Finally,the Softmax outputs of the two models are weighted and combined as the output result to obtain a multi-model fusion.The human body motion recognizer realizes the key frame processing of the video and the full utilization of the spatial-temporal information of the action.The experimental results on the UCF-101 public dataset show that,compared with the mainstream methods of human motion recognition,the proposed method has a higher recognition rate and relatively reduces the complexity of the network.
Key words keyframe;two stream networks;action recognition;feature extraction;feature fusion