董 旭,譚 勵,周麗娜,宋艷艷
北京工商大學計算機與信息工程學院,北京 100048
隨著抖音、快手和美拍等短視頻平臺的火爆出現,越來越多的人成為短視頻內容的制造者[1-2],帶動了短視頻行業的蓬勃發展;此外,短視頻因為更加符合人們快節奏的生活、碎片化的閱讀,深受人們的追捧和喜愛。但是和長視頻相比,短視頻時長受限,拍攝質量受制于設備,更重要的是短視頻的質量和內容良莠不齊[3],大量的短視頻如果不加以過濾篩選,直接推送給用戶,會造成審美疲勞;另外,短視頻受制于拍攝設備質量的限制,和專業設備拍出的視頻不同,極有可能出現視頻模糊不清、分辨率不高或者相機抖動的問題;此外,短視頻因為時間較短,包含的信息不夠完整,會產生歧義,如果被不法分子利用,短視頻可能會變成謠言傳播的載體,造成極其惡劣的影響。因此,對短視頻內容的理解,是極其必要且迫在眉睫的。在研究過程中,短視頻中的人物行為的識別是短視頻理解的關鍵。
行為識別[4-6]是計算機視覺中一個重要的研究課題,主要目的是解決“人干了什么”這一任務,涉及的領域包括視頻監控、人機交互、視頻索引等。目前主流的行為識別方法是基于深度學習方法,如雙流CNN(convolutional neural network)方法[7],通過卷積神經網絡分別提取視頻中的RGB信息和光流信息,進行分數融合,從而得到最終的行為識別結果,而Karpathy等人[8],更進一步地研究傳統CNN在videolevel的應用上存在的問題,提出在不同網絡層中進行融合,取得了一定的效果;而3D卷積方法[9-10]是先對圖像信息進行提取,再利用CNN網絡對圖像的時序信息進行學習,最終得到視頻的行為類別。但是,目前的方法更關注于行為動作本身,忽略了視頻中行為和場景之間聯系。短視頻中包含的信息量較少,且包含的信息不夠完整,需要盡可能地利用視頻中的多種特征信息,并利用它們作為先驗知識,幫助提高人物行為識別的準確率。這其中,場景特征的重要性不言而喻。例如,在生活中,做飯這個動作,通常情況下發生的場景是廚房;看電視這個動作通常會發生在客廳或者臥室;打開衣柜這一動作發生場景通常為臥室,如圖1所示。因此,將場景特征信息作為上下文線索,并用于行為識別中,是值得深入研究的。本文的貢獻主要是構建了一種基于字典學習的場景和行為的聯合學習模型,通過場景特征作為上下文信息,提高行為識別效果。

