饒天榮,潘濤,徐會軍
(國能信息技術有限公司,北京 100011)
煤礦生產是勞動密集型產業,且礦井地質條件復雜,生產環境惡劣,工作人員的不安全、不規范行為容易引發安全生產事故。據統計,85%的安全事故是由生產人員的不安全行為引發的[1]。通過視頻監控實時掌握礦井生產重點區域的人員行為,并對不安全行為進行實時報警,是提升煤礦生產安全水平的重要手段[2]。
行為識別是計算機視覺領域的研究熱點。目前主流的行為識別方法大致分為基于圖像特征的行為識別方法和基于人體關鍵點特征的行為識別方法2 類。其中基于圖像特征的行為識別方法應用最廣泛。文獻[3]首次將深度學習網絡用于視頻行為識別,提出了經典的雙流模型,其中一流用于提取視頻中關鍵幀的圖像特征,另一流用于提取視頻中每一幀變化帶來的光流特征,通過融合圖像特征和光流特征進行視頻行為識別。文獻[4-5]提出了TSN(Temporal Segment Networks,時間切片網絡)和TSM(Temporal Shift Module,時間轉換模塊)模型,其基于雙流模型結構,通過改進卷積神經網絡性能來提升視頻行為識別能力。文獻[6]提出了C3D(Convolutional 3D,三維卷積)模型,將圖像特征和光流特征提取整合到1 個網絡結構中進行。文獻[7]提出了SlowFast 模型,將雙流模型與C3D 模型結合來感知瞬時行為與長期行為,是目前應用最廣泛的視頻行為識別模型。
在煤礦井下,基于圖像特征的行為識別方法得到一定應用[8-9],但仍面臨以下挑戰[10]:①煤礦井下環境復雜,存在粉塵、水霧干擾,且光照度遠低于地面環境,極大地影響了監控視頻質量。② 井下監控區域一般存在較多的設備和管線等復雜背景物體,增加了有效視覺信息提取難度。③井下人員穿著的工作服、安全帽等對視覺信息提取產生影響。考慮上述挑戰,基于人體關鍵點特征的行為識別方法成為煤礦井下行為識別的有效途徑。該方法從圖像中提取人體關鍵點進行連接,構建人體骨架圖,去除無關圖像特征的干擾后,通過GCN(Graph Convolutional Network,圖卷積網絡)對連續的人體骨架圖進行行為識別[11-12]。基于人體關鍵點特征的行為識別方法可有效去除與行為識別無關的視覺特征,應用于煤礦井下環境中時識別性能優于基于圖像特征的行為識別方法[13]。但人體關鍵點特征提取依賴openpose 等算法,直接從監控視頻中提取人體關鍵點時準確度較低,影響識別性能。另外,基于人體關鍵點特征的行為識別方法需采用特殊攝像頭采集人體關鍵點特征用于模型訓練,增大了訓練數據的采集難度和成本,不利于該方法推廣和應用[14]。
考慮2 種行為識別方法的優勢和不足,可通過構建復合模型來同時提取圖像特征和人體關鍵點特征,并將2 種特征有效融合后用于煤礦井下不安全行為識別,從而在不增大數據采集難度的前提下,有效提高識別性能。本文提出一種基于交叉注意力機制的多特征融合行為識別模型,通過交叉注意力機制將監控視頻中的圖像特征和人體關鍵點特征進行有效融合,結合不同特征的特點,降低了煤礦井下環境對行為識別的影響,同時在不額外采集人體關鍵點特征的情況下,提升了行為識別準確率。
圖像特征與人體關鍵點特征在行為識別中關注的重點不同,圖像特征關注不同幀之間圖像的變化,而人體關鍵點特征關注關鍵點之間位置關系的變化,因此使用常規的特征融合函數,如concate(),average(),max()等無法很好地將2 種特征進行有效融合。注意力機制可使網絡自主尋找關鍵特征,從而提升網絡整體性能。因此,通過注意力機制來提取圖像特征和人體關鍵點特征的有效信息,并通過交叉注意力機制進行特征融合,是一種更為可行的多特征融合方案。
基于交叉注意力機制的多特征融合行為識別模型整體結構如圖1 所示。該模型主要包括特征提取模塊和交叉注意力模塊。特征提取模塊負責提取待檢測視頻的三維圖像特征Fv和 人體關鍵點特征Fs,交叉注意力模塊通過自注意力機制和交叉注意力機制對2 種特征進行融合。融合后的特征經歸一化指數函數softmax 進行行為分類。

