- 相關(guān)推薦
基于Kinect的自主康復(fù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
摘要:為了使患者能夠在家中自主進(jìn)行康復(fù)訓(xùn)練并能與醫(yī)院進(jìn)行信息交互,本文設(shè)計(jì)了一套基于Kinect的自主康復(fù)系統(tǒng)。系統(tǒng)使用Kinect開(kāi)發(fā)完成,患者按康復(fù)計(jì)劃規(guī)定的康復(fù)訓(xùn)練動(dòng)作進(jìn)行訓(xùn)練,并使用Kinect傳感器獲取人體骨骼關(guān)節(jié)點(diǎn)的空間坐標(biāo)并捕捉節(jié)點(diǎn)運(yùn)動(dòng)軌跡,計(jì)算獲取關(guān)節(jié)點(diǎn)的相對(duì)角度變化值判定患者動(dòng)作是否完成并給出文字提示,醫(yī)生可調(diào)用系統(tǒng)數(shù)據(jù)庫(kù)數(shù)據(jù)查看患者康復(fù)情況并更新康復(fù)訓(xùn)練內(nèi)容。實(shí)驗(yàn)證明,該系統(tǒng)能準(zhǔn)確識(shí)別關(guān)節(jié)點(diǎn)的運(yùn)動(dòng),能較為直觀逼真地顯示用戶康復(fù)訓(xùn)練情況,實(shí)時(shí)性、準(zhǔn)確性達(dá)到設(shè)計(jì)需求,具有較好的應(yīng)用價(jià)值。本文網(wǎng)絡(luò)版地址:http://www.eepw.com.cn/article/277709.htm
關(guān)鍵詞:自主康復(fù)系統(tǒng);Kinect;骨骼關(guān)節(jié)點(diǎn);運(yùn)動(dòng)軌跡;信息交互
引言
Kinect體感傳感器是微軟公司于2010年發(fā)布的新興體感交互式傳感器,它打破了傳統(tǒng)的人機(jī)交互方式,更加生動(dòng)有效地展示了人機(jī)交互的理念和方式,因此在各行各業(yè)迅速得到應(yīng)用推廣。隨著中國(guó)社會(huì)老齡化程度不斷加深,老年人群比例逐年增大,老年病和慢性病成為社區(qū)醫(yī)療服務(wù)的重點(diǎn)關(guān)注疾病,老年癡呆、腦卒中、高血壓等易發(fā)疾病不僅需要藥物治療,還需持久的康復(fù)訓(xùn)練,目前醫(yī)療資源較為緊張,將治療后期用以增加肌體功能的康復(fù)訓(xùn)練轉(zhuǎn)移到社區(qū)或家庭中進(jìn)行能緩解老年疾病護(hù)理和醫(yī)療資源的需求供給矛盾,還能提高康復(fù)訓(xùn)練的信息化,有利于康復(fù)數(shù)據(jù)收集和研究。本文結(jié)合Kin ect和軟件及數(shù)據(jù)庫(kù)技術(shù),開(kāi)發(fā)了一套自主康復(fù)系統(tǒng),患者登錄系統(tǒng)獲取康復(fù)訓(xùn)練計(jì)劃,按計(jì)劃要求的動(dòng)作進(jìn)行康復(fù)訓(xùn)練,系統(tǒng)使用Kinect傳感器獲取人體關(guān)節(jié)點(diǎn)的空間坐標(biāo)并捕捉節(jié)點(diǎn)運(yùn)動(dòng)軌跡,經(jīng)異常值處理后判定患者各節(jié)點(diǎn)康復(fù)訓(xùn)練動(dòng)作是否達(dá)標(biāo),并根據(jù)訓(xùn)練效果制定進(jìn)一步的康復(fù)計(jì)劃,醫(yī)生可隨時(shí)進(jìn)入數(shù)據(jù)庫(kù)系統(tǒng)查詢患者的康復(fù)狀態(tài)。該系統(tǒng)經(jīng)驗(yàn)證可準(zhǔn)確識(shí)別關(guān)節(jié)運(yùn)動(dòng),交互實(shí)時(shí)性、準(zhǔn)確性達(dá)到系統(tǒng)設(shè)計(jì)要求,為老年疾病康復(fù)訓(xùn)練提供了較好的恢復(fù)平臺(tái),而且所獲得的康復(fù)數(shù)據(jù)也為相關(guān)疾病康復(fù)研究提供了大量的數(shù)據(jù)信息。
一、系統(tǒng)結(jié)構(gòu)
系統(tǒng)使用Kine ct設(shè)備獲取用戶的骨骼空間坐標(biāo)并進(jìn)行軌跡生成再現(xiàn),同時(shí)計(jì)算用戶訓(xùn)練的關(guān)節(jié)點(diǎn)相對(duì)角度值與設(shè)置的閾值比較,當(dāng)相對(duì)角度變化值超過(guò)閾值后系統(tǒng)將提示用戶完成該訓(xùn)練動(dòng)作內(nèi)容并給出響應(yīng)。為完成這一系列過(guò)程,系統(tǒng)需要四個(gè)主要部分:(1)傳感器數(shù)據(jù)采集;(2)數(shù)據(jù)處理運(yùn)算;(3)數(shù)據(jù)顯示;(4)數(shù)據(jù)存儲(chǔ)。其中傳感器數(shù)據(jù)采集主要由Kinect傳感器完成,數(shù)據(jù)處理運(yùn)算在Visual C++的后臺(tái)中進(jìn)行運(yùn)算,數(shù)據(jù)顯示通過(guò)生成的系統(tǒng)軟件在前臺(tái)顯示并對(duì)用戶動(dòng)作響應(yīng),數(shù)據(jù)存儲(chǔ)功能由MySQL完成,醫(yī)生可隨時(shí)調(diào)用數(shù)據(jù)庫(kù)數(shù)據(jù)查看患者自主康復(fù)數(shù)據(jù),并根據(jù)用戶自主康復(fù)訓(xùn)練結(jié)果更新訓(xùn)練計(jì)劃,在軟件前端顯示并提供用戶使用,從而形成一個(gè)良性循環(huán)的閉環(huán)系統(tǒng)。系統(tǒng)功能結(jié)構(gòu)如圖1所示。
二、系統(tǒng)功能原理
2.1數(shù)據(jù)采集
Kinect設(shè)備能夠?qū)崟r(shí)獲得彩色圖像和深度圖像數(shù)據(jù),而且支持實(shí)時(shí)的半身和全向骨骼跟蹤模式并能識(shí)別一系列的動(dòng)作,這是自主康復(fù)系統(tǒng)應(yīng)用Kine ct的關(guān)鍵原因。Kinect由紅外發(fā)射器、RGB彩色攝像頭和紅外線COMS攝像機(jī)組成。Kinect能夠提供人體內(nèi)的二十個(gè)骨架關(guān)節(jié)點(diǎn)的三維坐標(biāo)值,如圖2所示。
以這二十個(gè)關(guān)節(jié)點(diǎn)為基礎(chǔ),計(jì)算任意兩個(gè)關(guān)節(jié)點(diǎn)的距離和方位變化可得人體關(guān)節(jié)運(yùn)動(dòng)軌跡。Kinect可獲取場(chǎng)景深度信息并進(jìn)一步計(jì)算出入與相機(jī)間的空間間隔,設(shè)人體到Kin ect設(shè)備的距離為d,可由式(1)求得:
d=K・tan(H・dk+L)-0
(1)
式中dk是對(duì)象深度值,由Kinect設(shè)備獲取,k=12.36厘米、H=3.5-10-4rad、L=1.18rad、0=3.7厘米。
2.2運(yùn)動(dòng)軌跡生成
將深度圖像坐標(biāo)(Xk,yk,Zk)轉(zhuǎn)化為實(shí)際坐標(biāo)(Xr,Yr,Zr),轉(zhuǎn)化公式為:
式中F=O.0021,D'=-10, Kinect的分辨率為w×h=680×480。這樣利用(1)式、(2)式可得人體任意兩個(gè)關(guān)節(jié)點(diǎn)的空間坐標(biāo)值M (Xr1,Yr1,Zr1)和N(Xr2,Yr2,Zr2),可得兩關(guān)節(jié)點(diǎn)間的距離為:
由于Kinect的硬件誤差或抖動(dòng)等一系列因素導(dǎo)致骨骼關(guān)節(jié)點(diǎn)的相對(duì)位置在短時(shí)間內(nèi)變化極大、數(shù)據(jù)中存在異常值,針對(duì)這一問(wèn)題,在系統(tǒng)生成骨骼節(jié)點(diǎn)的運(yùn)動(dòng)軌跡時(shí)需對(duì)這類異常值進(jìn)行篩選和刪除,對(duì)運(yùn)動(dòng)軌跡進(jìn)行平滑處理。為達(dá)到降噪效果,將活動(dòng)關(guān)節(jié)當(dāng)前時(shí)刻的坐標(biāo)值與前N-l個(gè)采樣周期的關(guān)節(jié)坐標(biāo)的平均值當(dāng)作當(dāng)前時(shí)刻的關(guān)節(jié)位置,并按時(shí)序以N為步長(zhǎng)對(duì)獲取的坐標(biāo)位置進(jìn)行遞進(jìn)前移,該方法可以使系統(tǒng)獲取并用于顯示的人體關(guān)節(jié)活動(dòng)軌跡更為平滑優(yōu)美,帶給康復(fù)患者較好的視覺(jué)感觀,以增強(qiáng)康復(fù)的信心。
2.3姿勢(shì)判斷
獲取骨骼節(jié)點(diǎn)的坐標(biāo)標(biāo)據(jù)和運(yùn)動(dòng)軌跡是生成人體關(guān)節(jié)運(yùn)動(dòng)軌跡的基礎(chǔ),而判斷患者動(dòng)作是否達(dá)到要求是系統(tǒng)指導(dǎo)患者進(jìn)行康復(fù)訓(xùn)練的關(guān)鍵,在關(guān)節(jié)點(diǎn)運(yùn)動(dòng)過(guò)程中還需判斷患者是否完成康復(fù)動(dòng)作并在完成動(dòng)作后給予響應(yīng)。考慮人體運(yùn)動(dòng)時(shí)很多骨骼關(guān)節(jié)并非直線運(yùn)動(dòng),而是以某一關(guān)節(jié)為圓心的類似圓弧運(yùn)動(dòng),因此可實(shí)時(shí)獲取各時(shí)刻的關(guān)節(jié)點(diǎn)角度,通過(guò)活動(dòng)關(guān)節(jié)點(diǎn)相對(duì)于轉(zhuǎn)動(dòng)圓心關(guān)節(jié)點(diǎn)的角度變化值來(lái)計(jì)算患者是否完成康復(fù)動(dòng)作。
在系統(tǒng)中利用余弦定理計(jì)算如圖3所示的相關(guān)聯(lián)的3個(gè)關(guān)節(jié)點(diǎn)連線的角度值,計(jì)算方法為:
通過(guò)(4)式,系統(tǒng)在Kinect檢測(cè)到骷髏關(guān)節(jié)點(diǎn)的運(yùn)動(dòng)時(shí)可獲取相關(guān)聯(lián)的節(jié)點(diǎn)間在任意時(shí)刻的相對(duì)角度,繼而求得在某時(shí)段內(nèi)活動(dòng)關(guān)節(jié)點(diǎn)相對(duì)于轉(zhuǎn)動(dòng)圓心關(guān)節(jié)點(diǎn)的角度變化值,并設(shè)該活動(dòng)關(guān)節(jié)點(diǎn)對(duì)應(yīng)角度閾值為θt,,并設(shè)BOOL型變量K,K通過(guò)(5)式確定:
在每一采樣周期,系統(tǒng)計(jì)算此時(shí)刻與前時(shí)刻的角度差,得至K的結(jié)果并判斷,當(dāng)K為假時(shí)繼續(xù)采樣追蹤活動(dòng)關(guān)節(jié)點(diǎn)位置,當(dāng)K為真時(shí)給出對(duì)應(yīng)語(yǔ)音和文字提示并結(jié)束追蹤關(guān)節(jié)運(yùn)動(dòng)。
三、測(cè)試結(jié)果
對(duì)系統(tǒng)進(jìn)行性能測(cè)試驗(yàn)證,為減少系統(tǒng)負(fù)擔(dān)提高運(yùn)算效率,對(duì)系統(tǒng)進(jìn)行優(yōu)化設(shè)計(jì),當(dāng)追蹤某一關(guān)節(jié)活動(dòng)時(shí),系統(tǒng)只計(jì)算該關(guān)節(jié)與系統(tǒng)預(yù)先設(shè)定的關(guān)聯(lián)關(guān)節(jié)活動(dòng)軌跡,對(duì)其他關(guān)節(jié)點(diǎn)的動(dòng)作不進(jìn)行跟蹤和建立軌跡。而且由于系統(tǒng)傳感器使用了激光散斑原理,即激光在散射體表面發(fā)生漫反射的時(shí)候在附近光場(chǎng)中可看到無(wú)規(guī)則分布的亮暗光點(diǎn),這就要求系統(tǒng)使用過(guò)程中使用者和背景環(huán)境有較為明顯的區(qū)分度,而且Kinect傳感器的有效探測(cè)區(qū)間是[0.8米,3.5米],因此在測(cè)試時(shí)測(cè)試者身著深色服裝、背靠白色墻壁、距Kinect傳感器2.5米進(jìn)行測(cè)試。圖4系統(tǒng)界面所示為系統(tǒng)界面,用戶登錄系統(tǒng)后將進(jìn)入到此界面,左側(cè)為提示框和操作區(qū),其中上方顯示了當(dāng)前動(dòng)作的動(dòng)作概念、鍛煉部位和小貼示,下方為系統(tǒng)控制區(qū),可進(jìn)行重做、下一動(dòng)作、尋求幫助、系統(tǒng)風(fēng)格等操作,其中顯示風(fēng)格為系統(tǒng)右側(cè)規(guī)定動(dòng)作和展示使用者動(dòng)作展示的顯示風(fēng)格,目前已完成鋼鐵機(jī)甲、與子偕老、夕陽(yáng)紅等三種風(fēng)格:右側(cè)為動(dòng)作展示區(qū)和進(jìn)行提示區(qū),分別展示系統(tǒng)規(guī)定動(dòng)作和使用者動(dòng)作,并在下方提示用戶完成進(jìn)度。
為了測(cè)試系統(tǒng)的實(shí)時(shí)性和準(zhǔn)確性,分別選取舉手上伸、握拳抬小臂、擊掌、小腿劃圈、頭部轉(zhuǎn)圈等五個(gè)動(dòng)作,前四個(gè)動(dòng)作左右肢各進(jìn)行50次,頭部轉(zhuǎn)圈動(dòng)作進(jìn)行100次,通過(guò)讀取系統(tǒng)時(shí)戳以獲取系統(tǒng)反應(yīng)時(shí)間,并根據(jù)系統(tǒng)顯示結(jié)果判斷系統(tǒng)識(shí)別動(dòng)作是否正確,測(cè)試結(jié)果如表1所示。
從表1數(shù)據(jù)可以看出,系統(tǒng)對(duì)舉手上伸、握拳抬小臂、擊掌等三個(gè)動(dòng)作的識(shí)別率達(dá)到100%,而小腿劃圈、頭部轉(zhuǎn)圈兩個(gè)動(dòng)作有不識(shí)別情況,不識(shí)別主要發(fā)生在測(cè)試者劃圈速度較快的情況下,系統(tǒng)使用三關(guān)聯(lián)點(diǎn)測(cè)角的方法發(fā)生誤判,但考慮到康復(fù)患者普遍動(dòng)作較慢,不識(shí)別的情況在系統(tǒng)實(shí)際使用中發(fā)生的可能性較小,系統(tǒng)的平均反應(yīng)時(shí)間隨著動(dòng)作復(fù)雜度提升也會(huì)小幅增長(zhǎng),但都小于0.2秒的設(shè)計(jì)要求,因此本系統(tǒng)的準(zhǔn)確性和實(shí)時(shí)性滿足實(shí)際使用需求。
四、結(jié)束語(yǔ)
本文的系統(tǒng)使用Kinect開(kāi)發(fā)完成,可實(shí)現(xiàn)對(duì)患者康復(fù)動(dòng)作的引導(dǎo)教學(xué)和完成情況判定,并將最終的康復(fù)情況存人數(shù)據(jù)庫(kù)中,醫(yī)生可根據(jù)數(shù)據(jù)庫(kù)中數(shù)據(jù)判斷患者自主康復(fù)效果并更新訓(xùn)練計(jì)劃提供給患者,在良好的人機(jī)交互的基礎(chǔ)上實(shí)現(xiàn)了醫(yī)生和患者遠(yuǎn)程良性互動(dòng),對(duì)患者自主進(jìn)行康復(fù)具有積極促進(jìn)作用,系統(tǒng)測(cè)試結(jié)果表明系統(tǒng)的實(shí)時(shí)性和準(zhǔn)確性達(dá)到設(shè)計(jì)要求,因此系統(tǒng)具有一定的應(yīng)用價(jià)值。但是系統(tǒng)也存在一定的不足,對(duì)用戶的使用環(huán)境有一定的要求,同時(shí)軟件使用方面還有較大的優(yōu)化空間,而且對(duì)于老人來(lái)說(shuō)系統(tǒng)操作還不夠簡(jiǎn)潔,這些都將是下一步工作中重點(diǎn)進(jìn)行改進(jìn)的地方。
【基于Kinect的自主康復(fù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)】相關(guān)文章:
基于PQRM的PACS系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)03-07
基于MVC模式的BBS系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)03-08
基于ASP的網(wǎng)絡(luò)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)03-07
基于MX21的PMP系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)11-22
基于GPRS的城市供水遠(yuǎn)程監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)11-22
基于USB與DSP的指紋識(shí)別系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)03-19
基于ASP的網(wǎng)絡(luò)辦公系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)ASP+SQL03-08
淺談基于BS結(jié)構(gòu)的動(dòng)態(tài)辦公表格系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)03-01
基于Windows Media技巧的流媒體系統(tǒng) 的設(shè)計(jì)與實(shí)現(xiàn)03-23
基于JSP的BBS系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)JSP+JavaBean+SQL03-08