?

類別敏感的全局時序關聯視頻動作檢測

2022-12-21 03:23王東祺趙旭
中國圖象圖形學報 2022年12期
關鍵詞:時序分支分類器

王東祺,趙旭

上海交通大學自動化系,上海 200240

0 引 言

攝像頭和智能手機的大規模普及以及移動互聯網的迅猛發展,為視頻數據的獲取和傳播帶來了巨大便利,視頻數據量呈現爆發式增長。記錄著人類活動的海量視頻數據中攜帶了大量對人類社會交互極為重要的信息,通過算法理解視頻中的人體動作具有重要研究價值,是計算機視覺領域的前沿課題。視頻動作檢測任務要求在一段未裁剪的長視頻中標注出動作發生的片段,同時完成動作類別的判斷。該研究在智能監控、醫學診療、人機交互和無人駕駛等領域具有廣闊的應用前景。受到圖像目標檢測中兩階段方法的啟發,現有的視頻動作檢測模型分為兩個階段:第1階段從視頻中提取出候選動作片段;第2階段對候選片段包含的動作進行分類。

視頻動作檢測的精度依賴于兩個關鍵環節:1)識別動作模式;2)探索視頻內部不同片段間的時序關聯。近年來許多研究者在這兩方面開展了大量工作,取得了顯著進展:Wang等人(2019)和Lin等人(2018)提出通過識別動作的開始模式和結束模式來定位視頻中的動作邊界,進而連接邊界點生成候選動作片段;Lin等人(2019)和Qing等人(2021)的工作則表明邊界之間的動作模式對候選片段置信度的預測起到重要作用,因此可以通過識別分析動作模式,評估某一視頻片段包含動作的可能性,該片段的動作模式越明顯,則其置信度越高。其次,考慮到視頻是一種在時間維度上緊密關聯的信息載體,研究表明視頻內部的時序關聯對于檢測精度至關重要:Zhao等人(2017a)的工作證實了局部相鄰片段間信息關聯的重要性,Zeng等人(2019)和Xu等人(2020)使用圖模型和圖卷積(Kipf和Welling,2016)來探索相距較遠的視頻片段之間的關聯,并取得了一定成效。在不同視頻片段之間建立全局時序關聯可以為模型提供更大的感受野,有助于捕獲動作片段的上下文信息以及理解不同片段之間的語義關聯,從而提升檢測精度。

然而,現行方法在上述兩項關鍵技術中均存在不足。1)在動作模式識別方面,幾乎所有的方法都試圖讓模型不加區分地檢測所有類別的動作,這意味著,模型必須歸納出一種普適于所有動作類型的邊界模式和動作模式。這一思路具有明顯的局限性,因為不同類別的動作具有截然不同的動作模式,強制模型去學習一種放之四海而皆準的動作模式加大了訓練難度,因此限制了檢測精度。如圖1(a)所示,“繪畫”歸屬于“室內裝飾”類別,而跳遠則歸屬于“體育運動”類別,它們在場景、動作幅度和動作頻率上截然不同;而同樣屬于“體育運動”類別的“擲標槍”動作則與“跳遠”有相似之處,例如二者都發生在體育場中,都是幅度較大、頻率較快的動作,而且都以“跑動”作為動作的開始。因此本文提出,對于差異較小的類別可以用統一的方法進行處理,而對于差異較大的類別應該進行針對性、區分性的檢測。目前的動作檢測方法往往都忽略了不同動作間的差異,以Lin等人(2019)提出的邊界匹配網絡(boundary matching network,BMN)為例,圖2是該模型對動作起點檢測的可視化結果,圖中橫軸為時間軸,縱軸代表視頻中某一時刻為動作開始點的預測概率,紅色實線為真實的動作開始點,綠色虛線為BMN的邊界預測結果。圖2表明,BMN在尋找動作起點時存在誤檢(如11 s-33 s區間內)和漏檢(如11 s和44 s附近的動作真實邊界并未檢出)。2)在視頻時序關聯方面,不論是傳統卷積操作還是改進后的膨脹卷積操作,都只能建立局部關聯,感受野較小。然而,很多動作的邊界十分模糊,僅憑借局部特征難以區分動作和非動作,例如圖1(b)的高爾夫揮桿動作,在動作發生前的一段時間內,畫面內容十分相似,如果模型的感受野僅限于局部,那么很難確定究竟哪一片段才是動作的起點,但如果擴大模型的感受野,允許模型獲取過去和未來的信息,將有助于模型理解視頻內部信息關聯,從而更好地定位動作邊界。為了建立全局時序關聯,Xu等人(2020)使用圖模型和圖卷積神經網絡構建視頻內部的時序關聯,提出了用于時序動作檢測的子圖定位模型(sub-graph localization for temporal action detection, GTAD),Bai等人(2020)同樣使用圖模型構建時序關聯,提出了邊界內容圖神經網絡(boundary-content graph neural network,BCGNN)。盡管克服了傳統卷積操作的局限性,但圖模型和圖卷積計算量較大,仍然存在改進空間。

圖1 時序動作檢測(TAD)中的關鍵問題Fig.1 Key points of TAD((a) different action classes have huge pattern difference; (b) global temporal relations benefit the boun-dary localization)

