?

改進2D CNN時空特征提取的動作識別研究

2024-02-28 08:18吉晨鐘次旺晉美陳云芳
小型微型計算機系統 2024年1期
關鍵詞:時空卷積建模

吉晨鐘,次旺晉美,張 偉,陳云芳

(南京郵電大學 計算機學院,南京 210023)

0 引 言

視頻技術在無人駕駛、視頻監控、智能機器人等領域被廣泛使用,已然成為了當今大數據時代的最值得關注的領域之一,而準確高效地理解視頻信息也迅速成為研究熱點.在視頻理解領域,最重要的任務之一就是動作識別,其目的是準確判斷視頻中的動作類別.動作識別和圖像識別的區別在于動作識別比圖像識別多了一個時間維度,所以不同于圖像識別只需考慮單幀圖像的語義信息,動作識別還需要從視頻幀的時序信息中挖掘線索,對時間信息的建模也同樣重要.傳統的動作識別方法分為基于運動信息的特征提取方法和基于時空興趣點的時空特征提取方法[1],將識別任務分割為特征提取和動作分類兩個階段,在面臨大規模數據集時,缺乏靈活性和可擴展性.

與傳統方法不同,深度學習方法是端到端的框架,可以自動學習和提取視頻特征.基于卷積神經網絡(Convolutional Neural Network,CNN)的動作識別取得了卓越的效果.Simonyan等[2]提出了基于2D CNN的雙流網絡,整個網絡包含一個空間流和一個時間流,空間流通過RGB圖像提取空間信息,時間流通過密集光流提取時間信息,最后在網絡尾部融合兩個流的softmax得分得到視頻級的預測結果.雙流網絡和及其大多數變體主要聚焦于如何有效融合這兩個流以及如何改進基于時間分段的采樣策略并有效地匯總不同分段的特征,如時空蒸餾的密集連接網絡(Spatiotemporal Distilled Dense-connectivity Network,STDDCN)[3]在空間流和時間流之間使用塊級密集連接來加強空間特征和時間特征的交互,時域分段網絡(Temporal Segment Networks,TSN)[4]在雙流網絡的基礎上引入稀疏采樣策略,保證輸入網絡的幀序列覆蓋視頻的各個時間段.雙流網絡模型為了獲得更好的動作識別效果,需要預計算光流后送入時間流中,然而光流的計算和存儲是一筆不菲的開銷,而且由于光流僅表示相鄰幀之間的運動信息,因此雙流網絡在時間上下文的利用上效果有限,不利于建模一些時間跨度較大的動作.

Carreira和Zisserman[5]率先將2D CNN拓展到3D CNN并將其應用于動作識別,有效提高了動作識別的準確率.C3D[6]在3D卷積的基礎上進行整合,通過3D卷積和3D池化同時在時間和空間中進行時空特征提取.Diba等[7]引入一種時域過渡層(Temporal Transition Layer,TTL)給可變時域卷積核深度建模,并將其嵌入到3D CNN中,從而構建起新的網絡T3D(Temporal 3D ConvNets).然而,由于3D CNN相比2D CNN引入了龐大的參數量,極大地增加了網絡的復雜度,導致基于3D CNN的動作識別模型訓練較為困難,而且在缺乏足夠大的訓練數據集時可能使動作識別效果不佳,此外,3D卷積將時間和空間維度上的特征信息混合在一起,增加了模型過擬合風險和優化難度.

研究者們試圖在網絡復雜度和時間建模能力之間達成一種平衡,并提出了時空分解網絡.一些方法(P3D[8],R(2+1)D[9],S3D[10])通過解耦時空濾波器,將3D卷積分解為2D空間卷積和1D時間卷積來實現3D卷積的結構分解和時空域信息交互的分離,從而降低計算成本.CSN[11]使用深度可分離卷積來減少通道間的相互作用,節省計算量.GST[12]通過分組卷積的方式將特征通道固定地分成兩組,對空間和時空特征分別建模,以縮減時間建模的通道數量的形式減少冗余計算.然而這些方法的網絡結構分解都是以一種預先設定的、硬連接的模式來得到的,特征信息在網絡中的傳播方向固化,不能依據信息的特點進行動態調整.

綜上所述,基于雙流網絡的動作識別模型需要預計算光流,不僅消耗大量的算力和存儲空間,而且難于表征長距離的運動信息;基于3D CNN的動作識別模型將時間和空間特征信息混合在一起,導致模型訓練復雜度高和計算成本較大;時空分解網絡存在網絡結構分解固化的缺點,網絡中由前一個模塊輸出到下一個模塊的特征數據固定不變.

