張冰冰,趙柏山
(沈陽工業(yè)大學信息科學與工程學院,沈陽 110870)
人工智能的快速發(fā)展促進了人體動作識別技術(shù)的研究,該技術(shù)在智能家居、智能安防、運動分析等領(lǐng)域中得到廣泛應(yīng)用。在運動分析領(lǐng)域,將人體動作識別技術(shù)與散打動作結(jié)合,可以實現(xiàn)散打動作識別,再通過比較相似度,可以實現(xiàn)輔助打分效果。目前有兩種主要的人體動作識別方法,一種是使用可穿戴設(shè)備獲取人體運動參數(shù)識別人體動作[1],此方法依賴硬件設(shè)備,而且成本較高;另一種是通過雙流法[2]或三維卷積法[3]識別人體動作,但識別效果容易受到環(huán)境影響。為了解決現(xiàn)有研究中存在的問題,從骨骼信息的角度出發(fā),使用改進YOLOv5s-CBAM 目標檢測模型進行人體目標檢測,在此基礎(chǔ)上使用改進的HRNet-DSC-CBAM 人體姿態(tài)估計模型提取人體骨骼關(guān)鍵點坐標,可以減少背景干擾,然后將骨骼信息構(gòu)造成骨架時空圖輸入ST-GCN 動作識別算法進行散打動作識別[4],將骨骼關(guān)鍵點坐標轉(zhuǎn)換為關(guān)節(jié)角度特征,通過DTW 動態(tài)時間規(guī)整算法[5]進行動作評價。
實驗使用自制散打數(shù)據(jù)集,選取散打中的10 式動作進行視頻拍攝,分別是前直拳、后直拳、前擺拳、后擺拳、前正蹬腿、后正蹬腿、前鞭腿、后鞭腿、前側(cè)踹踢、后側(cè)踹踢。為提高網(wǎng)絡(luò)的識別效率及精度,采用基于視頻聚類的方法進行關(guān)鍵幀提取與雙邊濾波的方法進行圖像去噪。
CBAM 卷積注意力機制模塊[6]可以從特征圖中提取或?qū)W習出特征的權(quán)重,再將權(quán)重進行重新分配以抑制無效特征增強有效特征。CBAM 模塊包括通道注意力模塊和空間注意力模塊,如圖1 所示。
將通道注意力模塊所得的通道關(guān)注度與輸入特征圖F 相乘,可以將通道權(quán)重進行再分配,得到新的通道特征圖F'。將空間注意力模塊所得的空間關(guān)注度與輸入特征圖F'相乘,得到最終生成的特征圖F''。
在目標檢測任務(wù)中,為了對目標進行更加精準的檢測,需要對目標的關(guān)鍵特征信息進行重點關(guān)注,因此此處將CBAM 模塊添加到目標檢測算法YOLOv5s 的網(wǎng)絡(luò)結(jié)構(gòu)中,將更多注意力資源置于目標的關(guān)鍵區(qū)域[7]。在YOLOv5s 網(wǎng)絡(luò)模型中,共有三個尺度的輸出,針對目標尺寸差異可以生成不同尺度預(yù)測框。為了不使模型參數(shù)量大幅度增加,并且不使網(wǎng)絡(luò)推理速度變慢,CBAM 模塊不可放置過多;同時由于淺層提取不到充分的特征信息,無法對關(guān)鍵位置和通道信息進行關(guān)注,因此CBAM 模塊不可以放置在網(wǎng)絡(luò)淺層部分。綜上考慮,將CBAM 模塊加在YOLOv5s 每個檢測尺度前,不僅可以幫助模型更充分地提取特征,提高檢測準確性,而且由于添加數(shù)量較少,網(wǎng)絡(luò)推理速度也不會受到較大影響。改進后的YOLOv5s-CBAM 網(wǎng)絡(luò)結(jié)構(gòu)如圖2 所示。
圖2 YOLOv5s-CBAM 網(wǎng)絡(luò)結(jié)構(gòu)
將改進后的YOLOv5s-CBAM 網(wǎng)絡(luò)與其他網(wǎng)絡(luò)進行性能對比實驗,實驗結(jié)果如表1 所示。
可以看出,YOLOv5s-CBAM 網(wǎng)絡(luò)模型的MAP值比YOLOv5s、SSD 模型分別提高了1.1%、6.5%,模型權(quán)重比YOLOv5s 模型增加了1.75 MB,比SSD 模型減少了19.15MB。
這表明,YOLOv5s-CBAM 網(wǎng)絡(luò)模型在小幅度增加模型權(quán)重的情況下優(yōu)化了對于目標物體的搜索能力,帶來較大幅度的MAP 值增加,可以更準確地對散打人員進行目標檢測。
DSC 深度可分離卷積[8]將標準卷積拆分成深度卷積與點卷積。DSC 卷積與標準卷積的參數(shù)量與計算量比值分別如下式所示:
由于DSC 卷積的卷積核通常為3×3,且輸出通道數(shù)N 很大,DSC 卷積的參數(shù)量與計算量約為標準卷積的1/9,因此利用DSC 卷積可提高模型訓練和運行的速度。
在骨骼關(guān)鍵點檢測任務(wù)中,人體姿態(tài)估計算法HRNet[9]的殘差模塊使用標準卷積,存在參數(shù)量與計算量較大的問題,在網(wǎng)絡(luò)層數(shù)較深時效果不佳。因此,此處以DSC 卷積和CBAM 模塊構(gòu)成的輕型殘差模塊替換原網(wǎng)絡(luò)殘差模塊,兼顧檢測準確率的同時大幅度降低參數(shù)量與計算量。改進后的輕型殘差模塊如圖3 所示。
圖3 改進后的輕型殘差模塊
同樣,將改進后的輕型殘差模塊與其他模塊進行性能對比實驗,實驗結(jié)果如表2 所示。
表2 LCD 屏幕位置顯示實例
由表2 可以看出,HRNet-DSC-CBAM 網(wǎng)絡(luò)模型的AP 值相較于HRNet、AlphaPose 模型分別提高了0.8%、4.3%,參數(shù)量分別降低了9.0M、8.3M,計算量分別降低了8.4、16.1。這表明,HRNet-DSC-CBAM網(wǎng)絡(luò)模型的輕型殘差模塊能夠在大幅度減少網(wǎng)絡(luò)參數(shù)量與計算量的同時保持骨骼關(guān)鍵點檢測準確性不會下降,從而能夠更準確更快速地檢測散打人員的骨骼關(guān)鍵點信息。
將由上述改進網(wǎng)絡(luò)處理過的骨骼數(shù)據(jù)構(gòu)造成骨架時空圖,輸入ST-GCN 網(wǎng)絡(luò)模型以實現(xiàn)散打動作識別。首先對輸入數(shù)據(jù)進行批量規(guī)范化處理,然后經(jīng)過9 個ST-GCN 單元,每個單元都進行特征殘差融合,使得模型的學習能力有所增強,最后經(jīng)過池化層、全連接層把數(shù)據(jù)轉(zhuǎn)化為256 維向量,將其送入softmax 分類器進行分類。
在自制散打數(shù)據(jù)集上分別對C3D、LSTM 和ST-GCN 算法進行網(wǎng)絡(luò)訓練測試,實驗結(jié)果如表3所示。
表3 動作識別網(wǎng)絡(luò)模型性能比較
可以看出,ST-GCN 算法的準確率相比LSTM、C3D 算法分別提升了4.6%、22.1%,表明了ST-GCN算法的高效性,在散打動作識別分類任務(wù)上有著優(yōu)異的效果。散打動作識別結(jié)果如圖4 所示,圖中所顯示的字母a 代表前擺拳。
圖4 散打動作識別結(jié)果
首先將骨骼坐標轉(zhuǎn)換成關(guān)節(jié)角度信息,選取左肩、左肘、右肩、右肘、左膝、左胯、右膝、右胯8 個關(guān)節(jié)點,利用余弦定理進行關(guān)節(jié)角度計算,如下式:
其次,由DTW 計算待測樣本和模板樣本8 個關(guān)節(jié)角度的DTW 距離。假設(shè)有測試序列B=(B1,B2,…,Bi,…,Bm),模板序列D=(D1,D2,…,Dj,…,Dn),其中Bi代表第i 幀的特征向量;Dj代表第j 幀的特征向量。若m 與n 相等,直接對兩個動作序列計算累加距離。當m 與n 不等,則采用DTW 算法使兩個動作序列對齊,具體做法是將兩個序列構(gòu)造成m×n的矩陣,矩陣中的元素(i,j)表示兩個動作序列對應(yīng)點Bi與Dj間的距離d(Bi,Dj),如下式:
式中,Biw與Djw分別表示動作序列B 和D 的第i 幀和第j 幀的特征值;N 表示動作序列維度。
兩個序列間的最佳匹配路徑定義為規(guī)整路徑,用W 表示,如圖5 所示。
圖5 規(guī)整路徑示意圖
它有3 個約束條件,條件滿足后每個格點路徑剩下3 個方向,如果路徑通過了格點(i,j),則下一步通過的格點只能是(i+1,j)、(i,j+1)、(i+1,j+1)其中之一。為得到最佳規(guī)整路徑,定義累加距離,如下式:
選擇數(shù)據(jù)集中的前擺拳作為評價對象,選取20個樣本作為測試序列,采用DTW 算法計算測試序列與標準序列的DTW 距離,作為相似性評估的指標。實驗部分結(jié)果如圖6 所示。
圖6 左肩關(guān)節(jié)角度的DTW 距離分布
從圖6 中可以看出,左肩關(guān)節(jié)角度的DTW 距離大部分分布在630°到1200°之間,少部分分布在1200°到1300°之間。舍棄少部分值,對8 個關(guān)節(jié)點的實驗數(shù)據(jù)進行分析,定義前擺拳評價方法,如下式:
式中,ea是單個角度特征的得分;ec是單個角度分配的分數(shù),共有8 個關(guān)節(jié)角度,因此令ec取值為12.5,使得滿分達到100 分;d1是DTW 距離值;dmin是DTW 距離有效區(qū)間內(nèi)的最小值;fc是損失參數(shù)。
最后,即可用E 代表8 個關(guān)節(jié)角度得分的總和:
本研究通過YOLOv5s-CBAM 進行人體目標檢測,基于目標檢測結(jié)果利用HRNet-DSC-CBAM 進行人體骨骼關(guān)鍵點檢測,將得到的骨骼關(guān)鍵點坐標構(gòu)造為骨架時空圖輸入ST-GCN 網(wǎng)絡(luò)實現(xiàn)散打動作識別。其對自制數(shù)據(jù)集識別率達到92.8%。利用關(guān)節(jié)角度的DTW 距離也實現(xiàn)了對動作評價公式的定義。實驗結(jié)果表明方法具有有效性,對于輔助打分這一專業(yè)領(lǐng)域具有一定的實用價值。