本文提出了類別敏感的全局時序關聯動作檢測模型,以解決上述問題并提升動作檢測的精度。首先,考慮到不同類別之間邊界模式和動作模式差異巨大,為此設計了動作逐類檢測機制,該機制包含了若干個動作分支和一個通用分支。每個動作分支專門負責一類動作的檢測;通用分支則為動作分支提供互補信息以實現更加準確的檢測。對于輸入視頻,首先進行視頻級別的動作粗略分類,動作分類結果會激活逐類檢測機制中的對應動作分支和通用分支,二者融合后作為最后的輸出結果。圖2中的藍色實線是配備逐類檢測機制的模型的邊界檢測結果,可以看到該模型有效減少了漏檢和誤檢現象,提升了邊界的檢測精度。此外,為了在視頻內部不同片段之間建立全局時序關聯,設計了一個三元時序模塊來進行時序建模。該模塊以Cho等人(2014)提出的門控循環單元(gate recurrent unit,GRU)和1維卷積神經網絡(convolutional neural network, CNN)為核心組件,通過靈活調節視頻特征的輸入順序,借助GRU的“選擇記憶”特性實現了不同視頻片段之間的信息聚合,從而建立了全局時序關聯。與采用圖模型進行時序建模的GTAD (Xu等,2020)相比,三元時序模塊在取得性能提升的同時,計算復雜度降低了46%左右。

圖2 傳統模型與逐類檢測模型的動作邊界檢測能力對比Fig.2 Traditional model v.s. class-aware model on action boundary detection

本文的貢獻主要包括以下幾點:

1) 考慮到不同類別的動作具有截然不同的邊界模式和動作模式,提出對于差異較大的類別應該進行針對性、區分性處理,因此設計了視頻動作逐類檢測機制以解決該問題;

2) 為了建立視頻內部片段之間的全局關聯,靈活應用門控循環單元設計了一個三元時序模塊,與GTAD中采用的圖模型相比,減少了大約46%的計算量,同時提升了檢測性能;

3) 上述逐類檢測機制和三元時序模塊整合為類別敏感的全局時序關聯動作檢測模型,并使用多種特征提取器在兩個公開數據集上進行實驗,驗證了本文方法的有效性。在THUMOS-14數據集(Idrees等,2017)中,使用時序分段模型(temporal segment network,TSN)(Xiong等,2016)作為特征提取器時,該方法的平均mAP(mean average precision)為54.90%,較主流方法提升了約3%,達到了目前的最佳水準。在ActivityNet-1.3數據集(Heilbron等,2015)中,使用TSN作為特征提取器時,該方法的平均mAP為35.58%,與其基準模型BMN(Lin等,2019)相比提升了大約2%,同時也優于目前最佳性能(Qing等,2021)。使用膨脹3維卷積特征(inflated 3D convolutional network,I3D)(Carreira和Zisserman,2017)和時序敏感預訓練特征(temporally-sensitive pretraining,TSP)(Alwassel等,2021)時,平均mAP可以分別達到36.23%和37.32%。

1 本文方法

1.1 方法概述

為提升視頻動作檢測精度,本文提出了類別敏感的全局時序關聯動作檢測模型(class-aware network with global temporal relations,CAN), 該方法的整體流程如圖3所示,其主要模塊包括視頻動作分類器、視頻特征提取器、三元時序模塊(ternary basenet,TB)和動作逐類檢測機制(class-aware mechanism,CAM)。這些模塊將在后文中詳細介紹。

圖3 類別敏感的全局時序關聯視頻動作檢測模型Fig.3 Overview of class-aware network with global temporal relations

CAN的輸入是未裁剪的視頻數據,輸出是具有類別信息的視頻動作片段。首先,原始的視頻數據被同時送往視頻級別的粗分類器和視頻特征提取器,粗分類器產生一個粗略的視頻級動作標簽,特征提取器則從視頻數據中提取包含動作信息和表觀信息的特征序列。接下來,三元時序模塊TB對視頻特征序列進行處理并建立全局時序關聯,然后具備時序關聯的視頻特征和視頻級動作標簽被送入逐類檢測機制CAM中。在CAM內部,與類別標簽對應的動作分支以及通用分支會被激活,二者融合后輸出候選動作片段(action proposals)。最終,一個片段級別的分類器為每一個候選動作片段進行精細分類,得到最終的輸出結果。

1.2 特征提取器與動作分類器

特征提取器用于從原始視頻中提取包含動作信息和表觀信息的特征序列作為視頻的特征表示。在視頻動作檢測任務中,大多數模型(見表1)均采用了基于雙流架構的TSN模型和I3D模型作為特征提取器,為了保證性能對比的公平性,本文遵循了這一范式。另外,使用了2021年提出的TSP特征提取器來驗證本文方法的有效性。1)使用在Kinetics數據集(Kay等,2017)上預訓練、在ActivityNet-1.3上精調的TSN模型(Xiong等,2016)作為特征提取器,特征維度為400,該特征記為“TS”。同時,在THUMOS-14上還使用了由GTAD提供的、僅在Kinetics上預訓練的TSN模型提取的特征,特征維度為2 048,該特征記為“TS*”。2)使用在Kinetics數據集上預訓練的I3D模型(Carreira和Zisserman,2017)提取視頻特征,維度為2 048,該特征記為“I3D”。3)使用在ActivityNet-1.3上預訓練的TSP模型(Alwassel等,2021)進行特征提取,維度為512,該特征記為“TSP”。