本文提出了一種改進2D CNN時空特征提取的動作識別方法,構建了時空門控和動作注意力聚合(Spatial-temporal Gating and Motion Attention-aggregation,SGMA)模塊,通過在2D CNN中嵌入SGMA來提高網絡時空特征建模能力.SGMA包含時空動態門控(Spatial-temporal Dynamic Gate,SDG)和動作注意力聚合(Motion Attention Aggregation,MAA)兩個子模塊.SDG模塊動態地將各通道特征劃分為利于時間建模的運動強相關特征和利于空間建模的運動弱相關特征,運動強相關特征經過MAA模塊提取長程時間特征,運動弱相關特征利用2D卷積提取空間特征,最后兩者融合后輸出強有力時空特征.

本文的主要貢獻有以下3個方面:1)提出了一種改進2D CNN時空特征提取的動作識別方法,在2D CNN中嵌入SGMA能大幅增強網絡的時空特征建模能力且僅增加極少的計算量和存儲空間;2)SGMA中的SDG模塊能夠動態門控輸入特征,動態分離出用于空間和時間建模的特征;SGMA中的MAA模塊有助于捕捉長程運動信息,增強長跨度時空特征的建模能力;3)SGMA在網絡復雜度和動作識別準確率之間達到了一個很好的平衡,在Something-SomethingV1[13]&V2[14]兩個數據集上獲得了很好的表現.

1 相關工作

1.1 基于CNN的動作識別

2D CNN最初是設計在靜態圖像中感知空間信息,由于其在圖像分類任務中取得了巨大的成功,2D CNN也被應用于解決視頻動作識別的問題.Simonyan等[2]提出了基于2D CNN的雙流網絡,空間流使用單幀RGB處理外觀細信息,時間流使用多幀密集光流場處理運動信息,兩個并行流同時對視頻進行時間和空間特征建模,但是輸入時間流的光流要耗費一定的計算資源和存儲開銷,而且只依賴相鄰幀計算的光流對時間上下文的訪問十分有限.雙流網絡需要密集采樣視頻幀,對于長視頻來說計算量太過龐大,在此背景下,TSN[4]引入稀疏采樣策略,從整個視頻中稀疏采樣一系列視頻段,每個片段給出其行為類別的初步預測,最后利用共識函數組合各個片段的輸出來得到視頻級的預測結果.Lin等[15]引入了幀間通道移位的概念,并在此基礎上提出時序移位模塊(Temporal Shift Module,TSM),其在不引入額外參數的前提下通過通道移位賦予2D CNN時間建模的能力.TEINet[16]則在此方向上進一步探究,以在通道維度應用1D CNN的方式補充時序上下文信息,提出了一種學習時間特征的范式.

3D CNN天然擁有從幀序列中提取時空語義信息的能力.Ji等[17]首次提出采用3D CNN提取視頻的時空特征,其在相鄰幀上執行3D卷積,獲取灰度、梯度和光流通道信息,從空間和時間維度提取特征.Tran等[6]在此基礎上提出了C3D,C3D是完全的3D卷積網絡,包括5個卷積層、5個最大池化層、兩個全連接層和一個softmax層,結果表明C3D模型的表現接近或超越了包括動作識別在內的各種視頻分析基準.為了進一步提高3D CNN的概括能力,Carreira等[5]提出了I3D,通過在時間維度上重復2D卷積將深度圖像分類網絡拓展成時空特征提取器,使得網絡能夠復用在ImageNet[18]上預訓練的2D濾波器.3D CNN雖取得了一定的成功,但引入了大量的參數,計算量較大,導致網絡的推理速度較慢.

