毛堃 吳小敏
摘 要:Kinect V2能夠?qū)θ梭w上肢的骨骼實(shí)現(xiàn)穩(wěn)定且準(zhǔn)確的識(shí)別,因此,許多學(xué)者都將其應(yīng)用于上肢運(yùn)動(dòng)康復(fù)的評(píng)價(jià)領(lǐng)域。為提高Kinect V2對(duì)于上肢運(yùn)動(dòng)的匹配速率,提出了一種基于關(guān)鍵幀的快速評(píng)價(jià)方法。通過(guò)提取整個(gè)動(dòng)作序列中骨骼點(diǎn)的三維坐標(biāo)極值,并記錄對(duì)應(yīng)的幀ID,從而生成新的骨骼序列,最終采用動(dòng)態(tài)時(shí)間規(guī)整(DTW)對(duì)動(dòng)作進(jìn)行匹配。為驗(yàn)證該評(píng)價(jià)方法的有效性,對(duì)健康的志愿者進(jìn)行了試驗(yàn),試驗(yàn)結(jié)果表明,該方法具有較高的匹配效率。
關(guān)鍵詞:Kinect V2;上肢康復(fù);關(guān)鍵幀;動(dòng)態(tài)時(shí)間規(guī)整(DTW)
0 引言
隨著傳感器技術(shù)和數(shù)據(jù)分析技術(shù)的飛速發(fā)展,智能運(yùn)動(dòng)評(píng)價(jià)系統(tǒng)已經(jīng)得到了廣泛應(yīng)用,其在康復(fù)領(lǐng)域的應(yīng)用價(jià)值也得到了學(xué)者們的廣泛認(rèn)可。近年來(lái),國(guó)內(nèi)外各研究機(jī)構(gòu)和學(xué)者針對(duì)康復(fù)運(yùn)動(dòng)研制了各種智能評(píng)價(jià)系統(tǒng),對(duì)于上肢康復(fù)運(yùn)動(dòng)數(shù)據(jù)的采集方式目前主要有兩大類,一類是以加速度傳感器為代表的慣性傳感器,另一類則是以Kinect為代表的視覺傳感器[1]。
Kinect由于其在人體骨骼識(shí)別方面優(yōu)越的性能以及無(wú)須額外佩戴的便捷性,在許多學(xué)者關(guān)于康復(fù)訓(xùn)練和康復(fù)評(píng)價(jià)的研究中得到應(yīng)用。白敬等人[2]提出了一種基于工作空間測(cè)量的居家腦卒中患者上肢偏癱康復(fù)訓(xùn)練評(píng)估系統(tǒng),實(shí)現(xiàn)患者居家康復(fù)訓(xùn)練與評(píng)估。該系統(tǒng)通過(guò)Kinect V1對(duì)患者上肢的運(yùn)動(dòng)數(shù)據(jù)進(jìn)行采集,計(jì)算出對(duì)應(yīng)的水平角和高度角,從而分析出對(duì)應(yīng)的患者上肢可到達(dá)的工作空間相對(duì)表面積,并基于DTW算法計(jì)算患者上肢的水平角和高度角與標(biāo)準(zhǔn)動(dòng)作之間的距離,但是并沒有針對(duì)關(guān)節(jié)角度計(jì)算出的距離做進(jìn)一步評(píng)價(jià)準(zhǔn)確性的對(duì)比研究。Scano[3]基于Kinect V2對(duì)上肢運(yùn)動(dòng)的關(guān)節(jié)角度進(jìn)行識(shí)別,并對(duì)完成特定動(dòng)作時(shí)的最大角度值進(jìn)行方差分析,從而實(shí)現(xiàn)對(duì)患者康復(fù)運(yùn)動(dòng)狀態(tài)的評(píng)價(jià)。李志成等人[4]開發(fā)出面向患者的個(gè)性化上肢訓(xùn)練系統(tǒng),該系統(tǒng)通過(guò)Kinect采集運(yùn)動(dòng)數(shù)據(jù),利用xml存儲(chǔ)康復(fù)訓(xùn)練方案與虛擬場(chǎng)景,實(shí)現(xiàn)了個(gè)性化的主動(dòng)式上肢康復(fù)訓(xùn)練。北京工業(yè)大學(xué)的李俊[5]設(shè)計(jì)了基于Kinect的上肢康復(fù)訓(xùn)練系統(tǒng),搭建了基于B/S架構(gòu)的數(shù)據(jù)管理系統(tǒng)網(wǎng)站,可在Web端對(duì)康復(fù)數(shù)據(jù)進(jìn)行查看和操作,并通過(guò)添加閾值限定條件對(duì)傳統(tǒng)的DTW算法進(jìn)行改進(jìn),從而降低計(jì)算量。
雖然上述學(xué)者實(shí)現(xiàn)了將Kinect應(yīng)用于上肢康復(fù)運(yùn)動(dòng)評(píng)價(jià),并具有較好的匹配精度,但是在匹配效率上仍然有很大的提升空間。因此,本文提出了基于關(guān)鍵幀的匹配方法,從而在保證原有匹配精度水平的前提下,能夠獲得較好的匹配速度。
1 關(guān)鍵幀的提取
關(guān)鍵幀的提取是指從整個(gè)運(yùn)動(dòng)視頻序列中提取最關(guān)鍵的視頻幀,利用這些關(guān)鍵幀與標(biāo)準(zhǔn)模版進(jìn)行匹配,從而達(dá)到快速評(píng)價(jià)的目的。為了能夠降低關(guān)鍵幀提取的難度,本文提出一種基于極大值和極小值的關(guān)鍵幀提取方法,整個(gè)關(guān)鍵幀提取的具體流程圖如圖1所示。
1.1? ? 骨骼點(diǎn)坐標(biāo)獲取
Kinect V2是一種集合了彩色攝像頭、深度攝像頭和紅外傳感器的融合式體感傳感器,其能夠?qū)崿F(xiàn)對(duì)于傳感器前0.5~4.5 m距離的人體的穩(wěn)定識(shí)別和跟蹤,最多可同時(shí)支持識(shí)別6個(gè)人,每個(gè)人的識(shí)別信息包括人體的25個(gè)骨骼點(diǎn)。其中,對(duì)于單側(cè)上肢可以識(shí)別出肩膀、肘部、腕部、手部、大拇指和指尖。
對(duì)于本文所研究的上肢運(yùn)動(dòng),只需要提取上肢骨骼數(shù)據(jù)點(diǎn)。Kinect V2的骨骼數(shù)據(jù)輸出形式是每秒30幀,因此,為了使數(shù)據(jù)具有唯一性,必須對(duì)每一幀的數(shù)據(jù)進(jìn)行幀ID的編號(hào)。每一個(gè)骨骼點(diǎn)的坐標(biāo)數(shù)據(jù)又可以分為X軸、Y軸和Z軸3個(gè)軸的坐標(biāo)值,其中X軸方向是以傳感器中心點(diǎn)為坐標(biāo)原點(diǎn),相對(duì)傳感器向左;Y軸方向是坐標(biāo)原點(diǎn)向上;Z軸方向則是坐標(biāo)原點(diǎn)向前。通過(guò)對(duì)骨骼幀函數(shù)的調(diào)用,就可實(shí)現(xiàn)骨骼點(diǎn)三維坐標(biāo)的讀取。
1.2? ? 極大值和極小值的獲取
通過(guò)Kinect V2實(shí)時(shí)采集上肢的肘關(guān)節(jié)和腕關(guān)節(jié)的三維坐標(biāo)X、Y、Z,在采集的同時(shí),通過(guò)定義極大值數(shù)組和極小值數(shù)組來(lái)緩存對(duì)應(yīng)肘關(guān)節(jié)和腕關(guān)節(jié)的X、Y、Z坐標(biāo)數(shù)據(jù)和對(duì)應(yīng)的幀ID。在采集到新的一幀骨骼數(shù)據(jù)時(shí),將新的數(shù)據(jù)與緩存數(shù)據(jù)進(jìn)行數(shù)值的比較。如果新的數(shù)據(jù)更大,則更新對(duì)應(yīng)的極大值;如果新的數(shù)據(jù)更小,則更新對(duì)應(yīng)的極小值,從而對(duì)X、Y、Z坐標(biāo)值進(jìn)行排序,并記錄對(duì)應(yīng)的極大值和極小值所在的幀ID。
在采集動(dòng)作結(jié)束后,基于上述緩存的幀ID和幀數(shù)據(jù)重新生成新的骨骼運(yùn)動(dòng)序列。接著,將新序列與模版進(jìn)行DTW匹配,最終實(shí)現(xiàn)運(yùn)動(dòng)數(shù)據(jù)與模版數(shù)據(jù)的快速匹配評(píng)價(jià)。
2 試驗(yàn)研究
本次試驗(yàn)的平臺(tái)為基于Kinect V2的人體上肢動(dòng)作識(shí)別系統(tǒng),本系統(tǒng)的數(shù)據(jù)顯示界面如圖2所示。
2.1? ? 試驗(yàn)平臺(tái)簡(jiǎn)介
為了更直觀地觀察骨骼點(diǎn)的識(shí)別情況,可通過(guò)按鈕實(shí)現(xiàn)視頻流與骨骼數(shù)據(jù)的疊加顯示;此外,還加入了肘關(guān)節(jié)、肩關(guān)節(jié)和腕關(guān)節(jié)的角度實(shí)時(shí)顯示。
在數(shù)據(jù)呈現(xiàn)方面,增加了骨骼數(shù)據(jù)顯示界面,通過(guò)手動(dòng)輸入對(duì)應(yīng)的志愿者ID,以表格形式輸出顯示運(yùn)動(dòng)數(shù)據(jù),除了骨骼點(diǎn)的坐標(biāo)數(shù)據(jù)外,還包括試驗(yàn)日期、試驗(yàn)時(shí)間、試驗(yàn)次數(shù)ID以及試驗(yàn)幀數(shù)ID,從而使得整個(gè)數(shù)據(jù)庫(kù)的每一條數(shù)據(jù)可以唯一溯源。
2.2? ? 試驗(yàn)及結(jié)果分析
試驗(yàn)對(duì)象為一名健康的志愿者,男性,年齡19歲,身高176 mm,上肢關(guān)節(jié)都能正常運(yùn)動(dòng)。試驗(yàn)的動(dòng)作為“右手觸碰鼻子”,具體的試驗(yàn)步驟如下:
首先,演示者以3 s勻速完成該動(dòng)作,并保存骨骼數(shù)據(jù);接著,志愿者采用3種不同的方式完成“右手觸碰鼻子”這一動(dòng)作。
動(dòng)作一:在對(duì)標(biāo)準(zhǔn)動(dòng)作要求并不知情的前提下,完成觸碰鼻子的動(dòng)作;
動(dòng)作二:在得知部分動(dòng)作要領(lǐng)的情況下,完成觸碰鼻子的動(dòng)作;
動(dòng)作三:在志愿者得知全部動(dòng)作要領(lǐng)后,完成觸碰鼻子的動(dòng)作。