具體的特征提取方式如下:將視頻解幀后,每隔σ幀抽取一幀RGB圖像,與以該幀為中心的堆積光流圖像組成一個片段(snippet),送入特征提取器得到對應的特征向量。設視頻幀數為L,特征向量的維度為C,則最終得到視頻特征序列Fv∈RC×T,其中T=L/σ為特征序列長度。對于ActivityNet-1.3數據集,σ設置為16,并采用線性插值的方法將特征序列的長度調整為100;對于THUMOS-14數據集,σ設置為5,并使用長度128、重疊率50%的窗口將原始視頻特征序列截取為若干窗口,對每個窗口分別進行檢測,在后處理過程中對每個窗口的輸出結果進行拼接,作為最終的檢測結果。

動作分類器負責對視頻中的動作進行分類。CAN中包含一個視頻級動作分類器和一個片段級動作分類器。視頻級分類器輸入完整視頻并對視頻整體進行粗粒度分類(例如分類為“體育運動”),該分類器對應類別數為m,片段級分類器輸入的是候選動作片段并進行細粒度的分類(例如分類為“扔鉛球”),對應類別數為n,其中m≤n。以ActivityNet-1.3數據集為例,根據標注信息中的層級類別結構以及2.4.2節中的消融實驗結果,m設置為14,n設置為200。在THUMOS-14數據集中,未裁剪視頻分類模型Untrimmed Net(Wang等,2017)是絕大多數兩階段動作檢測方法廣泛采用的動作分類器,Zhao等人(2017b)提出的動作分類器則在ActivityNet-1.3數據集中作為基準。這兩種分類器在視頻時序動作檢測領域內得到廣泛采用,包括BMN、GTAD、BCGNN以及時序尺度不變模型(temporal scale invariant network,TSI)(Liu等,2020)、時序上下文積聚網絡(temporal context aggregation network,TCA-Net)(Qing等,2021)等。為與大部分兩階段的視頻動作檢測模型公平比較,仍采用Untrimmed Net和Zhao等(2017b)提出的模型作為動作分類器。

1.3 逐類檢測機制

為了差異化地對不同類別的動作進行針對性檢測以提升檢測精度,設計了逐類檢測機制CAM。該機制的內部結構如圖3所示。逐類檢測機制借鑒并改進了BMN中的模塊結構,設計了具備多分支的時序評估模塊(temporal evaluation module, TEM)和提名評估模塊(proposal evaluation module, PEM),兩類模塊均配備了m個動作分支和一個通用分支。兩個時序評估模塊分別用于評估每個片段是動作起點和動作終點的概率,而提名評估模塊用于評估視頻內部每個錨框包含完整動作的概率。

起點時序評估模塊(起點TEM)通過識別動作起點的邊界模式,輸出長度為T的起點概率序列Ps;類似地,終點時序評估模塊(終點TEM)通過識別動作終點的模式,輸出終點概率序列Pe。按照1.2節所述的特征提取方式,視頻特征序列中每一列實際代表了原始視頻中的一個小片段,因此Ps和Pe分別代表視頻特征序列中每一個片段是動作開始或結束的概率。

提名評估模塊PEM在視頻中設置了大量密集分布的錨框,錨框的設置策略如下:對于任意時刻t1,將它與所有滿足t2>t1的時刻t2關聯起來,組成一個錨框(t1,t2)。PEM通過識別錨框特征的動作模式來預測其包含動作的可能性,即錨框的置信度。將所有錨框的置信度排列成為T×T的矩陣M,稱為置信度地圖。該地圖以左上角為原點,橫軸代表錨框的開始時刻,縱軸代表錨框的持續時長,例如矩陣中t1列、t2-t1行的數值M[t1,t2]就代表了錨框(t1,t2)的置信度。該矩陣中副對角線左上方代表了所有有效的錨框(t2>t1),右下方則為無效區域。使用BMN中提出的邊界匹配層(boundary-matching layer,BM Layer)為每個錨框生成特征表達。具體而言,對于每個錨框,在其對應區域內均勻采樣32個特征向量,然后使用卷積操作將32個特征向量融合為一個128維的特征向量,作為該錨框的特征。PEM的輸出包括用分類損失訓練的置信度圖Mc和用回歸損失訓練的置信度圖Mr。

本文方法的重要創新在于提出了逐類檢測機制,該機制的核心是多分支結構。TEM模塊包含m+1個輸出通道,分別對應m個動作分支和1個通用分支。起點評估模塊中,動作分支的輸出是所有動作類別的起點概率序列,可記為Psa∈RM×T,通用分支的輸出則記為Psu∈RT。類似地,終點評估模塊可以輸出Pea和Peu。另外,時序提名模塊PEM包含2(m+1)個輸出通道,前m+1個通道用于輸出回歸置信度地圖Mr∈RT×T,后m+1個通道用于輸出分類置信度地圖Mc∈RT×T。由于每個動作分支只負責識別某一種動作類型,因此動作分支可以對特定類別進行針對性的學習和檢測,避免了多種動作共用同一輸出通道所引起的類內方差。與動作分支互補的是通用分支,它負責從視頻中提取通用的動作模式,實現更加精準的動作模式識別。