時空分解網絡的思想是通過將時空特征進行分開建模,以達到減少參數和易于優化的目的,主要包括解耦時空濾波器的時空分解卷積以及分離時空特征通道的通道分離卷積.Qiu等[8]提出了偽三維殘差網絡(Pseudo 3D Residual Networks,P3D),其通過組合1×3×3空間卷積和3×1×1時間卷積來模擬C3D[6]中的3×3×3時空卷積來減少計算和存儲消耗.Du等[9]提出的R(2+1)D也采用了使用簡化的CNN代替3D卷積的思想,不同于P3D,R(2+1)D拋棄了瓶頸結構而在所有網絡層中只使用一種類型的時空殘差塊.Xie等[10]通過時空分解卷積改造I3D[5]網絡,提出了S3D網絡,通過時空解耦的S3D網絡相比于I3D網絡,具有更少的參數和更小的計算復雜度.和上述方法利用時空分離卷積來降低網絡復雜度不同,通道分離卷積可以減少時空交互的數量,進而減少網絡參數.Luo等[12]提出了分組時空聚合(Grouped Spatial-Temporal aggregation,GST)的方法,GST將特征通道分為空間組和時間組,空間組采用2D卷積空間建模,時間組采用3D卷積時間建模.上述這些時空分解的方法在一定程度上減少了學習的參數量和降低了優化的難度,但是其分解空間、時間、通道之間相互作用的出發點都是一致的,本文提出的SDG模塊與上述方法不同,可以按時間和空間信息的特點動態路由輸入特征,適應性地控制時空交互行為,且幾乎不增加計算成本.

1.2 動作的長程時間建模

動作識別任務涉及從視頻中識別不同的動作,其中的動作可能貫穿整個視頻,這時模型即使有很強的空間對象檢測能力也無法勝任識別任務,因為運動信息還攜帶更詳細的細節,這就需要跨幀捕捉時空上下文,而不同的視頻動作數據集對時空上下文的表現程度存在差異.

視頻動作數據集分為以場景為主和以時間為主兩類[19].場景相關的動作數據集包含較多與動作識別有關的場景信息,場景信息對確定視頻中的動作標簽具有很大指導作用.UCF101[20]和HMDB51[21]是兩種常見的以場景為主的動作視頻數據集,一般被作為動作識別的目標數據集,用于評估模型的性能.這類數據集只需要像光流這種能夠獲取短距離時間特征的方法就能達到較好的識別效果,不需要去構建長距離的時空特征,對于動作識別任務的挑戰性較小.因此,在這種以場景為主的數據集中,動作識別模型中的雙流網絡[2]和I3D[5]通過密集視頻幀捕獲短距離時空特征的方法就可以勝任識別任務.

時間相關的動作視頻數據集更關注運動本身,動作粒度更細致,動作類間差異性小,要精確地區分這些動作比較困難,要求模型能夠編碼更深層次的時間特征.Something-Something[13,14]數據集就是時間相關的動作視頻數據集中的一種,其主要收集了人物交互的動作,是一種高細粒度標注的數據集,例如該數據集的兩個動作“Pulling something from left to right”和“Pulling something from right to left”,這兩個動作具有極高的相似性,主要差異在移動物體的運動方向,導致僅僅依靠短距離時空特征無法出色地完成推理預測的工作,因此在該數據集上進行的動作識別任務極具挑戰性.傳統的光流網絡[2]使用光流作為運動信息描述整個動作的運動,難以有效組織對長時間依賴的動作信息;基于3D CNN的動作識別模型的輸入被限制為一個較少的視頻幀序列,因為隨著輸入窗口的增加,模型訓練的參數也會增加,所以也不利于提取長時間的動作信息.為此,本文提出了MAA模塊,其通過通道分組和橫向連接構建了一個金字塔結構來提升時間感受野,然后利用注意力機制融合各個分組特征,實現長距離的時間特征建模.

2 改進2D CNN時空特征提取的動作識別方法

本章節將詳細介紹改進2D CNN時空特征提取的動作識別方法,首先介紹該方法的整體系統框架,其次分析SDG模塊和MAA模塊的網絡結構,然后闡述SGMA的構建方法及其嵌入到2D CNN中的方式,最后討論MAA模塊的網絡結構和ResNeSt[22]的聯系.

2.1 系統框架

