孫 寧, 郝一嘉, 宦睿智, 劉佶鑫, 韓 光
(南京郵電大學(xué) 寬帶無線通信技術(shù)教育部工程研究中心,江蘇 南京 210003)
基于視頻的行為識別一直是計算機視覺領(lǐng)域的研究熱點。在早期的工作中,研究思路主要集中在使用人工特征與基于淺層學(xué)習(xí)的分類器相結(jié)合上。文獻[1]從90幀圖像組成的三維(3D)時空卷(spatial-temporal volume,STV)中提取3D特征,并在這些3D特征上訓(xùn)練最近鄰分類器對視頻中的行為進行分類。文獻[2]提出了密集軌跡(dense trajectories,DT)算法,通過對圖像序列中的多尺度密集關(guān)鍵點進行采樣和跟蹤,構(gòu)建視頻的密集軌跡;接著在每個密集關(guān)鍵點附近提取多種特征[3-5],并利用特征袋(bag of features,BoF)[6]模型對每個密集點構(gòu)建時空金字塔(spatial-temporal pyramid,STP);最后在STP數(shù)據(jù)上訓(xùn)練支持向量機(support vector machine,SVM)分類器,學(xué)習(xí)視頻的時空特征進行行為識別。改進的密集軌跡模型(improved dense trajectories,IDT)[7]是對DT算法的改良。IDT使用SURF算子[8]提取關(guān)鍵點,并結(jié)合相鄰2幀的光流來緩解攝像機運動的影響。在特征編碼階段,采用Fisher向量[9]代替DT算法中的BoF模型。IDT算法能夠有效地消除攝像機運動對圖像的不利影響,達到更佳的行為識別效果。
與基于人工特征和淺層學(xué)習(xí)的行為識別方法相比,基于深度神經(jīng)網(wǎng)絡(luò)的行為識別方法可以從大量訓(xùn)練數(shù)據(jù)中學(xué)習(xí)高度非線性的時空語義特征,大大提高了行為識別的性能。然而,在現(xiàn)有的基于深度學(xué)習(xí)的行為識別方法中,都是按照某種固定的采樣規(guī)則對輸入視頻進行圖像幀采樣,對于所有的采樣圖像都無差別對待,沒有考慮不同圖像幀對于行為識別重要性的不同。一方面,這種策略可能會導(dǎo)致大量冗余數(shù)據(jù)淹沒有意義的行為信息;另一方面,根據(jù)人為的規(guī)則而不是根據(jù)內(nèi)容語義采樣圖像可能會導(dǎo)致關(guān)鍵信息的丟失。
針對這一問題,本文提出了一種基于深度學(xué)習(xí)的視頻級行為識別方法,即嵌入注意力機制的時空特征融合網(wǎng)絡(luò)(attention-embedded spatial-temporal feature fusion network,ASTFFN)。ASTFFN將一個長時程行為視頻劃分成幾個重疊的片段,將RGB圖像和相應(yīng)的光流圖像作為每個片段的時空表示。在ASTFFN中,設(shè)計了一種嵌入注意力機制的特征提取模塊(attention-embedded feature extraction module,AFEM)實現(xiàn)從RGB圖像或光流圖像中提取注意力加權(quán)的時間或空間特征。該模塊由一個用于從圖像中進行特征提取的三維卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)和一個用于對不同圖像幀中提取的特征分配重要性權(quán)重的注意力機制組成。將由AFEM獲得的所有片段的時空分?jǐn)?shù)進行融合,生成整個視頻的行為類別預(yù)測?;贏STFFN的行為識別方法可以對整個視頻中行為的時空信息進行建模。通過注意機制對每個圖像幀進行加權(quán),權(quán)值體現(xiàn)了每個周期像幀對于最終行為識別的重要性,最終提升算法的識別性能。
本節(jié)回顧近期基于深度學(xué)習(xí)模型的行為識別方法。文獻[10]提出了一種端到端可訓(xùn)練的CNN。該模型將特征提取與分類結(jié)合在一起,用于從連續(xù)7幀圖像中提取人體行為的時空特征。文獻[11]提出的C3D方法在更大規(guī)模的深度神經(jīng)網(wǎng)絡(luò)上實現(xiàn)了三維卷積運算,可以同時從16幀圖像中提取時空特征。C3D方法在6個常用行為識別數(shù)據(jù)庫中得到了當(dāng)時最優(yōu)的識別正確率。與二維卷積相比,三維卷積不可避免地會帶來更大的計算和存儲開銷,對于具有更深層的大型深度神經(jīng)網(wǎng)絡(luò)模型,該問題更加明顯。文獻[12]提出了偽三維(pseudo-3D,P3D)模型,將三維卷積解耦為二維空間卷積和一維時域卷積,其中空間卷積對空間信息進行編碼,時域卷積對時域信息進行編碼。
另一種基于深度學(xué)習(xí)的行為識別方法是雙流模型。文獻[13]提出了一種用于行為識別的雙流深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),該結(jié)構(gòu)利用2個CNN分別從視頻中的1幀RGB圖像和10幀光流圖像中提取行為的時空特征。通過融合2個CNN的得分來預(yù)測行為類別。然而該采樣策略過于稀疏,可能會丟失視頻中的重要信息。文獻[14]提出了用于長時程行為識別的時間段網(wǎng)絡(luò)(temporal segment networks,TSN)模型。TSN首先沿著時間維度將視頻分成幾個片段,然后使用雙流模型提取每個片段的特征,并進行行為類別預(yù)測。通過融合所有片段的預(yù)測分?jǐn)?shù),得到最終的行為識別結(jié)果。文獻[15]提出了雙流膨脹三維卷積神經(jīng)網(wǎng)絡(luò)(inflated 3D convnets,I3D),將雙流模型與3DCNN相結(jié)合進行行為識別。該方法將現(xiàn)有的2DCNN模型進行變換,使其能夠接受3D數(shù)據(jù)。具體做法是沿著時間維度重復(fù)2D卷積核N次,并進行歸一化。這樣,I3D模型可以利用在ImageNet數(shù)據(jù)庫[16]上預(yù)訓(xùn)練得到的2D參數(shù)來提升網(wǎng)絡(luò)的特征提取性能。
對于行為視頻這樣的序列數(shù)據(jù)進行建模,遞歸神經(jīng)網(wǎng)絡(luò)(recursive neural network,RNN)具有天然的優(yōu)勢。研究人員將CNN與RNN或長短時記憶(long short-term memory,LSTM)相結(jié)合,提取長時程視頻中行為的時空表征。文獻[17]提出的長期遞歸卷積網(wǎng)絡(luò)(long-term recurrent convolutional networks,LRCNs)對行為視頻在時間和空間2個維度上進行了深度學(xué)習(xí)。此外,文獻[18-19]提出了雙流模型和LSTM相結(jié)合的行為識別方法。
最近,基于LSTM的注意力機制被應(yīng)用到深度神經(jīng)網(wǎng)絡(luò)中以提升行為識別的性能。文獻[20]提出了一種空間注意模型,根據(jù)每幀圖像中不同區(qū)域?qū)φ麄€視頻最終行為識別結(jié)果的重要性進行建模。文獻[21]提出的VideoLSTM方法使用了2種改進的注意力模塊來提升行為檢測和識別的性能。文獻[22]提出了一種新的用于視頻行為識別的遞歸時空注意網(wǎng)絡(luò)(recurrent spatial-temporal attention network,RSTAN),該方法使用一種新的時空注意機制對行為的外觀和運動特征進行融合。文獻[23]提出了分級多尺度注意網(wǎng)絡(luò)(hierarchical multi-scale attention network,HM-AN),將注意機制融入到分級多尺度RNN中,得到行為識別結(jié)果。
本文方法基于二維卷積對圖像進行處理。與兩流模型相比,本文方法增加了注意機制來衡量每個圖像幀對最終行為識別結(jié)果的重要性,提高了長時程行為識別的有效性和適應(yīng)性。本文方法采用LSTM作為注意力機制的解碼器,根據(jù)每幀圖像在行為識別中的語義重要性對其進行加權(quán)。與現(xiàn)有嵌入注意力機制的動作識別方法相比,該方法實現(xiàn)了基于深度學(xué)習(xí)的長時程視頻中行為的時空建模。對多個重疊片段中的90幀RGB圖像和對應(yīng)的光流圖像提取注意加權(quán)時空特征,基于全局先預(yù)測后融合的方式,對所有片段進行時空預(yù)測融合,得到最終的行為識別結(jié)果。
本文提出的基于ASTFFN的行為識別方法包括如下3個步驟:視頻預(yù)處理、基于注意力機制的長時程時空特征提取和信息融合與預(yù)測,該方法的原理如圖1所示。
圖1 基于ASTFFN的行為識別方法原理
在視頻預(yù)處理中,將輸入的視頻劃分成Sn個片段,使用每個片段中的RGB圖像和對應(yīng)的光流圖像分別作為空間數(shù)據(jù)和時間數(shù)據(jù),然后分別進行時間和空間特征提取。在特征提取中,使用2Sn個AFEM,其中空間AFEM從RGB序列中提取空間特征,時間AFEM從光流序列中提取時間特征,并預(yù)測每個片段對應(yīng)的行為類別。在信息融合中,將所有片段的時空預(yù)測分?jǐn)?shù)進行融合,得到整個視頻中行為類別的空間共識和時間共識,再將這2種共識進行融合,得到最終的行為識別結(jié)果。
視頻預(yù)處理包括片段劃分和光流提取2個部分。為了從長時程視頻中提取時空特征,本文將輸入視頻分割成Sn個片段。每個片段中的1/3與相鄰片段重疊,以保持片段的語義連續(xù)性。本文使用文獻[24]提出的方法進行光流圖像提取。為了滿足AFEM中三通道輸入的要求,將光流數(shù)據(jù)的U和V分量及兩者的平均值合并成三通道數(shù)據(jù)作為時間AFEM的輸入。視頻預(yù)處理中光流數(shù)據(jù)的提取結(jié)果如圖2所示。
圖2 從HMDB51數(shù)據(jù)庫片段中提取到的光流數(shù)據(jù)
圖3 AFEM結(jié)構(gòu)示意圖
輸入注意力機制模塊的d維的特征fi,i=1,…,p。視頻片段中的這些特性以加權(quán)求和的形式進行聚合,即
(1)
注意力機制的關(guān)鍵問題是學(xué)習(xí)權(quán)重αi。設(shè)計了一個函數(shù)F來計算特征fi的重要性評分ci。每個特征的得分是基于fi與注意力對象的相關(guān)性(識別結(jié)果),即相關(guān)性越高,重要性得分越高。AFEM采用文獻[25]中的基于連接的注意機制,其得分函數(shù)為:
(2)
圖4 AFEN中注意機制的結(jié)構(gòu)示意圖
本文分別研究了2類對RGB圖像序列和光流序列進行時空特征融合的方法。根據(jù)實現(xiàn)的細(xì)節(jié),2類方法又可以細(xì)分為4種,如圖5所示。第1類為加性先融合后預(yù)測和串接先融合后預(yù)測,第2類為片段先預(yù)測后融合和全局先預(yù)測后融合。
圖5 信息融合的4種不同實現(xiàn)
圖5中,橙色、黃色、藍色和灰色框分別表示CNN中的卷積層、池化層、全連接層和softmax層。
先融合后預(yù)測首先融合每個片段的時空特征,構(gòu)建整個視頻的全局時空特征。然后基于融合后的全局時間特征和空間特征分別訓(xùn)練2個SVM分類器,對2個分類器的得分進行求和,得到最終的行為識別結(jié)果。如果每個片段的特征通過相加得到全局特征,稱為加性先融合后預(yù)測;如果每個片段的特征進行串接得到全局特征,稱為串接先融合后預(yù)測。
先預(yù)測后融合首先生成片段的預(yù)測分?jǐn)?shù),然后融合所有片段的預(yù)測分?jǐn)?shù),得到最終的行為識別結(jié)果。如果將每個片段的時空特征輸入到softmax層,從一個片段生成預(yù)測,然后對每個片段的預(yù)測進行求和,產(chǎn)生最終的融合結(jié)果,那么這種方法稱為片段先預(yù)測后融合。如果先將每個片段的時空特征串接起來再輸入softmax層生成預(yù)測分?jǐn)?shù),得到所有片段的時間預(yù)測和空間預(yù)測,最后將這2種預(yù)測相加得到最終的行為識別結(jié)果,那么這種方法稱為全局先預(yù)測后融合。
在基于ASTFFN的行為識別方法中,輸入視頻被分成Sn個片段,每個片段包含In個圖像,并將相鄰片段的1/3相互重疊。實驗中將Sn和In分別設(shè)置為4和30。因此,該方法處理的圖像序列的長度為90幀。對于小于90幀的視頻,復(fù)制視頻的最后一張圖像,得到90幀。對于90幀以上的視頻,每個片段均勻采樣30幀圖像。
在AFEM中,由ImageNet數(shù)據(jù)庫預(yù)訓(xùn)練得到的Inception v3模型[26]作為CNN特征提取模塊的初始參數(shù),提取尺寸為1 024的Inception v3的頂層全連接層的輸出作為輸入圖像的語義特征。實驗中注意機制的時間步長參數(shù)TS=10。因此,注意力模塊的數(shù)量和LSTM時間步長都設(shè)置為10。另外,注意力機制中的LSTM是一個具有256個隱藏節(jié)點的單層網(wǎng)絡(luò)。在訓(xùn)練中,時間AFEM基于RGB序列數(shù)據(jù)進行訓(xùn)練,空間AFEM基于光流序列數(shù)據(jù)進行訓(xùn)練。測試時,將測試視頻中每個片段的RGB序列和光流序列分別輸入空間AEFM和時間AFEM,并產(chǎn)生時空預(yù)測分?jǐn)?shù)。在信息融合過程中,使用文獻[14]的方法將所有時空分?jǐn)?shù)進行融合,形成時空共識。根據(jù)輸入視頻的時空共識,預(yù)測輸入視頻的最終行為類別。
本節(jié)通過實驗對本文方法進行評估。實驗中采用UCF101和HMDB51 2個長時程行為識別數(shù)據(jù)庫。其中,UCF101數(shù)據(jù)庫包含13 320個視頻剪輯和101個行為類別。這些行為分為人物互動、身體動作、人人互動、演奏樂器和運動5種。HMDB51數(shù)據(jù)庫由6 766個視頻剪輯和51個行為類別組成。對于這2個數(shù)據(jù)庫,采用相同的測試規(guī)則:采用數(shù)據(jù)庫本身提供的3種劃分,最終識別正確率取3種劃分實驗結(jié)果的平均值。此外,為了防止出現(xiàn)過擬合,對訓(xùn)練數(shù)據(jù)進行了剪切、旋轉(zhuǎn)和尺度變換等數(shù)據(jù)擴增處理。
在以下實驗中,使用帶動量的隨機梯度下降法(stochastic gradient descent,SGD)訓(xùn)練網(wǎng)絡(luò)。mini-batch的大小為8,動量為0.9。訓(xùn)練學(xué)習(xí)率初始化為0.000 01,每10個訓(xùn)練迭代衰減為當(dāng)前學(xué)習(xí)率的0.1。訓(xùn)練一共進行200次迭代。所有深度神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練和測試均基于PyTorch框架實現(xiàn)。所有實驗均在圖像處理工作站上運行,該工作站的主要配置為:Intel Xeon 2.4 GHz 8核CPU、128 Gb內(nèi)存和2個NVIDIA Titan Xp GPU。
本文方法中注意力機制模塊的參數(shù)時間步長TS的選擇對注意機制的性能有很大的影響。本節(jié)實驗評估了在從1~20的不同TS時,該方法獲得的動作識別的準(zhǔn)確性在UCF101數(shù)據(jù)庫和HMDB51數(shù)據(jù)庫上的結(jié)果如圖6所示。
圖6 本文方法在不同TS值下的行為識別精度
當(dāng)TS=1時,僅通過1次迭代即可學(xué)習(xí)30幀圖像中的注意力權(quán)重分布,通常只擬合30個圖像幀的重要性分布是不夠的。隨著TS值的增加,識別精度逐漸提高。當(dāng)TS=10時,本文方法在UCF101和HMDB51數(shù)據(jù)庫上分別達到94.4%和71.5%的最高識別精度。當(dāng)TS值繼續(xù)增加時,在一段時間內(nèi)保持穩(wěn)定之后,行為識別的準(zhǔn)確性就會下降。這是因為隨著值的不斷增加,展開的LSTM的可訓(xùn)練參數(shù)的大小會迅速增加,導(dǎo)致過擬合。因此,本文將注意力機制的時間步長參數(shù)TS確定為10。
實驗記錄了(1)式中的參數(shù)αi以顯示本文方法中注意力機制對行為識別結(jié)果的影響。UCF101數(shù)據(jù)庫中的“籃球投籃”類別和HMDB51數(shù)據(jù)庫中的“握手”類別的2個視頻片斷及其重要性權(quán)重如圖7所示。圖像序列下方的條形圖顯示了一個片段中30幀圖像的注意力重要性。圖7a中籃球投籃視頻的內(nèi)容是從抓籃球到投籃的過程。對應(yīng)于投籃動作的最后幾幀圖像的重要性權(quán)重明顯大于對應(yīng)于準(zhǔn)備投籃動作的圖像的重要性權(quán)重。前幾幀權(quán)重高的原因是跳躍和接球的動作類似于投籃的動作。圖7b包含握手動作的圖像幀的重要性權(quán)重明顯大于握手開始和結(jié)束時圖像獲得的權(quán)重。由圖7可知,本文方法中的注意力機制可以根據(jù)視頻中圖像幀與識別結(jié)果之間的相關(guān)性,有效地為不同圖像幀分配重要性權(quán)重。
圖7 UCF101和HMDB51中的2個片段及其重要性權(quán)重
視頻預(yù)處理中有2個與視頻劃分和采樣相關(guān)的參數(shù),即片段的數(shù)量Sn和在1個片段中采樣圖像幀的數(shù)量In。在UCF101和HMDB51數(shù)據(jù)庫上用不同的Sn值和In值對本文方法進行了測試,結(jié)果見表1所列。
表1 不同的Sn和In的值對于識別精度的影響
本文方法在Sn=4和In=30時獲得了最高的行為識別正確率,這是由于UCF101和HMDB51數(shù)據(jù)庫中的視頻包含的圖像一般在100~200幀之間。當(dāng)Sn=4和In=30時,本文方法通過逐幀采樣可以覆蓋90幀圖像,或是隔幀采樣覆蓋180幀圖像。因此,這組參數(shù)最符合2個數(shù)據(jù)庫的情況。隨著Sn的增加,識別精度僅略有提高,然而,更多的代碼片段會導(dǎo)致更大的計算和內(nèi)存開銷。相反,當(dāng)In值減小時,2個數(shù)據(jù)庫的識別精度都發(fā)生了下降。特別是當(dāng)In=5時,1個片段中只采樣5幀圖像幀,過于稀疏,無法在視頻獲取足夠的行為信息時,導(dǎo)致了較低的識別準(zhǔn)確性。
實驗使用2.3節(jié)中描述的4種不同的信息融合方式來測試本文方法的性能。實驗結(jié)果見表2所列。
表2 不同信息融合方式下的識別精度
對于加性先融合后預(yù)測,融合特征的維度為1 024。在融合的空間特征和融合的時間特征上采用一對多多類策略訓(xùn)練2個線性SVM分類器,并生成空間預(yù)測和時間預(yù)測得分。將空間預(yù)測得分與時間預(yù)測得分相加,得到整個視頻的最終行為識別結(jié)果。
對于串接先融合后預(yù)測,融合后的特征維數(shù)為4×1 024=4 096,后續(xù)的處理與加性先融合后預(yù)測相同。從表2可以看出,先預(yù)測后融合的表現(xiàn)普遍優(yōu)于先融合后預(yù)測,且主要原因是先預(yù)測后融合中的特征提取和預(yù)測通過一個端到端可訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型實現(xiàn),而在先融合后預(yù)測中特征提取和預(yù)測是分為2個步驟進行的。當(dāng)存在大量可利用的訓(xùn)練數(shù)據(jù)時,端到端訓(xùn)練的性能通常要優(yōu)于多步訓(xùn)練的性能。此外,全局先預(yù)測后融合取得了最高的識別正確率,比片段先預(yù)測后融合的結(jié)果更好。這說明全局先預(yù)測后融合方式所獲得的時空特征互補性要強于片段先預(yù)測后融合所獲得的時空特征互補性。
本文方法與其他行為識別方法在UCF101和HMDB51數(shù)據(jù)庫上獲得的識別精度見表3所列。從表3可以看出,本文方法獲得的識別精度優(yōu)于大多數(shù)最新的行為識別算法。與經(jīng)典的兩流模型相比,本文方法在2個數(shù)據(jù)庫上的正確率分別提高了6.4%和12.1%。與LRCN[17]等基于CNN+LSTM的行為識別方法相比,本文方法在UCF101數(shù)據(jù)庫上的識別正確率提高了11.8%。與基于片段時空融合的TSN[14]方法相比,本文方法的正確率分別提高了0.2%和3%。結(jié)果表明,通過注意機制對視頻圖像幀進行重要性加權(quán)顯著提高了行為識別的正確率。
表3 本文方法與最新的行為識別方法的比較
與其他嵌入注意力機制的行為識別方法相比,本文方法在HMDB51數(shù)據(jù)庫上的識別正確率最高(71.5%),在UCF101數(shù)據(jù)庫上也獲得了有競爭力的識別性能(94.4%)。結(jié)果明顯優(yōu)于經(jīng)典的Multi-branch attention方法、Soft attention方法、HM-AN方法和Hierarchical Attention方法,僅比RSTAN和ATW等方法低了0.2%,表明本文方法中將合理的長時間視頻密集采樣策略與有效的信息融合方式相結(jié)合,可以進一步提高嵌入注意力機制的行為識別方法的識別性能。
與基于三維卷積的識別方法相比,本文方法的識別精度明顯高于C3D方法和在ImageNet上預(yù)訓(xùn)練的I3D方法,但要弱于在Kinetics數(shù)據(jù)庫上預(yù)訓(xùn)練的I3D方法。與基于3D的方法相比,使用相同的數(shù)據(jù)庫進行預(yù)訓(xùn)練,本文方法可以獲得更好的識別效果。如果在更大規(guī)模的行為識別數(shù)據(jù)庫上進行預(yù)訓(xùn)練,那么I3D方法的時空表達能力會進一步增強,從而具有更高的識別正確率。
另外也有一些文獻報道了深度學(xué)習(xí)模型與淺層學(xué)習(xí)模型的融合結(jié)果,如文獻[21]中的VideoLSTM+iDT+Objects和文獻[22]中的RSTAN+iDT-FV。由于多模型的融合效果一般要優(yōu)于單一模型,為進行公平的比較,這里僅在表3中列出了單一基于深度學(xué)習(xí)方法的結(jié)果。
本文提出了一種嵌入注意力機制的時空特征融合網(wǎng)絡(luò)ASTFFN,并將其應(yīng)用在行為識別中。該方法將長時程圖像序列分割成多個重疊的片段。密集采樣RGB序列作為片段在空間維度上的表征,相應(yīng)的光流序列作為片段在時間維度上的表征。將空間和時間數(shù)據(jù)分別輸入由CNN+LSTM+注意力構(gòu)成的嵌入注意力機制的AFEM中,進行特征提取、重要性加權(quán)和預(yù)測。上述片段預(yù)測進行融合得到最終的行為識別結(jié)果。利用2個長時程行為識別數(shù)據(jù)UCF101和HMDB51進行了大量的實驗來測試本文算法,評估本文方法在注意力機制、分割、采樣和融合模式等不同參數(shù)配置下的識別性能。實驗結(jié)果表明,基于ALSTFFN的行為識別方法能夠有效提取出長時程圖像序列的時空特征,并通過注意機制對視頻中不同圖像賦予重要性權(quán)重。與最新的行為識別方法相比,本文方法具有明顯的優(yōu)勢。