在前向傳播的過程中,對于給定輸入視頻,分類器預測出視頻級類別標簽i(1≤i≤m),TEM和PEM中第i個動作分支被激活,輸出Psa[i],Pea[i],Mra[i]和Mca[i]。通用分支則輸出Psu,Peu,Mru和Mcu。動作分支和通用分支的輸出通過加權的方式進行融合,β1和β2分別是TEM和PEM中的融合權重向量,β1,β2∈Rm且0≤β1[i],β2[i]≤1,這代表著每個動作分支在與通用分支進行融合時均有單獨的權重分量,例如對于動作類別i,它在TEM和PEM中的融合權重分別為β1[i]和β2[i]。融合權重是可訓練參數,這是考慮到一部分動作的準確檢測可能依賴于其獨有的特征,而另一些動作的檢測可能更依賴通用的動作特征,將權重參數設置為可訓練意味著將最終決定權交給了模型自身,使檢測更具靈活性。最終,CAM輸出當前視頻的起點概率序列Ps、終點概率序列Pe以及兩張錨框置信度地圖Mr和Mc,即

Ps=β1[i]·Psa[i]+(1-β1[i])·Psu

(1)

Pe=β1[i]·Pea[i]+(1-β1[i])·Peu

(2)

Mc=β2[i]·Mca[i]+(1-β2[i])·Mcu

(3)

Mr=β2[i]·Mra[i]+(1-β2[i])·Mru

(4)

1.4 三元時序模塊

特征提取器將視頻分割成片段(snippet),然后依次提取每個片段的特征,最后拼接形成視頻整體特征序列。這種特征提取方式導致各片段特征之間相互獨立、缺乏關聯。三元時序模塊用來探索并建立視頻內部的全局時序關聯。該模塊的結構如圖4所示,特征序列下方的數字代表特征序列的形狀,其中C是特征提取器輸出特征的維度,T是視頻特征序列的長度。首先,視頻特征序列經過了卷積核為3的1維卷積層,此時,特征序列中的每一列僅包含了其對應時刻附近的信息,稱之為“當前特征”。接下來,當前特征按照時間順序自前向后地送入順時針GRU中,由于GRU具有對歷史輸入選擇記憶的功能,因此順時針GRU輸出的特征序列中,每一個時刻的特征向量均包含了過去時刻的有價值信息,稱其為“過去特征”。同時,可以沿時間軸翻轉“當前特征”,按照從后向前的順序送入逆時針GRU中,這樣GRU可以“記住”未來時刻的有價值信息,此路徑輸出的特征稱為“未來特征”。最后,過去特征、當前特征和未來特征被拼接在一起,讓每一個時刻的特征都積聚了過去、當前和未來的信息,從而在視頻特征內部建立起全局的時序關聯。三元時序模塊以一種簡潔的結構為模型賦予了全局視野。2.3節中的實驗結果證明了該模塊的有效性。

圖4 三元時序模塊結構Fig.4 Structure of ternary basenet

1.5 訓練階段

1.5.1 訓練標簽生成

逐類檢測機制CAM的輸出包括視頻的邊界概率序列Ps,Pe以及置信度地圖Mr和Mc。需要為4種輸出分別設置訓練標簽。數據集中一個真實的動作標注為φ={ts,te},其中,ts和te分別代表動作的開始和結束時刻。為了生成邊界標注,將邊界擴展為一段區域:設視頻時長和特征長度分別為Tv和T,則開始區域為rs={ts-1.5·Tv/T,ts+1.5·Tv/T},結束區域為re={te-1.5·Tv/T,te+1.5·Tv/T}。由于特征序列中的每一列與原始視頻中的一個片段(snippet)對應,因此,開始概率序列的訓練標簽Gs是通過計算特征序列中每一個片段與開始區域rs的重疊率確定的。同理,可以得到結束概率序列的訓練標簽Ge。對于置信度地圖的訓練,沿用BMN和TSI的做法,計算所有錨框與真實動作的時間交并比(temporal intersection over union,tIoU)作為訓練標簽Gm。

1.5.2 基礎損失函數

TEM通過識別局部特征的邊界模式來判斷視頻中每一時刻是否是動作起點或終點。該部分采用重加權的二分類交叉熵損失進行訓練,損失函數為

(5)

式中,視頻特征序列長度為T,P是模型預測的邊界概率序列,G代表真實的邊界概率序列,pt和gt分別代表t時刻的預測值和真值,其中gt>0.5的時刻作為正樣本,其余為負樣本,即δ{gt>0.5}=1,否則為0;T+和T-分別代表正樣本和負樣本的數量,損失函數中的重加權系數緩解了正負樣本數量不均衡的問題。

PEM通過識別錨框內部的動作模式來判斷其包含完整動作的可能性。PEM的基礎損失函數包括分類損失和回歸損失。按照1.3節中的錨框設置策略,設錨框總數為Na,M代表所有錨框的預測置信度地圖,Gm代表每個錨框與真實動作的時間交并比(即真實置信度),mj和gj分別代表第j個錨框的預測置信度和真實置信度。分類損失函數為

(6)

(7)

所有樣本均參與訓練。

1.5.3 CAM損失函數