本文提出了一種改進2D CNN時空特征提取的動作識別方法,該方法可以應用于多種2D CNN并增強其時空特征學習能力,提升動作識別準確率.圖1展示了本文方法應用于ResNet-50[23]的系統框架圖.網絡的輸入采用了TSN[4]提出的稀疏采樣策略,首先,對一段包含動作的視頻平均分成T段,然后從每一段視頻中隨機抽取一幀按順序組合成視頻幀序列.這種稀疏采樣策略能夠最大化的包含視頻的時空信息,利于對整個動作進行有效建模.為了在基本不增加計算量的情況下,彌補2D ResNet-50無法有效建模時間特征的缺陷,將ResNet-50中的殘差塊的殘差分支中3×3的2D卷積替換為SGMA.SGMA是一種輕量級的增強2D CNN網絡時空特征學習能力的模塊,其包含兩個子模塊,分別是時空動態門控(SDG)模塊和動作注意力聚合(MAA)模塊.SDG模塊無需采用像素級的光流作為額外的模態輸入網絡,而是依靠相鄰幀特征的差異區分運動強相關特征和運動弱相關特征,運動強相關特征是指聚焦運動描述、關注動作變化的那部分信息,有利于時間特征建模,運動弱相關特征是指聚焦背景描述、關注外觀線索的那部分信息,有利于空間特征建模.輸入SDG模塊的特征產生兩個特征張量,一個是運動強相關特征,另一個是運動弱相關特征,運動強相關特征再由MAA模塊進一步提取長程時間特征,運動弱相關特征通過2D卷積進一步提取空間特征,最終將兩者融合得到強有力的時空特征表達.

圖1 系統框架Fig.1 System framework

由SDG模塊和MAA模塊組合成的SGMA可以輕松嵌入到標準的ResNet[23]中,且沒有采用光流作為輸入和使用3D卷積提取特征,得益于此,在僅僅增加少量計算量的情況下,能高效提高2D CNN的動作識別準確率.

2.2 時空動態門控

在視頻理解領域,3D卷積已經被廣泛用于提取時間特征.同時,為了緩解3D卷積的存在的一些問題,如參數量大和難于訓練,時空分解網絡應運而生.圖2展示了4種時空分解網絡的結構圖.S3D[10]將3D卷積分解為2D空間卷積和1D時間卷積的級聯組合,如圖2(a)所示.圖2(b)展現了GST的工作模式,其將特征通道分割成空間和時間兩組后,分別采用2D空間卷積和3D時空卷積建??臻g和時間特征,并在尾部融合兩種特征.如圖2(c)所示,CoST[24]則同時對輸入特征在3個正交視圖上分別執行不同的卷積操作,分別學習空間外觀和運動時間特征,最后加權求和融合3個特征圖.這3種方法的主要思想都是將時空特征進行分開建模,降低網絡復雜度,但是這些方法都是靜態模型,即采用的硬分解策略沒有考慮適用于空間和時間建模的特征信息間的差異性,它只是將特征由上一層固定傳播到下一層而沒有依賴數據的特點路由特征.

圖2 4種時空分解網絡Fig.2 Four types of spatial-temporal decomposition networks

SDG模塊的設計思路來源于GST[12]和CoST[24],如圖2(d)所示,其是一種動態網絡,將GST中固定的特征通道分組方式或CoST中特征全復制方式替換為一個動態門控組件SDG,SDG將特征圖的所有通道的特征進行動態分解為兩個部分,選擇性地路由到兩個分支中提取特征.

SDG模塊的網絡結構如圖3所示,給定一個輸入序列X={x1,x2,…,xT}∈T×C×H×W,其中xt∈C×H×W(t=1,2,…,T)表示第t采樣幀的特征圖,C表示通道數,H和W為特征圖的空間維度.首先對所有xt在空間維度進行全局平均池化(Global Average Pooling,GAP),得到輸出C×1×1(t=1,2,…,T),網絡后面將利用相鄰幀的池化后的特征生成門控向量.

圖3 時空動態門控網絡Fig.3 Spatial-temporal dynamic gate network

SDG模塊的出發點是特征圖的不同通道包含不同的信息,不同的通道的信息對時序特征的學習的重要程度不同.一部分通道傾向于關注與背景有關的場景信息,另一部分通道傾向于關注與動作描述有關的時間信息,SDG模塊的目標就是區分每個通道中的空間外觀線索和時間運動線索.隨著時間的推移,整體的背景信息的變化較為緩慢,而運動的顯著區域的像素值變化更快.SDG模塊利用這個特點將像素級別的變化拓展到特征圖級別,相鄰幀的特征差異量就近似衡量了運動的顯著性.差異量的計算為:

(1)

然后dt通過2D卷積將通道數量恢復至C,得到的門控向量為:

at=σ(conva(Wa,dt))

(2)

其中conva表示1×1的2D卷積,Wa為其卷積參數,σ代表sigmod函數.最后得到門控向量at∈C×1×1,門控向量標志著各通道特征中時間運動線索的比例,然后門控向量at和xt的各通道特征相乘就能得到運動強相關特征yt,對應的,各通道特征除去運動強相關特征就是運動弱相關特征rt,如公式(3)、公式(4)所示,其中⊙表示通道維度的元素乘積,

