董 旭,譚 勵,周麗娜,宋艷艷
北京工商大學(xué)計算機(jī)與信息工程學(xué)院,北京 100048
隨著抖音、快手和美拍等短視頻平臺的火爆出現(xiàn),越來越多的人成為短視頻內(nèi)容的制造者[1-2],帶動了短視頻行業(yè)的蓬勃發(fā)展;此外,短視頻因?yàn)楦臃先藗兛旃?jié)奏的生活、碎片化的閱讀,深受人們的追捧和喜愛。但是和長視頻相比,短視頻時長受限,拍攝質(zhì)量受制于設(shè)備,更重要的是短視頻的質(zhì)量和內(nèi)容良莠不齊[3],大量的短視頻如果不加以過濾篩選,直接推送給用戶,會造成審美疲勞;另外,短視頻受制于拍攝設(shè)備質(zhì)量的限制,和專業(yè)設(shè)備拍出的視頻不同,極有可能出現(xiàn)視頻模糊不清、分辨率不高或者相機(jī)抖動的問題;此外,短視頻因?yàn)闀r間較短,包含的信息不夠完整,會產(chǎn)生歧義,如果被不法分子利用,短視頻可能會變成謠言傳播的載體,造成極其惡劣的影響。因此,對短視頻內(nèi)容的理解,是極其必要且迫在眉睫的。在研究過程中,短視頻中的人物行為的識別是短視頻理解的關(guān)鍵。
行為識別[4-6]是計算機(jī)視覺中一個重要的研究課題,主要目的是解決“人干了什么”這一任務(wù),涉及的領(lǐng)域包括視頻監(jiān)控、人機(jī)交互、視頻索引等。目前主流的行為識別方法是基于深度學(xué)習(xí)方法,如雙流CNN(convolutional neural network)方法[7],通過卷積神經(jīng)網(wǎng)絡(luò)分別提取視頻中的RGB信息和光流信息,進(jìn)行分?jǐn)?shù)融合,從而得到最終的行為識別結(jié)果,而Karpathy等人[8],更進(jìn)一步地研究傳統(tǒng)CNN在videolevel的應(yīng)用上存在的問題,提出在不同網(wǎng)絡(luò)層中進(jìn)行融合,取得了一定的效果;而3D卷積方法[9-10]是先對圖像信息進(jìn)行提取,再利用CNN網(wǎng)絡(luò)對圖像的時序信息進(jìn)行學(xué)習(xí),最終得到視頻的行為類別。但是,目前的方法更關(guān)注于行為動作本身,忽略了視頻中行為和場景之間聯(lián)系。短視頻中包含的信息量較少,且包含的信息不夠完整,需要盡可能地利用視頻中的多種特征信息,并利用它們作為先驗(yàn)知識,幫助提高人物行為識別的準(zhǔn)確率。這其中,場景特征的重要性不言而喻。例如,在生活中,做飯這個動作,通常情況下發(fā)生的場景是廚房;看電視這個動作通常會發(fā)生在客廳或者臥室;打開衣柜這一動作發(fā)生場景通常為臥室,如圖1所示。因此,將場景特征信息作為上下文線索,并用于行為識別中,是值得深入研究的。本文的貢獻(xiàn)主要是構(gòu)建了一種基于字典學(xué)習(xí)的場景和行為的聯(lián)合學(xué)習(xí)模型,通過場景特征作為上下文信息,提高行為識別效果。
Fig.1 Scene and behavior example圖1 場景和行為示例
Peng等人[11]提出了一種基于運(yùn)動場景的無監(jiān)督聚類算法,該方法將靜態(tài)場景特征和動態(tài)特征進(jìn)行結(jié)合,并在此基礎(chǔ)上建立了一個通過上下文約束的模型。首先,通過單視圖和多視圖約束來探索每個上下文中的多視圖子空間表示的互補(bǔ)性。然后,通過計算上下文約束的關(guān)聯(lián)矩陣,并引入MSIC(motion-scene interaction constraint)以相互規(guī)范場景和運(yùn)動中子空間表示的不一致。最后,通過共同約束多視圖的互補(bǔ)性和多上下文的一致性,構(gòu)造了一個總體目標(biāo)函數(shù)來保證視頻動作聚類結(jié)果。Zhang等人[12]利用相關(guān)的場景上下文來研究提高動作識別性能的可能性。首先,將場景建模為中級“中間層”,以便橋接動作描述符和動作類別。然后,作者使用樸素貝葉斯算法學(xué)習(xí)場景和動作之間的聯(lián)合概率分布,該算法用于通過組合現(xiàn)成的動作識別算法在線聯(lián)合推斷動作類別,并通過實(shí)驗(yàn)比對,證明了方法的可行性。Yang等人[13]提出了一種利用語義信息對建筑工地員工行為識別的方法。采用非參數(shù)化的數(shù)據(jù)驅(qū)動場景分析方法對構(gòu)造對象進(jìn)行識別。從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)了基于上下文的動作識別模型。然后,通過使用已識別的構(gòu)造對象來改進(jìn)動作識別。Hou等人[14]提出了一種分解動作場景網(wǎng)絡(luò)FASNet。FASNet由兩部分組成,一部分是基于Attention的CANET網(wǎng)絡(luò),這一部分能夠?qū)植繒r空特征進(jìn)行編碼,從而學(xué)習(xí)到具有良好魯棒性的特征;另一部分由融合網(wǎng)絡(luò)構(gòu)成,主要將時空特征和上下文場景特征進(jìn)行融合,學(xué)習(xí)更具描述性的特征信息。Simonyan等人[7]提出了經(jīng)典的包含空間和時間的雙流網(wǎng)絡(luò)架構(gòu),空間流從靜止視頻幀執(zhí)行動作識別,同時訓(xùn)練時間流以識別來自密集光學(xué)流動形式的運(yùn)動動作,最后通過后期融合進(jìn)行行為識別。而Dai等人[15]針對物體形狀復(fù)雜問題,提出了一種可形變的卷積結(jié)構(gòu)(deformable convolution networks),它對感受野上的每一個點(diǎn)加一個偏移量,使得偏移后感受野和物體的實(shí)際形狀相匹配,更好地獲取物體的特征信息。
生活中,人物的行為會受到特定場景的影響,在特定的場景下,人們的行為能夠呈現(xiàn)出一定的規(guī)律性。如在前文中舉例的廚房、客廳和臥室等特定場景中,人物的行為分別為做飯、看電視、打開衣柜。因此,在本章中,將介紹一種基于字典學(xué)習(xí)的場景特征和行為特征聯(lián)合學(xué)習(xí)方法。
設(shè)短視頻序列V={v1,v2,…,vn},其中L={l1,l2,…,ln}是每段短視頻最終輸出的行為類別。對于短視頻序列,S={s1,s2,…,sn}為利用基VGGNet的場景分類結(jié)果,而A={a1,a2,…,an}為利用可變卷積[15]的雙流方法得到的行為識別結(jié)果。于是,對于第i個短視頻,可以將模型定義為:
其中,vi是第i個短視頻,ai是第i個短視頻的行為類別,si是第i個短視頻的場景類別,ωi為學(xué)習(xí)參數(shù)。對于設(shè)定的模型,需要有行為特征參數(shù)和場景特征參數(shù),因此第i個短視頻的學(xué)習(xí)ωi可以定義為:
其中,φi(vi,ai,si)用于表示第i個短視頻中,行為和場景的聯(lián)合特征向量。根據(jù)以上,可以定義為:
將μ1和μ2設(shè)置為0.5,最終問題可以轉(zhuǎn)化為求解學(xué)習(xí)參數(shù)ω的過程,ωa是指行為特征參數(shù)信息,ωas是聯(lián)合特征的參數(shù)信息。ωa可通過訓(xùn)練得到,ωas則需要通過構(gòu)建字典聯(lián)合求解所得。
稀疏字典學(xué)習(xí)也稱為字典學(xué)習(xí),目標(biāo)是通過學(xué)習(xí)一個完備字典,通過字典中少量的原子,對給定數(shù)據(jù)進(jìn)行稀疏表示,如圖2所示。
對于一般的稀疏表示問題,可以將問題轉(zhuǎn)變成為一個優(yōu)化問題,公式如下:
其中,Bαi需要盡可能模擬xi,使所得誤差最小,只有這樣,才能更好地通過模型反映數(shù)據(jù)。實(shí)驗(yàn)過程中,對αi的約束規(guī)范選擇的是L1范數(shù),因?yàn)長1范數(shù)可以將不重要的小權(quán)重衰減為0,L1范數(shù)定義如下:
其中,L1范數(shù)是向量元素的絕對值之和。選擇L1范數(shù)的原因L1是L0范數(shù)的最優(yōu)凸近似,而且L0本身是一個NP難問題,L1更加容易求解。
在前兩節(jié)中,定義了問題模型,并對字典學(xué)習(xí)的原理進(jìn)行了闡述。在本節(jié)中,將闡述本文所用的方法。主要工作分為特征提取和構(gòu)建聯(lián)合特征,圖3為行為識別的工作流程圖。
3.3.1 特征提取
特征提取分為場景特征提取和行為特征提取。首先,對短視頻提取場景特征。設(shè)短視頻序列V={v1,v2,…,vn},其中n為短視頻的個數(shù)。場景特征利用基于VGGNet的深度融合網(wǎng)絡(luò)進(jìn)行提取。利用VGGNet16網(wǎng)絡(luò),對場景中的全局特征進(jìn)行學(xué)習(xí)提取,利用VGGNet19對場景中的局部細(xì)節(jié)特征進(jìn)行學(xué)習(xí)提取,分別將所學(xué)習(xí)到的特征進(jìn)行融合。使用VGGNet的原因是網(wǎng)絡(luò)選擇3×3的卷積核,使得參數(shù)量更小,小卷積層的疊加能夠進(jìn)行多次的非線性計算,對特征的學(xué)習(xí)能力較強(qiáng)。假設(shè)場景類別個數(shù)為Nscene,對于第i個短視頻,場景識別的目的是找到場景預(yù)測概率的最大值,因此有:
Fig.3 Joint feature learning workflow圖3 聯(lián)合特征學(xué)習(xí)工作流程圖
其中,vi為第i個短視頻,為第i個短視頻對應(yīng)第j個場景的概率值。但是在這里,需要保留vi在所有場景中的概率值,盡可能多地保留視頻中的有用信息,因此:
接下來,需要對短視頻提取行為特征,利用可變卷積網(wǎng)絡(luò)的雙流CNN算法進(jìn)行RGB特征和Flow特征提取。可變卷積網(wǎng)絡(luò)的優(yōu)點(diǎn)在于,它能通過添加的偏移量,更改卷積核的形狀,從而提高卷積網(wǎng)絡(luò)對圖像適應(yīng)能力??勺兙矸e網(wǎng)絡(luò)的結(jié)構(gòu)如圖4所示。
Fig.4 Schematic diagram of variable convolution network圖4 可變卷積網(wǎng)絡(luò)示意圖
假設(shè)行為類別個數(shù)為Naction,對于第i個短視頻,對于行為識別的結(jié)果可以定義為:
其中,vi為第i個短視頻,為第i個短視頻對應(yīng)第k個行為的概率值,進(jìn)一步看,可以定義為:
同樣,行為特征提取部分,需要保留每段短視頻對所有行為的概率值,定義如下:
3.3.2 構(gòu)建聯(lián)合特征
在這里,選擇的方法是字典學(xué)習(xí),原因是,如果直接對行為特征和場景特征進(jìn)行操作,就會產(chǎn)生大量的聯(lián)合特征。在這些聯(lián)合特征中,部分影響較小的特征,會對預(yù)測過程產(chǎn)生干擾,影響模型的魯棒性。因此,需要進(jìn)行降維。本文中采取的方法是利用字典學(xué)習(xí)的方法,求取每個樣本的稀疏編碼,從而提高模型的效果,其稀疏過程如圖5所示。此外,模型的稀疏表示可以更好地解釋具有決策性的特征,因?yàn)槟P陀?xùn)練到最后,非零元素的個數(shù)較之于起始會大幅減少,從而更加容易解釋模型。
Fig.5 Sparse representation process圖5 稀疏表示過程
因此,問題可以轉(zhuǎn)化為:
可求得所有短視頻聯(lián)合特征結(jié)果。在構(gòu)造字典的過程中,選擇的方法是MiniBatch Dictionary Learning。在字典學(xué)習(xí)的過程中,劃分為MiniBatch,能夠提升模型的訓(xùn)練速度,并增加隨機(jī)性。并通過設(shè)置字典中的元素n_components進(jìn)行學(xué)習(xí)。迭代次數(shù)分別設(shè)置為100次、200次、500次、1 000次、2 000次和5 000次。通過字典學(xué)習(xí)和稀疏表示,可以得到每個短視頻在所有場景-行為聯(lián)合特征的概率值。
本實(shí)驗(yàn)平臺為戴爾服務(wù)器PowerEdge R430,操作系統(tǒng)Ubuntu 14.04,CPU Intel?Core i3 3220,內(nèi)存64 GB,GPU NVIDIA Tesla K40m×2,顯存12 GB×2。
4.2.1 數(shù)據(jù)集選擇
實(shí)驗(yàn)所選擇的數(shù)據(jù)集是Charades數(shù)據(jù)集[16]。Charades數(shù)據(jù)集共有9 848個視頻段,每段視頻長度在30.1 s,行為類別共有157個,場景類別共有16個。在實(shí)驗(yàn)前,針對廚房場景進(jìn)行了視頻的篩選,選擇其中的90段短視頻用于訓(xùn)練,獲取特征,并另外選擇30段短視頻作為測試集。與廚房相關(guān)的短視頻示例如圖6所示,數(shù)據(jù)預(yù)處理階段,利用ffmepg工具,按照30 frame/s對短視頻進(jìn)行分幀處理。對于光流圖像部分,利用opencv光流計算方法,輸出為flow_x和flow_y兩個圖像。
Fig.6 Schematic of Charades kitchen scene圖6 Charades廚房場景示意圖
4.2.2 實(shí)驗(yàn)參數(shù)設(shè)置
場景特征提取過程使用PyTorch框架,所用的模型是基于VGGNet的深度融合網(wǎng)絡(luò),在ImageNet進(jìn)行預(yù)訓(xùn)練后,在Charades數(shù)據(jù)集進(jìn)行fine-tuning,訓(xùn)練時批量(batch-size)設(shè)置為8,動量(momentum)設(shè)置為0.9,優(yōu)化方法選擇Adam方法。行為特征提取過程中,RGB圖像和光流圖像分別放入到網(wǎng)絡(luò)中進(jìn)行訓(xùn)練;其中,光流網(wǎng)絡(luò)需要截取成等長的連續(xù)幀放入到網(wǎng)絡(luò)中進(jìn)行訓(xùn)練;Deform-GoogLeNet訓(xùn)練過程使用反向傳播方式,采用Adam優(yōu)化。字典學(xué)習(xí)過程中,方法選擇的是MiniBatch Dictionary Learning,n_component設(shè)置為16。
場景特征提取和行為特征提取過程的訓(xùn)練結(jié)果如圖7、圖8所示,通過預(yù)訓(xùn)練模型對廚房場景進(jìn)行訓(xùn)練。從圖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值變化
在對行為特征進(jìn)行訓(xùn)練時,需要利用雙流CNN網(wǎng)絡(luò)分別對RGB特征和Flow特征進(jìn)行提取。圖8為行為特征提取過程Loss值變化,從圖8(a)中可以看出,RGB特征提取過程,在前9 000次迭代過程中,Loss值下降速度比較快,說明模型收斂比較快,而在9 000次迭代之后,Loss值的下降速度放緩,模型緩慢收斂;由圖8(b)中可以看出,F(xiàn)low特征提取過程,在前7 500次迭代過程中,Loss值下降速度比較快,7 500次迭代之后,模型收斂速度放緩,但是基本趨于穩(wěn)定。
將數(shù)據(jù)集標(biāo)注的行為動詞和場景類別進(jìn)行了可視化分析,結(jié)果如圖9中的詞云所示。
Fig.9 Behavior verbs and scene nouns in Charades kitchen圖9 Charades廚房場景中行為動詞和場景名詞
通過圖9(a)中詞云展示,可以比較明顯地看出在廚房的一些特定的行為,如“烹飪(cook)”“洗(wash)”“倒(pour)”和“喝(drink)”等動作;而圖9(b)中展示了數(shù)據(jù)集和廚房有關(guān)的場景中的物體信息,如“爐(stove)”“桌子(table)”“餐具柜(pantry)”和“三明治(sandwich)”等。通過詞云的呈現(xiàn),可以比較容易地找出動作和場景之間的關(guān)系。比如,“吃(eat)”和“食物(food)”,“開(open)”和“冰箱(refrigerator)”,“洗(wash)”和“盤子(dish)”等,能夠反映出場景和人物的行為存在著一定的聯(lián)系。
在字典學(xué)習(xí)過程中,分別在100次、200次、500次、1 000次、2 000次和5 000次的迭代次數(shù)下進(jìn)行了多次實(shí)驗(yàn),并求取平均值。之后對不同迭代次數(shù)下的top-5準(zhǔn)確率結(jié)果進(jìn)行比對,結(jié)果如圖10所示。通過圖10可以發(fā)現(xiàn),當(dāng)?shù)螖?shù)為1 000次的時候,top-5準(zhǔn)確率為33%,但是迭代次數(shù)的設(shè)置并不是越多越好,當(dāng)?shù)螖?shù)從1 000次增加到5 000次時,準(zhǔn)確率呈下降趨勢。
Fig.10 Test set top-5 results圖10 測試集top-5結(jié)果
為了證明本文方法的有效性,分別使用Two-Stream方法和基于可變卷積的Two-Stream方法和本文方法進(jìn)行比較,實(shí)驗(yàn)結(jié)果如表1所示,本文方法有了比較明顯的提高。證明了場景作為上下文信息能夠提高行為識別的準(zhǔn)確率。
Table 1 Comparison of different methods on Charades test set表1 不同方法在Charades測試集上的比對結(jié)果
本文針對短視頻的行為識別現(xiàn)狀存在的問題,提出了一種基于場景和行為的聯(lián)合特征學(xué)習(xí)的短視頻行為識別方法,對短視頻中的行為識別問題進(jìn)行了研究。首先,利用VGGNet16和VGGNet19分別提取場景的全局特征和局部細(xì)節(jié)特征;之后,融合兩個網(wǎng)絡(luò)提取的特征結(jié)果,得到深度融合網(wǎng)絡(luò)提取場景特征信息;最后,利用基于可變卷積網(wǎng)絡(luò)的雙流CNN網(wǎng)絡(luò)提取短視頻中的行為特征。提取行為特征過程的優(yōu)勢,一是利用可變卷積網(wǎng)絡(luò)通過添加的偏移量更改卷積核形狀,獲取更多特征信息以提高網(wǎng)絡(luò)對圖像的適應(yīng)能力;二是分別對RGB特征和Flow特征提取,充分利用了視頻的空間和時間維度信息。利用本文提出的聯(lián)合特征學(xué)習(xí)方法,將場景信息作為背景知識,結(jié)合提取的行為特征,進(jìn)行最終行為識別的判斷,并運(yùn)用字典學(xué)習(xí)的方法,減少聯(lián)合特征的維度,得到了準(zhǔn)確和高效的識別效果。在Charades測試集top-5準(zhǔn)確率為33%,和之前的方法比較,有了明顯的提升,證明了本文方法的有效性。在未來的工作中,計劃將短視頻中的物體特征和場景特征同時作為行為識別的先驗(yàn)知識,進(jìn)一步提高行為識別的效果。