設視頻級動作類別為i,借助1.5.2節中定義的基礎損失函數,動作分支損失和通用分支損失可以分別表示為

LACT=L1(Psa[i],Gs)+L1(Pea[i],Ge)+

L2(Mca[i],Gm)+L3(Mra[i],Gm)

(8)

LUNI=L1(Psu,Gs)+L1(Peu,Ge)+

L2(Mcu,Gm)+L3(Mru,Gm)

(9)

融合損失LMER是動作分支和通用分支損失的加權和,即

LMER=β1[i]·(L1(Psa[i],Gs)+
L1(Pea[i],Ge))+
(1-β1[i])·(L1(Psu,Gs)+L1(Peu,Ge))+
β2[i]·(L2(Mca[i],Gm)+L3(Mra[i],Gm))+
(1-β2[i])·(L2(Mcu,Gm)+L3(Mru,Gm))

(10)

加權方式如1.3節所述,TEM中的融合權重為β1[i],PEM中的權重為β2[i]。

1.5.4 整體損失函數

模型整體的損失函數為

L=LACT+LUNI+LMER+λ·J

(11)

式中,J代表了L2正則化項,衰減系數λ設置為10-4??傮w損失中保留了動作分支損失LACT和通用分支損失LUNI,這是因為LMER中包含了可訓練權重,在訓練早期權重參數沒有得到充分訓練的情況下,LACT和LUNI的加入可以保證動作分支和通用分支的有效訓練。

1.6 推理階段

(12)

最后,采用軟閾值非極大值抑制方法(soft non-maximum suppression,Soft-NMS)(Bodla等,2017)對動作片段進行后處理以去除重復預測。

2 實驗結果與分析

2.1 實驗設置

2.1.1 數據集簡介

在兩個極具挑戰性的公開數據集上進行了實驗。THUMOS-14(Idrees等,2017)共有413個有時序標注的視頻,分為20類動作,其中驗證集包含200個視頻,測試集包含213個視頻;ActivityNet-1.3(Heilbron等,2015)包含了19 994個時序標注視頻,分為200類動作,按照2 ∶1 ∶1的比例劃分了訓練集、驗證集和測試集,而且該數據集的標注信息中提供了動作類別的層級結構。按照本領域通用的訓練與評估方法,使用THUMOS-14中200個驗證集視頻進行模型訓練,并在213個測試集視頻上進行測試;對于ActivityNet-1.3,使用訓練集進行訓練,并在驗證集進行測試。

2.1.2 實現細節

1)特征提取器方面。為了與本領域其他方法進行公平比較,本文采用了主流視頻時序動作檢測模型廣泛采用的TSN雙流模型(Xiong等,2016)和I3D雙流模型(Carreira和Zisserman,2017)作為特征提取器,此外還使用了一個較新的特征提取器TSP(Alwassel等,2021)來驗證本文方法的性能。特征提取器的具體設置如1.2節所述。

2)動作分類器方面。如1.2節所述,Untrimmed Net(Wang等,2017)和Zhao等人(2017b)提出的分類器分別在THUMOS-14和ActivityNet-1.3上取得了較高的識別精度,絕大多數兩階段視頻動作檢測方法均使用這兩種模型作為動作分類器。為與其他方法公平比較,本文沿用了這一設置,并為視頻級動作分類器和片段級動作分類器設置不同的輸出類別。在ActivityNet-1.3的標注信息中,動作類別分為4個層級,分別包含了5、14、53和200類動作,根據2.4.2節中消融實驗的結果,選擇第2層的14類作為視頻級分類器的輸出類別,最底層的200類作為片段級分類器的輸出類別。對于THUMOS-14,兩個分類器的類別均設置為20類。使用Adam優化算法進行模型訓練,批量樣本數(batch size)設置為16,學習率設置為10-3。訓練的迭代次數設置為10。在THUMOS-14中,第5次迭代后,學習率衰減到10-4,ActivityNet-1.3中,第7次迭代后學習率衰減到10-4。

2.2 與當前主流方法的比較

在兩個數據集上對CAN的檢測性能進行測試,并與目前主流方法進行了比較。在THUMOS-14的測試集上,表1列出了tIoU閾值為{0.3,0.4,0.5,0.6,0.7}下的mAP以及這5個指標的平均值作為平均mAP(Avg.mAP)。在ActivityNet-1.3的驗證集上,列出了tIoU閾值為{0.5,0.75,0.95}的mAP指標,另外,按照官方的評判標準,以0.05為步長、tIoU在0.5-0.95之間的10個mAP指標進行平均作為平均mAP。

除了前文提到過的BMN方法、GTAD方法、TSI方法和BCGNN方法外,用于比較的其他主流方法還包括Zeng等人(2019)提出的提名圖卷積網絡(proposal graph convolutional network,PGCN),熊成鑫等人(2020)提出的時域候選區域優化方法(temporal proposal optimization,TPO),林天威(2019)提出的邊界敏感網絡(boundary sensitive network,BSN),Su等人(2020)提出的改進的邊界敏感模型BSN++,Zhao等人(2020)提出的自底向上的時序動作定位模型(bottom up temporal action localization,BUTAL),Lin等人(2020)設計的密集邊界生成網絡(dense boundary generator,DBG),Tan等人(2021)提出的松弛的自注意力架構動作檢測網絡(relaxed transformer decoder network,RTD-Net),Qin等人(2021)提出的位置敏感上下文建模網絡(position-sensitive context model network,PCM-Net),Lin等人(2021)提出的基于顯著特征的無錨框邊界檢測網絡(anchor-free saliency-based detector,AFSD),以及Qing等人(2021)設計的時序上下文積聚網絡(temporal context aggregation network,TCA-Net)。