圖1 基于交叉注意力機制的多特征融合行為識別模型結構Fig.1 Structure of action recognition model of multi-feature fusion based on cross-attention mechanism
為了降低計算量,對于一段視頻,將其等分為m段。m根據待檢測視頻長度設定,保證等分后的視頻片段長度為1~3 s。通常行為識別視頻長度約為10 s,因此本文中m設為8。從每段視頻片段中抽取10 個連續視頻幀,用于圖像特征提取。采用3D ResNet101 模型[15]提取視頻片段的圖像特征,共得到m個圖像特征。對于任意待檢測視頻,其圖像特征 為Fv={fv1,fv2,···,fvm} ,fvk(k=1,2,…,m)為 第k個視頻片段的圖像特征。
提取人體關鍵點特征時需從視頻中提取相應的人體關鍵點。目前常用openpose 算法提取人體關鍵點,其通過2 條并行的卷積神經網絡從視頻中提取人體的關鍵點位置和類別[16],如圖2 所示。

圖2 openpose 算法提取人體關鍵點效果Fig.2 Human body key points extracted by openpose algorithm
對于等分后的視頻片段,采用openpose 算法得到每一幀圖像的人體關鍵點,將關鍵點按照固定的順序連接起來,得到該幀圖像的人體骨架圖。將該視頻片段中所有幀圖像的人體骨架圖按時間順序排列,得到人體骨架序列圖。采用ST-GCN(Spatial Temporal GCN,時空圖卷積網絡)從人體骨架序列圖中提取人體關鍵點特征[7]。對于給定的人體骨架序列,構建人體骨架時空圖GST=(X,E)來存儲人體關鍵點之間的位置和時間關系。其中頂點集X為人體關鍵點vi(i=1,2,…,n,n為人體關鍵點總數)集合,即X={vi},且X被邊E連接,E={eS,eT},eS為不同關鍵點的連接(即人體骨架圖),eT為同一關鍵點在不同時刻的連接(即運動軌跡圖)。頂點間的連接需符合2 個條件:①在空間上,同一人體骨骼的關鍵點被空間邊eS連接。② 在時間上,相鄰幀的同一個關鍵點被時間邊eT連接。人體骨架時空圖如圖3 所示,其中藍色邊為空間邊eS,綠色邊為空間邊eT。

圖3 人體骨架時空圖Fig.3 Time-space diagram of the skeleton

通過ST-GCN 提取的人體關鍵點特征為式中:fsi為第i個人體關鍵點特征;vj為第i個關鍵點vi(中心節點)的鄰居節點,j=1,2,…,n,且j≠i;Bi為vi的鄰居節點集合;w為待學習的權重;p(vj)為鄰居節點vj的采樣函數,表示卷積涉及的節點范圍,本文設為1,表示只使用中心節點及與其相連的鄰居節點。
得到待檢測視頻的圖像特征后,采用自注意力機制對其進行處理[17]。圖像特征自注意力機制可通過分析整幅圖像的全局信息來判斷圖像各部分對于最終分析結果的影響權重,從而有效去除冗余信息對分析結果的干擾。自注意力機制如圖4 所示。K,Q,V分別代表鍵(Key)、查詢(Query)和值(Value),分別由可學習的線性映射函數 φ,θ,η對特征進行處理得到;MatMul 為矩陣相乘函數;⊕為元素相加運算符號。

圖4 自注意力機制Fig.4 Self-attention mechanism
圖像特征經線性運算處理后,得到圖像特征的鍵、查詢、值為Kv=φ(Fv),Qv=θ(Fv),Vv=η(Fv)。通過縮放點積運算可得到圖像特征的注意力分數:

式中d為的維度,用于控制注意力分數的分布范圍。
經自注意力機制處理后的圖像特征為

為便于模型訓練,將原圖像特征與經自注意力機制處理后的圖像特征通過殘差連接,得到最終的圖像特征:

式中Wv為可學習的圖像特征注意力權重矩陣。
采用圖注意力機制對人體關鍵點特征進行處理。圖注意力機制通過獲取圖中每個節點的鄰域特征為不同節點分配權重,如對于吸煙行為,更關注手部關鍵點的運動軌跡。圖注意力機制原理與圖像特征自注意力相似[18],但由于圖中節點只有1 種特征表示,可認為圖注意力機制中人體關鍵點特征的鍵、查詢、值為Ks=Qs=Vs=DFs,其中D為可學習的線性變換矩陣。
對于任意人體關鍵點特征fsi,可通過其鄰居節點特征fsj得到注意力分數:

式中:cij為中心節點vi在其鄰居節點vj中的注意力分數,可通過權重向量為a的單層前饋神經網絡計算得到;||為拼接運算符號。
對cij進行歸一化處理,得到歸一化后的注意力分數:

式中 δ(·)為激活函數,本文采用LeakyRelu 函數。
經圖注意力機制處理后的關鍵點特征為

通過殘差將原人體關鍵點特征與經圖注意力機制處理后的人體關鍵點特征連接,得到最終的人體關鍵點特征:

式中Ws為可學習的人體關鍵點特征注意力權重矩陣。
自注意力機制可通過分析全局找出影響最終模型表現的關鍵特征。但對于多特征模型,還需要通過交叉注意力機制挖掘不同類別特征間的關系。由于圖像特征自注意力機制與圖注意力機制的原理基本相同,所以可在計算注意力分數時將2 種特征交換,從而得到不同特征間的關系。
用Fs代替Fv得 到關鍵點特征在圖像特征中的注意力分數Sv←s(Qv,Ks),Fv代 替Fs得到圖像特征在關鍵點特征中的注意力分數Ss←v(Qs,Kv),由此得到經交叉注意力機制融合后的圖像特征和人體關鍵點特征


為了全面評估基于交叉注意力機制的多特征融合行為識別模型的性能,分別在公開數據集HMDB51[19]和UCF101[20]、自建的煤礦井下視頻數據集上進行實驗驗證。
HMDB51 數據集包含51 種日常動作,共有6 849段視頻,每種動作至少有51 段視頻,分辨率為320×240。UCF101 數據集包含101 種動作,可分為人與物體交互、單純的肢體動作、人與人交互、演奏樂器和體育運動5 類,共有13 320 段視頻。2 種公共數據集視頻主要來自youtube 等網站。自建數據集來自井下實際監控視頻,包含井下人員的6 種不安全行為,分別為抽煙、打架、徘徊、跌倒、摘安全帽和脫工作服。每種行為各采集120 段10 s 左右的監控視頻片段,共有720 段視頻,分辨率為640×480。
本文模型使用在Kinetic 400 數據集上預訓練的3D ResNet101 和ST-GCN 分別提取圖像特征和人體關鍵點特征。在提取特征前,需將輸入視頻圖像尺寸調整為224×224。模型通過隨機梯度下降法進行優化,權值衰減為0.000 5,動量為0.9,學習率為0.001,迭代次數為50,并在第20 次迭代和第40 次迭代時對學習率進行衰減調整。模型采用pytorch1.7 機器學習框架,運行在2 塊Nvidia Tesla V100 16 GB 顯卡上。
采用公共數據集HMDB51 和UCF101,對本文模型與主流的基于圖像特征的行為識別模型C3D[6],3D ResNet101[15],TSN[4],SlowFast[7],以及基于人體關鍵點特征的行為識別模型ST-GCN[8],2S-ACGN(Two-Stream Adaptive GCN,雙流漸進圖卷積網絡)[9]進行對比實驗,結果見表1。

