史健婷, 詹懷遠
(黑龍江科技大學 計算機與信息工程學院, 哈爾濱 150022)
人體關鍵點信息是人體行為檢測、醫(yī)療診斷輔助和人機交互等多個計算機應用領域和交叉學科進行研究的基礎性數(shù)據(jù),是前沿領域的基礎性研究[1]。
傳統(tǒng)的姿態(tài)估計方式雖在特定的場合下有較高的準確性,但成本較高,方法也存在局限性[2]。深度學習的發(fā)展涌現(xiàn)出諸多優(yōu)秀的姿態(tài)估計模型。其中,Sun等[3]提出的一種高分辨率網(wǎng)絡HRNet可以使特征提取過程更關注關鍵點的位置信息,保證關鍵點位置學習的準確性。Cao等[4]提出的OpenPose網(wǎng)絡模型分別預測關鍵的概率與關鍵點之間的親和關聯(lián)程度,通過匈牙利法聚類得到最終的姿態(tài)估計結果。基于深度神經(jīng)網(wǎng)絡的人體關鍵點檢測模型雖擁有較高的檢測精度但性能不盡人意[5]。隨著對實時檢測的需求日益增多,當前主流的網(wǎng)絡模型結構復雜、參數(shù)多,無法運行在低端硬件上實現(xiàn)實時的檢測能力[6]。
為實現(xiàn)實時檢測能力,Landola等[7]提出了SqueezeNet輕量化網(wǎng)絡模型,將傳統(tǒng)的卷積方式利用深度卷積和行點卷積結合的方式大幅降低運算量和模型參數(shù)。Howard等[8]提出MobileNet系列輕量級模型,利用深度可分離卷積、倒殘差模塊和優(yōu)化損失函數(shù)等方式大幅度提高輕量化模型的運算速度與準確率。MoveNet[9]模型可以快速、準確地檢測人體的17個關鍵點信息,其輕量化的特征可以在低性能硬件以較高的速率進行推理,以達到實時的檢測能力。
模型中使用注意力機制可以加強特征的表達,僅需少量參數(shù)便可對學習到的多通道特征進行權重的分配。Hu等[10]提出的是一種通道注意力機制,通過在殘差模塊中對卷積操作學習的特征使用全連接操作進一步獲取通道之間的權重,加強特征的表達能力。Sh等[11]提出的CBAM是一種可以同時關注特征通道與特征空間信息的注意力機制。Wang等[12]提出的ECANet使用更少參數(shù)的卷積操作獲取更好的通道注意力性能。
筆者使用的方法BCM3-Net(Based on CBAM and MobileNetV3 Net)以MoveNet模型作為基礎,對其特征提取部分使用精度更高的MobileNetV3結構進行替換,運用空間通道注意力機制(CBAM)加強特征融合層對空間與通道信息的表達能力。對于V3網(wǎng)絡中倒殘差結構的SENet注意力機制,通過使用ECANet注意力機制來恢復由全連接操作造成的空間塌縮帶來的特征丟失情況,有效提高倒殘差結構中通道權重的學習能力,從而提高精度的目的。對于改進后的MoveNet網(wǎng)絡,在MSCOCO2017數(shù)據(jù)集上的單人姿態(tài)估計實驗證明該模型的有效性。
BCM3-Net網(wǎng)絡是由特征提取層和Header層組成,網(wǎng)絡整體架構,如圖 1所示。
圖1 BCM3-Net 模型整體架構Fig.1 Overall architecture of BCM3-Net model
其中,特征提取層由改進的MobileNetV3主干網(wǎng)絡與融合CBAM注意力機制的多尺度特征融合增強網(wǎng)絡組成。Header層對融合后的特征通過不同分支對四個輸出特征做相應的后處理作為最終的預測輸出結果。
MobileNetV3主干結構首先減少了V2結構第一層卷積輸出通道個數(shù)和對Last Stage階段進行了裁剪。提高網(wǎng)絡中倒殘差結構膨脹后的通道數(shù),提高空間與位置信息特征的學習能力[13]。其次,倒殘差結構中引入注意力機制提高模型訓練和推理速度,提高了精確度。最后,重新定義了非線性激活函數(shù),交替使用ReLU6和Hard-Swish激活函數(shù),其公式分別為
RL(x)=min(max(x,0),6),
式中,x——待激活特征值。
ReLU6激活函數(shù)可以緩解深層網(wǎng)絡使用ReLU激活函數(shù)導致的權值相差過大的問題。對于主干中需要使用ReLU激活函數(shù)的部分,使用Hard-Swish激活函數(shù)以保證訓練更平滑且易計算梯度,保證反向傳播時某些小于零的神經(jīng)元仍然會被激活。
MobileNetV3網(wǎng)絡中使用DW卷積(Depthwise,DW)和PW(Pointwise,PW)卷積,通過將PW卷積和DW卷積組成深度可分離卷積(Depthwise Separable ,DS),DS卷積使用更少的卷積核大幅度減少運算和參數(shù)數(shù)量。傳統(tǒng)卷積與DS卷積的結構,如圖 2所示。
圖2 傳統(tǒng)卷積與深度可分離卷積Fig.2 Traditional convolution and depth-separable convolution
假設傳統(tǒng)卷積操作與DS卷積操作輸入特征與卷積核寬高尺寸相同,卷積步幅為1,傳統(tǒng)卷積與DS卷積計算量倍數(shù)如公式為
式中:T——降低的計算量倍數(shù);
Fi——第i個輸入特征的尺寸;
ki——第i個卷積核的尺寸;
Ci——輸入特征的通道數(shù);
Co——卷積輸出的通道數(shù)。
改進后的倒殘差結構Bneck,其結構如圖 3所示。Bneck作為BCM3-Net特征提取網(wǎng)絡的層次主干。
該結構先對特征進行升維,再利用DW卷積進行學習,解決了傳統(tǒng)殘差塊先降維存在的信息缺失情況。該模型使用ECA注意力機制代替原結構中SE注意力機制。通過卷積代替了全連接對所有通道的提取以及維度的塌縮,保持了通道權重在空間結構上的信息,僅涉及少數(shù)參數(shù)就可以具有更好的跨通道信息獲取能力,并滿足對不同輸入通道尺寸的自適應能力,ECA注意力機制卷積核大小k的自適應公式為
式中:k——自適應通道數(shù)的卷積核尺寸;
C——輸入特征的通道數(shù);
γ——常數(shù)為2;
b——常數(shù)為1。
ECA模塊使用Hard-Sigmoid激活函數(shù)對全局平局池化和卷積操作結果進行激活。Hard-Sigmoid激活函數(shù)在圖像性質(zhì)上,如圖 4所示。與Sigmoid相仿,并取消了冪運算大幅降低運算量,從而提高網(wǎng)絡訓練和推理速度。
圖4 Hard-Sigmoid激活函數(shù)Fig.4 Hard-Sigmoid activation function
多尺度特征融合增強的網(wǎng)絡結構參考增強特征的特征金字塔網(wǎng)絡。對不同階段融合的特征分別輸出并進行預測。該方法使用的方式僅對最后一層融合特征進行使用。
Header層中對Center和Keypoint Heatmap所學習的特征是空間信息與通道信息敏感的,Header層中預測的空間位置與通道位置,對模型回歸速度與預測精度起至關重要作用。因此,該模型在輸出的多尺度融合特征追加CBAM注意力機制,加強融合后特征在空間和通道的特征權重分配,提高融合后特征的有效性。
BCM3-Net的特征提取網(wǎng)絡結構,如圖 5所示。主干網(wǎng)絡中使用基于ECA注意力機制的倒殘差結構Bneck進行串聯(lián)。
圖5 特征提取網(wǎng)絡Fig.5 Feature extraction network
網(wǎng)絡層次結構中,通過exp中定義的縮放尺度對特征進行學習,不同網(wǎng)絡層次中通過ECA標記是否使用ECA注意力機制,并且通過定義R6、HS參數(shù)定義Bneck中使用激活函數(shù)是ReLU6還是Hard-Swish,s決定每個結構卷積操作的步距長度。
BCM3-Net模型處理流程,如圖 6所示。后處理過程將最終輸出的四個特征圖進行加工得到最終的關鍵點預測結果。
文中方法使用基于位置加權的方式,通過生成位置權重矩陣來抑制其他位置人體的信息,增強多人情況下,對近中心點人體關鍵點檢測的精準性和魯棒性。位置權重矩陣以參考點為中心,距離中心點距離越遠權重越小,矩陣尺寸輸出特征圖尺寸相同,權重計算如公式為
Wi=(d(c,i)+λ)-1,
式中:Wi——居中第i個位置的權重矩陣;
d——第i個位置距離中心點的歐氏距離;
c——中心點位置;
λ——防止權重矩陣出現(xiàn)無窮的參數(shù),λ∈(1,2]。
圖6 BCM3-Net網(wǎng)絡流程Fig.6 Flow of BCM3-Net
輸入圖像中存在多人情況下如何得到距中心最近人物的人體的關鍵點坐標,如圖7所示。
圖7 后處理定位最終關鍵點Fig.7 Post-processing locates final key point
選擇MSCOCO2017數(shù)據(jù)集中標記為單人的數(shù)據(jù)進行訓練和驗證,其中,大量特征均是人體日常動作。為了增強模型對于多人圖片中,中心的人體關鍵點的檢測能力,對數(shù)據(jù)集進行了擴展與數(shù)據(jù)增強。
(1)數(shù)據(jù)擴展:將靠中心點的人體關鍵點作為主要標記信息,其他人體信息進行按序整合;通過計算所有人的關鍵點最大外接矩陣獲得每個人的人體中心點位置;為了保證標記信息的統(tǒng)一,重新對標記信息格式進行整理,對單人標記也做了格式化操作;
(2)數(shù)據(jù)增強:設置概率為0.3來激活是否啟用半身操作,并設置0.5概率選擇上身或下身的關鍵點內(nèi)容;對原始圖像與關鍵點信息進行仿射變換,并對變換后結果進行裁剪操作;對仿射變換后的圖片與關鍵點信息隨機進行水平翻轉,概率為0.5。
通過使用OKS(Object Keypoint Similarity)評價指標對模型訓練輸出的人體關鍵點信息與Ground True信息計算相似性。OKS計算如公式為
式中:i——當前人體第i個關鍵點;
di——預測與真實標簽的歐氏距離;
s——當前人體區(qū)域尺度;
ki——第i個關鍵點位置的衰減因子;
σ——當前關鍵點在圖像中的顯示等級,0為不可見,1為遮擋,2為可見。
OKS的結果在[0,1]之間,數(shù)值越大表示預測值與真實值越接近,AP50代表全部預測關鍵點OKS在0.5時的準確率,mAP表示OKS在0.5至0.95,以0.05遞增的全部預測結果的平均準確率。
本模型在MSCOCO2017的驗證數(shù)據(jù)集上進行單人姿態(tài)估計驗證,驗證結果,如表 1所示。
HRNet網(wǎng)絡作為自頂向下兩階段的模型具有相當高的精度水準,但也體現(xiàn)了模型參數(shù)的龐大與大量的浮點運算量。MoveNet網(wǎng)絡相較于HRNet僅在mAP上損失了1.9%。改進后的BCM3-Net僅增加了1.7×106次/s的參數(shù)后,在mAP提升了1.3%,相較于HRNet僅表現(xiàn)出0.6%的差距。由于優(yōu)化主干網(wǎng)絡結構和非線性激活函數(shù),GFLOPS由MoveNet的3.433×108次/s下降至2.689×108次/s,使用CPU對模型進行推導,二者在運算時間上幾乎沒有差別但提高了精準率。實驗結果表明改進后的BCM3-Net在單人姿態(tài)估計任務上有更優(yōu)秀的表現(xiàn)。
表1 MSCOCO2017驗證集對比
BCM3-Net消融實驗結果,如表 2所示。比較了基本的MoveNet模型分別在更換基于ECA注意力機制的MobileNetV3特征提取網(wǎng)絡和特征融合網(wǎng)絡中引入CBAM注意力機制的性能差異。
表2 BCM3-Net消融實驗
由表 2可見,主干網(wǎng)絡的替換對于特征的學習和預測有明顯1%的提升,特別是在對AP50的實驗中擁有3.2%的提升,但對于AP75的提升僅有0.6%。增加CBAM注意力機制對網(wǎng)絡整體提升有限,mAP僅提高了0.3%。
首先,主干網(wǎng)絡的替換加強了對關鍵點外圍特征的學習能力,對位置和空間信息獲取明顯提高,改進ECA注意力機制也能更好的捕捉特征的空間權重,因此在OKS在0.5至0.75的閾值內(nèi)有顯著的提升。其次,CBAM注意力機制在特征通道層面提升有限,僅在融合特征時提高了空間權重。由于輕量級模型的限制,對真實點附近特征學習能力仍有一定的差距。
BCM3-Net對單人姿態(tài)估計的訓練階段,如圖8所示。改進后人體關鍵點結果比較結果,如圖9所示。由圖 9可見,在多人的情況,模型能更好的回歸中心人物關鍵點信息,有效屏蔽背景人物的影響。同時BCM3-Net模型對面部、手肘及膝蓋等位置有更好的預測效果。
圖9 人體關鍵點結果對比Fig.9 Comparison results of key points
圖10 實時檢測效果Fig.10 Real-time detection effect
圖11 煤礦礦井下工人姿態(tài)估計Fig.11 Estimation of workers poses in coal mines
BCM3-Net模型實時檢測效果,如圖 10所示。由圖 10可見,模型實際實時預測的能力,BCM3-Net擁有較高的預測推理速度,實時推理幀數(shù)可達到43 FPS左右。
為了驗證模型的泛化能力,收集了煤礦礦井下工作人員作業(yè)時的相關圖像進行姿態(tài)分析檢測,效果如圖 11所示。煤礦井下環(huán)境惡劣并且具有危險性,對井下工作人員姿態(tài)的規(guī)范性要求較高,通過分析可以看出在光線和粉塵環(huán)境較為良好的環(huán)境下,對作業(yè)工人人體關鍵點有較好的檢測效果,為下一步開展礦井下工作人員不安全行為識別及提高井下人員姿態(tài)的規(guī)范性等相關研究提供了參考和思路。
(1)使用基于ECA注意力機制的MobileNetV3特征提取網(wǎng)絡,并在多尺度特征融合網(wǎng)絡結構中引入CBAM注意力機制加強通道和空間位置的學習能力。在COCO驗證集中,相較原網(wǎng)絡模型mAP精度整體提高 1.3%,達到75.5%。
(2)改進模型計算量從3.433×108次/s下降至2.689×108次/s,計算量降低21.7%,保證了模型在提升精度的同時維持了原模型的高效性。在實際測試過程中檢測能力達到43 FPS。
(3)將模型應用到礦井下工作人員的姿態(tài)估計檢測,證明所提模型具有很好的泛化能力,對于提高井下人員姿態(tài)的規(guī)范性,保障人身安全,提高井下作業(yè)的安全水平有實際意義。