表1列出了各個方法在ActivityNet-1.3數據集上的檢測性能。1)當使用雙流特征TS時,本文提出的CAN與其基準模型BMN相比,在mAP@0.5和mAP@0.75兩個指標上提升了大約2%,而平均mAP指標則為35.58%,超越了TCA-Net和PCM-Net方法,達到了目前的最佳水平。2)當使用I3D特征時,本文方法的優勢進一步顯現,在mAP@0.5、mAP@0.75和平均mAP上均超越了其他現有模型,其中平均mAP為36.23%。3)使用新近提出的TSP模型作為特征提取器時,CAN全面超越了GTAD和BMN,平均mAP達到了37.32%,同時高tIoU閾值下的mAP@0.95達到了10.33%,是目前唯一超過10%的方法,說明CAN的預測結果更加可靠。表2列出了各個方法在THUMOS-14數據集上的檢測性能。在TS、TS*和I3D這3種特征下,本文方法均超越了現有的其他方法,達到目前的最佳水平。

表1 不同方法在ActivityNet-1.3數據集上的動作檢測性能mAPTable 1 Temporal action detection performance mAP comparison with state-of-the-art methods on ActivityNet-1.3 /%

表2 不同方法在THUMOS-14數據集上的動作檢測性能mAPTable 2 Temporal action detection performance mAP comparison with state-of-the-art methods on THUMOS-14 /%

本文方法在兩個數據集上均取得了優異的檢測性能,驗證了本文思路的有效性。值得指出的是,由于ActivityNet-1.3數據集中平均mAP的計算標準更為嚴苛,因此該數據集的平均mAP指標顯著低于THUMOS-14數據集。除此之外,其他造成兩個數據集之間的性能差異的原因將在第3節詳細討論。

2.3 三元時序模塊的有效性驗證實驗

三元時序模塊(TB)用于建立視頻內部的時序關聯,為了充分證明該模塊的作用,同時避免逐類檢測機制(CAM)對模型性能的影響,本實驗去除了所有的動作分支,僅保留了通用分支,然后在THUMOS-14數據集上進行實驗并給出平均mAP。在視頻動作檢測領域,圖模型和圖卷積是另一種時序建模方法,該思路的代表性工作是BCGNN和GTAD。將CAN與圖模型方法進行了對比實驗,結果如表3所示。分別使用TS特征(與BCGNN相同)和TS*特征(與GTAD相同)在THUMOS-14上進行測試,比較CAN、BCGNN和GTAD的檢測性能,并對比CAN與GTAD的參數量、計算量,其中計算量以“乘加操作數”(multiply-accumulate operations,MACs)衡量(由于BCGNN沒有提供開源代碼,且論文中沒有給出相關數據,因此無法統計BCGNN的計算量和參數量)。在相同的輸入特征下,CAN均取得了更好的性能。同時,CAN的運算量比GTAD降低了46%左右。由此說明與圖模型相比,借助門控循環單元構建的三元時序模塊是更加有效、計算量更小的時序建模方法。

表3 CAN與BCGNN、GTAD在THUMOS-14數據集上的時序建模有效性對比Table 3 Comparison of temporal modeling effectiveness on THUMOS-14 between CAN, BCGNN and GTAD

此外,為了驗證本文提出的三元時序模塊的泛化性,選擇TSI(Liu等,2020)和BMN(Lin等,2019)作為基準,這是因為TSI和BMN僅僅使用卷積核大小為3的1維卷積來處理時序信息,缺乏全局時序建模能力。為此,用三元時序模塊來替換TSI和BMN中的前3個卷積層,使用TS特征在THUMOS-14數據集上進行實驗,實驗結果如表4所示。

從表4中可以發現,三元時序模塊的引入為BMN和TSI帶來了可觀的性能提升。在THUMOS-14上,二者的mAP@0.5和平均mAP都得到了5%左右的提升。該實驗表明,三元時序模塊可以有效建立時序關聯并增強特征的表達能力,有助于檢測精度的提升,同時具備一定的泛化能力,可以用于其他視頻時序動作檢測模型。

表4 三元時序模塊(TB)在TSI和BMN上的泛化性能實驗(THUMOS-14,使用TS特征)Table 4 Generalization of ternary basenet(TB) on TSI and BMN (THUMOS-14, using TS feature)

2.4 消融實驗

為了充分證明本文方法有效性,分別就模型整體結構設計和逐類檢測機制中的動作分支設置進行了消融實驗。

2.4.1 整體結構的消融實驗

表5展示了對CAN進行整體結構消融實驗的結果,其中不同設置的含義解釋如下:1)對于三元時序模塊,“過去特征”、“未來特征”選項分別代表在該模塊內部是否將過去特征或者未來特征拼接到當前特征上。2)對于逐類檢測機制,“動作分支”和“通用分支”選項表示模型是否具備動作分支和通用分支(模型至少要有一個通用分支)。表5中最后一行則是配備了三元時序模塊和逐類檢測機制的完整模型CAN。使用不同的模塊設置和相同的輸入特征在ActivityNet-1.3和THUMOS-14兩個數據集上進行對比實驗(ActivityNet-1.3使用了TS特征,THUMOS-14使用了TS*特征)。表5列出了在兩個數據集上的mAP@0.5和平均mAP。