表1 不同行為識別模型在公共數據集上的對比實驗結果Table 1 Comparison experiment results of different action recognition models by use of public data sets %
從表1 可看出,基于圖像特征的行為識別模型在HMDB51,UCF101 數據集上的表現優于基于人體關鍵點特征的行為識別模型,原因是HMDB51 和UCF101 數據集直接采集相關行為視頻,而人體關鍵點特征需通過openpose 算法從視頻中提取,提取過程中會產生精度損失,影響分類結果。本文模型在所有模型中取得了最優的分類結果,在HMDB51 和UCF101 數據集上的分類準確率較SlowFast 模型分別提高了1.8%和0.9%,驗證了本文模型可有效結合圖像特征和人體關鍵點特征,消除了基于人體關鍵點特征的行為識別模型因關鍵點提取導致精度損失而難以在實際中應用的缺點。
為了驗證本文模型中各模塊的有效性,在HMDB51 和UCF101 數據集上進行消融實驗,結果見表2,其中√和×分別表示采用和未采用相關模塊。從表2 可看出,不管是圖像特征還是人體關鍵點特征,添加自注意力模塊均能提升模型的行為識別準確率,驗證了自注意力機制的有效性。因圖像特征與人體關鍵點特征差別較大,直接將2 種特征進行拼接融合與采用單一特征提取網絡+自注意力機制相比并無明顯優勢。而采用自注意力機制后,可在一定程度上去除影響結果的冗余信息,提升融合效果,但識別準確率仍低于SlowFast 模型。采用交叉注意力機制后,圖像特征和人體關鍵點特征得到更有效的融合,識別準確率大幅提升。

表2 消融實驗結果Table 2 Ablation experiment results %
在自建數據集上對本文模型與主流的行為識別模型進行對比實驗,結果見表3??煽闯鲋髁鞯男袨樽R別模型在自建數據集上的識別準確率較UCF101數據集有一定程度的下降,原因是UCF101 數據集中圖像背景簡單,自建數據集中圖像背景較復雜,說明復雜背景對行為識別準確率有一定影響。本文模型在自建數據集上的識別準確率較其他模型高,且結合表1 數據可知,本文模型對不同場景下數據集的識別性能更加穩定,更適用于煤礦井下復雜環境下的人員不安全行為識別。

表3 不同行為識別模型在自建數據集上的對比實驗結果Table 3 Comparison experiment results of different action recognition models by use of built underground video data sets %
本文模型對不同行為類別的識別準確率見表4。其中抽煙、打架、徘徊和跌倒動作因特征較明顯,識別準確率較高。而脫工作服和摘安全帽這2 種行為動作幅度較小,且因監控視頻分辨率較低,識別準確率較其他行為類別低。不同模型對摘安全帽行為的識別結果如圖5 所示,可看出本文模型更關注頭部特征,與SlowFast 模型和2S-AGCN 模型相比,能更準確地檢測出摘安全帽行為。

表4 本文模型對不同行為類別的識別結果Table 4 Action recognition results of different action types by the proposed model %

圖5 不同模型對摘安全帽行為的識別結果Fig.5 Recognition results of removing safety helmet by different models
(1)分析了基于圖像特征和基于人體關鍵點特征的行為識別方法優缺點,提出采用交叉注意力機制將2 種不同特征有效結合,構建了一種基于交叉注意力機制的多特征融合行為識別模型。
(2)在公共數據集HMDB51,UCF101 上對基于交叉注意力機制的多特征融合行為識別模型進行消融實驗,結果表明,該模型采用交叉注意力機制可更有效地融合圖像特征和人體關鍵點特征,大幅提高了識別準確率。
(3)在公共數據集HMDB51,UCF101 及自建的煤礦井下視頻數據集上對主流的行為識別模型和基于交叉注意力機制的多特征融合行為識別模型進行對比實驗,結果表明,與目前應用最廣泛的行為識別模型SlowFast 相比,基于交叉注意力機制的多特征融合行為識別模型在HMDB51 和UCF101 數據集上的識別準確率分別提高了1.8%,0.9%,在自建數據集上的識別準確率提高了6.7%,驗證了基于交叉注意力機制的多特征融合行為識別模型更適用于煤礦井下復雜環境中人員不安全行為識別。