Fig.1 Scene and behavior example圖1 場景和行為示例
Peng等人[11]提出了一種基于運動場景的無監督聚類算法,該方法將靜態場景特征和動態特征進行結合,并在此基礎上建立了一個通過上下文約束的模型。首先,通過單視圖和多視圖約束來探索每個上下文中的多視圖子空間表示的互補性。然后,通過計算上下文約束的關聯矩陣,并引入MSIC(motion-scene interaction constraint)以相互規范場景和運動中子空間表示的不一致。最后,通過共同約束多視圖的互補性和多上下文的一致性,構造了一個總體目標函數來保證視頻動作聚類結果。Zhang等人[12]利用相關的場景上下文來研究提高動作識別性能的可能性。首先,將場景建模為中級“中間層”,以便橋接動作描述符和動作類別。然后,作者使用樸素貝葉斯算法學習場景和動作之間的聯合概率分布,該算法用于通過組合現成的動作識別算法在線聯合推斷動作類別,并通過實驗比對,證明了方法的可行性。Yang等人[13]提出了一種利用語義信息對建筑工地員工行為識別的方法。采用非參數化的數據驅動場景分析方法對構造對象進行識別。從訓練數據中學習了基于上下文的動作識別模型。然后,通過使用已識別的構造對象來改進動作識別。Hou等人[14]提出了一種分解動作場景網絡FASNet。FASNet由兩部分組成,一部分是基于Attention的CANET網絡,這一部分能夠對局部時空特征進行編碼,從而學習到具有良好魯棒性的特征;另一部分由融合網絡構成,主要將時空特征和上下文場景特征進行融合,學習更具描述性的特征信息。Simonyan等人[7]提出了經典的包含空間和時間的雙流網絡架構,空間流從靜止視頻幀執行動作識別,同時訓練時間流以識別來自密集光學流動形式的運動動作,最后通過后期融合進行行為識別。而Dai等人[15]針對物體形狀復雜問題,提出了一種可形變的卷積結構(deformable convolution networks),它對感受野上的每一個點加一個偏移量,使得偏移后感受野和物體的實際形狀相匹配,更好地獲取物體的特征信息。
生活中,人物的行為會受到特定場景的影響,在特定的場景下,人們的行為能夠呈現出一定的規律性。如在前文中舉例的廚房、客廳和臥室等特定場景中,人物的行為分別為做飯、看電視、打開衣柜。因此,在本章中,將介紹一種基于字典學習的場景特征和行為特征聯合學習方法。
設短視頻序列V={v1,v2,…,vn},其中L={l1,l2,…,ln}是每段短視頻最終輸出的行為類別。對于短視頻序列,S={s1,s2,…,sn}為利用基VGGNet的場景分類結果,而A={a1,a2,…,an}為利用可變卷積[15]的雙流方法得到的行為識別結果。于是,對于第i個短視頻,可以將模型定義為:

其中,vi是第i個短視頻,ai是第i個短視頻的行為類別,si是第i個短視頻的場景類別,ωi為學習參數。對于設定的模型,需要有行為特征參數和場景特征參數,因此第i個短視頻的學習ωi可以定義為:


其中,φi(vi,ai,si)用于表示第i個短視頻中,行為和場景的聯合特征向量。根據以上,可以定義為:


將μ1和μ2設置為0.5,最終問題可以轉化為求解學習參數ω的過程,ωa是指行為特征參數信息,ωas是聯合特征的參數信息。ωa可通過訓練得到,ωas則需要通過構建字典聯合求解所得。
稀疏字典學習也稱為字典學習,目標是通過學習一個完備字典,通過字典中少量的原子,對給定數據進行稀疏表示,如圖2所示。
對于一般的稀疏表示問題,可以將問題轉變成為一個優化問題,公式如下:

其中,Bαi需要盡可能模擬xi,使所得誤差最小,只有這樣,才能更好地通過模型反映數據。實驗過程中,對αi的約束規范選擇的是L1范數,因為L1范數可以將不重要的小權重衰減為0,L1范數定義如下:

其中,L1范數是向量元素的絕對值之和。選擇L1范數的原因L1是L0范數的最優凸近似,而且L0本身是一個NP難問題,L1更加容易求解。
在前兩節中,定義了問題模型,并對字典學習的原理進行了闡述。在本節中,將闡述本文所用的方法。主要工作分為特征提取和構建聯合特征,圖3為行為識別的工作流程圖。
3.3.1 特征提取
特征提取分為場景特征提取和行為特征提取。首先,對短視頻提取場景特征。設短視頻序列V={v1,v2,…,vn},其中n為短視頻的個數。場景特征利用基于VGGNet的深度融合網絡進行提取。利用VGGNet16網絡,對場景中的全局特征進行學習提取,利用VGGNet19對場景中的局部細節特征進行學習提取,分別將所學習到的特征進行融合。使用VGGNet的原因是網絡選擇3×3的卷積核,使得參數量更小,小卷積層的疊加能夠進行多次的非線性計算,對特征的學習能力較強。假設場景類別個數為Nscene,對于第i個短視頻,場景識別的目的是找到場景預測概率的最大值,因此有:


Fig.3 Joint feature learning workflow圖3 聯合特征學習工作流程圖
其中,vi為第i個短視頻,為第i個短視頻對應第j個場景的概率值。但是在這里,需要保留vi在所有場景中的概率值,盡可能多地保留視頻中的有用信息,因此:

接下來,需要對短視頻提取行為特征,利用可變卷積網絡的雙流CNN算法進行RGB特征和Flow特征提取。可變卷積網絡的優點在于,它能通過添加的偏移量,更改卷積核的形狀,從而提高卷積網絡對圖像適應能力。可變卷積網絡的結構如圖4所示。

Fig.4 Schematic diagram of variable convolution network圖4 可變卷積網絡示意圖
假設行為類別個數為Naction,對于第i個短視頻,對于行為識別的結果可以定義為:

其中,vi為第i個短視頻,為第i個短視頻對應第k個行為的概率值,進一步看,可以定義為:

同樣,行為特征提取部分,需要保留每段短視頻對所有行為的概率值,定義如下:

3.3.2 構建聯合特征

在這里,選擇的方法是字典學習,原因是,如果直接對行為特征和場景特征進行操作,就會產生大量的聯合特征。在這些聯合特征中,部分影響較小的特征,會對預測過程產生干擾,影響模型的魯棒性。因此,需要進行降維。本文中采取的方法是利用字典學習的方法,求取每個樣本的稀疏編碼,從而提高模型的效果,其稀疏過程如圖5所示。此外,模型的稀疏表示可以更好地解釋具有決策性的特征,因為模型訓練到最后,非零元素的個數較之于起始會大幅減少,從而更加容易解釋模型。

Fig.5 Sparse representation process圖5 稀疏表示過程
因此,問題可以轉化為:


可求得所有短視頻聯合特征結果。在構造字典的過程中,選擇的方法是MiniBatch Dictionary Learning。在字典學習的過程中,劃分為MiniBatch,能夠提升模型的訓練速度,并增加隨機性。并通過設置字典中的元素n_components進行學習。迭代次數分別設置為100次、200次、500次、1 000次、2 000次和5 000次。通過字典學習和稀疏表示,可以得到每個短視頻在所有場景-行為聯合特征的概率值。
本實驗平臺為戴爾服務器PowerEdge R430,操作系統Ubuntu 14.04,CPU Intel?Core i3 3220,內存64 GB,GPU NVIDIA Tesla K40m×2,顯存12 GB×2。
4.2.1 數據集選擇
實驗所選擇的數據集是Charades數據集[16]。Charades數據集共有9 848個視頻段,每段視頻長度在30.1 s,行為類別共有157個,場景類別共有16個。在實驗前,針對廚房場景進行了視頻的篩選,選擇其中的90段短視頻用于訓練,獲取特征,并另外選擇30段短視頻作為測試集。與廚房相關的短視頻示例如圖6所示,數據預處理階段,利用ffmepg工具,按照30 frame/s對短視頻進行分幀處理。對于光流圖像部分,利用opencv光流計算方法,輸出為flow_x和flow_y兩個圖像。

Fig.6 Schematic of Charades kitchen scene圖6 Charades廚房場景示意圖
4.2.2 實驗參數設置
場景特征提取過程使用PyTorch框架,所用的模型是基于VGGNet的深度融合網絡,在ImageNet進行預訓練后,在Charades數據集進行fine-tuning,訓練時批量(batch-size)設置為8,動量(momentum)設置為0.9,優化方法選擇Adam方法。行為特征提取過程中,RGB圖像和光流圖像分別放入到網絡中進行訓練;其中,光流網絡需要截取成等長的連續幀放入到網絡中進行訓練;Deform-GoogLeNet訓練過程使用反向傳播方式,采用Adam優化。字典學習過程中,方法選擇的是MiniBatch Dictionary Learning,n_component設置為16。
場景特征提取和行為特征提取過程的訓練結果如圖7、圖8所示,通過預訓練模型對廚房場景進行訓練。從圖7中可以看出,在4 000次左右時,模型已基本收斂。