對于三元時序模塊而言,模型1)和5)的對比表明,單純增加三元時序模塊可以為原始的基礎模型帶來改進。根據表5中模型2)—4)的實驗結果,在時序模塊內部,拼接過去特征或者拼接未來特征均會帶來一定的性能提升,而最優的選擇是將過去、當前和未來3種特征拼接在一起,如模型7)的性能所示。

表5 模型整體結構消融實驗的mAP結果Table 5 mAP results of ablation study on model whole structure /%

對于逐類檢測機制而言,模型1)和2)的對比說明,在不使用三元時序模塊的情況下,逐類檢測機制本身就可以帶來較為可觀的性能提升。對比模型5)和6)可以發現,在增加三元時序模塊后,進一步設置動作分支并對每類動作進行定制化處理可以提升檢測精度。對比模型6)和7)可以發現,通用分支的增加可以進一步改善性能,從而說明通用分支可以為動作分支提供有價值的補充信息。

以上消融實驗證明了三元時序模塊和逐類檢測機制在本文模型CAN中的重要作用,同時說明了模塊內部結構設置的合理性。

2.4.2 動作分支的消融實驗

逐類檢測機制的設計引發了兩個問題:1)將m個動作分支嵌入到原本只有單一輸出通道的模型中,是否會導致模型參數量和計算量擴大m倍?2)ActivityNet-1.3的類別層級中有4層,分別有5、14、53、200類動作,應該選擇哪一層作為動作分支的數目?為了回答這兩個問題,進行了針對動作分支的消融實驗:在ActivityNet-1.3中,改變動作分支的數目,在其他設置全部相同的情況下進行實驗,計算不同模型的參數量、計算量,并比較平均mAP。實驗結果如表6所示,模型名稱CAN后的數字代表了動作分支的數目。

對于第1個問題,如表6所示,隨著動作分支的數目從5增加到200,參數量和計算量略有增加,但始終維持在可接受的范圍內。值得注意的是,即便是具有200個動作分支的CAN200模型,其計算量也只有GTAD的55%左右。這一現象的原因在于,動作分支的增減僅僅通過改變最后一層卷積的輸出通道來實現,因此模型復雜度和計算量的增加并不明顯。

表6 動作分支數量的消融實驗(ActivityNet-1.3)Table 6 Ablation study on the number of action branch (ActivityNet-1.3)

對于第2個問題,從表6中可以發現,增加動作分支的個數并不意味著總是帶來更好的性能。一個可能的解釋是,動作分支數目與檢測精度之間存在一種制衡關系:動作分支過少,會導致每個分支內部產生較大的類內方差,因此降低了性能;動作分支過多,參與每個分支訓練的有效樣本個數又會顯著降低,使動作分支無法得到充分訓練,同樣會影響檢測精度。14個動作分支的設置對于ActivityNet-1.3而言是合理的。一方面,這一設置以較低的附加計算量帶來了可觀的性能提升;另一方面,由于視頻級分類器主要進行粗略寬泛的動作分類,所以動作分支的數目不宜過多。

2.5 可視化與定性分析

選擇THUMOS-14測試集中“擲鉛球”和“扔鏈球”動作,分別使用本文模型CAN和BMN對視頻進行檢測,并選取置信度最高的3個預測片段進行可視化,結果如圖5所示,紅色區域為視頻中的真實動作片段(ground truth,GT),藍色區域和綠色區域分別為BMN和CAN的檢測結果。

兩種模型都實現了動作類別的準確預測,但與BMN相比,CAN可以提升動作邊界檢測的準確性,并且預測結果能夠較好地覆蓋真實動作區域。

圖5 CAN與BMN檢測結果的定性比較Fig.5 Qualitative comparison between CAN and BMN

3 討 論

3.1 本文方法泛化性的討論

在應用場景方面,由于THUMOS-14數據集和ActivityNet-1.3數據集中的視頻直接取自Youtube等在線視頻網站,涵蓋了日常生活、體育運動和影視片段等類別,并且沒有進行視頻去噪、畫面截取等后處理,因此數據集視頻與真實視頻差異較小。以下主要對本文方法的泛化性進行討論。

就三元時序模塊而言,該模塊的設計目的是借助GRU來增強不同視頻片段特征之間的關聯,根據2.3節中泛化實驗的結果(表4),對于缺乏長距離時序建模能力的模型TSI和BMN,三元時序模塊的引入均可帶來可觀的性能提升,這說明本模塊具備一定的泛化能力。

