閆琳
(西安航空職業(yè)技術(shù)學(xué)院,陜西 西安 710089)
近年來,隨著計(jì)算機(jī)視覺技術(shù)逐漸走向成熟,越來越多的基于視覺檢測的應(yīng)用被普及。形體動(dòng)作識別是機(jī)器視覺技術(shù)的一個(gè)重要應(yīng)用領(lǐng)域[1],通過該技術(shù)能夠快速、精準(zhǔn)地識別運(yùn)動(dòng)員或舞蹈演員的不規(guī)范動(dòng)作,并分析訓(xùn)練制約因素以提高學(xué)習(xí)效率,從而實(shí)現(xiàn)智能化標(biāo)準(zhǔn)形體動(dòng)作培訓(xùn)[2-3]。
形體動(dòng)作識別旨在對人體的各個(gè)關(guān)鍵點(diǎn)進(jìn)行檢測,進(jìn)而判斷人體的動(dòng)作姿態(tài),其關(guān)鍵是人體姿態(tài)估計(jì)技術(shù)。早期的人體姿態(tài)估計(jì)是通過預(yù)設(shè)的人體姿態(tài)模板來擬合圖片中的人體,隨著深度學(xué)習(xí)(Deep Learning,DL)的發(fā)展,業(yè)界學(xué)者逐漸采用基于卷積神經(jīng)網(wǎng)絡(luò)的算法來完成姿態(tài)估計(jì)。文獻(xiàn)[4]在姿態(tài)估計(jì)任務(wù)中引入深度學(xué)習(xí)算法并提出DeepPose 算法。文獻(xiàn)[5]將姿態(tài)估計(jì)看作是檢測任務(wù),設(shè)計(jì)Flow Convnet輸出熱力圖。文獻(xiàn)[6]提出了Hourglass 網(wǎng)絡(luò),通過遞歸使用下采樣及上采樣來高效地學(xué)習(xí)多尺度信息。文獻(xiàn)[7]設(shè)計(jì)了GlobalNet 與RefineNet 以提高算法對困難關(guān)鍵點(diǎn)的挖掘能力,并憑借其優(yōu)異的性能,該算法獲得Face++2017 年COCO Keypoints Challenge 的冠軍。由于大部分網(wǎng)絡(luò)均是由高到低的結(jié)構(gòu),因此會導(dǎo)致最終表示的分辨率較低。因此,中國科技大學(xué)聯(lián)合微軟公司的學(xué)者設(shè)計(jì)了一種新的網(wǎng)絡(luò)結(jié)構(gòu),即HRNet(High-Resoultion Net)[8]。與其他網(wǎng)絡(luò)不同,HRNet 在前向傳播過程中始終保持高分辨率特征,同時(shí)通過密集連接以獲取深層語義。隨后在圖像分類[9]、人體姿態(tài)估計(jì)[10]及圖像分割[11]等機(jī)器視覺任務(wù)中證明了有效性。
形體動(dòng)作識別需對一些微弱與復(fù)雜的動(dòng)作進(jìn)行識別,這便需要較強(qiáng)的語義信息。因此,采用HRNet網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行特征提取。但由于始終保持高分辨率傳輸及密集運(yùn)算,HRNet 具有復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu),導(dǎo)致其計(jì)算效率較低。隨著Transformer[12]在自然語言處理中取得巨大成功,眾多學(xué)者將其拓展至計(jì)算機(jī)視覺領(lǐng)域。實(shí)驗(yàn)表明,Transformer 在視覺任務(wù)中能夠在保持較高準(zhǔn)確率的同時(shí),實(shí)現(xiàn)更高的計(jì)算效率。此外,Transformer 由多頭注意力和自注意力構(gòu)成,可捕捉不同關(guān)鍵點(diǎn)特征間的聯(lián)系[13-14]。為此,基于HRNet 網(wǎng)絡(luò)結(jié)構(gòu),該文引入Transformer Block 設(shè)計(jì)了一種高分辨率形體動(dòng)作識別算法,以用于形體動(dòng)作的識別。
為提升模型對形體動(dòng)作的識別性能,基于HRNet網(wǎng)絡(luò)結(jié)構(gòu),引入了Transformer 模塊,設(shè)計(jì)了一種多分辨率特征相關(guān)的形體動(dòng)作識別算法,其能夠在整個(gè)過程中維護(hù)高分辨率,并挖掘特征的相關(guān)性。
相比于日常的人體動(dòng)作,舞蹈形體較為夸張,尺度變化也更為劇烈,這便給形體動(dòng)作識別帶來了挑戰(zhàn)。基于HRNet 的網(wǎng)絡(luò)結(jié)構(gòu)通過高分辨率計(jì)算,可獲取更為精細(xì)的局部特征。而利用密集連接多分辨率的深度特征,可提取包含全局信息及深層語義的特征。因此,該文采用HRNet 結(jié)構(gòu)來搭建姿態(tài)估計(jì)網(wǎng)絡(luò)模型[15-16]。
HRNet 的具體網(wǎng)絡(luò)架構(gòu)如圖1 所示,特征提取部分包含4 個(gè)階段:第1 階段的特征圖分辨率縮放比為1∶4,主要包含兩個(gè)Bottlenect Block,每個(gè)由兩個(gè)1×1卷積和一個(gè)3×3 卷積組成;第2 階段在原有分辨率特征圖的基礎(chǔ)上增加了8 倍降采樣的支路,該階段同樣由兩個(gè)Block 組成,但與第1 階段不同,從第2 階段起B(yǎng)lock 替換為能夠捕捉特征相關(guān)性的Transformer Block;第3 階段和第4 階段依次增加16 倍降采樣支路和32 倍降采樣支路,且每個(gè)支路還包含有兩個(gè)Transformer Block 來進(jìn)行特征提取。每個(gè)階段銜接處進(jìn)行多尺度特征融合,以交換多分辨率信息。
圖1 基于HRNet的形體動(dòng)作識別算法
該文方法的多尺度特征融合部分是一個(gè)密集連接塊,需通過上采樣和下采樣操作統(tǒng)一尺度后再進(jìn)行融合,如圖2 所示。
圖2 多分辨率特征融合示意圖
向上信息融合模式對于小尺度特征,采用兩次上采樣操作將特征圖統(tǒng)一為大尺度特征,通過1×1卷積將特征圖通道數(shù)與大尺度進(jìn)行統(tǒng)一;對于中尺度特征,采用一次上采樣操作,然后通過1×1 卷積將特征圖通道數(shù)與大尺度進(jìn)行統(tǒng)一;最后,將所有結(jié)果按相應(yīng)通道進(jìn)行疊加。
在中間信息融合模式,大尺度和小尺度特征分別采用降采樣和上采樣操作實(shí)現(xiàn)特征圖分辨率上的統(tǒng)一。然后通過1×1 卷積整合通道數(shù),最后將所有結(jié)果按相應(yīng)通道進(jìn)行疊加。向下信息融合模式與向上信息融合模式相似,大尺度和中尺度特征分別通過兩次和一次降采樣操作將特征圖降為小尺度,將通道數(shù)和尺度均統(tǒng)一為小尺度的三個(gè)特征圖進(jìn)行疊加。
由于Transformer 具有高效率、高擴(kuò)展性的特點(diǎn),將基于HRNet 結(jié)構(gòu)引入Transformer Block,以降低HRNet 的計(jì)算復(fù)雜度,進(jìn)而提升形體動(dòng)作識別的性能。
首先,將輸入的特征圖X∈RN×D平均裁剪成一組無交叉的窗口特征圖序列,即{X1,X2,…,Xp}。其中,N表示特征圖大小,D表示通道數(shù),每個(gè)窗口特征圖的尺寸為k×k,p則表示窗口數(shù)量,且每個(gè)窗口分別執(zhí)行多頭注意力。第p個(gè)窗口的多頭注意力模塊計(jì)算方法為:
式中,Wo∈RD×D,H表示多頭注意力的Head 數(shù),每個(gè)Head 由一個(gè)自注意力機(jī)制構(gòu)成。文中多頭注意力機(jī)制的Head 數(shù)與降采樣倍數(shù)正相關(guān):特征圖在4、8、16、32 倍降采樣后的多頭注意力操作對應(yīng)Head 數(shù)為1、2、3、4。MultiHead(·)為多頭注意力機(jī)制,具體計(jì)算如下:
其中,Head(·)為自注意力機(jī)制,具體計(jì)算如下:
其中,Wq,Wk,Wv∈RD×D/H,均為自注意力機(jī)制的參數(shù)權(quán)重。XMHSA表示多頭注意力輸出結(jié)果,具體操作為聚合每個(gè)窗口中信息,如式(4)所示:
由于所有的自注意力在窗口特征圖單獨(dú)執(zhí)行,所以窗口特征圖之間缺少信息交換。因此,在信息聚合后采用一個(gè)3×3 卷積進(jìn)行通道間信息交互,具體如圖3 所示。
圖3 Transformer Block結(jié)構(gòu)圖
在Balletto 數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),該數(shù)據(jù)集是一個(gè)芭蕾舞形體動(dòng)作數(shù)據(jù)庫,共有9 845 張標(biāo)注的形體動(dòng)作圖片,按2∶1 進(jìn)行訓(xùn)練集與測試集分配。
該文實(shí)驗(yàn)均在Ubuntu18.04 系統(tǒng)下進(jìn)行,GPU 采用Nvidia RTX2080Ti,深度學(xué)習(xí)框架采用了Pytorch框架。
將Transformer Block 引入HRNet 會造成整體網(wǎng)絡(luò)結(jié)構(gòu)的參數(shù)規(guī)模與運(yùn)算復(fù)雜度發(fā)生變化。為了測試HRNet 各階段網(wǎng)絡(luò)結(jié)構(gòu)對形體動(dòng)作識別的性能,對其各階段逐一進(jìn)行消融實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如表1 與圖4 所示。表1 中,2 Stage、3 Stage 和4 Stage 分別指2 階段、3 階段和4 階段的HRNet 結(jié)構(gòu)。
表1 HRNet網(wǎng)絡(luò)結(jié)構(gòu)階段性能測試實(shí)驗(yàn)結(jié)果
圖4 HRNet網(wǎng)絡(luò)結(jié)構(gòu)階段性能測試效果
由圖表可知,在第2 階段,參數(shù)量與浮點(diǎn)計(jì)算量大幅降低,但由于特征提取不充分,導(dǎo)致準(zhǔn)確度與召回率受到影響。而圖4 中舞者動(dòng)作幅度過大的腿部關(guān)鍵點(diǎn)檢測性能不足,故左腿未能成功檢出;對于第3 階段,其網(wǎng)絡(luò)參數(shù)量為2.1 MB,浮點(diǎn)運(yùn)算量僅為3.8 GFLOPs,準(zhǔn)確率和召回率也均較為理想;而在第4 階段,相比前兩個(gè)階段,左右腿關(guān)鍵點(diǎn)檢測獲得了提升。據(jù)分析,深層特征與Transformer 的結(jié)合,有助于挖掘特征相關(guān)性,提升了關(guān)鍵點(diǎn)檢測準(zhǔn)確率。
表2 所示為CPN、Hourglass、HRNet 及該文方法在數(shù)據(jù)集上對人體姿態(tài)估計(jì)的定量結(jié)果,主要采用模型大小與浮點(diǎn)運(yùn)算量來衡量模型的復(fù)雜度,并用各關(guān)鍵點(diǎn)的KOS 準(zhǔn)確率來評估模型精度。
表2 模型各關(guān)鍵點(diǎn)準(zhǔn)確率分析
在模型的準(zhǔn)確率測試中,CPN 的平均關(guān)鍵點(diǎn)檢測準(zhǔn)確率為85.7%,Hourglass 的平均關(guān)鍵點(diǎn)檢測準(zhǔn)確率為85.9%,但HRNet 及該方法準(zhǔn)確率均達(dá)到了86.1%。這表明,基于HRNet 的網(wǎng)絡(luò)結(jié)構(gòu)在形體識別中具有更優(yōu)的特征提取能力。在具體關(guān)鍵點(diǎn)檢測中,手部和足部等關(guān)鍵點(diǎn)尺度變化劇烈,經(jīng)?;ハ嘟诲e(cuò)遮擋,因而檢測難度較大。但文中方法引入Transformer Block,借助自注意力機(jī)制(Self Attention)和多頭注意力機(jī)制(Multi-Headed Attention),充分挖掘各個(gè)階段特征間的自相關(guān)性與互相關(guān)性,從而達(dá)到了較好的檢測效果。相比于原HRNet,手部及足部關(guān)鍵點(diǎn)的檢測準(zhǔn)確率分別提高了0.8%和1.3%。
在模型復(fù)雜度的分析中,基于Hourglass 的算法模型參數(shù)量最大,為92 MB。CPN 和HRNet 的參數(shù)則相差較小,分別為27 MB 和28.5 MB。而該文方法的模型參數(shù)量最小,僅為7.8 MB,且浮點(diǎn)運(yùn)算量為6.2 GFLOPs。經(jīng)分析,該算法采用Transform Block 取代卷積操作,大幅降低了模型參數(shù)量。
為了提升形體動(dòng)作識別的性能,文中設(shè)計(jì)了一種針對關(guān)鍵點(diǎn)交錯(cuò)遮擋隱藏場景下的形體動(dòng)作識別算法。在Balletto 數(shù)據(jù)集中進(jìn)行的實(shí)驗(yàn)結(jié)果表明,相比于原HRNet,該算法的計(jì)算效率得到顯著提升,且在一些交錯(cuò)關(guān)鍵點(diǎn)中表現(xiàn)出了更高的檢測精度。但該算法對于其他關(guān)鍵點(diǎn)的檢測仍略顯不足,這將在未來的研究中對此進(jìn)行改進(jìn)。