亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Kinect的游戲控制系統(tǒng)研究與實(shí)現(xiàn)

        2017-07-26 23:48:37賈騁王卓李妍李依明
        新媒體研究 2017年9期
        關(guān)鍵詞:控制系統(tǒng)游戲

        賈騁+王卓+李妍+李依明

        吉林動(dòng)畫學(xué)院,吉林長(zhǎng)春 132000

        摘 要 隨著虛擬現(xiàn)實(shí)技術(shù)的快速發(fā)展,越來(lái)越多的游戲采用虛擬現(xiàn)實(shí)設(shè)備進(jìn)行游戲的控制。而目前虛擬現(xiàn)實(shí)游戲的控制更多采用基于手柄識(shí)別的體感方法,Kinect則很好地解決了這樣的問(wèn)題,其獨(dú)特的識(shí)別技術(shù)可以直接識(shí)別人體動(dòng)作,擺脫了游戲人員需要手持設(shè)備的缺點(diǎn)。文章通過(guò)對(duì)Kinect進(jìn)行研究,最終完成游戲控制系統(tǒng)研究與實(shí)現(xiàn)。

        關(guān)鍵詞 Kinect;游戲;控制系統(tǒng)

        中圖分類號(hào) G2 文獻(xiàn)標(biāo)識(shí)碼 A 文章編號(hào) 2096-0360(2017)09-0042-03

        體感技術(shù),即通過(guò)計(jì)算機(jī)軟件及硬件技術(shù),采用特殊設(shè)備識(shí)別或感應(yīng)人體動(dòng)作的技術(shù)。此項(xiàng)技術(shù)的發(fā)明除了使人類與計(jì)算機(jī)的互動(dòng)擺脫了傳統(tǒng)手持硬件設(shè)備的束縛,更加增強(qiáng)了身臨其境的體驗(yàn)。目前大多的體感技術(shù)都采用手持識(shí)別設(shè)備,由體感識(shí)別攝像機(jī)識(shí)別設(shè)備的距離和移動(dòng)。而Kinect則完全擺脫了手持設(shè)備的使用,完全基于體感攝像頭來(lái)識(shí)別人體動(dòng)作。尤其隨著虛擬現(xiàn)實(shí)技術(shù)的發(fā)展,越來(lái)越多的虛擬現(xiàn)實(shí)頭盔設(shè)備出現(xiàn),虛擬現(xiàn)實(shí)游戲逐漸開(kāi)始走入人們的生活。目前虛擬現(xiàn)實(shí)設(shè)備主要有HTC Vive、Oculus Rift、Gear等,雖然設(shè)備技術(shù)先進(jìn),但仍然未能擺脫手持設(shè)備的使用,這造成了虛擬現(xiàn)實(shí)的體驗(yàn)感不強(qiáng)、感受不深刻等問(wèn)題。尤其在游戲體驗(yàn)中更加會(huì)出現(xiàn)操作復(fù)雜、控制不便等問(wèn)題。因此,采用Kinect開(kāi)發(fā)一款游戲控制系統(tǒng)具有相當(dāng)重要的價(jià)值。

        1 動(dòng)作識(shí)別

        1.1 Kinect骨骼識(shí)別原理

        Kinect體感攝像頭是由微軟公司對(duì)出的一款體感識(shí)別器,其采用光編碼技術(shù)進(jìn)行連續(xù)的照明,也即是結(jié)構(gòu)光技術(shù)的一種。但區(qū)別于一般的結(jié)構(gòu)光方式,Kinect光源發(fā)射的并非是一組周期變化的平面編碼,而是具有一定縱深的三維格式編碼。當(dāng)這種光源照射到物體表面后會(huì)形成激光色斑。當(dāng)光源發(fā)射到空間中進(jìn)而照射到不同的物體時(shí),就會(huì)形成不同的色斑圖案,通過(guò)判斷色斑圖案即可以判斷物體的位置。而識(shí)別人體動(dòng)作也采用此種技術(shù),基于事先完成的存儲(chǔ)的人體數(shù)據(jù),通過(guò)判斷光源照射到人體形成的色斑進(jìn)行特征提取和比對(duì),根據(jù)色斑的運(yùn)動(dòng)識(shí)別人體關(guān)節(jié)并最終生成骨骼和結(jié)點(diǎn)數(shù)據(jù),如圖1。

        通過(guò)Kinect識(shí)別人體將人體進(jìn)行特征提取的骨骼系統(tǒng)和關(guān)節(jié)結(jié)點(diǎn)數(shù)據(jù)包括頭部、左右肩、左右手等20個(gè)結(jié)點(diǎn),這些結(jié)點(diǎn)能有效跟隨人體的移動(dòng)而在三維空間中移動(dòng),因此在判斷一個(gè)人體動(dòng)作時(shí),可以通關(guān)判斷各個(gè)關(guān)節(jié)結(jié)點(diǎn)的相對(duì)位置、速度等變量,與編輯好的動(dòng)作集進(jìn)行數(shù)據(jù)比對(duì),就可以進(jìn)行動(dòng)作的識(shí)別。

        1.2 動(dòng)作識(shí)別方法

        人體做出的所有動(dòng)作都是通過(guò)各個(gè)關(guān)節(jié)組合完成,因此識(shí)別動(dòng)作可以直接識(shí)別關(guān)節(jié)數(shù)據(jù)及其他相關(guān)信息即可,因此可以將人體的多有動(dòng)作進(jìn)行特征提取。通過(guò)將人體動(dòng)作簡(jiǎn)化,直接提取動(dòng)作的關(guān)鍵特征進(jìn)行判斷,再進(jìn)行與結(jié)點(diǎn)數(shù)據(jù)的結(jié)合最終形成動(dòng)作的識(shí)別方法。例如,通過(guò)特征提取方法可以發(fā)現(xiàn),完成左手舉手動(dòng)作時(shí),左手結(jié)點(diǎn)平行或高于左肘結(jié)點(diǎn),且高于左肩結(jié)點(diǎn)。此時(shí),當(dāng)一個(gè)動(dòng)作滿足上述條件時(shí)就可以認(rèn)定為完成了左手舉手的靜態(tài)動(dòng)作。同理,當(dāng)識(shí)別左腳抬起時(shí),可以進(jìn)行特征提取,當(dāng)左腳結(jié)點(diǎn)位置高于右腳結(jié)點(diǎn)位置,且左膝結(jié)點(diǎn)位置高于右膝結(jié)點(diǎn)位置,即可認(rèn)定為左腳抬起動(dòng)作完成。因此,將所有結(jié)點(diǎn)通過(guò)三維空間坐標(biāo)記性標(biāo)記,獲取position.x,position.y,position.z位置參數(shù),并通過(guò)結(jié)點(diǎn)特征以三維參數(shù)為基礎(chǔ)作為判斷結(jié)果。以左手抬起為例,當(dāng)LH.position.y>=LE.position.y&&LH.position.y>LS.LH.position.y時(shí),即認(rèn)定為左手抬起動(dòng)作完成。當(dāng)LF.position.y>RF.position.y&&LK.position.y>RK.position.y時(shí),即認(rèn)定為左腳抬起動(dòng)作完成。

        基于Kinect的動(dòng)作識(shí)別除了可以識(shí)別靜態(tài)動(dòng)作以外,還可以進(jìn)行動(dòng)態(tài)動(dòng)作的識(shí)別。結(jié)合靜態(tài)動(dòng)作識(shí)別的基礎(chǔ),即可完成動(dòng)作識(shí)別動(dòng)作的特征提取。通過(guò)特征提取可以發(fā)現(xiàn),動(dòng)態(tài)動(dòng)作可歸納為多個(gè)關(guān)節(jié)結(jié)點(diǎn)的動(dòng)作組合,以右手揮手為例,當(dāng)右手從后向前揮手時(shí),可視為右手結(jié)點(diǎn)位置高于右肩及右肘位置,且右手位置有從后向前的變化,采用特征提取可以認(rèn)為,當(dāng)RH.position.y>RE.position.y>RH.position.y時(shí),右手舉起,且隨著時(shí)間推移RH.position.z1(揮手前右手坐標(biāo)深度)>RH.position.z2(揮手后右手坐標(biāo)深度),此時(shí)可以認(rèn)定為右手揮手的動(dòng)態(tài)動(dòng)作完成。由此為基礎(chǔ)可以進(jìn)行基于Kinect的動(dòng)態(tài)動(dòng)作識(shí)別。

        2 游戲控制系統(tǒng)實(shí)現(xiàn)

        根據(jù)動(dòng)作識(shí)別方法,本文采用Unity結(jié)合Kinect進(jìn)行游戲控制系統(tǒng)的研究與實(shí)現(xiàn)。Unity是一款集二維游戲、三維游戲、虛擬現(xiàn)實(shí)開(kāi)發(fā)功能為一體的專業(yè)游戲引擎,是目前游戲行業(yè)內(nèi)非常流行的一款軟件。由于其對(duì)于物理系統(tǒng)、UI系統(tǒng)、地形系統(tǒng)等優(yōu)秀的封裝,以及對(duì)包括PC端、PlayStation、IOS、等多平臺(tái)支持,以及對(duì)目前虛擬現(xiàn)實(shí)插件的兼容性而廣受專業(yè)開(kāi)發(fā)者好評(píng)。采用Unity結(jié)合Kinect開(kāi)發(fā)的游戲控制系統(tǒng)可以有效的支持多平臺(tái)研發(fā)。

        為了游戲控制系統(tǒng)實(shí)現(xiàn),首先進(jìn)行Unity與Kinect連接環(huán)境配置。需要安裝Kinect SDK以使Unity能正確識(shí)別Kinect,然后導(dǎo)入kinectWrapper.unitypackage并在Unity中打開(kāi),此時(shí)可以開(kāi)始進(jìn)行游戲控制系統(tǒng)實(shí)現(xiàn)。打開(kāi)工程文件可以發(fā)現(xiàn)其中存在多個(gè)腳本,DisplayDepth可以識(shí)別深度圖像,SkeletonWrapper可以獲取骨骼結(jié)點(diǎn)的數(shù)據(jù)等,Kinect KinectModelControllerV2腳本需要將其拖放到你需要應(yīng)用kinect控制的模型上。為了使模型可以與操作人員的動(dòng)作同步,要將模型上與模型動(dòng)作相關(guān)聯(lián)的關(guān)鍵骨骼拖放到這個(gè)腳本現(xiàn)實(shí)出來(lái)的的相匹配的變量中,即模型中的骨骼與Kincet識(shí)別到的人的骨骼結(jié)點(diǎn)進(jìn)行綁定。這個(gè)腳本現(xiàn)實(shí)的變量中,有變量用來(lái)標(biāo)識(shí)模型是受哪個(gè)人物控制,因此可以將需要控制的模型拖入此變量?jī)?nèi)使用。之后可以發(fā)現(xiàn)在Unity中已經(jīng)可以看到對(duì)于連接Kinect后可識(shí)別的多個(gè)骨骼結(jié)點(diǎn),如圖2。

        最后,對(duì)于關(guān)鍵游戲控制系統(tǒng)的實(shí)現(xiàn)使用KinectPointController腳本進(jìn)行編寫。

        打開(kāi)KinectPointController腳本,可以發(fā)現(xiàn)在腳本中存在20個(gè)骨骼結(jié)點(diǎn)的GameObject,如圖3。采用動(dòng)作識(shí)別方法進(jìn)行代碼編寫,以右手揮動(dòng)為例聲明動(dòng)作識(shí)別方法public void RightHandWave();在方法中識(shí)別肘結(jié)點(diǎn)和肩部結(jié)點(diǎn)的相對(duì)位置,if(Elbow_Right.transform.position.y>Shoulder_Right.transform.position.y)則認(rèn)為有肘結(jié)點(diǎn)位置高于右肩結(jié)點(diǎn)位置,此時(shí)認(rèn)為舉手動(dòng)作完成。然后識(shí)別揮手動(dòng)作,判定右手位置隨時(shí)間改變的Z軸坐標(biāo)。首先記錄原始坐標(biāo)former,和隨時(shí)間改變的動(dòng)態(tài)右手坐標(biāo)now,并進(jìn)行變量賦值former = now,now = Hand_Right.transform.position.z。根據(jù)特征提取方法,右手揮手可以視為右手結(jié)點(diǎn)z坐標(biāo)深度隨時(shí)間改變而變大,因此if (former < now)可以認(rèn)為揮動(dòng)動(dòng)作完成。為了防止人員在操作時(shí)出現(xiàn)抖動(dòng)導(dǎo)致識(shí)別失敗,需要編寫防抖動(dòng)代碼,即if(former - now<0.05)認(rèn)為人員只是無(wú)意識(shí)抖動(dòng)手臂而執(zhí)行非揮手動(dòng)作。在人員執(zhí)行揮手動(dòng)作時(shí),需要識(shí)別揮手動(dòng)作的快慢,因此添加時(shí)間變量來(lái)進(jìn)行識(shí)別,分別記錄揮手動(dòng)作的起始時(shí)間TS和TE終止時(shí)間,并記錄起始位置PS和PE并計(jì)算相對(duì)位移D,即可采用公式F=D/(TE-TS)進(jìn)行力量大小F的識(shí)別。完成識(shí)別后,進(jìn)行數(shù)據(jù)反饋return F即可將數(shù)據(jù)返回到方法中進(jìn)行游戲的控制。以此為基礎(chǔ),編寫游戲控制代碼方法RightHandWave、LeftHandWave、RightFootUp、LeftFootUp等動(dòng)作識(shí)別方法。

        在Unity中創(chuàng)建場(chǎng)景,并將制作好的任務(wù)模型放入場(chǎng)景中創(chuàng)建游戲人物。創(chuàng)建Animator Controller,在其中使用動(dòng)畫片段制作任務(wù)動(dòng)作樹,并放置入游戲人物中,編寫代碼繼承RightHandWave、LeftHandWave、RightFootUp、LeftFootUp方法,編寫代碼使人物進(jìn)行投籃動(dòng)作if(F>0){ this.transform.GetComponent().wave=true},即可看到人物執(zhí)行投籃動(dòng)作,可以知道游戲控制系統(tǒng)制作正確。以此為基礎(chǔ)可以進(jìn)行各種游戲控系統(tǒng)的設(shè)計(jì)及研究。

        3 結(jié)論

        本文通過(guò)基于Kinect的動(dòng)作識(shí)別方法,集成Unity的關(guān)鍵技術(shù),采用特征提取手段,最終完成游戲控制系統(tǒng)的研究與實(shí)現(xiàn)。該系統(tǒng)可以有效識(shí)別人物的基礎(chǔ)動(dòng)作,包括舉手、揮手、抬腳、踢腿等動(dòng)作,以此作為基礎(chǔ)控制Unity中的游戲人物進(jìn)行各種操作。此游戲控制系統(tǒng)將所有可識(shí)別的動(dòng)作編寫成方法并進(jìn)行封裝,具有一定的重用性和靈活性,可以為其他開(kāi)發(fā)人員提供一定的參考和幫助,并減少了重復(fù)開(kāi)發(fā)的工作開(kāi)銷,具有一定的實(shí)踐價(jià)值。同時(shí),本系統(tǒng)也并不完善,對(duì)于更加細(xì)致的動(dòng)作和組合動(dòng)作不能較好的識(shí)別,今后也將繼續(xù)研究,強(qiáng)化動(dòng)作識(shí)別和游戲系統(tǒng)的結(jié)合,完成更加精細(xì)的游戲控制系統(tǒng)。

        猜你喜歡
        控制系統(tǒng)游戲
        游戲
        數(shù)獨(dú)游戲
        基于PLC的自動(dòng)切蛋糕機(jī)的控制方案
        考試周刊(2016年88期)2016-11-24 15:25:36
        Ka頻段衛(wèi)星通信自適應(yīng)抗雨衰控制系統(tǒng)設(shè)計(jì)
        瘋狂的游戲
        飛碟探索(2016年11期)2016-11-14 19:34:47
        基于單片機(jī)的LED路燈控制系統(tǒng)設(shè)計(jì)
        基于PLC的鋼廠熱連軋感應(yīng)加熱爐控制系統(tǒng)實(shí)現(xiàn)
        礦井提升機(jī)控制系統(tǒng)發(fā)展的研究
        爆笑游戲
        風(fēng)力發(fā)電機(jī)組電氣與控制系統(tǒng)快速檢修思路探索
        科技視界(2015年25期)2015-09-01 17:45:39
        亚洲精品亚洲人成在线播放| 精品区2区3区4区产品乱码9| 天天鲁在视频在线观看| 免费国精产品自偷自偷免费看| 无码一区二区三区网站| 蜜桃精品国产一区二区三区| 精品视频一区二区三区日本| 护士的小嫩嫩好紧好爽| 夜夜未满十八勿进的爽爽影院| 亚洲精品综合第一国产综合| 午夜日本精品一区二区| 久久精品国产亚洲av一般男女| 免费人成在线观看视频高潮| 亚洲va无码手机在线电影| 亚洲色大成网站www在线观看 | 久久精品国产一区二区涩涩| 国产精品久久久黄色片| 欧美丰满少妇xxxx性| 国产sm调教视频在线观看| 中年人妻丰满AV无码久久不卡| av东京热一区二区三区| 亚洲激情综合中文字幕| 亚洲乱亚洲乱妇无码麻豆| 免费无码又爽又刺激网站| 无码专区无码专区视频网址| 亚洲精品中文字幕一二三| 无码熟妇人妻av在线网站 | 国产亚洲日韩在线三区| 精品久久久久久午夜| 少妇呻吟一区二区三区| av天堂精品久久综合网| 国产午夜福利片| 99久久99久久久精品久久| 亚洲色图第一页在线观看视频| 国产精品国产av一区二区三区| 18精品久久久无码午夜福利| 成人性生交大片免费看r| 亚洲伊人久久综合精品| 国产亚洲熟妇在线视频| 制服丝袜中文字幕在线| 狠狠躁夜夜躁无码中文字幕|