摘 要:近年來,卷積神經網絡在手勢識別領域有著越來越多的應用。但現有卷積神經網絡存在特征表征不足的問題,致使手勢識別精度較低。為此,本文提出了一種輕量級靜態手勢識別算法 r-mobilenetv2,該算法首先將通道注意力和空間注意力串聯起來,并將二者輸出特征圖通過跳躍連接形式線性相加,得到一種全新注意力機制。然后,將高層特征經上采樣與低層特征空間維度匹配,低層特征使用一維卷積調整通道維度與高層特征通道維度匹配,二者線性相加,其結果經卷積操作與高層特征按通道維度連接而實現特征融合。最后,將所提出的注意力機制和特征融合結合起來,用于改進后輕量級網絡 MobileNetV2中,進而得到r-mobilenetv2算法。實驗顯示r-mobilenetv2相較MobileNetV2減少27%的參數量,錯誤率降低1.82%。
本文源自胡宗承; 周亞同; 史寶軍; 何昊, 計算機工程 發表時間:2021-05-14《計算機工程》簡介:《計算機工程》刊登內容包括發展趨勢/熱點技術、博士論文、基金項目論文、專題論文、軟件技術與數據庫、安全技術、多媒體技術及應用、網絡與通信、人工智能及識別技術、工程應用技術與實現、開發研究與設計技術等。
關鍵詞:注意力機制;特征融合;手勢識別;圖片分類;輕量級網絡
0 概述
手勢識別是人機交互的一個重要研究方向,在體感游戲和智能家居等場景有著廣泛應用。LIAN[1]、 YANG[2]等人利用穿戴設備識別簡單手勢,但穿戴設備使用不便且不適合推廣。基于視覺的手勢識別憑借靈活便捷的優勢,成為一個研究熱點。深度學習火熱前,基于視覺的手勢識別重大突破多屬于人工特征提取方法,如方向梯度直方圖[3-5](Histogram of oriented gradient, HOG)、SIFT[6](Scale-invariant feature transform)等。對特征分類多采用 SVM (Support Vector Machine),如文芳等人[7]提出一種基于 RGB-D 數據的手勢識別方法,首先分割手部區域,提取手勢特征,進而使用 SVM 進行分類。 TARVEKAR 等人[8]提出一種用于非接觸式的手勢識別系統,該系統在多種顏色空間中檢測膚色信息,應用皮膚閾值從分割圖像中分割手部區域,從中提取顏色和邊緣特征,利用 SVM 分類器對手勢進行識別。緱新科等人[9]提出一種基于梯度方向直方圖與局部二值模式融合的手勢識別方法,該方法利用主成分分析對梯度方向直方圖特征描述算子進行降維,降維后的數據與局部二值模式特征融合,最后利用 SVM 實現靜態手勢識別。
隨著深度學習成為研究熱點,卷積神經網絡逐漸被應用在各種領域。吳曉風等人[10]通過 Faster RCNN 深度網絡模型進行手勢識別,能夠在識別手勢的同時進行手勢檢測。張強等人[11]采用改進的 YOLOV3(You Only Look Once)算法對靜態手勢進行識別,該方法采用 Kinect 設備采集的四種信息,綜合四種圖片信息的優勢,共同作用提高手勢識別精度,同時利用 K-Means 聚類算法對 YOLOV3 候選框 參 數 進 行 優 化 。 周 文 軍 等 人 [12] 在 DSSD (Deconvolutional Single Shot Detector)的上提出一種靜態手勢識別算法,DSSD 中的先驗框寬高比并非手動設定,使用 K-Means 聚類算法和手肘法共同決定先驗框寬高比,同時還利用遷移學習解決數據量小的問題。CHAUDHARY [13]提出了一個用于光不變手勢識別系統的神經網絡。利用方向直方圖提取手勢特征向量對六類手勢分類。極端光照強度變化環境總體精度達到 92.86%。ALNUJAIM 等人[14]利用手勢對天線阻抗產生變化進行分類,將采集阻抗轉化為光譜圖,采集時變信號作為圖像,利用卷積神經網絡進行分類,對于精細手勢識別仍需進一步研究。
針對現有神經網絡模型對手勢特征表征不足問題,本文提出了一種結合注意力和特征融合的靜態手勢識別算法。引入注意力機制對輸入特征圖進行選擇性輸入,引入特征融合將高級特征經上采樣與低級特征相結合增強特征表征能力,共同作用提高分類精度。本文主要工作如下:(1)引入注意力機制。采用通道注意力與空間注意力串聯的方式,提出 一 個 自 適 應 卷 積 注 意 力 模 塊 ( Adaptive Convolution Attention Module,ACAM)。該模塊在增加模型復雜度的同時,對模型的特征表征能力帶來了明顯的改善。(2)引入特征融合,提出分類特征金字塔(Classification Feature Pyramid,CFP)將高層特征與低層特征結合,提高分類精度。(3)在不同 網 絡 模 型 上 驗 證 ACAM 的 適 應 性 , 以 MobileNetV2 為例在不同注意力機制上驗證 ACAM 的有效性。通過消融實驗驗證驗證 ACAM 和 CFP 在網絡中的表現能力。(4)提出一種結合注意力和特征融合的靜態手勢識別算法 r-mobilenetv2。
1 相關工作
注意力機制研究源于 19 世紀的實驗室心理學,2014 年 Google DeepMind 團隊提出注意力機制并將其用在圖片分類中[15]。注意力機制本質是對輸入數據特定選擇,使網絡模型更加關注輸入數據中的重要信息,抑制非重要信息。
WANG 等人[16]提出殘差注意力網絡,殘差學習機制由多個注意力模塊堆疊而成,注意力模塊內部采用自底向上、自頂向下結構與堆疊的沙漏網絡可以快速收集圖像全局信息,并將全局信息與原始特征圖結合,但存在計算量大的問題。HU 等人[17]提出 SENet(Squeeze-and-Excitation Networks),通過壓縮 -激勵方法使特征圖通道間建立相互依賴關系,自適應調整特征圖通道權重。WOO 等人[18-19]提出 BAM ( Bottleneck Attention Module ) 及 CBAM (Convolutional Block Attention Module)兩種不同注意力模塊,同時考慮空間注意力和通道注意力。BAM 在深度神經網絡下采樣前發揮作用,其中通道注意力模型和空間注意力模型采用并聯方式。CBAM 通道注意力模型和空間注意力模型采用串聯方式結合, 是一個輕量級注意力模塊。WANG 等人[20]提出一種有效的通道注意深度卷積神經網絡 ECA(Efficient Channel Attention),借鑒 SENet 思想,將全連接層替換為一維卷積,并且采用自適應一維卷積對通道進行特征提取,聯合相鄰通道信息,雖然實驗取得不錯結果,但是沒有引入特征圖空間關系。武茜等人[21]將多通道注意力機制用于人臉替換的鑒別任務中,在多通道注意力中融合了全局注意力和局部注意力。魯甜等人[22]提出了一種特征圖注意力用于超分辨率圖像重建,利用特征圖注意力機制獲取特征通道間依賴關系,自適應調整特征圖通道權重。
特征融合多用于目標檢測、圖像分割中,很多工作通過融合多層特征提升檢測和分割能力。LIN 等人[23]提出目標檢測的特征金字塔網絡,采用具有橫向連接、自頂向下結構將高層語義特征與低層語義特征結合,提高了小目標檢測能力。LIU 等人[24] 提出了路徑聚合網絡(Path Aggregation Network, PANet),PANet 采用自底向上的路徑增強方法,以較底層的精確定位信號增強整個特征層,縮短較底層次與最上層間的信息路徑,并且提出自適應特征池化,將特征網絡與各特征層連接。CAO 等人[25] 提出一種基于注意力引導的語義特征金字塔網絡(Attention-guided Context Feature Pynamid Network, ACFPN),該網絡利用注意力機制整合不同大規模區域信息。陳澤等人[26]提出了基于級聯的多層特征融合策略,將淺層特征圖與深層特征圖按通道維度連接,解決小目標識別效果差的問題。李季等人[27]針對目標尺度不同的問題,采用多尺度融合的思想,構建三分支網絡,然后對低層特征和高層特征進行選擇性融合。李青援等人[28]為解決多尺度融合存在信息差異的問題,提出了一種新的特征融合方法,將兩種不同尺度特征圖結合,產生含有兩個特征圖信息的中間層,利用中間層表示不同尺度特征圖中間差異,然后將中間層與采樣后的特征圖再次融合,避免信息差異帶來的負面影響。
2 本文算法
本文算法創新點在提出了一種新的注意力機制 ACAM,和特征圖融合方式 CFP。ACAM 綜合了特征圖的通道和空間信息,CFP 融合了低層和高層特征有效提高了分類的準確度。除了以上兩點外,本文將 ACAM、CFP 運用在改進的 MobileNetV2 [29]上,提出了 r-mobilenetv2 網絡。
2.1 注意力機制
本文提出的注意力模塊 ACAM 如圖 1 所示。 ACAM 由兩部分組成,通道注意力模型和空間注意力模型。通道注意力模型采用自適應一維卷積操作,且在通道注意力模型后添加跳躍連接,將通道注意力模型輸出特征圖 F1與空間注意力模型輸出特征圖 F2 線性相加。假設初始輸入特征圖 F 大小為 H W C ? ?,通過 ACAM 中的通道注意力模型可得大小為 1 1 C ? ?的一維通道注意力特征圖;通過 ACAM 中空間注意力模型可得大小為 H W 1 ? ?的二維空間注意力特征圖。
其中:CA 為通道注意力模型,SA 為空間注意力模型,F 為輸入特征圖,F1 為經過通道注意力模型處理后的特征圖,F2 為經過空間注意力模型處理后的特征圖,F3為整體注意力模型處理后的重建特征圖。
通道注意力模型采用一維卷積對特征圖通道信息處理,根據特征圖通道數動態選擇卷積核大小。通道注意力模型工作流程如圖 2 所示。首先對輸入特征圖進行壓縮,即在空間方向進行壓縮,得到大小為 1 1 C ? ?的特征圖。根據特征圖通道數 C,自適應選擇一維卷積核大小。根據卷積核大小一維卷積對相鄰通道特征進行處理,增加通道間相關性。再將一維卷積處理后的特征圖通過激活函數進行重建。最后得到一維通道注意力特征圖與輸入特征圖 F 相乘輸出為通道注意力輸出特征圖 F1。
根據特征圖共享卷積核的原則,可以推斷通道數 C 與一維卷積核 kernel-size: k 必然存在某種聯系,即滿足 ( ) C ( ) 2 r k b ? k ? ?? ?。最基礎假設從簡單的線性映射驗證該函數,即 C ? ? ? r k b ,但線性關系表達性有限。另一方面由于計算機是二進制,而卷積神經網絡中 batch-size、通道維度大多習慣設為 2 n,故設 ( ) C ( ) 2 r k b ? k ? ?? ?。采用非線性表示通道數 C 與一維卷積核 k 之間關系,相較線性關系有更強的表現型,如公式 2 所示: 2 lo g ( C ) ( C ) b k f r r ? ?? ? ? ? ? ? ? (2) 其中: k 為一維卷積核大小,C 為輸入特征圖通道數, r 、b 為超參數,這里分別取 r 為 2,b 為 1。
空間注意力模型在通道注意力輸出特征圖 F1的基礎上進行操作,如圖 3 所示。首先沿著通道所在維度方向進行均值化處理,得到大小為 H W 1 ? ?的特征圖。然后對其進行二維卷積操作,得到的特征圖經激活函數輸出為二維空間注意力特征圖。最后二維空間注意力特征圖與通道注意力輸出特征圖 F1相乘得到空間注意力輸出特征圖 F2。
2.2 特征融合
本文借鑒特征金字塔的思想,提出分類特征金字塔 CFP。CFP 整體結構如圖 4 所示,采用橫向連接、自頂向下與自底向上結合的連接方式。在 stage2 中高層特征 A 經上采樣和 stage1中低層特征 B 經一維卷積后得到的特征圖線性相加,得到特征圖 G,特征圖 G 經二維卷積得到特征圖 D,特征圖 D 與高層特征 A 空間維度匹配后,在通道維度上連接,將得到新特征圖 E 送入后序網絡中分類。
CFP 主要分為三部分 stage1、stage2、stage3,分別對應特征提取、上采樣、特征融合三個方面。在 stage1 中,采用卷積神經網絡對輸入數據進行特征提取,自底而上的特征圖每次空間維度減半,取最上兩層特征圖 A、B 作為最終特征融合所需特征圖。 stage2應用 stage1中最上層高級語義特征 A 進行上采樣,經上采樣后的特征圖空間尺度變為原來二倍,與 stage1 中特征圖 B 在空間維度上匹配。stage1 中特征圖 B 經過 1×1 卷積調整通道數,使其與 stage2中特征圖 A 通道維度相匹配,兩者進行簡單線性相加。 stage3將 stage2中高分辨率特征圖 G 經卷積操作使空間維度與低分辨率特征圖 A 相匹配,在通道維度連接。最后將融合特征圖 E 送入后序網絡分類。
2.3 r-mobilenetv2
r-mobilenetv2 在 MobileNetV2 基 礎 上 引 入 ACAM 和 CFP 的同時,對原網絡結構進行調整。具體為,去掉最后一個 Inverted Residuals 模塊即輸入為 7×7×160 的 Inverted Residuals 模塊,加入注意力機制 ACAM 和特征融合 CFP。
MobileNet 系列[29-31]是由 Howard 等人提出的,一種有效的輕量級網絡,雖然相較其他網絡犧牲部分準確度,但在計算量和參數量上有著巨大優勢。在 224×224 大小 RGB 圖片上 MobileNetV2 參數量是 VGG16 參數量的 1.72%,是 ResNet-18 參數量的 20.63%。故 MobileNet 系列及變體能夠有效的部署在移動端。本文主要針對 MobuleNetV2 進行改進。 r-mobileNetV2 的網絡結構如表 1 所示:
input 代表輸入特征圖大小,operator 代表對輸入特征圖的處理方式,C 代表通道數,其中 class_num 代表類別數,t 對應擴展因子,S 為 Strides 確定卷積步數。n 代表重復次數。當 n 大于 1 時,每組的第一個 bottleneck 中卷積 S 為表中的值,其他默認 S 取 1。一組 bottleneck 構成一個 Inverted Residuals 模塊。
r-mobilenetv2 在每個 Inverted Residuals 模塊中 Strides 等于 1、等于 2 時的共同部分后添加 ACAM,最后兩個 Inverted Residuals 模塊中引入 CFP。加入 ACAM 的位置如圖 5 所示。
3 實驗與分析
本文的實驗硬件環境為 Inter(R) Xeon(R) CPU E5-2640 v4@ 2.40GHz, GPU為一塊顯存11G的GTX 1080Ti。軟件環境為 Ubuntu16.04, Keras2.2.2。使用 RMSprop 對網絡進行訓練,初始學習率為 0.001,權重衰減系數為 1e-6。batch-size 設為 64,若 10 個 epoch 測試集準確率沒有提升,學習率衰減為原來的十分之一,30 個 epoch 測試集準確率沒有提升,程序停止。
3.1 數據來源及預處理
本文在 LaRED[32](large RGB-D extensible hand gesture dataset)數據集上進行實驗測評,LaRED 數據集共有 27 種基礎手勢,含 242900 張圖片。27 種基礎手勢如圖 6 所示。每個基礎手勢取三個朝向,分別為基礎手勢、基礎手勢繞 X 軸旋轉 90 度、基礎手勢繞 X/Y 軸各旋轉 90 度的手勢。從數據集中選取部分手勢如圖 7 所示。
原始數據集為按幀采集的連續序列,相鄰幀圖片近似。故每 15 幀取一張圖片,對數據集進行篩選,同時只利用數據中的 RGB 信息。其訓練集含 12955 張圖片,測試集含 3239 張圖片。對于處理好的圖片采取 RGB 的方式輸入,利用 ImageNet 中圖片均值進行去均值。送到后續網絡中進行分類。
3.2 注意力機制 ACAM 實驗分析
本文首先在不同網絡模型上驗證本文提出注意力機制的適用性,然后在 MobileNetV2 網絡的基礎上,添加不同注意力模型與本文提出的注意力模型對比,綜合驗證 ACAM 的有效性。
網 絡 選 取 所 選 網 絡 ResNet-18[33] , ShuffleNetV2[34],MobileNetV2。實驗結果由表 2 所示,表中顯示有網絡模型、參數量和 Top1 錯誤率。
從表 2 可以看出,本文提出的 ACAM 雖然僅引入較少參數,但在不同網絡模型的準確率上均有百分之一左右的提升,證明了 ACAM 模塊的適用性。在 ResNet-18 上錯誤率降低 1.57%,參數量增加 214。在 ShuffleNetV2 上錯誤率降低 0.77%,參數量增加 864。在 MobileNetV2 上錯誤率降低 0.98%,參數量增加 892。
對比三種不同網絡及加入 ACAM 的表現, MobileNetV2不管從Top1 錯誤率還是參數量均有明顯優勢。從 Top1 錯誤率看,MobileNetV2+ACAM 的 Top1 錯 誤 率 比 ResNet-18 降 低 0.31% , 比 ShuffleNetV2+ACAM 降低 0.92%;從參數量上看, MobileNetV2+ACAM 參數量僅為 RestNet-18 的 20.64%,為 ShuffleNetV2+ACAM 的 57.18%。綜合考慮在 MobileNetV2 基礎上進行實驗。
為驗證 ACAM 模塊的有效性,以 MobileNetV2 為例,在 BAM(bottleneck attention module)、CBAM ( convolutional block attention module )、 ECA (efficient channel attention)上與 ACAM 進行對比。實驗結果由表 3 所示,表中顯示網絡模型、參數量和 Top1 錯誤率。從表 3 可以看出,在 MobileNetV2 上,不同注意力模型對于手勢識別結果均有貢。相較 MobileNetV2 基礎網絡,MobileNetV2+BAM 參數量增加 157400,在 MobileNetV2 參數量的基礎上增加 6.81%。MobileNetV2+CBAM 參數量增加 60,286,在 MobileNetV2 參數量的基礎上增加 2.61%。 MobileNetV2+ECA 參數量僅增加 59,增加參數量相對 MobileNetV2 參數量可忽略不計。本文提出的 ACAM 與 MobileNetV2 結合后參數量為 2,311,703,相較 MobileNetV2 參數量增加 892,相當于在 MobileNetV2 參數量基礎上增加 3.86e-4。不考慮錯誤率情況下,就引入參數量進行比較,BAM 引入參數量最多,CBAM 次之,ACAM 和 ECA 引入參數量相對較少。綜合 Top1 錯誤率和模型參數量兩個衡量標準考慮,本文提出的 ACAM 結果更優。
3.3 改進網絡實驗分析
將本文提出的注意力機制與特征融合模塊加入 MobileNetV2 中,并對 MobileNetV2 進行修改, mobilenetv2 為直接在 MobileNetV2 上修改后的網絡。實驗結果如表 4 所示。
首先在 MobileNetV2 基礎上進行刪減,刪減后 mobilenetv2 參 數 量 減 少 900,480 , 相 當 于 MobileNetV2 參數量的 38.97%。mobilenetv2 在減少參數量的同時準確率提升,Top1 錯誤率減少 0.3%。實驗說明刪減后的網絡更適合手勢識別。然后在 MobileNetV2 和 mobilenetv2 上添加 CFP 和 ACAM。添加 CFP 后兩種不同網絡 MobileNetV2+CFP 和 mobilenetv2+CFP Top1 錯誤率均降低 1%左右,但參數量大幅上升,相較原基礎網絡,參數量分別增加 58.96% 、 19.27% 。 添 加 ACAM 后 , mobilenetv2+ACAM 相較 MobileNetV2+ACAM Top1 錯誤率更低,在參數量更少情況下,Top1 錯誤率降低 0.53%。通過上述可得 CFP、ACAM 對手勢識別任 務 是 有 效 的 。 最 后 將 CFP 和 ACAM 加 入 MobileNetV2 和 mobilenetv2 中,形成 R-MobileNetV2 和 r-mobilenetv2。其中 R-MobileNetV2 以未經刪減 MobileNetV2 為 基 礎 , r-mobilenetv2 以 刪 減 后 MobileNetV2 為基礎。最終 R-MobileNetV2 相對 MobileNetV2 Top1 錯誤率降低 1.26%,參數量相對 MobileNetV2 增加 59.00%,達到了 3,674,263。 r-mobilenetv2 相對 mobilenetv2 Top1 錯誤率降低 1.52%,參數量相對 mobilenetv2 增加 11.79%,達到 1,682,849。r-mobilenetv2 相對 R-MobileNetV2 Top1 錯誤率降低 0.56%,參數量僅為 R-MobileNetV2 的 45.80%。r-mobilenetv2 相對 MobileNetV2 Top1 錯誤率降低 1.82%,達到 1.17%,參數量僅為 MobileNetV2 的 72.83%。綜上在對比實驗中充分驗證了 CFP 和 ACAM 及 r-mobilenetv2 的有效性。
此外,在 r-mobilenetv2 網絡中,選取測試集數據制作混淆矩陣。結果如圖 8 所示,橫坐標為預測類別,縱坐標為真實類別。在 27 種手勢中,基本完全預測正確。從圖 8 可以看出,r-mobilenetv2 在手勢識別中有著優異的表現。
4 結束語
本文結合注意力機制和特征融合,提出一種輕量 級 網 絡 靜 態 手 勢 識 別 算 法 r-mobilenetv2 。 r-mobilenetv2 能夠有效提取特征解決特征表征不足的問題,提高手勢識別精度。結合了空間注意力和通道注意力模型提出了自適應一個自適應卷積注意力模塊,對網絡提取特征進行選擇性輸入;針對高級語義特征含有分類信息并不完全的現狀,提出分類特征金字塔。通過實驗證實自適應卷積注意力模塊及分類特征金字塔的有效性。最后將自適應卷積注 意 力 模 塊 和 分 類 特 征 金 字 塔 結 合 引 入 MobileNetV2 中 , 提 出 一 種 新 的 輕 量 級 網 絡 r-mobilenetv2。相較為 MobileNetV2,r-mobilenetv2 參數量降低了 27.20%,Top1 錯誤率降低了 1.82%。準確達到 98.83%。在后續工作可以從損失函數、卷積方式入手對網絡進行改進,進一步提高網絡識別精度及泛化性能。
論文指導 >
SCI期刊推薦 >
論文常見問題 >
SCI常見問題 >