一種應(yīng)用于智能移動(dòng)輪椅的手勢交互控制方法
【專利摘要】本發(fā)明公開了一種應(yīng)用于智能移動(dòng)輪椅的手勢交互控制方法,該方法使用Kinect攝像頭獲取用戶手部實(shí)時(shí)坐標(biāo),利用模糊控制算法對虛擬手柄進(jìn)行坐標(biāo)置位,從而使用戶可通過手部來定量控制智能移動(dòng)輪椅的行動(dòng)。其具體實(shí)現(xiàn)包括如下步驟:Kinect攝像頭獲取深度圖像信息過濾非用戶手部干擾得到用戶手部實(shí)時(shí)坐標(biāo);對獲得的手部實(shí)時(shí)坐標(biāo)進(jìn)行空間坐標(biāo)轉(zhuǎn)換和虛擬手柄機(jī)制設(shè)定及其空間建立;再根據(jù)模糊控制算法對虛擬手柄進(jìn)行坐標(biāo)置位;最后以虛擬手柄的方式實(shí)現(xiàn)定量控制智能移動(dòng)輪椅。利用本發(fā)明的方法,使得老年用戶可以利用手部姿勢良好地定量控制智能移動(dòng)輪椅,改善了他們的出行方式。
【專利說明】
一種應(yīng)用于智能移動(dòng)輪椅的手勢交互控制方法
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及計(jì)算機(jī)視覺控制、人機(jī)交互領(lǐng)域,具體涉及一種應(yīng)用于智能移動(dòng)輪椅的以Kinect深度圖像獲得的手部實(shí)時(shí)坐標(biāo)為基礎(chǔ),應(yīng)用模糊控制算法,以虛擬手柄的交互方式定量控制智能移動(dòng)輪椅的方法。【背景技術(shù)】
[0002]我國是世界上人口最多的國家,同時(shí)也是老年人口最多的國家,人口結(jié)構(gòu)老齡化已成為我們不得不面對的問題。截至2012年底,我國60歲以上的老年人口已達(dá)1.87億,超過全國總?cè)丝跀?shù)量的10%。人口結(jié)構(gòu)老齡化是導(dǎo)致老年人數(shù)量增幅較大的重要原因之一。針對我國人口老齡化嚴(yán)重、患下肢障礙患者較多、醫(yī)療醫(yī)師缺乏的情況,開發(fā)出一種為體弱老年人員提供助行服務(wù)的智能移動(dòng)輪椅具有重要的現(xiàn)實(shí)意義,它可以提高老年人和殘障人士的獨(dú)立生活質(zhì)量并減輕其對社會(huì)和家庭的負(fù)擔(dān)。智能移動(dòng)輪椅是將智能機(jī)器人技術(shù)應(yīng)用于電動(dòng)輪椅,融合多種領(lǐng)域的研究,包括機(jī)器視覺、機(jī)器人導(dǎo)航和定位、模式識(shí)別、多傳感器融合及用戶接口等,涉及機(jī)械、控制、傳感器、人工智能等技術(shù)。經(jīng)過近20年的研究發(fā)展,智能移動(dòng)輪椅的研究有了很大的進(jìn)展,但是也存在一定的問題:人機(jī)交互不夠自然。雖然已經(jīng)開發(fā)了多種智能移動(dòng)服務(wù)機(jī)器人人機(jī)交互接口,但是仍處于通過人機(jī)接口對移動(dòng)服務(wù)機(jī)器人進(jìn)行簡單控制的階段,對自然交互中使用者的無意識(shí)行為與有意識(shí)行為的區(qū)分還很欠缺, 無法達(dá)到自然交互的目的。通過開發(fā)出從用戶使用角度出發(fā)控制輪椅更自然的方法(基于用戶的手勢等),這樣一來智能移動(dòng)服務(wù)機(jī)器人系統(tǒng)能夠更加充分地與使用者進(jìn)行交流和溝通,更加準(zhǔn)確地理解使用者的操縱意圖。
[0003]可見提出一種良好的手勢識(shí)別方法對實(shí)現(xiàn)自然的人機(jī)交互有著十分重要的意義。
[0004]就目前應(yīng)用在智能移動(dòng)輪椅上普遍的手勢交互控制方式仍是相對單一、簡單的固定運(yùn)動(dòng)信息的定性控制,而實(shí)際應(yīng)用中操縱手柄是操縱輪椅運(yùn)動(dòng)的最佳方式。因此,可以考慮用手部動(dòng)作來模擬手柄操縱實(shí)現(xiàn)定量控制,使得對智能移動(dòng)輪椅的交互控制更加直觀、 具備更佳的用戶體驗(yàn)。
[0005]綜上,本發(fā)明提出了一種在基于Kinect深度圖像信息下應(yīng)用模糊控制算法并以虛擬手柄的交互方式定量控制智能移動(dòng)輪椅的手勢交互控制方法。
【發(fā)明內(nèi)容】
[0006]基于以上的問題,本發(fā)明提出了一種在基于Kinect深度圖像信息下應(yīng)用模糊控制算法并以虛擬手柄這種良好的交互方式對智能移動(dòng)輪椅進(jìn)行定量控制的方法。
[0007]本發(fā)明是通過以下技術(shù)方案來實(shí)現(xiàn)的:
[0008]S1,用戶此時(shí)只需要位于Kinect攝像頭前50厘米的距離,具體距離可調(diào),變化范圍經(jīng)過實(shí)際使用測試在45厘米至100厘米均可以,而無需做任何特定的標(biāo)定動(dòng)作,Kinect攝像頭便可以識(shí)別用戶是否進(jìn)入其覆蓋區(qū)域。
[0009]S2,使用Kinect攝像頭獲取用戶的深度圖像信息來得到手部實(shí)時(shí)坐標(biāo),在如上步驟下進(jìn)行用戶識(shí)別之后,用戶舉起左手或者右手,Kinect攝像頭獲取深度圖像信息過濾非用戶手部干擾得到用戶手部實(shí)時(shí)坐標(biāo)。
[0010]S3,根據(jù)S2步驟所獲到的手部實(shí)時(shí)坐標(biāo)信息,按照智能輪椅驅(qū)動(dòng)控制器對上位機(jī)控制信息的要求,即上位機(jī)處理器傳輸?shù)氖前喴芜\(yùn)動(dòng)方向和速度信息的坐標(biāo),而對 Kinect獲得的手部實(shí)時(shí)坐標(biāo)進(jìn)行空間坐標(biāo)轉(zhuǎn)換和虛擬手柄機(jī)制設(shè)定及其空間建立。
[0011]S4,本步驟根據(jù)模糊控制算法對虛擬手柄進(jìn)行坐標(biāo)置位,最終虛擬手柄的置位坐標(biāo)就是包含輪椅運(yùn)動(dòng)方向和速度信息的坐標(biāo)。
[0012]S5,在由S4步驟實(shí)現(xiàn)虛擬手柄坐標(biāo)置位的同時(shí),為使用戶在使用虛擬手柄控制輪椅時(shí)有直觀、自然的體驗(yàn),畫出并顯示出實(shí)時(shí)的虛擬手柄圖像作為智能移動(dòng)輪椅的用戶使用界面。
[0013]S6,最后以虛擬手柄的方式實(shí)現(xiàn)定量控制智能移動(dòng)輪椅,在此步驟中PC機(jī)根據(jù)當(dāng)前的手勢動(dòng)作發(fā)出不同的控制命令給智能移動(dòng)輪椅,不同的手勢動(dòng)作在虛擬手柄上對應(yīng)不同的坐標(biāo)信息,這些坐標(biāo)信息包含了輪椅運(yùn)動(dòng)的方向信息和速度信息。計(jì)算機(jī)通過識(shí)別得到的手勢識(shí)別結(jié)果通過串口發(fā)送相應(yīng)的命令給DS P控制器,DSP則發(fā)送相應(yīng)控制命令給電機(jī)驅(qū)動(dòng)從而控制智能輪椅的運(yùn)動(dòng)?!靖綀D說明】
[0014]圖1為智能移動(dòng)輪椅的結(jié)構(gòu)圖與Kinect攝像頭安裝位置結(jié)構(gòu)圖。
[0015]圖2為智能移動(dòng)輪椅控制系統(tǒng)結(jié)構(gòu)圖。[0〇16]圖3為Kinect深度圖像手部獲取圖。[〇〇17]圖4為Kinect攝像頭覆蓋空間坐標(biāo)圖。[〇〇18]圖5為虛擬手柄操縱原理坐標(biāo)信息圖。
[0019]圖6為模糊控制算法的模糊控制器構(gòu)成圖。
[0020]圖7為智能移動(dòng)輪椅手勢交互控制流程圖。[〇〇21]圖8為智能輪椅用戶操作界面圖。
[0022]圖9為虛擬手柄控制智能輪椅運(yùn)行時(shí)多角度圖?!揪唧w實(shí)施方式】
[0023]以下將結(jié)合附圖對本發(fā)明具體的實(shí)施過程進(jìn)行詳細(xì)的描述。
[0024]圖1為智能移動(dòng)輪椅的結(jié)構(gòu)圖,圖中所示將Kinect攝像頭安裝在使用者手(左手或是右手可以按照使用者需要定制安裝)部的正前方約50cm處,確??蓪χ植亢蚄inect所能覆蓋到的用戶坐在輪椅上時(shí)手部揮動(dòng)的最大運(yùn)動(dòng)空間。另外距離大于50cm能夠更好地采集深度圖像。
[0025]圖2為智能移動(dòng)輪椅控制系統(tǒng)結(jié)構(gòu)圖,此控制系統(tǒng)包括圖像獲取部分,圖像處理部分,智能移動(dòng)輪椅控制部分,智能移動(dòng)輪椅。其中,圖像采集部分即Kin ect攝像頭,圖像處理則使用PC機(jī),智能移動(dòng)輪椅控制部分使用DSP模塊,通過PC機(jī)對圖像處理后得到的手勢識(shí)別信息來對智能移動(dòng)輪椅進(jìn)行控制。[〇〇26]圖3為Kinect深度圖像手部獲取圖。
[0027]圖 4
[0028]為Kinect攝像頭覆蓋空間坐標(biāo)圖。以此圖為基礎(chǔ)對手部的坐標(biāo)繼續(xù)空間坐標(biāo)轉(zhuǎn)換和虛擬手柄機(jī)制設(shè)定及其空間建立。[〇〇29]圖5為虛擬手柄操縱原理坐標(biāo)信息圖。反映了虛擬手柄控制輪椅運(yùn)行的坐標(biāo)信息。
[0030]圖6為模糊控制算法的模糊控制器構(gòu)成圖。[0031 ]圖7為智能移動(dòng)輪椅手勢交互控制流程圖。具體步驟如下:[〇〇32]S1,通過Kinect攝像頭識(shí)別用戶是否進(jìn)入其覆蓋區(qū)域;[〇〇33]S2,Kinect攝像頭獲取深度圖像信息過濾非用戶手部干擾得到用戶手部實(shí)時(shí)坐標(biāo);
[0034]S3,對獲得的手部實(shí)時(shí)坐標(biāo)進(jìn)行空間坐標(biāo)轉(zhuǎn)換和虛擬手柄機(jī)制設(shè)定及其空間建立;
[0035]S4,根據(jù)用戶手部運(yùn)動(dòng)實(shí)際坐標(biāo)運(yùn)用模糊控制算法對虛擬手柄進(jìn)行坐標(biāo)置位;
[0036]S5,在智能移動(dòng)輪椅的用戶使用界面畫圖并顯示出實(shí)時(shí)的虛擬手柄圖像和操縱桿位置;
[0037]S6,以虛擬手柄的方式實(shí)現(xiàn)定量控制智能移動(dòng)輪椅;
[0038]其中Sl,Kinect攝像頭識(shí)別用戶是否進(jìn)入其覆蓋區(qū)域的具體步驟如下:[0〇39]S11,用戶進(jìn)入Kinect可覆蓋的范圍,即在攝像頭前方50cm至100cm的范圍之內(nèi),正坐在智能輪椅上。當(dāng)用戶與Kinect距離小于50cm將導(dǎo)致無法識(shí)別用戶。
[0040]S12,用戶坐下后,Kinec識(shí)別出用戶并按照程序要求在界面中顯示其覆蓋畫面的深度圖像。[〇〇41]S2,使用Kinect攝像頭獲取用戶的深度圖像信息來得到用戶手部實(shí)時(shí)坐標(biāo)的具體步驟如下:[〇〇42]S21,經(jīng)過S1過程識(shí)別出用戶并顯示覆蓋畫面深度圖像之后,用戶舉起手并進(jìn)行揮動(dòng)Kinect便可通過調(diào)用第三方的OpenNI庫獲取到手部坐標(biāo)信息并在圖像中顯示出手部運(yùn)動(dòng)軌跡,如圖3所示。這里為舉起右手并進(jìn)行向右揮動(dòng)。[〇〇43]S22,由于Kinect支持同時(shí)識(shí)別出出現(xiàn)在攝像頭覆蓋范圍內(nèi)的多只手,最多為4只手。在此智能輪椅應(yīng)用背景下,程序設(shè)定當(dāng)攝像頭覆蓋范圍內(nèi)出現(xiàn)多只手時(shí),只跟蹤和獲取最早出現(xiàn)并進(jìn)行揮動(dòng)動(dòng)作的那只手及其坐標(biāo),理由在于多次實(shí)踐發(fā)現(xiàn),最早出現(xiàn)的那只手幾乎都是用戶的手部,以防止輪椅運(yùn)動(dòng)過程中背景出現(xiàn)的非用戶手部對輪椅運(yùn)行產(chǎn)生干擾。
[0044]S3,在本步驟中,要根據(jù)S2步驟所獲到的手部實(shí)時(shí)坐標(biāo)信息進(jìn)行空間坐標(biāo)轉(zhuǎn)換和虛擬手柄機(jī)制設(shè)定及其空間建立,具體步驟如下:[〇〇45]S31,獲取到的手部實(shí)時(shí)三維坐標(biāo)是Kinect相機(jī)坐標(biāo)需對其進(jìn)行坐標(biāo)轉(zhuǎn)換為計(jì)算機(jī)平面坐標(biāo),轉(zhuǎn)換原理為使用Kinect捕捉到的用戶左手或者右手的空間坐標(biāo)PST,將PST坐標(biāo)的XY平面坐標(biāo)部分映射為屏幕坐標(biāo),具體方法為使用Coing4Fun.Kinect工具包中的擴(kuò)展方法Joint.ScaleTo。步驟為先獲取屏幕的高度Height和寬度Width,再將追蹤到的手的三維坐標(biāo)映射成屏幕坐標(biāo)。
[0046]S32,按照虛擬手柄操縱輪椅時(shí)手部在真實(shí)世界空間運(yùn)動(dòng)情況,選取轉(zhuǎn)換后坐標(biāo)的X,Y軸坐標(biāo)對應(yīng)在真實(shí)世界平面空間,得到如圖4所示的,手部在Kinect攝像頭前移動(dòng)的平面范圍為一個(gè)矩形,實(shí)際空間中手部坐標(biāo)移動(dòng)的最大邊界為此矩形,無論手部如何移動(dòng)其坐標(biāo)皆在這個(gè)平面矩形坐標(biāo)范圍內(nèi)。考慮到用戶體驗(yàn)選擇矩形的大致中心點(diǎn)作為虛擬手柄的中心坐標(biāo)點(diǎn),將手部處于矩形大致中心點(diǎn)時(shí)對應(yīng)的經(jīng)過坐標(biāo)轉(zhuǎn)換后的手部屏幕坐標(biāo)進(jìn)行坐標(biāo)平移,使其坐標(biāo)為原點(diǎn)。并以此點(diǎn)為圓心,使用QT開發(fā)工具中DrawEl ipse函數(shù)進(jìn)行邏輯畫圓,此圓處在該矩形的正中心,且只能位于矩形內(nèi)部,圓的直徑為該矩形短邊長。為了滿足虛擬手柄的特性,坐標(biāo)轉(zhuǎn)化程序建立如下規(guī)則:當(dāng)手部在真實(shí)空間中運(yùn)動(dòng)時(shí)對應(yīng)的平面坐標(biāo)位于矩形內(nèi)但是在此圓外時(shí),將該坐標(biāo)點(diǎn)與圓的中心點(diǎn)的連線與圓的邊界的交點(diǎn)坐標(biāo)作為真實(shí)空間中該手部運(yùn)動(dòng)坐標(biāo)點(diǎn)映射在這個(gè)邏輯圓即虛擬手柄上的坐標(biāo)點(diǎn)。當(dāng)手部在真實(shí)空間中運(yùn)動(dòng)時(shí)對應(yīng)的平面坐標(biāo)位于矩形內(nèi)但是在此圓內(nèi)時(shí),以比較矩形中心點(diǎn)坐標(biāo)與該點(diǎn)坐標(biāo)兩點(diǎn)之間的距離為條件,以矩形中心點(diǎn)轉(zhuǎn)化為邏輯圓圓心為基礎(chǔ),對這個(gè)在圓內(nèi)的點(diǎn)進(jìn)行坐標(biāo)平移,以得到其在虛擬圓內(nèi)的坐標(biāo)。
[0047]S33,在上一步驟建立了虛擬手柄的邏輯圓之后,由圖5中的左圖可知,輪椅的運(yùn)動(dòng)信息即方向信息和速度信息完全由右圖的坐標(biāo)所決定,在右圖上的坐標(biāo)點(diǎn)對照左圖對應(yīng)了輪椅的運(yùn)轉(zhuǎn)檔位速度、轉(zhuǎn)向角度。右圖的坐標(biāo)圓是以XY坐標(biāo)系第一象限的(100,100)為圓心,為了讓虛擬手柄和右圖的坐標(biāo)相匹配,對虛擬手柄的坐標(biāo)圓進(jìn)行坐標(biāo)平移,使其圓心坐標(biāo)為(100,100)。至此,手部在真實(shí)空間中的坐標(biāo)就能一直映射到虛擬手柄的坐標(biāo)圓上。此夕卜,停止指令為坐標(biāo)為(〇,〇),考慮到虛擬手柄在真實(shí)使用時(shí)當(dāng)要發(fā)出停止指令時(shí),手部很難較快的放置到對應(yīng)虛擬手柄中的(〇,〇)點(diǎn)。在此點(diǎn)周圍建立停止指令模糊區(qū)域,具體以虛擬手柄圓的圓心為圓心,以該坐標(biāo)體系下10為半徑的小圓做為停止指令模糊區(qū)域。但凡虛擬手柄運(yùn)動(dòng)到此圓范圍內(nèi),均以(0,0)作為該點(diǎn)在虛擬手柄上的坐標(biāo)。
[0048]S34,用戶用手部運(yùn)動(dòng)控制虛擬手柄的機(jī)制是:第一,用戶的手部坐標(biāo)經(jīng)過以上S3 步驟最終映射到虛擬手柄的坐標(biāo)圓上;第二,從用戶手部坐標(biāo)進(jìn)行坐標(biāo)轉(zhuǎn)換成虛擬手柄坐標(biāo)根據(jù)輪椅的實(shí)際運(yùn)行要求,采取了坐標(biāo)轉(zhuǎn)換或者說坐標(biāo)置位上速度的設(shè)置。采用這樣的機(jī)制是為了:第一,防止當(dāng)用戶手勢揮動(dòng)速度過快幅度過大時(shí),因虛擬手柄跳變速度過快位移過大而導(dǎo)致輪椅運(yùn)行時(shí)產(chǎn)生加速過快的情形。因此采用以上規(guī)則為虛擬手柄的置位機(jī)制。
[0049]S4,在本方法中實(shí)現(xiàn)該機(jī)制采用模糊控制算法,具體算法構(gòu)建步驟如下:
[0050]S41,模糊控制算法中的規(guī)則經(jīng)驗(yàn)為:針對比如每2 0 0毫秒(K i n e c t攝像頭采樣速度)內(nèi)坐標(biāo)點(diǎn)之間距離大于坐標(biāo)圓內(nèi)50的距離單位時(shí),手部運(yùn)動(dòng)坐標(biāo)映射到虛擬手柄的坐標(biāo)在其坐標(biāo)圓內(nèi),要求在控制坐標(biāo)轉(zhuǎn)換速度使得在Kinect采樣周期內(nèi)兩個(gè)虛擬手柄坐標(biāo)點(diǎn)的距離為12坐標(biāo)圓距離單位。實(shí)現(xiàn)虛擬手柄平滑移動(dòng),相應(yīng)輪椅運(yùn)行加速、減速平滑順暢。 [〇〇51]S42,根據(jù)以上信息首先建立模糊控制器結(jié)構(gòu),如圖6所示。模糊控制器的第一個(gè)輸入為Kinect采樣周期內(nèi)兩個(gè)虛擬手柄坐標(biāo)點(diǎn)的距離與坐標(biāo)圓距離單位12的誤差值e,考慮到解決的是輪椅實(shí)際運(yùn)行中出現(xiàn)的跳變的問題,此誤差值定為只有正誤差。ec為誤差變化率作為此模糊控制器的第二個(gè)輸入。模糊控制器的輸出為將手部運(yùn)動(dòng)坐標(biāo)轉(zhuǎn)換到虛擬手柄的坐標(biāo)的轉(zhuǎn)化速度u。因此,模糊控制器采用兩輸入單輸出的二維結(jié)構(gòu)。[〇〇52]S43,確定各變量的模糊語言取值及相應(yīng)的隸屬函數(shù),進(jìn)行模糊化。針對兩個(gè)虛擬手柄坐標(biāo)點(diǎn)的距離與坐標(biāo)圓距離單位12的誤值e,取其語言變量為E,根據(jù)虛擬手柄的機(jī)制, 論域選擇為X = {0,+ 1,+2,+3},論域上模糊子集是Ai (i = 1,2,3,4),相應(yīng)語言值為{正大 (PB),正中(PM),正小(PS),零(Z)},分別表示Kinect采樣周期內(nèi)兩個(gè)虛擬手柄坐標(biāo)點(diǎn)的距離與坐標(biāo)圓距離單位12的距離為“正好”、“偏遠(yuǎn)”、“很遠(yuǎn)”、“極遠(yuǎn)”。Kinect采樣周期內(nèi)兩個(gè)虛擬手柄坐標(biāo)點(diǎn)的距離與坐標(biāo)圓距離單位12的距離差的前后兩次采樣差值變化量是ec,取其語言變量為EC,論域Y= {-3,-2,-1,0,+1,+2,+3},論域上的模糊子集是B j (j = 1,2,3,…, 5),相應(yīng)語言值為{正大(PB),正小(PS),零⑵,負(fù)小(NS),負(fù)大(NB)}。分別表示Kinect采樣周期內(nèi)兩個(gè)虛擬手柄坐標(biāo)點(diǎn)的距離與坐標(biāo)圓距離單位12的距離差:“快速變大”、“變大”、 “不變”、“變小”、“快速變小”。手部運(yùn)動(dòng)坐標(biāo)轉(zhuǎn)換到虛擬手柄的坐標(biāo)的轉(zhuǎn)化速度u,取其語言變量為U,論域Z = {-3,-2,-1,0},論域上模糊子集是Ck(k=l,2,3,4},相應(yīng)語言值為零(Z), 負(fù)小(NS),負(fù)中(NM),負(fù)大(NB)}。分別表示轉(zhuǎn)化速度為:“速度不變”,“速度減小一些”,“速度減小中等”,“速度減小最大”。確定語言值隸屬度函數(shù),對上面各語言之給定其模糊化的隸屬度函數(shù),這里根據(jù)實(shí)際問題,隸屬度函數(shù)選擇三角形函數(shù)。[〇〇53]S44,建立模糊控制規(guī)則。規(guī)則的歸納和規(guī)則庫的建立,從實(shí)際控制經(jīng)驗(yàn)過渡到模糊控制器,模糊控制規(guī)則為:If E = PB and EC = NB or NS or Z then U = NB,If E = PB and EC = PB or PS then U=NM,If E = PM and EC = NB or NS then U = NB,If E = PM and EC = PB then U = NS,If E = PM and EC = PS or Z then U =匪,If E = PS and EC = NB then U = NM,If E = PS and EC = NS or Z then U = NS,If E = PS and EC = PB or PS then U = Z,If E = Z and EC = NB or NS then U = NS,If E = Z and EC = Z then U = Z? If E = Z and EC = PB or PS then U =匪.確定模糊推理和解模糊化方法。模糊推理方法選擇為最大乘積推理。解模糊化方法選擇重心法。將模糊量轉(zhuǎn)化為精確量,用以實(shí)施最后的控制策略。 [〇〇54]S45,模糊控制查詢表的生成。在如上步驟基礎(chǔ)之上,在matlab上構(gòu)建模糊控制器加載輸入量的論域、隸屬度函數(shù)、模糊控制規(guī)則和解模糊方法,最后生成離線模糊控制查詢表,生成了模糊控制查詢表之后,將該表導(dǎo)入主程序模糊控制查詢程序中的二維數(shù)組,即可在程序執(zhí)行時(shí)離線查詢模糊控制查詢表,設(shè)定正確的手部運(yùn)動(dòng)坐標(biāo)轉(zhuǎn)換到虛擬手柄的坐標(biāo)的轉(zhuǎn)化速度U,使得使得在Kinect采樣周期內(nèi)兩個(gè)虛擬手柄坐標(biāo)點(diǎn)的距離為12坐標(biāo)圓距離單位。這樣虛擬手柄的坐標(biāo)點(diǎn)在轉(zhuǎn)化為輪椅的方向和速度信息時(shí)可以實(shí)現(xiàn)虛擬手柄平滑移動(dòng),相應(yīng)輪椅運(yùn)行加速、減速平滑順暢。[〇〇55]S5,在S4步驟中虛擬手柄的坐標(biāo)得到了置位,在本步驟中為了讓用戶更加直觀、方便的操縱輪椅,程序顯示了輪椅的操作界面,如圖8所示。具體構(gòu)成如下:
[0056]S51,在本界面中對應(yīng)S3步驟建立的虛擬手柄邏輯空間,界面分為藍(lán)色的運(yùn)行指令區(qū)域,紅色的停止指令區(qū)域,并在虛擬手柄處于不同區(qū)域時(shí)在界面中打印出相應(yīng)文本。 [〇〇57]S52,在界面中同時(shí)顯示出了虛擬手柄的圖像,并且此虛擬連桿實(shí)時(shí)動(dòng)態(tài)顯示手部操縱情況。[〇〇58]S6,通過識(shí)別出的手部姿勢定量控制智能移動(dòng)輪椅的運(yùn)動(dòng),在如圖8所示輪椅操縱界面上當(dāng)虛擬手柄處于不同區(qū)域時(shí),發(fā)出不同的坐標(biāo)控制指令。具體步驟如下:
[0059]S61,當(dāng)虛擬手柄處于操縱區(qū)域的正前方向并根據(jù)虛擬手柄末端與手柄原端的坐標(biāo)距離差發(fā)出不同檔位速度的正前進(jìn)命令。當(dāng)虛擬手柄處于操縱區(qū)域的正后方向并根據(jù)虛擬手柄末端與手柄原端的坐標(biāo)距離差發(fā)出不同檔位速度的正倒車命令。
[0060]S62,當(dāng)虛擬手柄處于操縱區(qū)域的左前或右前方向并根據(jù)虛擬手柄末端與手柄原端的坐標(biāo)距離差發(fā)出不同檔位速度的左前進(jìn)或右前進(jìn)命令。當(dāng)虛擬手柄處于操縱區(qū)域的左后或右后方向并根據(jù)虛擬手柄末端與手柄原端的坐標(biāo)距離差發(fā)出不同檔位速度的左方向倒車或右方向倒車命令。
[0061]S63,當(dāng)虛擬手柄處于操縱界面的小圓即指令停止區(qū)域時(shí),則發(fā)出停止命令。
[0062]具體操作的過程描述如下:如圖9所示,在光照度適中的室內(nèi),使用者在智能輪椅上保持正坐姿勢,Kinect攝像頭放置在手部前方50?100厘米處,開啟智能輪椅的手部控制功能,使用者根據(jù)虛擬手柄操縱界面揮動(dòng)手部,使得虛擬手柄處于正前,輪椅則按相應(yīng)檔位向前運(yùn)動(dòng),使用者使得虛擬手柄處于正后,輪椅則按相應(yīng)檔位向后倒車,使用者使得虛擬手柄處于左前或右前,輪椅則按相應(yīng)檔位左前右前前進(jìn),使用者使得虛擬手柄處于左后或右后,輪椅則按相應(yīng)檔位左后右后倒車。使用者使得虛擬手柄處于指令停止區(qū)域,輪椅則平穩(wěn)的停車。
【主權(quán)項(xiàng)】
1.一種應(yīng)用于智能移動(dòng)輪椅的手勢交互控制方法,其特征在于,該方法以由Kinect深 度圖像獲得的手部實(shí)時(shí)坐標(biāo)為基礎(chǔ),應(yīng)用模糊邏輯算法,獲取手部姿勢并以虛擬手柄的方 式定量控制智能移動(dòng)輪椅,其具體實(shí)現(xiàn)包括如下步驟:步驟1)通過Kinect攝像頭識(shí)別用戶是否進(jìn)入其覆蓋區(qū)域;步驟2)使用Kinect獲取深度圖像信息過濾非用戶手部干擾得到用戶手部實(shí)時(shí)坐標(biāo);步驟3)對獲得的手部實(shí)時(shí)坐標(biāo)進(jìn)行空間坐標(biāo)轉(zhuǎn)換和虛擬手柄機(jī)制設(shè)定及其空間建立;步驟4)根據(jù)模糊控制算法對虛擬手柄進(jìn)行坐標(biāo)置位;步驟5)在智能移動(dòng)輪椅的用戶使用界面畫圖并顯示出實(shí)時(shí)的虛擬手柄圖像;步驟6)以虛擬手柄的方式實(shí)現(xiàn)定量控制智能移動(dòng)輪椅。2.根據(jù)權(quán)利要求1所述的一種應(yīng)用于智能移動(dòng)輪椅的手勢交互控制方法,其特征在于, 前述步驟1)中,用戶此時(shí)位于Kinect攝像頭前45厘米至100厘米,Kinect攝像頭識(shí)別用戶是 否進(jìn)入其覆蓋區(qū)域。3.根據(jù)權(quán)利要求1所述的一種應(yīng)用于智能移動(dòng)輪椅的手勢交互控制方法,其特征在于, 前述步驟2)中,在如上步驟之后,用戶舉起左手或者右手,Kinect攝像頭獲取深度圖像信息 過濾非用戶手部干擾得到用戶手部實(shí)時(shí)坐標(biāo)。4.根據(jù)權(quán)利要求1所述的一種應(yīng)用于智能移動(dòng)輪椅的手勢交互控制方法,其特征在于, 前述步驟3)中,按照智能輪椅驅(qū)動(dòng)控制器對上位機(jī)控制信息的要求,即上位機(jī)處理器傳輸 的是包含輪椅運(yùn)動(dòng)方向和速度信息的坐標(biāo),而對Kinect獲得的手部實(shí)時(shí)坐標(biāo)進(jìn)行空間坐標(biāo) 轉(zhuǎn)換和虛擬手柄機(jī)制設(shè)定及其空間建立。5.根據(jù)權(quán)利要求1所述的一種應(yīng)用于智能移動(dòng)輪椅的手勢交互控制方法,其特征在于, 前述步驟4)中,根據(jù)模糊控制算法對虛擬手柄進(jìn)行坐標(biāo)置位,最終虛擬手柄的置位坐標(biāo)就 是包含輪椅運(yùn)動(dòng)方向和速度信息的坐標(biāo)。6.根據(jù)權(quán)利要求1所述的一種應(yīng)用于智能移動(dòng)輪椅的手勢交互控制方法,其特征在于, 前述步驟5)中,畫出并顯示出實(shí)時(shí)的虛擬手柄圖像作為智能移動(dòng)輪椅的用戶使用界面。7.根據(jù)權(quán)利要求1所述的一種應(yīng)用于智能移動(dòng)輪椅的手勢交互控制方法,其特征在于, 前述步驟6)中,以虛擬手柄的方式實(shí)現(xiàn)定量控制智能移動(dòng)輪椅,在此步驟中PC機(jī)根據(jù)當(dāng)前 的手勢動(dòng)作發(fā)出不同的控制命令給智能移動(dòng)輪椅,不同的手勢動(dòng)作在虛擬手柄上對應(yīng)不同 的坐標(biāo)信息,計(jì)算機(jī)通過識(shí)別得到的手勢識(shí)別結(jié)果通過串口發(fā)送相應(yīng)的命令給DSP控制器, DSP則發(fā)送相應(yīng)控制命令給電機(jī)驅(qū)動(dòng)以控制智能輪椅的運(yùn)動(dòng)。
【文檔編號(hào)】G06F3/01GK106095107SQ201610453305
【公開日】2016年11月9日
【申請日】2016年6月21日
【發(fā)明人】高翔, 何瑞青, 朱博, 徐國政, 王強(qiáng), 陳盛
【申請人】南京郵電大學(xué)