Fig.7 Changes in loss value of scene feature extraction圖7 場景特征提取過程Loss值變化

Fig.8 Changes in loss value of action feature extraction圖8 行為特征提取過程Loss值變化
在對行為特征進行訓練時,需要利用雙流CNN網絡分別對RGB特征和Flow特征進行提取。圖8為行為特征提取過程Loss值變化,從圖8(a)中可以看出,RGB特征提取過程,在前9 000次迭代過程中,Loss值下降速度比較快,說明模型收斂比較快,而在9 000次迭代之后,Loss值的下降速度放緩,模型緩慢收斂;由圖8(b)中可以看出,Flow特征提取過程,在前7 500次迭代過程中,Loss值下降速度比較快,7 500次迭代之后,模型收斂速度放緩,但是基本趨于穩定。
將數據集標注的行為動詞和場景類別進行了可視化分析,結果如圖9中的詞云所示。

Fig.9 Behavior verbs and scene nouns in Charades kitchen圖9 Charades廚房場景中行為動詞和場景名詞
通過圖9(a)中詞云展示,可以比較明顯地看出在廚房的一些特定的行為,如“烹飪(cook)”“洗(wash)”“倒(pour)”和“喝(drink)”等動作;而圖9(b)中展示了數據集和廚房有關的場景中的物體信息,如“爐(stove)”“桌子(table)”“餐具柜(pantry)”和“三明治(sandwich)”等。通過詞云的呈現,可以比較容易地找出動作和場景之間的關系。比如,“吃(eat)”和“食物(food)”,“開(open)”和“冰箱(refrigerator)”,“洗(wash)”和“盤子(dish)”等,能夠反映出場景和人物的行為存在著一定的聯系。
在字典學習過程中,分別在100次、200次、500次、1 000次、2 000次和5 000次的迭代次數下進行了多次實驗,并求取平均值。之后對不同迭代次數下的top-5準確率結果進行比對,結果如圖10所示。通過圖10可以發現,當迭代次數為1 000次的時候,top-5準確率為33%,但是迭代次數的設置并不是越多越好,當迭代次數從1 000次增加到5 000次時,準確率呈下降趨勢。

Fig.10 Test set top-5 results圖10 測試集top-5結果
為了證明本文方法的有效性,分別使用Two-Stream方法和基于可變卷積的Two-Stream方法和本文方法進行比較,實驗結果如表1所示,本文方法有了比較明顯的提高。證明了場景作為上下文信息能夠提高行為識別的準確率。

Table 1 Comparison of different methods on Charades test set表1 不同方法在Charades測試集上的比對結果
本文針對短視頻的行為識別現狀存在的問題,提出了一種基于場景和行為的聯合特征學習的短視頻行為識別方法,對短視頻中的行為識別問題進行了研究。首先,利用VGGNet16和VGGNet19分別提取場景的全局特征和局部細節特征;之后,融合兩個網絡提取的特征結果,得到深度融合網絡提取場景特征信息;最后,利用基于可變卷積網絡的雙流CNN網絡提取短視頻中的行為特征。提取行為特征過程的優勢,一是利用可變卷積網絡通過添加的偏移量更改卷積核形狀,獲取更多特征信息以提高網絡對圖像的適應能力;二是分別對RGB特征和Flow特征提取,充分利用了視頻的空間和時間維度信息。利用本文提出的聯合特征學習方法,將場景信息作為背景知識,結合提取的行為特征,進行最終行為識別的判斷,并運用字典學習的方法,減少聯合特征的維度,得到了準確和高效的識別效果。在Charades測試集top-5準確率為33%,和之前的方法比較,有了明顯的提升,證明了本文方法的有效性。在未來的工作中,計劃將短視頻中的物體特征和場景特征同時作為行為識別的先驗知識,進一步提高行為識別的效果。