朱子豪,何 宏,汪焰兵,孫 浩
(上海理工大學(xué) 健康科學(xué)與工程學(xué)院,上海 200093)
目前,頸椎疾病呈現(xiàn)出廣泛化和年輕化的發(fā)病趨勢,我國15-65 歲人群的患病率已高達(dá)15%,嚴(yán)重影響其工作、生活與學(xué)習(xí)質(zhì)量[1]??祻?fù)運(yùn)動(dòng)有利于緩解頸椎不適癥狀,是目前頸椎病的主要治療方案之一,然而患者普遍訓(xùn)練意愿較低,難以堅(jiān)持。為便于患者隨時(shí)隨地進(jìn)行康復(fù)訓(xùn)練,建立一套頸椎康復(fù)運(yùn)動(dòng)智能交互系統(tǒng)十分必要。系統(tǒng)中應(yīng)具備動(dòng)作識別與交互反饋兩個(gè)模塊,分別用于動(dòng)作識別和人機(jī)交互。精準(zhǔn)快速地識別康復(fù)動(dòng)作是確保治療效果的重要前提,為此本文針對系統(tǒng)中的動(dòng)作識別模塊建立簡潔高效的動(dòng)作識別模型。
人體骨架構(gòu)造決定著運(yùn)動(dòng)模式的幾何結(jié)構(gòu),其運(yùn)動(dòng)產(chǎn)生的行為數(shù)據(jù)是一組時(shí)間序列數(shù)據(jù),包括關(guān)節(jié)點(diǎn)的位置信息和物理信息,可通過傳感器、動(dòng)作捕捉設(shè)備和姿態(tài)估計(jì)算法獲取。目前人體行為識別方法按照特征選擇方式可分為基于傳統(tǒng)機(jī)器學(xué)習(xí)的識別方法和基于深度學(xué)習(xí)的識別方法兩大類[2],現(xiàn)有研究普遍偏重于深度學(xué)習(xí)方法,即通過設(shè)計(jì)網(wǎng)絡(luò)結(jié)構(gòu)和改進(jìn)模塊,采用端到端的學(xué)習(xí)方式從骨架序列數(shù)據(jù)中自主學(xué)習(xí)特征。
基于傳統(tǒng)機(jī)器學(xué)習(xí)的識別方法需要手工設(shè)計(jì)并提取基于人體骨架序列的特征,包括關(guān)節(jié)點(diǎn)速度加速度、關(guān)節(jié)點(diǎn)軌跡和方向、關(guān)節(jié)點(diǎn)旋轉(zhuǎn)平移和關(guān)節(jié)點(diǎn)相對位置等。例如,文獻(xiàn)[3]借助人體姿態(tài)估計(jì)算法提取人體關(guān)節(jié)點(diǎn)的二座坐標(biāo)信息形成骨架模型并提取時(shí)空幾何角度特征,利用K-近鄰算法進(jìn)行動(dòng)作分類;文獻(xiàn)[4]利用Kinect 獲取關(guān)節(jié)點(diǎn)三維坐標(biāo)并提取三維向量角度特征,然后利用相似性函數(shù)確定識別結(jié)果;文獻(xiàn)[5-6]將每個(gè)關(guān)節(jié)的多種方差作為分類特征,將時(shí)間信息嵌入到特征中,通過相似性和支持向量機(jī)(Support Vector Machine,SVM)驗(yàn)證方法性能;文獻(xiàn)[7]將三維關(guān)節(jié)與局部占用模式特征進(jìn)行關(guān)聯(lián),同時(shí)引入actionlet 的概念,利用關(guān)節(jié)子集的特定結(jié)合使模型更具魯棒性,以更好地描述動(dòng)作中的類內(nèi)變化;文獻(xiàn)[8]利用OpenPose 提取人體關(guān)節(jié)點(diǎn),對人體骨架的偏移角速度、骨骼點(diǎn)運(yùn)動(dòng)速度進(jìn)行識別;文獻(xiàn)[9]通過構(gòu)建關(guān)節(jié)相關(guān)性矩陣描述動(dòng)作,使用基于加權(quán)動(dòng)態(tài)時(shí)間扭曲的匹配方案將關(guān)節(jié)相對距離與關(guān)節(jié)相對角度特征進(jìn)行分?jǐn)?shù)級融合,獲得了比現(xiàn)有方法更好的識別性能;文獻(xiàn)[10]將協(xié)方差矩陣作為人類動(dòng)作的描述符,通過計(jì)算骨骼關(guān)節(jié)坐標(biāo)上的協(xié)方差矩陣,利用SVM 進(jìn)行動(dòng)作分類。上述基于傳統(tǒng)機(jī)器學(xué)習(xí)的方法可較好地反映出運(yùn)動(dòng)本身的物理特性或數(shù)據(jù)自身的統(tǒng)計(jì)特性,可對動(dòng)作的統(tǒng)計(jì)學(xué)幾何特性等進(jìn)行表征,在動(dòng)作識別針對性方面也較強(qiáng),但特征選擇方式較為先驗(yàn),可能會丟失其他描述運(yùn)動(dòng)的信息,且泛化能力較差,應(yīng)用場景受限。
基于深度學(xué)習(xí)的識別方法通過較為客觀的數(shù)據(jù)避免研究者的主觀干擾,提升了識別精度。例如,文獻(xiàn)[11]基于關(guān)節(jié)差異圖提取出三維坐標(biāo)的映射進(jìn)行圖像編碼,將三維動(dòng)作識別問題轉(zhuǎn)化為二維圖像的分類問題,然后采用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行分類;文獻(xiàn)[12]提出一種新的時(shí)間—空間再校準(zhǔn)方法MANs,在時(shí)間—注意力再校準(zhǔn)模塊中基于殘差學(xué)習(xí)建立了一種新的時(shí)間注意力機(jī)制,以此在時(shí)間上重新校準(zhǔn)骨架數(shù)據(jù)幀;在時(shí)空卷積模塊中將重新校準(zhǔn)的序列轉(zhuǎn)換或編碼為細(xì)胞神經(jīng)網(wǎng)絡(luò)的輸入,以進(jìn)一步對骨架序列的時(shí)空信息進(jìn)行建模;文獻(xiàn)[13]利用時(shí)空注意力機(jī)制對動(dòng)態(tài)骨架的時(shí)空相關(guān)性進(jìn)行建模,具備較強(qiáng)的魯棒性和穩(wěn)定性;文獻(xiàn)[14]提出一種輕量級圖卷積神經(jīng)網(wǎng)絡(luò),通過多源信息數(shù)據(jù)融合和自適應(yīng)圖卷積進(jìn)行分類,以較低的參數(shù)量實(shí)現(xiàn)了網(wǎng)絡(luò)輕量化目標(biāo);文獻(xiàn)[15]使用雙向循環(huán)神經(jīng)網(wǎng)絡(luò)對骨架的時(shí)間動(dòng)態(tài)和空間配置進(jìn)行處理與建模,但存在網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜、參數(shù)量大的缺點(diǎn);文獻(xiàn)[16]提出作用于骨骼數(shù)據(jù)的時(shí)空注意力模型,其中的空間注意力模塊可用于剔除噪聲關(guān)節(jié)點(diǎn),時(shí)間注意力模塊將注意力分配給每個(gè)幀以提高識別性能;文獻(xiàn)[17]利用兩個(gè)自適應(yīng)網(wǎng)絡(luò)VA-RNN 和VA-CNN 將骨架轉(zhuǎn)換為一致的視點(diǎn),消除了視點(diǎn)多樣性的影響,通過變換動(dòng)作視頻視角的方式優(yōu)化動(dòng)作識別性能?;谏疃葘W(xué)習(xí)的識別方法通過不同的網(wǎng)絡(luò)結(jié)構(gòu),以多種視角在行為識別中取得了較好效果,性能優(yōu)于傳統(tǒng)的手工提取特征方法,但普遍存在不能兼顧精度和速度的問題,實(shí)時(shí)性不強(qiáng),且在一些小型數(shù)據(jù)集,如MSR Action 和CRED中面臨性能上的挑戰(zhàn)。
鑒于此,為快速、準(zhǔn)確地識別康復(fù)運(yùn)動(dòng)動(dòng)作,本文提出一種基于關(guān)節(jié)點(diǎn)連接廣度矩陣的頸椎康復(fù)運(yùn)動(dòng)識別方法,并在MRS Action 3D 和CRED 數(shù)據(jù)集上驗(yàn)證該方法的準(zhǔn)確性、實(shí)時(shí)性以及泛化能力,為提高患者頸椎康復(fù)運(yùn)動(dòng)效果奠定基礎(chǔ)。
本文提出的基于關(guān)節(jié)點(diǎn)連接廣度矩陣的頸椎康復(fù)運(yùn)動(dòng)識別方法流程如圖1 所示,具體為:①利用姿態(tài)估計(jì)算法MoveNet 從實(shí)時(shí)視頻數(shù)據(jù)中提取人體骨架;②根據(jù)動(dòng)作單元周期對骨架進(jìn)行分割;③利用廣度優(yōu)先搜索(Breadth First Search,BFS)算法遍歷人體骨架圖中的關(guān)節(jié)點(diǎn)并根據(jù)連接廣度信息劃分三角子圖,計(jì)算三角子圖關(guān)節(jié)點(diǎn)的運(yùn)動(dòng)變化進(jìn)行加權(quán)變換;④提取關(guān)節(jié)點(diǎn)連接廣度矩陣的時(shí)空特征并組成特征矩陣;⑤使用SVM 分類器進(jìn)行識別。
Fig.1 Flow of cervical spine rehabilitation motion recognition method圖1 頸椎康復(fù)運(yùn)動(dòng)識別方法流程
首先從視頻中提取出人體骨架數(shù)據(jù)Ja,對其進(jìn)行動(dòng)作分割,得到各個(gè)動(dòng)作片段Ai;然后利用BFS 算法建立關(guān)節(jié)點(diǎn)連接廣度矩陣,劃分三角子圖,根據(jù)關(guān)節(jié)點(diǎn)的運(yùn)動(dòng)變化對子圖分配相應(yīng)權(quán)重ωj,同時(shí)對子圖內(nèi)關(guān)節(jié)點(diǎn)進(jìn)行加權(quán)變換,進(jìn)一步獲取關(guān)節(jié)點(diǎn)的準(zhǔn)確特征信息。
骨架提取是指將視頻數(shù)據(jù)轉(zhuǎn)化為骨架數(shù)據(jù)。本文利用輕量級姿態(tài)估計(jì)模型MoveNet[18],通過人體熱圖定位方法完成視頻數(shù)據(jù)的人體骨架提取,得到單幀17 個(gè)關(guān)節(jié)點(diǎn)的二維人體骨架數(shù)據(jù),其中第n幀處的第i個(gè)關(guān)節(jié)點(diǎn)為一組二維數(shù)據(jù),即Ji(n)=(Xi(n),Yi(n))。將每幀關(guān)節(jié)點(diǎn)數(shù)據(jù)組成一維特征向量,同時(shí)將相關(guān)關(guān)節(jié)點(diǎn)連接起來建立人體骨架模型,具體如圖2 所示。圖中標(biāo)出了各關(guān)節(jié)點(diǎn)的編號、名稱以及簡稱。
Fig.2 Human skeleton model圖2 人體骨架模型
人體的動(dòng)作可通過骨架模型中相應(yīng)關(guān)節(jié)點(diǎn)的運(yùn)動(dòng)進(jìn)行表征。由于頸椎康復(fù)運(yùn)動(dòng)的動(dòng)作集中在手臂與頭部,本文選取編號1(鼻子)、2(左肩)、3(右肩)、4(左肘)、5(右肘)、6(左腕)、7(右腕)的7 個(gè)關(guān)節(jié)點(diǎn)數(shù)據(jù)組成矩陣。表示為:
式中:N表示幀數(shù)。矩陣每行為1 組7 個(gè)關(guān)節(jié)點(diǎn)的特征向量。
頸椎康復(fù)運(yùn)動(dòng)中的動(dòng)作具有周期性特點(diǎn),共計(jì)N節(jié),患者需按照指導(dǎo)對每節(jié)動(dòng)作重復(fù)多次才達(dá)到康復(fù)效果,其重復(fù)次數(shù)根據(jù)頸椎患病程度而定。為精準(zhǔn)分割康復(fù)運(yùn)動(dòng)中的動(dòng)作,本文提出一種動(dòng)作單元周期分割方法。計(jì)算公式為:
式中:η為平均單位動(dòng)作時(shí)長,Ti為第i組視頻采集的總時(shí)長,C為該組視頻中發(fā)生的具體動(dòng)作次數(shù),m為視頻組數(shù),ξ為時(shí)長偏置。根據(jù)單位動(dòng)作時(shí)長對該組動(dòng)作視頻進(jìn)行分割,得到單位時(shí)長為η的單位動(dòng)作視頻Ai,i=1,2,...,t,t為動(dòng)作數(shù)。
人體骨架由關(guān)節(jié)點(diǎn)和骨骼組成,從結(jié)構(gòu)上可以將關(guān)節(jié)點(diǎn)看作節(jié)點(diǎn)V,節(jié)點(diǎn)間骨骼看作邊E,因此在計(jì)算機(jī)視覺領(lǐng)域,人體骨架可以被定義為軀干與頭肢位置的圖結(jié)構(gòu)[19],即人體骨架圖G(V,E)。本文對人體骨架圖進(jìn)行三角子圖劃分并根據(jù)節(jié)點(diǎn)運(yùn)動(dòng)進(jìn)行加權(quán)變換。
2.3.1 三角子圖劃分
從運(yùn)動(dòng)學(xué)的角度來看,人體骨架行為由多個(gè)基本單元協(xié)作完成[20],這些單元是由相鄰關(guān)節(jié)點(diǎn)組成的局部區(qū)域,即關(guān)節(jié)點(diǎn)群。不同關(guān)節(jié)點(diǎn)群運(yùn)動(dòng)強(qiáng)度的變化代表著相應(yīng)區(qū)域的動(dòng)作差異性。為進(jìn)一步準(zhǔn)確提取運(yùn)動(dòng)時(shí)人體骨架的特征數(shù)據(jù),獲取局部空間變化信息,本文對人體骨架進(jìn)行區(qū)域劃分,利用圖結(jié)構(gòu)的BFS 算法遍歷骨架圖中的所有關(guān)節(jié)點(diǎn),根據(jù)矩陣信息構(gòu)建人體三角子圖,通過關(guān)節(jié)點(diǎn)運(yùn)動(dòng)強(qiáng)度的變化計(jì)算三角子圖權(quán)重。BFS 算法以圖廣度的推進(jìn)方式完成對圖內(nèi)節(jié)點(diǎn)遍歷的過程,其從頂點(diǎn)Vo出發(fā)對鄰接節(jié)點(diǎn)Vj依次遍歷并建立鄰接關(guān)系,然后逐步對各層節(jié)點(diǎn)Vp完成遍歷。BFS算法示意圖見圖3。
Fig.3 Schematic of BFS algorithm圖3 BFS算法示例
假設(shè)從具有N個(gè)關(guān)節(jié)點(diǎn)的第i個(gè)節(jié)點(diǎn)Ji(i=1,2,...,N)的鄰接層逐層遍歷節(jié)點(diǎn)的連接廣度信息κ,以此得到關(guān)節(jié)點(diǎn)連接廣度矩陣M,該矩陣第i行表示關(guān)節(jié)點(diǎn)Ji與其他關(guān)節(jié)點(diǎn)的連接廣度信息。當(dāng)Ji與Jj為鄰接節(jié)點(diǎn)時(shí),連接廣度信息κ設(shè)為1;當(dāng)Ji與Jj通過m個(gè)節(jié)點(diǎn)相連時(shí),連接廣度信息κ=m+1 。因此,N×N關(guān)節(jié)點(diǎn)的連接廣度信息矩陣M如圖4所示。
Fig.4 Joint connection breadth matrix圖4 關(guān)節(jié)點(diǎn)連接廣度矩陣
基于關(guān)節(jié)點(diǎn)連接廣度矩陣,將與Ji關(guān)節(jié)點(diǎn)連接廣度信息κ最小(即κ(Ji,Jj) ≤1)的兩個(gè)關(guān)節(jié)點(diǎn)Jj、Jk依次構(gòu)成最小連接廣度信息組(Ji,Jj,Jk),即三角子圖G(Ji,Jj,Jk)。具體如圖5所示。
Fig.5 Triangle subgraph圖5 三角子圖
2.3.2 三角子圖加權(quán)計(jì)算
對圖5 中的最小連接廣度信息組分別建立三角子圖,可以得到5 組三角子圖Gi(i=1,2,...5)。根據(jù)三角子圖內(nèi)關(guān)節(jié)點(diǎn)的運(yùn)動(dòng)變化,利用CRITIC(Criteria Importance Though Intercrieria Correlation)權(quán)重法計(jì)算三角子圖權(quán)重ωj,并重設(shè)三角子圖內(nèi)的關(guān)節(jié)點(diǎn)數(shù)據(jù),將不同權(quán)重分配給相應(yīng)子圖。計(jì)算公式為:
式中:Sj為第j 個(gè)關(guān)節(jié)點(diǎn)的標(biāo)準(zhǔn)差,rij為關(guān)節(jié)點(diǎn)i與關(guān)節(jié)點(diǎn)j之間的相關(guān)系數(shù)。各子圖內(nèi)關(guān)節(jié)點(diǎn)權(quán)重之和為該子圖的權(quán)重ωj,將各子圖權(quán)重作用于各組內(nèi)關(guān)節(jié)點(diǎn)上即得到加權(quán)變換后的關(guān)節(jié)點(diǎn)矩陣JM。
行為識別任務(wù)根據(jù)描述行為的特征對其識別,因此所選取的特征既要全面完整地描述運(yùn)動(dòng)特性,又要避免特征冗余。本文根據(jù)關(guān)節(jié)點(diǎn)連接廣度矩陣劃分出三角子圖,以時(shí)空視角提取矩陣中的幾何與時(shí)序特征,完成對康復(fù)動(dòng)作的特征描述。
3.1.1 距離特征
骨長為兩個(gè)鄰接關(guān)節(jié)點(diǎn)間恒定的骨骼距離,不會隨人體運(yùn)動(dòng)而發(fā)生變化,此類關(guān)節(jié)點(diǎn)在連接廣度矩陣M中的連接廣度信息κ=1。在三角子圖距離特征的提取中,基于骨長的距離特征無法作為有效幾何特征進(jìn)行提取,會造成特征冗余。因此,本文選取矩陣M中連接廣度信息κ≥2的關(guān)節(jié)點(diǎn)間歐氏距離進(jìn)行特征提取,得到特征φ(Ji,Jj)。表示為:
式中:Jj表示進(jìn)行距離特征提取的兩個(gè)關(guān)節(jié)點(diǎn),N表示幀數(shù),最終組成距離特征矩陣Fd。
3.1.2 角度特征
在人體運(yùn)動(dòng)學(xué)中,關(guān)節(jié)角度用于描述身體節(jié)段的運(yùn)動(dòng)狀態(tài)。本文根據(jù)關(guān)節(jié)點(diǎn)連接廣度矩陣提取出與各關(guān)節(jié)點(diǎn)Jo連接廣度信息最小的兩個(gè)關(guān)節(jié)點(diǎn)Jp和Jq,用于表征局部人體姿態(tài)信息,對組成該點(diǎn)的特征ψ進(jìn)行提取可有效描述人體運(yùn)動(dòng)姿態(tài)。u為關(guān)節(jié)點(diǎn)Jo與Jp組成的向量,v為關(guān)節(jié)點(diǎn)Jo與Jq組成的向量,使用余弦定理計(jì)算這3 個(gè)關(guān)節(jié)點(diǎn)所形成的夾角并提取角度特征,得到角度特征矩陣Fa。表示為:
3.2.1 軌跡特征
時(shí)間序列中關(guān)節(jié)點(diǎn)的運(yùn)動(dòng)軌跡能夠反映人體的運(yùn)動(dòng)過程,彌補(bǔ)幾何特征對于時(shí)間序列信息的缺失,進(jìn)而描述骨架的整體運(yùn)動(dòng)。因此,本文利用關(guān)節(jié)點(diǎn)連接廣度矩陣中關(guān)節(jié)點(diǎn)的位置坐標(biāo)提取出軌跡特征。
3.2.2 速度特征
從關(guān)節(jié)點(diǎn)連接廣度矩陣的幾何特征中提取角度特征ψ,N表示該組數(shù)據(jù)的幀數(shù),表示第k夾角、第i幀的角度。則速度向量的計(jì)算公式為:
通過計(jì)算速度向量V得到角速度特征,將角速度特征組成角速度特征矩陣Fv。
通過特征融合將距離特征Fd、角度特征Fa、速度特征Fv和軌跡特征Ft組成時(shí)空特征矩陣F,并輸入分類器完成動(dòng)作識別。時(shí)空特征如表1所示。
Table 1 Spatial temporal features表1 時(shí)空特征
選取XGBoost 和SVM 進(jìn)行動(dòng)作分類,驗(yàn)證所提方法及其各個(gè)模塊的有效性。XGBoost 是基于Boost 思想的集成學(xué)習(xí)算法,基礎(chǔ)結(jié)構(gòu)為分類回歸樹,其不斷地對添加的誤差進(jìn)行擬合,然后對樹進(jìn)行集成分類。SVM 的常用核函數(shù)包括線性核函數(shù)、多項(xiàng)式核函數(shù)和高斯核函數(shù)等,本文選擇高斯核函數(shù)。表示為:
式中:γ表示特征向量的歐幾里得距離。
實(shí)驗(yàn)設(shè)備為實(shí)驗(yàn)室工作站系統(tǒng),設(shè)備硬件配置如表2所示。
Table 2 Hardware configuration of experimental equipment表2 實(shí)驗(yàn)設(shè)備硬件配置
以傳統(tǒng)頸椎康復(fù)操為基礎(chǔ),結(jié)合八段錦在頸椎康復(fù)治療中的應(yīng)用以及訓(xùn)練者在二維相機(jī)下的康復(fù)情景,設(shè)計(jì)并采集頸椎康復(fù)運(yùn)動(dòng)數(shù)據(jù)集CRED。動(dòng)作示意如圖6 所示,CRED 數(shù)據(jù)集信息如表3所示。
Table 3 Information of CRED dataset表3 CRED數(shù)據(jù)集信息
Fig.6 Diagram of actions of CRED dataset圖6 CRED數(shù)據(jù)集動(dòng)作示意
MSR Action 3D 是應(yīng)用廣泛的基于Kinect 骨骼數(shù)據(jù)的人體行為識別數(shù)據(jù)集,包括10 名實(shí)驗(yàn)者,20 類動(dòng)作,每人重復(fù)3次單一動(dòng)作,共計(jì)557個(gè)動(dòng)作序列。
該數(shù)據(jù)集的動(dòng)作變化不大且較為相似,包含3 個(gè)子集,分別為AS1(水平揮手、錘、沖拳、高拋、拍手、彎曲、正上手發(fā)球、拾?。?、AS2(高臂揮手、抓、畫X、畫勾、畫圓、雙手揮、向前踢、側(cè)拳)和AS3(高拋、向前踢、側(cè)踢、慢跑、搖擺、正上手發(fā)、高爾夫揮桿、拾?。?。
以樣本的真實(shí)類別和模型預(yù)測結(jié)果為依據(jù),將全部樣本分為正樣本且預(yù)測正確(True Positives,TP)、正樣本但預(yù)測錯(cuò)誤(False Positives,F(xiàn)P)、負(fù)樣本但預(yù)測正確(True Negatives,TN)、負(fù)樣本且預(yù)測錯(cuò)誤(False Negatives,F(xiàn)N)4種情況?;谶@4 類情況,分別使用準(zhǔn)確度(Accuracy)、精確度(Precision)、召回率(Recall)、特異度(Specificity)、F1分?jǐn)?shù)、運(yùn)算速度與平均幀數(shù)7 種指標(biāo)衡量模型性能。具體計(jì)算公式為:
為驗(yàn)證三角子圖模塊與時(shí)空特征模塊的有效性以及特征的冗余性,本文在CRED 數(shù)據(jù)集上以原始骨架的運(yùn)動(dòng)數(shù)據(jù)為baseline 進(jìn)行消融實(shí)驗(yàn),建立5 個(gè)模型,分別為模型1(baseline)、模型2(幾何特征模型)、模型3(時(shí)序特征模型)、模型4(時(shí)空特征模型)、模型5(基于關(guān)節(jié)點(diǎn)連接廣度矩陣的時(shí)空特征模型),使用SVM 進(jìn)行分類。分類結(jié)果混淆矩陣如圖7所示,消融實(shí)驗(yàn)結(jié)果如表4所示。
Table 4 Results of ablation experiments表4 消融實(shí)驗(yàn)結(jié)果
Fig.7 Confusion matrix of five models圖7 5個(gè)模型分類結(jié)果混淆矩陣
可以看出,模型1 平均準(zhǔn)確率為76.90%;在分別加入幾何特征與時(shí)序特征的模型2 和模型3 中,平均準(zhǔn)確率分別提升了0.88%和7.31%,說明幾何特征模塊與時(shí)序特征模塊的引入能有效提升模型性能。而在同時(shí)使用幾何特征與時(shí)序特征的模型1 中,準(zhǔn)確率達(dá)到89.77%,說明同時(shí)使用兩種特征的情況下模型性依舊可以得到改善,時(shí)空特征的選取并未造成特征冗余。模型5 利用關(guān)節(jié)點(diǎn)連接廣度矩陣劃分三角子圖,采用三角子圖+時(shí)空特征的模型結(jié)構(gòu),準(zhǔn)確率進(jìn)一步提高至92.42%,相較模型4 提高了2.65%,驗(yàn)證了本文所提模塊的有效性。
通過消融實(shí)驗(yàn)中5 個(gè)模型的比較,發(fā)現(xiàn)仍有部分動(dòng)作的識別效果不理想。為探究各動(dòng)作的具體識別情況,在CRED 數(shù)據(jù)集上以被試為單位,利用SVM 分類器對各動(dòng)作的識別結(jié)果進(jìn)行分析,結(jié)果如圖8所示。
Fig.8 Identification of each action圖8 各動(dòng)作識別情況
可以看出,“頭臂左抗”和“頭臂右抗”兩組動(dòng)作的指標(biāo)波動(dòng)較大,其他動(dòng)作指標(biāo)波動(dòng)不明顯。經(jīng)各幀骨架數(shù)據(jù)的遍歷,發(fā)現(xiàn)關(guān)節(jié)點(diǎn)缺失幀,如圖9 所示。用于提取骨架的姿態(tài)估計(jì)算法在動(dòng)作發(fā)生的過程中出現(xiàn)關(guān)節(jié)點(diǎn)丟失的情況,導(dǎo)致在動(dòng)作識別準(zhǔn)確率上存在波動(dòng)現(xiàn)象,因而對動(dòng)作分類指標(biāo)產(chǎn)生了影響。
Fig.9 Missing frames of joint圖9 關(guān)節(jié)點(diǎn)丟失幀
為驗(yàn)證本文方法的泛化性,分別使用SVM 和XGBoost分類器在CRED 數(shù)據(jù)集以及MSR Action 3D 的3 個(gè)子數(shù)據(jù)集上進(jìn)行比較實(shí)驗(yàn),以全面評估其在不同場景、數(shù)據(jù)集以及分類器上的性能,結(jié)果如表5 所示??梢钥闯觯疚姆椒ㄔ贑RED 數(shù)據(jù)集的表現(xiàn)優(yōu)于MSR Action 數(shù)據(jù)集,使用SVM 分類器的表現(xiàn)優(yōu)于使用XGBoost 分類器,但平均精度均較高,泛化能力較好。
Table 5 Results of generalization experiments表5 泛化性實(shí)驗(yàn)結(jié)果(%)
為驗(yàn)證本文方法的性能,選擇SVM 分類器,在CRED數(shù)據(jù)集上與5 種現(xiàn)有方法進(jìn)行對照實(shí)驗(yàn),分別為文獻(xiàn)[9]提出的利用關(guān)節(jié)相對距離和關(guān)節(jié)相對角度編碼描述動(dòng)作的方法;文獻(xiàn)[21]提出的利用3 個(gè)視角的關(guān)節(jié)運(yùn)動(dòng)軌跡圖進(jìn)行動(dòng)作識別的方法;文獻(xiàn)[22]提出的通過學(xué)習(xí)數(shù)據(jù)時(shí)空特性對動(dòng)態(tài)骨架進(jìn)行建模的動(dòng)作識別方法;文獻(xiàn)[23]提出的利用關(guān)節(jié)點(diǎn)三維位置構(gòu)建淺層特征,進(jìn)而訓(xùn)練長短期記憶網(wǎng)絡(luò)進(jìn)行動(dòng)作識別的方法;文獻(xiàn)[24]提出的模擬人類視覺系統(tǒng)機(jī)制,融合全局信息進(jìn)行動(dòng)作識別的方法。實(shí)驗(yàn)結(jié)果如表6 所示??梢钥闯觯疚姆椒ň哂懈叩姆诸惥?、更短的耗時(shí)以及更好的實(shí)時(shí)性。
Table 6 Comparison of performance between the proposed method and other methods表6 本文方法與其他方法性能比較
為提高頸椎病患者的康復(fù)效果,本文設(shè)計(jì)了一種基于關(guān)節(jié)點(diǎn)連接廣度矩陣的頸椎康復(fù)運(yùn)動(dòng)識別模型,利用關(guān)節(jié)點(diǎn)連接廣度矩陣對人體結(jié)構(gòu)進(jìn)行三角子圖劃分,提取時(shí)空特征以完成動(dòng)作識別。該模型在CRED 數(shù)據(jù)集上的平均識別準(zhǔn)確率達(dá)92.72%,在MSR Action 3D 數(shù)據(jù)集的平均準(zhǔn)確率達(dá)84.78%,有效性、泛化性、實(shí)時(shí)性均表現(xiàn)良好。該模型還能適應(yīng)不同骨架提取算法,廣泛匹配姿態(tài)估計(jì)方法,建立對應(yīng)的連接廣度矩陣,完成動(dòng)作識別任務(wù),并且可以面向不同骨架或特定區(qū)域骨架建立矩陣,進(jìn)行子圖劃分與動(dòng)作識別。
然而,該模型主要應(yīng)用于骨架數(shù)據(jù)背景中,對于類間差異度小的動(dòng)作識別方面仍表現(xiàn)不足,過于相似的局部動(dòng)作識別精度還有待提高。后續(xù)將優(yōu)化由于骨架提取而產(chǎn)生的關(guān)節(jié)點(diǎn)缺失,預(yù)測缺失的關(guān)節(jié)點(diǎn)位置,以提升相似動(dòng)作的識別準(zhǔn)確率。