yt=at⊙xt

(3)

rt=xt-yt

(4)

運動強相關特征yt更有利于對動作的時間信息建模,運動弱相關特征rt更有利于對動作的空間信息建模.如此,SDG模塊利用學習到的門控向量,動態地將特征的時間和空間信息進行分離,得到運動強相關特征序列Y={y1,y2,…,yT}和運動弱相關特征序列R={r1,r2,…,rT},送入后續的兩個分支中,讓其有針對性地在各自所關注的時間或空間域內進一步提取特征.

2.3 動作注意力聚合

目前動作識別任務中有很多方法[6,15]都使用一次局部時間卷積來處理相鄰幀信息,為了建模長距離運動特征,就需要加大網絡深度,堆疊更多的局部卷積,但這種做法會一定程度上削弱從長跨度的幀傳遞來的重要信息而無法高效地處理長距離動作特征信息.由此,本文提出MAA模塊來對捕捉長距離動作上下文.

MAA模塊的設計思路來源于TSM[15]和ResNeSt[22].TSM在進行2D卷積前,會移動每一幀特征圖的部分通道到它的前一幀或后一幀的特征圖中,這些移動的通道包含其他幀的特征,所以之后的2D卷積可以相應的學習到時間特征.TSM的通道移位操作可以看作是通道-時間特征圖中的1D時間卷積操作,這樣的1D時間卷積包含固定的3種濾波器,[1,0,0]代表前移,[0,0,1]代表后移,[0,1,0]代表無變化.

MAA模塊將TSM中的1D時間卷積的固定濾波器替換為3×1×1可學習的濾波器,自適應調整通道移位的方向和幅度.MAA模塊的網絡結構如圖4(a)所示,輸入張量為運動強相關特征序列Y∈T×C×H×W,首先沿通道平均分成4組,每組的形狀為[T,C/4,H,W],其中C為通道數量,T為時間維度,H和W為空間維度,同時將TSM中的1D卷積和2D卷積分別分解為4個子卷積,并分配到各組中,且子卷積的參數量都為原來的四分之一.對第1組不做任何處理,而第2~第4組依次應用通道維度上的1D時間子卷積和2D空間子卷積,并且第3組和第4組應用子卷積前都先分別和其前一組的輸出進行特征按元素加和操作,如此構成一種金字塔結構,隨著后面的分組通過橫向連接融合前面分組的特征,其時間感受野也會成倍增加.這種金字塔結構不僅擴大了時間感受野,而且加強了不同分組中的信息融合.用公式表示為:

(5)

圖4 動作注意力聚合網絡Fig.4 Motion Attention Aggregation network

(6)

之后通過一個全連接層壓縮通道,得到:

t=Ffc(s)

(7)

再由一個全連接層擴充通道到原數量C,之后沿通道平均分割得到4個張量A1,A2,A3和A4∈C/4×1×1.最后由這4個張量應用跨通道的軟注意力[22]為各組輸出的每個通道動態選擇不同的空間尺度,得到各組輸出的注意力系數,具體為:

(8)

αi∈C/4×1×1(i=1,2,3,4)表示第i組輸出的時空特征的注意力系數,即表示該系數的第c通道的值.各組特征張量和對應的注意力系數相乘后通過Concatenate操作得到注意力網絡的輸出:

(9)

得到的時空特征Z動態融合了不同時間距離的時空特征.

MAA模塊的使用注意力機制聚合4個分組的時空特征,而每個分組的特征的時間感受野不一致,關注的時間信息的跨度也不相同,而不同視頻動作需要的長距離時空建模的跨度也并非相同,注意力機制可以依賴數據特點為不同視頻動作學習更準確的時空特征,達到更好的識別效果.

2.4 SGMA

前面介紹了SDG模塊和MAA模塊的網絡結構和設計目的,現在分析SGMA的結構以及SGMA如何嵌入到2D CNN中.

SGMA的網絡結構如圖1下半部分所示,SGMA的輸入X首先由SDG模塊產生運動強相關特征Y和運動弱相關特征R并分別送入兩個分支,然后MAA模塊對運動強相關特征Y進行一步地長距離時空特征建模得到強有力的時空特征Z,運動弱相關特征R用2D CNN進行進一步提取空間特征,最后通過逐元素相加的方式融合兩個分支的輸出,得到SGMA處理后的時空特征表達V,如公式(10)所示:

(10)

將SGMA嵌入2D CNN有兩種方法.方法1是在每個卷積層或殘差塊前面插入SGMA,但是這樣會損害骨干網絡對空間特征的學習,因為MAA模塊中的在通道上的1D時間卷積會破壞存儲在該通道上的空間信息.方法2與TSM[15]只在殘差分支中通道移位的做法相同,SGMA嵌入于殘差分支中,直接映射分支保留了原始的空間信息,如此做法在保留當前幀信息的同時充分利用SGMA的強大時空特征建模能力.除此之外,因為SGMA可以直接插入到2D CNN網絡中,所以整個網絡可以很方便地利用預先訓練的ImageNet[18]模型進行參數初始化.

2.5 MAA模塊結構和ResNeSt的聯系

ResNeSt[22]作為ResNet[23]的變體之一,可以作為目標檢測等任務的骨干網絡,其主要貢獻之一是拆分合并特征圖后將注意力模塊納入拆分后的各個的網絡塊中.具體來講,ResNeSt首先將特征圖沿通道拆分為若干組,每組再沿通道將特征圖劃分為更細粒度的子組或分割,其中每組的特征表示是通過其子組表示的加權組合確定的,ResNeSt將這樣的分割后利用注意力組合起來的結構單元稱為Split-Attention block.ResNeSt以ResNet的樣式堆疊Split-Attention block,獲得了ResNet的一種變體,在不增加額外計算量的前提下,關注不同網絡分支(子組或分割)的通道上的注意力,以捕捉不同特征間的交叉互動和學習,構建了一個具備捕獲跨通道之間信息的通用骨干網絡.

從Split-Attention block的網絡結構來看,首先進行第一次劃分,特征圖按通道維度C分為若干組,特征圖組的數量由基數Cardinality超參數K給出,得到的特征圖組稱為基數組,然后進行第2次劃分,基數組內進一步劃分為子組或分割,每組數量由基數radix超參數R給出,最后對每個單獨的子組應用一系列的變換(卷積)后使用軟注意力機制為每個子組的通道分配權重.MAA模塊結構和Split-Attention block的網絡結構相似,如圖4所示,MAA模塊首先將特征圖拆分為一組,即K=1,然后每組再沿通道平均劃分為4個子組,即R=4,最后使用注意力機制融合各組特征.兩者差異在于的是每個子組中的變換操作,1)對于每個組中的子組,ResNeSt使用兩個2D空間卷積學習各自組的空間特征,但MAA模塊使用1D時間子卷積和2D空間子卷積學習時空特征,2)MAA模塊額外利用橫向連接在子組中構建金字塔結構,逐步擴大時間感受野.這是因為ResNeSt作為2D CNN骨干網絡,其輸入是3D空間特征張量,主要目的是提升空間感受野和加強通道之間的相互作用;而MAA模塊的輸入是包含時間維度的4D時空特征張量,其設計目的是捕捉視頻長距離的時空線索,關注的是時間維度的信息交互.

3 實驗結果與分析

本節中設計了一系列的實驗來評估本文方法在兩個數據集Something-SomethingV1[13]&V2[14]中的性能.首先在3.1節中介紹了數據集的情況和實驗的實施細節,然后在3.2節中分析了本文方法和動作識別領域的一些先進的方法的性能對比情況,最后在3.3節中通過消融實驗評估了SGMA各個子模塊的表現以及骨干網絡對本文方法動作識別表現的影響.

3.1 實驗設計

本文在Something-SomethingV1[13]&V2[14]兩個數據集上測試本文方法的性能,訓練在數據集的訓練集上進行,推理預測在驗證集上進行.Something-SomethingV1&V2是兩個普遍使用的視頻動作數據集,分別包含約11萬和22萬個視頻,每個視頻大約長2-6秒,橫跨174個精細的動作類別.SomethingV1與SomethingV2數據集的組成類別一致,但SomethingV2與SomethingV1相比,具有更少的標注噪聲,更多的實例數,更大的像素分辨率等特點.這兩個數據集主要關注于人和物精細的交互動作,所以這些動作需要捕捉更精確的時間線索才能很好的進行區分.

實驗采用ResNet-50[23]作為骨干網絡,如圖1所示,將ResNet-50第2~第5階段中殘差塊的殘差分支的3×3的2D卷積替換成SGMA.

