中圖分類(lèi)號(hào):TP391.4 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2025)08-0054-07
Abstract: Gesture recognition is of great significance torealize human-computer interaction.In order torealize highprecisiontarget detection and recognition under dynamicconditions,this paper is based on YOLOv5 target detection firstly and determines the coordinate informationof the target gesture byusing thefeature pyramid structureand multi-scale fusion structuralfeaturesinsidethealgorithm.ThenitusestheMediaPipemodeltodetectthekeypointsofthehand,deterinesthe vectorangleofthehand joints,andanalyzes thefingerbendingsituation,soas tojudge the specific gesture.Using themethods of positiondeterminationand implementationbyusingseparate models foractionclasficationeffectivelyimproves the problem that thereduced recognitionrateof gesturescaused byfactors suchasrotationandoccusionin dynamicconditions.The training samplesare selected fromsixcategories intheopen-source gesturedataset HaGRID.Theexperimentaltestresults demostrate that the mean value of one-hand recognition detection accuracy of the combined algorithm is up to and the detection speed is up to 40 FPS,and the model size is 88.5 MB.
Keywords: gesture recognition; YOLOv5;MediaPipe; hand joint point detection; gesture dataset
0 引言
人機(jī)交互是指人與計(jì)算機(jī)之間通過(guò)某種特殊方式實(shí)現(xiàn)信息交換的過(guò)程,傳統(tǒng)人機(jī)交互采用穿戴傳感器的方式,由于傳感器的感知范圍有限且信號(hào)不具有普適性的問(wèn)題,無(wú)法滿足人們?nèi)粘I畹膶?shí)際要求。隨著視覺(jué)設(shè)備捕捉速度和識(shí)別算法精度的不斷提升,手勢(shì)作為一種直觀且高效的肢體語(yǔ)言表達(dá)方式,計(jì)算機(jī)通過(guò)提取視頻數(shù)據(jù)中手勢(shì)動(dòng)作的特征信息,構(gòu)建特征信息和手勢(shì)動(dòng)作之間的映射關(guān)系,按照特征信息的差異性翻譯成對(duì)應(yīng)的肢體語(yǔ)言,實(shí)現(xiàn)計(jì)算機(jī)主動(dòng)理解人類(lèi)的行為意圖[]。當(dāng)前,手勢(shì)識(shí)別被廣泛應(yīng)用在車(chē)載監(jiān)控、醫(yī)療監(jiān)護(hù)、智能家居等領(lǐng)域。考慮到自然狀態(tài)下,存在環(huán)境光照、背景以及手勢(shì)自身旋轉(zhuǎn)性等因素。本文采用深度學(xué)習(xí)目標(biāo)算法作為檢測(cè)基礎(chǔ),結(jié)合MediaPipe手勢(shì)關(guān)鍵點(diǎn)檢測(cè)[2]方法,通過(guò)確定手勢(shì)的坐標(biāo)信息和向量角度,判斷手指的彎曲程度,實(shí)現(xiàn)最終手勢(shì)類(lèi)別的識(shí)別,最后在開(kāi)源數(shù)據(jù)集HaGRID進(jìn)行算法模型的訓(xùn)練及驗(yàn)證,證實(shí)本實(shí)驗(yàn)方法的可行性。
1手勢(shì)識(shí)別神經(jīng)網(wǎng)絡(luò)模型
1.1 YOL0v5目標(biāo)檢測(cè)
YOLOv5的網(wǎng)絡(luò)結(jié)構(gòu)可以分成四個(gè)部分:輸入層(Input)、主干特征提取網(wǎng)絡(luò)(Backbone)、中間尺度變化網(wǎng)絡(luò)層(Neck)以及目標(biāo)檢測(cè)網(wǎng)絡(luò)(Head)[3]。輸入層采用Mosaic數(shù)據(jù)增強(qiáng)方式,自適應(yīng)的圖像拼接和錨框計(jì)算。主干網(wǎng)絡(luò)采用 C S P + F o c u s + S P P 等模塊組成特征提取網(wǎng)絡(luò)。Neck中間層采用FPN+PANet用于融合不同階段輸出的特征信息,提高網(wǎng)絡(luò)的檢測(cè)精度。Head用于預(yù)測(cè)目標(biāo)和類(lèi)別的輸出。
主干網(wǎng)絡(luò)主要用于目標(biāo)特征的提取,如圖1所示,YOLOV5的主干網(wǎng)絡(luò)由CSP和Focus模塊組成。CSP網(wǎng)絡(luò)設(shè)計(jì)包含CSP1 N 和CSP2 N 兩種,采用跨層次的方式進(jìn)行結(jié)構(gòu)合并,從而豐富了特征梯度的組合信息CSP1 N 前設(shè)置一個(gè)卷積層,卷積核大小為3 × 3 ,Stride大小為2,作為Backbone主干特征提取網(wǎng)絡(luò)實(shí)現(xiàn)特征降采樣。CSP2_ N 結(jié)構(gòu)則作用于Neck網(wǎng)絡(luò)中,由 2 N 個(gè)CBL與卷積層組成,從而實(shí)現(xiàn)加強(qiáng)網(wǎng)絡(luò)特征融合的作用,Concat主要負(fù)責(zé)淺層和深層特征的通道信息融合[4]。
如圖2所示,F(xiàn)ocus網(wǎng)絡(luò)結(jié)構(gòu)由4個(gè)切片和CBL構(gòu)成,CBL包含卷積層(Conv)、批量歸一化層(BN)以及激活函數(shù)三個(gè)部分。當(dāng)卷積核的數(shù)量越多,所得到的特征寬度越厚,網(wǎng)絡(luò)的學(xué)習(xí)能力也越強(qiáng)[5]。將輸入圖像尺寸大小為 6 4 0 × 6 4 0 × 3 的彩色圖像直接進(jìn)行通道互換,得到 3 2 0 × 3 2 0 × 1 2 的尺寸大小,通過(guò)以上計(jì)算可以看出Focus網(wǎng)絡(luò)將輸入的數(shù)據(jù)進(jìn)行切片為原圖的一半,在不丟失特征信息的同時(shí)實(shí)現(xiàn)圖像降維的目的。
Neck主要位于特征提取層和分類(lèi)器之間,用于特征提取的壓縮,該模塊主要由SPP和 F P N + P A N 兩部分組成。其中,SPP用于擴(kuò)大感受野,實(shí)現(xiàn)預(yù)測(cè)框與特征圖的對(duì)齊。如圖3所示,SPP網(wǎng)絡(luò)包含四個(gè)分支結(jié)構(gòu),使用不同尺寸池化核,將特征劃分成1 × 1 、 5 × 5 , 9 × 9 、 1 3 × 1 3 四種尺寸。采用邊緣填充的方式保證輸出特征矩陣長(zhǎng)度的一致性,最后將四個(gè)分支獲得特征矩陣進(jìn)行融合輸出,使得全局特征與局部特征有效融合,提高模型特征的語(yǔ)義性和特征表達(dá)能力。
如圖4所示, F P N + P A N 是一種圖像金字塔結(jié)構(gòu),結(jié)合上采樣和下采樣,提高小目標(biāo)對(duì)象的檢測(cè)效果,具有尺度不變性。FPN采用自上而下的方式,將特征圖進(jìn)行下采樣。與FPN相反,PAN金字塔結(jié)構(gòu)采用從下到上,將語(yǔ)義信息表征信息進(jìn)行維度的獲取,實(shí)現(xiàn)高維表征與低維特征的融合工作。FPN網(wǎng)絡(luò)采用自下而上的路徑聚合輸出方式,將低維特征信息通過(guò)下采樣的方式與高特征維度進(jìn)行融合,提高小尺寸自標(biāo)的檢測(cè)效果,從而得到輸出特征矩陣。PAN自適應(yīng)特征池化結(jié)構(gòu)則采用自頂向下的傳輸方式,將低維特征信息采用上采樣的方式,通過(guò)淺層特征的分割得到邊緣等特征,提高物體大目標(biāo)對(duì)象的檢測(cè)。
1.2MediaPipe關(guān)節(jié)點(diǎn)檢測(cè)
MediaPipe是谷歌公司發(fā)布的一款跨平臺(tái)機(jī)器視覺(jué)學(xué)習(xí)框架,內(nèi)部提供了身體姿勢(shì)、面部、手部等預(yù)訓(xùn)練模型,該模型通過(guò)提供開(kāi)發(fā)文檔和可視化編程工具,幫助開(kāi)發(fā)者快速構(gòu)建視覺(jué)計(jì)算。該模型通過(guò)實(shí)時(shí)檢測(cè)手部關(guān)鍵點(diǎn)信息,將檢測(cè)后的手勢(shì)轉(zhuǎn)化為相應(yīng)的數(shù)字或字符,以滿足不同場(chǎng)景下的應(yīng)用需求。在實(shí)時(shí)手勢(shì)追蹤的過(guò)程中,考慮到由于運(yùn)動(dòng)所帶來(lái)的手勢(shì)動(dòng)作形變等問(wèn)題,為降低目標(biāo)檢測(cè)過(guò)程中數(shù)據(jù)增強(qiáng)的需求。MediaPipe框架將上一幀邊界框的信息作為當(dāng)前幀的輸入,只有在開(kāi)始幀或者檢測(cè)器丟失手部信息時(shí),才會(huì)啟動(dòng)檢測(cè)器,該方法可以有效地減少手部檢測(cè)模型的計(jì)算量,避免訓(xùn)練過(guò)程中的過(guò)擬合情況。
MediaPipe檢測(cè)流程如圖5所示,圖像采集器通過(guò)捕捉RGB-D視頻得到每幀圖像的R、G、B顏色和深度信息。利用手部檢測(cè)器模型實(shí)現(xiàn)手部位置的快速定位,考慮到手部形變和遮擋問(wèn)題,模型不直接進(jìn)行手指或關(guān)節(jié)的檢測(cè),而是估算手掌和拳頭的位置實(shí)現(xiàn)手部位置定位。檢測(cè)器通過(guò)檢測(cè)手部關(guān)節(jié)錨點(diǎn)模擬手掌骨架,采用編碼-解碼的方式擴(kuò)大感知背景,忽略手掌的長(zhǎng)寬比,降低錨點(diǎn)檢測(cè)數(shù)量,實(shí)現(xiàn)高縮放情況下的手部關(guān)節(jié)錨點(diǎn)檢測(cè)。
手部關(guān)節(jié)點(diǎn)檢測(cè)如圖6所示,在對(duì)每幀數(shù)據(jù)進(jìn)行圖像裁剪、歸一化之后,通過(guò)手掌檢測(cè)器將圖像的空間坐標(biāo)系中2D點(diǎn)坐標(biāo)轉(zhuǎn)化為實(shí)際下的像素坐標(biāo),獲得關(guān)鍵點(diǎn)的深度信息范圍為 0 ~ 1 。將2D坐標(biāo)點(diǎn)與深度信息進(jìn)行融合,將特征提取之后,生成手部3D坐標(biāo)維度為 2 1 × 3 關(guān)鍵點(diǎn)信息[8。當(dāng)未檢測(cè)到當(dāng)前幀手部關(guān)鍵點(diǎn)信息時(shí),多余部分的特征信息全部記為0,當(dāng)檢測(cè)到手部關(guān)節(jié)信息時(shí),根據(jù)當(dāng)前關(guān)節(jié)點(diǎn)信息預(yù)測(cè)下一幀手掌可能出現(xiàn)的區(qū)域。
圖7為手勢(shì)關(guān)節(jié)點(diǎn)標(biāo)注信息,通過(guò)分析指間關(guān)節(jié)各夾角之間的大小 ? θ 和各方位的運(yùn)動(dòng)向量 、
、
[],計(jì)算手部關(guān)節(jié)點(diǎn)之間的歐式運(yùn)動(dòng)距離和向量角度,判斷手指的彎曲程度,關(guān)鍵點(diǎn)之間對(duì)應(yīng)距離變化量計(jì)算式如(1)所示,向量之間的夾角計(jì)算式如(2)所示。
2實(shí)驗(yàn)環(huán)境及數(shù)據(jù)預(yù)處理
2.1 HaGRID數(shù)據(jù)集
HaGRID數(shù)據(jù)集是廣泛應(yīng)用于手勢(shì)識(shí)別研究的開(kāi)源數(shù)據(jù)集,該數(shù)據(jù)集在不同場(chǎng)景下進(jìn)行采樣,每位受試者需在距相機(jī) 0 . 5 ~ 4 . 0 米之間距離處,完成手勢(shì)動(dòng)作的采樣。數(shù)據(jù)集共包含超過(guò)50萬(wàn)張 分辨率的RGB圖像,采樣不同人類(lèi)手部動(dòng)作圖像樣本,共涵蓋18個(gè)手勢(shì)類(lèi)別,且每個(gè)樣本都包含一張彩色圖像和相應(yīng)手勢(shì)標(biāo)簽[10]??紤]到原數(shù)據(jù)集數(shù)據(jù)總量較大,本實(shí)驗(yàn)對(duì)HaGRID數(shù)據(jù)集進(jìn)行精簡(jiǎn),只選擇了call、four、ok、one、palm、three六種類(lèi)別作為樣本,HaGRID數(shù)據(jù)集部分樣本如圖8所示,每個(gè)類(lèi)別約7000張圖像。
2.2實(shí)驗(yàn)環(huán)境與網(wǎng)絡(luò)超參數(shù)
網(wǎng)絡(luò)模型的訓(xùn)練與測(cè)試需要在硬件平臺(tái)上進(jìn)行,本文進(jìn)行程序設(shè)計(jì)與調(diào)試所用的操作系統(tǒng)為Windows10,GPU 為NvidiaGeForceRTX2080Ti,顯存為 1 6 G B 。編程語(yǔ)言采用Python3.9,深度學(xué)習(xí)框架為PyTorch1.7。
超參數(shù)是指模型訓(xùn)練開(kāi)始之前需要提前設(shè)置的參數(shù),良好的超參數(shù)設(shè)置可以控制模型的復(fù)雜程度及防止過(guò)擬合。實(shí)驗(yàn)將數(shù)據(jù)集劃分為訓(xùn)練集與測(cè)試集劃分比例為9:1,Batchsize為16,初始學(xué)習(xí)率為0.01,動(dòng)量為0.937,采用Warmup預(yù)熱學(xué)習(xí)率策略,在模型穩(wěn)定時(shí),通過(guò)余弦退火算法動(dòng)態(tài)調(diào)節(jié)學(xué)習(xí)率大小,防止過(guò)擬合的同時(shí)加速模型的收斂速度[],詳細(xì)超參數(shù)設(shè)置如表1所示。
3 實(shí)驗(yàn)結(jié)果和分析
3.1 性能評(píng)估
在目標(biāo)檢測(cè)中為了定量的評(píng)價(jià)實(shí)驗(yàn)結(jié)果,常使用召回率(Recall)和精度均值(mAP)衡量模型的準(zhǔn)確性。Recal1用于衡量實(shí)際為正樣本中被檢測(cè)正確的概率,如式(3)所示,mAP用于綜合評(píng)估準(zhǔn)確性與召回率,有效衡量模型的檢測(cè)精度和泛化能力[12],如式(4)所示,F(xiàn)PS(FramesPerSecond)用于評(píng)定模型的檢測(cè)速度。
實(shí)驗(yàn)以HaGRID數(shù)據(jù)集作為訓(xùn)練數(shù)據(jù),在訓(xùn)練過(guò)程中不斷的優(yōu)化和調(diào)整超參數(shù),保證網(wǎng)絡(luò)精度的前提下提高網(wǎng)絡(luò)運(yùn)行效率。訓(xùn)練過(guò)程中,每50個(gè)Epoch計(jì)算一下mAP的值,訓(xùn)練過(guò)程中mAP曲線變化情況如圖9所示,從圖中可以看出,模型訓(xùn)練起始階段曲線的收斂速度較快,且出現(xiàn)了部分震蕩的現(xiàn)象,隨著訓(xùn)練的不斷迭代和學(xué)習(xí)率的變化,當(dāng)網(wǎng)絡(luò)曲線基本趨于平穩(wěn),模型權(quán)重逐漸趨于最優(yōu)解。最后,當(dāng)訓(xùn)練迭代次數(shù)達(dá)到大概步數(shù)時(shí),曲線下降趨勢(shì)基本趨于平穩(wěn),模型學(xué)習(xí)效率[13]趨于飽和,此時(shí)模型的損失值保持在0.5至0.9附近。
對(duì)于 ,由于沒(méi)有提供具體的數(shù)字,所以無(wú)法根據(jù)曲線的變化確定訓(xùn)練是否發(fā)生過(guò)擬合,此時(shí)需要綜合訓(xùn)練日志、損失函數(shù)變化、召回率等進(jìn)行綜合考慮。圖10中Box表示所有邊界框的數(shù)量、Objectness表示邊界框是否包含目標(biāo)物的概率,即目標(biāo)得分、Classification表示邊界框包含物體類(lèi)別的概率,即類(lèi)別得分。Val表示驗(yàn)證集上各項(xiàng)指標(biāo)的值,該值越小表示模型魯棒性越穩(wěn)定[14]。
3.2 實(shí)驗(yàn)與結(jié)果分析
為了驗(yàn)證算法模型的準(zhǔn)確度,對(duì)6種手勢(shì)類(lèi)別繪制分類(lèi)結(jié)果的混淆矩陣,各手勢(shì)動(dòng)作在驗(yàn)證集上識(shí)別準(zhǔn)確率如圖11所示,橫坐標(biāo)為動(dòng)作類(lèi)別,縱坐標(biāo)為真實(shí)動(dòng)作的類(lèi)別,正方形框中為各類(lèi)手勢(shì)動(dòng)作的準(zhǔn)確度,通過(guò)圖示可見(jiàn),所有動(dòng)作在準(zhǔn)確度上都表現(xiàn)較好[15]。其中,palm類(lèi)別由于關(guān)節(jié)點(diǎn)不存在遮擋,模型捕捉到的有效信息更多,所以識(shí)別精度最高。對(duì)于未分類(lèi)的動(dòng)作,設(shè)置NoGesture標(biāo)簽,此時(shí)需要采用人工補(bǔ)充的方式對(duì)動(dòng)作進(jìn)行補(bǔ)充。
調(diào)用MediaPipe模型中的MediaPipeHand、DisplayHand兩個(gè)類(lèi)用于手勢(shì)關(guān)節(jié)點(diǎn)提取和關(guān)節(jié)點(diǎn)可視化[1]。實(shí)驗(yàn)運(yùn)行過(guò)程中,提取并保存21個(gè)手勢(shì)關(guān)鍵點(diǎn),并通過(guò)連接線連接起來(lái)繪制出手勢(shì)骨架。如圖12所示,所有檢測(cè)結(jié)果都通過(guò)預(yù)測(cè)框的方式進(jìn)行標(biāo)注,每一種手勢(shì)都可以清晰的描述關(guān)節(jié)信息。
如圖13所示,改進(jìn)后的算法檢測(cè)速度FPS在40幀/秒左右,同時(shí)附帶置信度分?jǐn)?shù)[17]。其中,置信度分?jǐn)?shù)為介于 0 ~ 1 之間的浮點(diǎn)數(shù),其值越接近1表明識(shí)別的手勢(shì)類(lèi)別越準(zhǔn)確。
4結(jié)論
本文采用深度學(xué)習(xí)目標(biāo)檢測(cè)算法實(shí)現(xiàn)動(dòng)態(tài)手勢(shì)識(shí)別,通過(guò)目標(biāo)檢測(cè)算法確定手勢(shì)的坐標(biāo)信息之后,利用MediaPipe模型確定向量角度,判斷手指的彎曲程度實(shí)現(xiàn)手勢(shì)的識(shí)別。算法訓(xùn)練與測(cè)試過(guò)程,在性能優(yōu)良的服務(wù)器上實(shí)現(xiàn),但深度學(xué)習(xí)模型在運(yùn)算過(guò)程中往往需要大量的算力推理計(jì)算,后期在模型遷移上,有待進(jìn)一步對(duì)模型進(jìn)行剪枝和推理加速的研究。
參考文獻(xiàn):
[1]陳睿智,謝曉雨,羅瑩.科學(xué)教育測(cè)評(píng)中人機(jī)交互試題的發(fā)展、特征與啟示[J].中國(guó)考試,2024(8):79-88.
[2]高加瑞,杜洪波,蔡錦,等.基于MediaPipe的手勢(shì)識(shí)別算法研究與應(yīng)用[J].智能計(jì)算機(jī)與應(yīng)用,2024,14(4):157-161.
[3]袁蔭,楊蘇朋,陳孟元.動(dòng)態(tài)場(chǎng)景下基于YOLOv5的SLAM算法[J/OL].重慶工商大學(xué)學(xué)報(bào):自然科學(xué)版,2024:1-9[2024-08-23].http:/kns.cnki.net/kcms/detail/50.1155.N.20240816.0914.002.html.
[4]文碩怡.基于深度學(xué)習(xí)的手勢(shì)序列識(shí)別研究[D].天津:天津職業(yè)技術(shù)師范大學(xué),2024.
[5]周楠.基于卷積神經(jīng)網(wǎng)絡(luò)的手勢(shì)識(shí)別算法研究[D].桂林:桂林理工大學(xué),2022.
[6]BAIL,DINGXW,LIUY,etal.Multi-scaleFeatureFusion Optical Remote Sensing Target Detection Method [J].OptoelectronicsLetters,2025,21 (4):226-233.
[7]ABONDIO P,BRUNO F. Single-cell Pan-omics,Environmental Neurology,and Artificial Intelligence:The TimeforHolistic Brain Health Research [J].Neural RregenerationRresearch,2025,20(6):1703-1704.
[8]羅怡.基于深度學(xué)習(xí)的手部姿態(tài)估計(jì)研究[D].貴陽(yáng):貴州大學(xué),2023.
[9]劉曉克.基于深度學(xué)習(xí)的人體關(guān)節(jié)點(diǎn)檢測(cè)算法研究[D].秦皇島:燕山大學(xué),2019.
[10]蔡宇.基于深度學(xué)習(xí)的手勢(shì)識(shí)別算法研究[D].呼和浩特:內(nèi)蒙古大學(xué),2023.
[11]邱鋒.基于深度學(xué)習(xí)的實(shí)時(shí)動(dòng)態(tài)手勢(shì)識(shí)別[D].杭州:浙江大學(xué),2020.
[12]陳睿敏.手勢(shì)識(shí)別關(guān)鍵技術(shù)及其在智能實(shí)驗(yàn)室中的應(yīng)用研究[D].中國(guó)科學(xué)院大學(xué)(中國(guó)科學(xué)院上海技術(shù)物理研究所),2017.
[13]楊文姬.面向家庭服務(wù)機(jī)器人的手勢(shì)交互技術(shù)研究[D].秦皇島:燕山大學(xué),2015.
[14]王鳳艷.基于多模態(tài)輸入的手勢(shì)識(shí)別算法研究[D].合肥:中國(guó)科學(xué)技術(shù)大學(xué),2017.
[15]尹康.基于多特征融合網(wǎng)絡(luò)的手勢(shì)軌跡識(shí)別研究[D].成都:電子科技大學(xué),2019
[16]白云超.手勢(shì)行為的識(shí)別及語(yǔ)義表征技術(shù)[D].南京:南京大學(xué),2020.
[17]王強(qiáng)宇.基于深度神經(jīng)網(wǎng)絡(luò)的動(dòng)態(tài)手勢(shì)識(shí)別技術(shù)研究[D].北京:中國(guó)礦業(yè)大學(xué)(北京),2019.
作者簡(jiǎn)介,陳吳東(2003一),男.漢族,湖北荊州人.本科在讀,研究方向:嵌入式系統(tǒng)。