一種基于Kinect的體感遙控智能小汽車的方法
【專利摘要】本發(fā)明公開了一種基于Kinect的體感遙控智能小汽車的方法,包括以下步驟:步驟一,通過Kinect設(shè)備發(fā)射紅外線,并探測紅外光反射,計算出視野范圍內(nèi)每一個像素的深度值,生成景深數(shù)據(jù);步驟二,將景深數(shù)據(jù)轉(zhuǎn)換為NUI數(shù)據(jù);步驟三,使用統(tǒng)計方法進行手的指尖定位,從而實現(xiàn)靜態(tài)和動態(tài)手勢識別;步驟四,將靜態(tài)、動態(tài)手勢與操控指令相關(guān)聯(lián)并固化到遙控器中;步驟五,當手做出手勢后,判斷手勢含義,激活智能小汽車的相應(yīng)的操控指令。本發(fā)明步驟較為簡單,計算量小,系統(tǒng)資源占有小,對硬件要求低,且反應(yīng)時效性高。
【專利說明】
一種基于Kinect的體感遙控智能小汽車的方法
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及一種基于kinect的人機交互方法,具體的說是一種基于Kinect的體感遙控智能小汽車的方法。
【背景技術(shù)】
[0002]隨著現(xiàn)代經(jīng)濟的發(fā)展,人們對智能小汽車的要求越來越高,同時,智能小汽車的選擇也已不局限于傳統(tǒng)的通過遙控器來控制跑,轉(zhuǎn)彎,停止等。
[0003]在傳統(tǒng)的控制中,需要用戶拿著遙控器進行控制,不夠智能,隨著kinect體感技術(shù)的發(fā)展,人們對于體感控制技術(shù)充滿期待。
[0004]基于上述原因,人們試圖用體感技術(shù)來控制小車的運行,充分感受體感技術(shù)帶來的優(yōu)勢。讓玩家擺脫手柄的束縛,僅僅靠身體動作就可以操作游戲,用最自然的方式與機器對話,體驗真正的體感樂趣。
[0005]在體感遙控的實際使用過程中,需要實現(xiàn)人機交互以使其能正常使用,例如使用者選擇指令的下達等,為方便使用者使用,多采用非接觸式交互,即系統(tǒng)通過識別人體肢體動作,進行指令判斷,現(xiàn)有的此類交互系統(tǒng)工作方法較為復(fù)雜,運算量較大,工作效率低下,不但對系統(tǒng)硬件有較高的要求,同時因反應(yīng)的時效性問題,也使得用戶體驗較差。
【發(fā)明內(nèi)容】
[0006]本發(fā)明提供一種基于Kinect的體感遙控智能小汽車的方法,該方法能實現(xiàn)通過手部動作控制遙控智能小汽車的目的。
[0007]為實現(xiàn)上述目的,本發(fā)明包括以下步驟:
[0008]步驟一,通過Kinect設(shè)備(體感控制設(shè)備)發(fā)射紅外線,并探測紅外光反射,計算出視野范圍內(nèi)每一個像素的深度值,生成景深數(shù)據(jù)。該步驟用于識別出手勢。
[0009]步驟二,將景深數(shù)據(jù)轉(zhuǎn)換為NUI數(shù)據(jù)(自然用戶界面數(shù)據(jù))。由于景深數(shù)據(jù)來自于不同的攝像頭,而這兩個攝像頭所在的位置不一樣,而且視場角等也不也一樣,所以產(chǎn)生的圖像也會有差別,兩個坐標一般都是不相等,兩者之間需要交互,需要空間坐標系的轉(zhuǎn)換。
[0010]步驟三,使用統(tǒng)計方法進行手的指尖定位,從而實現(xiàn)靜態(tài)和動態(tài)手勢識別。
[0011 ] 步驟四,將靜態(tài)、動態(tài)手勢與操控指令相關(guān)聯(lián)并固化到遙控器中。
[0012]步驟五,當手做出手勢后,判斷手勢含義,激活智能小汽車的相應(yīng)的操控指令。
[0013]采用微軟SDK將景深數(shù)據(jù)轉(zhuǎn)換為NUI數(shù)據(jù)。
[0014]所述步驟二是將景深數(shù)據(jù)通過KinectSDK提供的SkeletonToDepthImage函數(shù)計算得到點在深度圖上的X軸坐標值CbpthX與Y軸坐標值cbpthY,從而轉(zhuǎn)換為NUI數(shù)據(jù)。
[0015]所述統(tǒng)計方法是指采用邊界追蹤算法進行手的指尖定位實現(xiàn)靜態(tài)手勢識別;運用耦合隱馬爾可夫模型進行動態(tài)手勢識別。
[0016]所述的步驟三是采用邊界追蹤算法和耦合隱馬爾可夫模型對產(chǎn)生的影像幀數(shù)據(jù)進行匹配以識別出手的“舉起”,“揮動”,“前推”和“移動”四種動作。
[0017]所述步驟五采用邊界追蹤算法和耦合隱馬爾可夫模型判斷手勢含義。
[0018]本發(fā)明的有益效果是,其步驟較為簡單,計算量小,系統(tǒng)資源占有小,對硬件要求低,且反應(yīng)時效性高。
【附圖說明】
[0019]附圖1是本發(fā)明的步驟流程圖。
【具體實施方式】
[0020]為方便對本發(fā)明的理解,現(xiàn)舉一實施例,對本發(fā)明作進一步說明。
[0021]本發(fā)明包括以下步驟:
[0022]步驟一,通過Kinect設(shè)備獲取人體與Kinect設(shè)備之間所形成的手部三維空間坐標Joint的數(shù)據(jù)信息并保存待用。即通過Kinect設(shè)備(體感控制設(shè)備)發(fā)射紅外線,并探測紅外光反射,計算出視野范圍內(nèi)每一個像素的深度值,生成景深數(shù)據(jù)。
[0023]步驟二,將Joint通過KinectSDK提供的SkeletonToDepthImage函數(shù)計算得到點在深度圖上的X軸坐標值cbpthX與Y軸坐標值depthY,從而轉(zhuǎn)換為NUI數(shù)據(jù)。
[0024]步驟三,采用邊界追蹤算法進行手的指尖定位實現(xiàn)靜態(tài)手勢識別;運用耦合隱馬爾可夫模型進行動態(tài)手勢識別。邊界追蹤算法和耦合隱馬爾可夫模型對產(chǎn)生的影像幀數(shù)據(jù)進行匹配以識別出已知的幀數(shù)據(jù),進而判斷,手的“舉起”,“揮動”,“前推”和“移動”四種動作。
[0025]步驟四,將手勢與一操控指令相關(guān)聯(lián),不同手勢代表不同的控制指令。。
[0026]步驟五,當手做出相應(yīng)的手勢后,使用邊界追蹤算法和耦合隱馬爾可夫模型分析確定手勢含義,(手勢含義為上述四種動作),激活對應(yīng)的操控指令,小汽車接收不同的操作命令,執(zhí)行相應(yīng)操作。
【主權(quán)項】
1.一種基于Kinect的體感遙控智能小汽車的方法,包括以下步驟: 步驟一,通過Kinect設(shè)備發(fā)射紅外線,并探測紅外光反射,計算出視野范圍內(nèi)每一個像素的深度值,生成景深數(shù)據(jù); 步驟二,將景深數(shù)據(jù)轉(zhuǎn)換為NUI數(shù)據(jù); 步驟三,使用統(tǒng)計方法進行手的指尖定位,從而實現(xiàn)靜態(tài)和動態(tài)手勢識別; 步驟四,將靜態(tài)、動態(tài)手勢與操控指令相關(guān)聯(lián)并固化到遙控器中; 步驟五,當手做出手勢后,判斷手勢含義,激活智能小汽車的相應(yīng)的操控指令。2.如權(quán)利要求1所述的基于Kinect的體感遙控智能小汽車的方法,其特征在于,采用微軟SDK將景深數(shù)據(jù)轉(zhuǎn)換為NUI數(shù)據(jù)。3.如權(quán)利要求1所述的基于Kinect的體感遙控智能小汽車的方法,其特征在于,所述步驟二是將景深數(shù)據(jù)通過KinectSDK提供的SkeletonToDepthImage函數(shù)計算得到點在深度圖上的X軸坐標值cbpthX與Y軸坐標值cbpthY,從而轉(zhuǎn)換為NUI數(shù)據(jù)。4.如權(quán)利要求1所述的基于Kinect的體感遙控智能小汽車的方法,其特征在于,所述統(tǒng)計方法是指采用邊界追蹤算法進行手的指尖定位實現(xiàn)靜態(tài)手勢識別;運用耦合隱馬爾可夫模型進行動態(tài)手勢識別。5.如權(quán)利要求4所述的基于Kinect的體感遙控智能小汽車的方法,其特征在于,所述的步驟三是采用邊界追蹤算法和耦合隱馬爾可夫模型對產(chǎn)生的影像幀數(shù)據(jù)進行匹配以識別出手的“舉起”,“揮動”,“前推”和“移動”四種動作。6.如權(quán)利要求1所述的基于Kinect的體感遙控智能小汽車的方法,其特征在于,所述步驟五采用邊界追蹤算法和耦合隱馬爾可夫模型判斷手勢含義。
【文檔編號】G06F3/01GK105892620SQ201410581604
【公開日】2016年8月24日
【申請日】2014年10月28日
【發(fā)明人】桑海偉, 左羽, 崔忠偉, 于國龍, 熊偉程
【申請人】貴州師范學(xué)院