實驗采用與TSN[4]相同的稀疏采樣策略訓練網絡.對于給定的一段視頻,首先按時間順序將它均分為T段,從每一段中隨機抽取一幀組成包含T幀的幀序列.然后將每一個幀的短邊固定為256后使用中心裁剪和隨機翻轉來做數據增強,最后將幀的大小裁剪至224×224進行網絡訓練.網絡的輸入為N×T×3×224×224,其中N表示訓練數據的批量大小,實驗設置為32,T表示一個視頻中抽取的幀數,在實驗中設置為8或16.

實驗基于Pytorch深度學習框架和4個型號為GTX 2080TI的GPU.當T=8時,每個GPU分配的批量大小為8,當T=16時,每個GPU分配的批量大小為4.使用隨機梯度下降端到端地訓練整個網絡,初始學習率為0.01,總共迭代60輪,并在第40、50輪時將學習率減少到原來的十分之一.ResNet-50[23]的初始參數參考ImageNet[18]預訓練的ResNet-50模型,SDG模塊的參數設置為隨機初始值,MAA模塊中通道分組前兩組中的1D時間卷積核初始化為[1,0,0]和[0,0,1],后兩組為[0,1,0].

為了模型對比的公平,在測試階段,實驗采用了兩種幀采樣策略來評估本文方法的性能.策略1:對每段視頻隨機采樣1次,然后中心裁剪采樣幀至大小為224×224;策略2:遵循[25]中的設定,對每段視頻隨機采樣10次,然后將采樣幀的短邊調整到256后分別使用3種裁剪方式(left,right,middle)進行裁剪并保持橫縱比,對每次采樣獨立計算softmax分數,取平均值得到識別結果.

3.2 動作識別性能

為了全面地衡量本文方法的動作識別性能,本節討論本文方法與一些目前較先進的模型的對比實驗.實驗在Something-SomethingV1[13]&V2[14]的驗證集上進行,對比的指標包括動作分類的Top1準確度、浮點運算量(Floating point operations,Flops)等.實驗將目前的動作識別模型分為2D CNN模型、3D CNN模型、2D CNN和3D CNN混合模型,實驗結果如表1所示.

表1 Something-SomethingV1&V2上的動作識別結果比較Table 1 Comparison results on Something-SomethingV1&V2 for action recognition

表1的第1部分是2D CNN模型,其中TSN[4]因為無法有效建模時間特征而表現最差,在采用幀采樣策略1且采樣幀數T=8時,本文方法在Something-SomethingV1&V2數據集上的Top1準確度比TSN分別提高了28.1%和31.8%,表明視頻動作時間建模的重要性和本文方法時間建模的高效性.相比基準TSM[15],在采樣8幀和16幀時,V1數據集上Top1準確度分別高出4.4%和5.7%,V2數據集上則在采樣8幀時高出6.2%.另外,相比其他2D CNN模型,本文方法在附加極少計算量的情況下也有提升,GST[12]和本文方法擁有同樣的骨干網絡(ResNet-50[23])和預訓練模型(ImageNet[18]),在采樣16幀時,本文方法比GST在V1和V2上分別提升1.9%和1.1%.

表1的第2部分是3D CNN或2D CNN和3D CNN混合模型,因為3D CNN網絡的復雜性,這些模型的Flops基本上都要比本文方法要高,本文方法以更低的Flops,取得了比這些3D CNN模型更高的精度.其中NL-I3D+GCN[5]使用了額外的數據集預訓練網絡,但是仍然遜于本文的模型.

表1的第3部分是本文方法在不同幀采樣情況下的動作識別表現,在Something-SomethingV1驗證集上,當采用幀采樣策略1時,本文方法在T=16時的Top1準確度比T=8高出2.7%,在所有比較的模型中提升最大,接近基準TSM[15]1.4%提升幅度的2倍,也遠高于TSN[4]0.2%的增幅.這說明在采樣8幀時,視頻的背景外觀信息已經得到充分學習,如果模型如果無法真正地學習運動的時空特征,繼續增加輸入采樣幀的數量的做法對動作識別的表現影響不大,同時證明了本文方法在建模幀間信息時能更好的利用長距離的時間信息,得到更強的運動特征表達.