對于逐類檢測機制,該機制的核心設計思想在于:進行動作片段檢測時應該考慮動作類別,這是因為不同類別的動作具有截然不同的特征,正如引言中圖1(a)和圖2所示,在類別信息的輔助下,模型可以更具針對性地檢測動作片段。需要注意的是,此處的動作類別并非細粒度的,而是一個粗略的視頻級別動作標簽。以ActivityNet-1.3數據集為例,本文根據數據集中的官方標注,將200類片段級的精細類別劃分為14個視頻級的粗略類別,例如,視頻級類別“藝術與娛樂”中,包含了“芭蕾舞”、“肚皮舞”等動作,而視頻級類別“體育鍛煉”中則包含了“擲標槍”、“扔鉛球”、“跳遠”等動作。這樣的劃分方式保證了類內動作方差較小、降低了視頻級動作類別預測的難度。同時,由于視頻內容的語義關聯性,一段完整視頻中出現的不同動作很可能屬于同一視頻級類別,例如體育賽事的視頻中,可能會依次出現跑步、跳遠和擲鉛球等動作,但它們都屬于“體育”這一上層類別,這種情況下,多類別的動作標簽并不會過多影響這一思路的泛化性能。此外,在動作分支與通用分支的融合策略中,目前僅將置信度最高的動作分支與通用分支進行加權融合,在后續的研究中,將嘗試探索更加全面合理的動作分支融合策略,從而兼顧視頻中的多類動作,進一步提升模型的泛化性能。

3.2 ActivityNet-1.3數據集性能瓶頸的討論

在ActivityNet-1.3數據集上,盡管CAN相對于其基準模型BMN而言獲得了性能提升,并且取得了超越其他模型的最佳性能,但與其在THUMOS-14數據集上的性能提升相比,CAN在ActivityNet-1.3上的提升稍顯不足。實際上,如何提升ActivityNet-1.3的檢測性能是該領域的共同難題。就平均mAP而言,其最佳性能在過去兩年內僅僅從33.85%提升到35.52%,性能提升不足2%。盡管如前文所述,ActivityNet-1.3計算平均mAP的標準更為嚴苛,從而導致兩個數據集之間平均mAP在數值上的差異,但除此之外,導致該數據集性能瓶頸的深層原因仍然值得探究。2.4節中的消融實驗表明動作分支數目并不是阻礙性能提升的關鍵因素,因此,造成ActivityNet-1.3性能瓶頸的原因可能包括以下幾點:

1) THUMOS-14數據集中的動作多是具有較為明確的邊界的體育運動,有利于模型進行邊界模式的識別,特別是在增加動作分支之后,減少了訓練時的樣本內部方差,進一步降低了模型的訓練難度,從而取得了性能提升;與之相對應,ActivityNet-1.3中的視頻包含了大量日常生活中的動作,例如“喝咖啡”、“吹頭發”等,這類動作的邊界相對模糊,增大了檢測的難度。

2)ActivityNet-1.3包含大量持續時間較短的動作片段,類似目標檢測中的小目標難題,短動作的樣本個數較少,內部特征豐富度不足,導致目前的模型對于短動作的檢測性能不佳,影響了整體性能。

3)現行的視頻動作檢測方法大多使用由特征提取器提取好的離線特征作為輸入,該特征提取器并不參與模型訓練??紤]到特征提取器往往采用預訓練的動作分類模型,導致對動作邊界缺乏關注,因此這種離線特征可能不完全適用于動作檢測任務,有待探索更合適高效的視頻特征提取方式。

4)在CAN中,動作分支僅僅通過增加卷積層輸出通道的方式實現,這一簡單的改動可能無法應對ActivityNet-1.3中的復雜數據。接下來會在對模型結構設計時進行更加深入和詳盡的實驗。

4 結 論

本文對視頻動作檢測算法進行了深入探索,指出識別動作模式和建立時序關聯是該任務中至關重要的關鍵環節。通過對相關文獻的分析梳理發現,當前方法往往不加區分地處理所有類別的動作,試圖讓模型歸納出一種普適的動作模式,進而定位動作片段,這忽視了不同類別之間動作模式的巨大差異。此外,現行的使用圖模型在視頻內部建立全局時序關聯的方法存在計算量大的不足。

為此,本文從動作模式識別和時序關聯建立兩個方面出發,對現有方法進行了創新和改進。首先,考慮到不同動作間的巨大差異,將動作檢測任務與視頻級的動作分類任務相結合,在獲得視頻粗略類別信息的基礎上,為每類動作進行定制化處理,實現了逐類別的精細化動作檢測。其次,靈活利用門控循環單元GRU構造了一個三元時序模塊,通過改變特征序列的輸入順序,在視頻內部建立了全局時序關聯,與采用圖模型的其他主流方法相比降低了計算量。以上兩點創新融合為類別敏感的全局時序關聯視頻動作檢測模型,并在兩個公開數據集上取得了優異性能,相關消融實驗的結果則充分表明了該方法的有效性和合理性。

最后,本文對視頻動作檢測任務的難點以及后續改進方向進行了分析和討論。后續工作將進一步完善模型結構,探索更好的動作分支融合策略,并嘗試對當前檢測性能較差的類別進行針對性改進。

猜你喜歡
時序分支分類器
一類離散時間反饋控制系統Hopf分支研究
清明
一類四次擾動Liénard系統的極限環分支
基于不同建設時序的地鐵互聯互通方案分析
巧分支與枝
基于FPGA 的時序信號光纖傳輸系統
基于差異性測度的遙感自適應分類器選擇
基于實例的強分類器快速集成方法
基于模體演化的時序鏈路預測方法
基于層次化分類器的遙感圖像飛機目標檢測
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合