圖5是Something-SomethingV1驗證集3段視頻的Top2動作類別預測結果,其中每段視頻上方英文是對應的真值標簽,每段視頻下方的前兩行英文是本文方法預測結果,后兩行英文是TSM[15]的預測結果.在前兩段視頻中,本文方法比TSM更準確地區分了動作類別,在第3段視頻中,TSM將動作“Taking something out of something”錯誤地識別為了“Tak-ing something from somewhere”,而本文方法仍然正確預測了動作類別.該實驗表明了本文方法優于TSM模型.

3.3 消融實驗

3.3.1 子模塊的動作建模性能

本小節設計消融實驗來分別測試SGMA的兩個子模塊的效果,實驗基于Something-SomethingV1[13,14]的驗證集,使用ResNet-50[23]作為骨干網絡.

圖6是3種不同的殘差塊的網絡結構,均是由ResNet標準殘差塊改造而成,其中TSM Block遵循TSM[15]的網絡結構,SDG Block把標準殘差塊參差分支中的3×3 2D卷積換成了SDG模塊,其中SDG只保留運動強相關特征分支,MAA Block則換成了MAA模塊.

圖6 3種殘差塊網絡結構Fig.6 Three residual block network structures

將3種殘差塊替換ResNet-50[23]中的標準殘差塊,在不同的幀采樣數量下測試動作識別效果,實驗結果如表2所示.SDG Block的動作識別準確率比TSN[4]高出至少13%,這是因為SDG Block通過交換相鄰幀的特征信息得到的門控向量量化了特征的各通道對于動作建模的重要程度,并進一步利用該信息提取并增強了用于運動時間建模的運動強相關特征.對比SDG Block,MAA Block的動作識別準確率要明顯更高,說明了Something-Something[13]數據集的時間上下文的重要性.MAA Block相比TSM Block在幀采樣數量T=8和T=16時準確度分別提升了3.9%和3.7%,這不僅表明MAA使用通道分組和橫向連接得到的金字塔結構能擴大時間感受野,使網絡更好地學習長距離時間特征,同時也說明注意力融合方法能定性分析各組特征的作用,魯棒地組合得到動作的時空特征.

表2 3種殘差塊的動作識別結果Table 2 Action recognition results of the three residual blocks

3.3.2 骨干網絡的影響

本文方法具有很好的開放性,可以融入不同的2D CNN骨干網絡.表3展示了本文方法分別應用于ResNet-50[23],ResNeXt-50[31],ResNet-50+Non-local module[25]和MobileNet-V2[32]的動作測試結果,實驗基于Something-SomethingV1[13]驗證集,只對每段視頻作一次采樣并做中心裁剪,抽取的幀數T=8.對于不同的骨干網絡,對比基準TSM[15],本文方法能不同程度上提升動作識別的效果,表明了本文方法結合不同2D時仍能發揮出很好的時空建模能力,提升動作識別性能,也證明了SGMA作為一種即插即用的模塊,具有較好的普適性.

表3 不同骨干網絡的動作識別結果Table 3 Action recognition results of different backbone networks

4 總 結

本文提出了一種改進2D CNN時空特征提取的動作識別方法,設計了可增強2D CNN時空特征提取能力的SGMA結構.以往的時空分解網絡在分離空間和時間特征建模時都采用固定的分解結構,而SGMA的子模塊的SDG能夠動態分離特征圖的運動強相關特征和運動弱相關特征,使兩者分別在各自關注的時間和空間域內進行特征建模.目前常用于時間建模的光流法對和3D卷積方法在應對長程時間建模時都存在較大缺陷,SGMA的子模塊的MAA利用金字塔結構建模不同尺寸時間感受野的特征并使用注意力機制選擇性融合這些特征得到了強有力的長程時間信息表征.本文方法在Something-SomethingV1&V2數據集上取得了有競爭力的表現.本文方法雖然降低了動作識別模型的復雜度,但是仍需采用大規模標注的視頻動作數據集來監督訓練,本文未來的工作將會關注如何將本文方法結合小樣本學習和跨域訓練來進一步簡化視頻動作識別的復雜性.

猜你喜歡
時空卷積建模
跨越時空的相遇
基于3D-Winograd的快速卷積算法設計及FPGA實現
聯想等效,拓展建?!浴皫щ娦∏蛟诘刃鲋凶鰣A周運動”為例
鏡中的時空穿梭
從濾波器理解卷積
玩一次時空大“穿越”
基于PSS/E的風電場建模與動態分析
不對稱半橋變換器的建模與仿真
基于傅里葉域卷積表示的目標跟蹤算法
時空之門
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合