999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Vizard和Kinect的增強現實人機交互技術研究

2016-04-22 09:29:38張利利劉江城林曉斌
計算機時代 2016年4期

張利利+劉江城+林曉斌

摘 要: 基于體態和語言的人機自然交互技術很大程度上解決了傳統游戲的體驗問題,增強了游戲用戶的體驗感。提出了一種將Vizard和Kinect相結合開發增強現實人機交互技術的方法,即利用Kinect設備獲取人體骨骼跟蹤識別點,通過Vizard和FAAST取得對應骨骼節點的三維坐標值,并進行空間向量處理,進而判斷肢體信息再轉換為狀態參數,最后完成相應的控制指令輸出,實現用戶和系統的交互控制。實驗結果表明,這種開發方法成本低,周期短,將真實世界信息和虛擬世界信息“無縫”地融合,增強游戲用戶的體驗感。

關鍵詞: 增強現實; 人機交互; Vizard; Kinect; FAAST

中圖分類號:TP391 文獻標志碼:A 文章編號:1006-8228(2016)04-12-05

Study on augmented reality human-computer interactive

technology with Vizard and Kinect

Zhang Lili, Liu Jiangcheng, Lin Xiaobin

(Minjiang college Physics and electronic information engineering, Fuzhou, Fujian 350000, China)

Abstract: Natural human-computer interaction technology based on posture and language has largely solved the problem of the traditional game experience, and augmented the user experience. This paper presents a method to develop augmented reality interactive technology with Vizard and Kinect. It uses Kinect to obtain tracking identification points of human skeleton, and gets three-dimensional coordinate values of corresponding bones node by Vizard and FAAST. By space vector processing, the body posture can be converted to a state value and then the corresponding control command output is completed, and the interaction control between user and system is realized. The experimental results show that the method is cost low, development cycle short, integrates the real world information with virtual world information seamlessly, thus augments the game user experience.

Key words: augmented reality; human-computer interaction; Vizard; Kinect; FAAST

0 引言

隨著計算機技術的快速發展,人機交互技術已經從以計算機為中心,逐步轉移到以用戶為中心基于計算機視覺的虛擬現實技術(Virtual Reality,VR),其建立人工構造的三維虛擬環境,用戶以自然的方式與虛擬環境中的物體進行交互作用,互相影響,極大擴展了人類認識世界,模擬和適應世界的能力[1]。為了使用戶產生沉浸感,VR系統通常總是借助頭盔顯示器、立體眼鏡等設備把用戶與現實環境隔離開來,這容易導致用戶對VR系統差生排斥感,從而影響VR技術的進一步推廣和應用。為了應對這些問題,出現了增強現實技術[2]。增強現實技術(Augmented Reality,AR)是對虛擬現實技術的一種新拓展。增強現實強調了將真實世界信息和虛擬世界信息“無縫”地融合,并具有實時交互的功能。近年來,增強現實技術已經漸漸地從實驗室理論研究階段轉入大眾與行業應用階段,特別是在游戲領域,市場上已經出現了許多休閑娛樂類的增強現實應用產品,但因目前普遍存在建模工作量大,模擬成本高,設備價格昂貴等問題,導致市場上大部分增強現實應用產品價格昂貴。為了讓更多人低成本就能夠體驗到增強現實技術帶來的樂趣,采用基于Vizard和Kinect開發了低成本增強現實人機交互應用——虛擬人機保齡球。

虛擬人機保齡球是利用增強現實技術開發的仿真型休閑娛樂系統。其硬件要求是一臺電腦和一臺Kinect傳感器,軟件上主要使用Vizard,3DSMAX。該系統適用范圍廣,可用于家庭娛樂和商業活動。虛擬人機保齡球具有軟硬件廉價、輕巧便攜、硬件配置精度高、要求低、預覽效果直觀等特點,低成本的增強現實應用可以提前讓游戲娛樂鍛煉三者合一更接近現實。該系統技術實現上采用Kinect傳感器設備對游戲者進行立體識別、跟蹤,對人體真實運動進行識別,并將并將識別信息輸入到系統,系統通過物理引擎實時處理作用于虛擬場景的交互信息,再通過顯示設備輸出交互結果。

1 開發軟硬件簡介

1.1 Vizard

Vizard是一款虛擬現實開發平臺軟件。它基于C/C++,運用OpenGL拓展模塊開發出的高性能引擎在用python語言開發時,Vizard同時自動將編寫的程式轉換為字節碼抽象層(LAXMI),進而運行渲染核心。Vizard將集成開發環境(IDE)與高級圖形庫融合于Python程序語言中。集成開發環境極大簡化了維護數據素材的工作量,并提供了用于執行實時預覽,場景調試及腳本測試工具包。Vizard的主要特征如下。①硬件兼容性:支持幾乎當前所有的虛擬現實設備,包括動作捕捉器。3D立體顯示器,頭盔顯示器及其他眾多外部輸入設備。②增強現實技術應用:Vizard與WordViz旗下Video Vison增強現實裝置完美結合,可輕松實現計算機圖像與現實場景的融合。③Python語言編程:Vizard采用了Python這款極具發展潛力又極易上手的語言作為其編程核心[3]。

1.2 Kinect

Kinect是微軟在2011年發布的一款3D體感游戲攝影機,具有動態捕捉、影像辨識、麥克風輸入、語音識別、社群互動等功能。它改進了鼠標、鍵盤傳統控制方式,為手勢輸入終端的開發提供了的技術支撐,通過人體手勢及其他動作將操作指令下達給設備[4-6]。游戲者只要一個手勢或者動作就能玩轉一切,這種新鮮的游戲方式,讓游戲與娛樂更加方便有趣。它的突出特點有兩點:①Kinect設備體型輕巧便攜;②動態捕捉能力強,影像辨識精準度高。Kinect能夠更精確地進行骨架跟蹤,更精確地進行關節和肢體活動的映射:當你活動你的上半身時,從臀部到背部,最后從肩部到你的手指一系列的運動都會被識別出來,最后融為一個完整連續的動作反映到游戲中。Kinect的骨架追蹤系統最多可同時偵測到6個人,在同一時刻只能辨識兩個人的動作[7]。隨著Kinect技術的不斷完善和挖掘下,相信Kinect的功能更加強大,在實時捕捉人體細節,為人機交互帶來質的飛躍,其未來前景毋容置疑。

1.3 3DS MAX

3DS MAX全程是3-dimension studio max,即三維影像工作室,是美國Autodesk公司旗下Discreet分部開發的一款基于計算機系統的三維模型制作和渲染的軟件,已成為使用最廣的三維建模、動畫和渲染工具[5]。3DS MAX還具有強大的材質編輯器,能使模型表現出物體的顏色,質地,文理,透明度和光澤等特性。貼圖功能則用于表現物體材質表面的紋理,利用貼圖可以不用增加模型的復雜度就可以表現對象的細節,并且可以創建反射、折射、凹凸和鏤空等效果。通過貼圖可以增強模型的質感,完善其造型,是三維場景更加接近真實的環境。

2 基于Vizard和Kinect的虛擬人機保齡球實現

2.1 游戲的設計和實現

2.1.1 三維建模

利用3DS MAX進行三維虛擬場景的建模,首先需要獲取場景的相關數據,然后構建三維虛擬場景,構建三維虛擬場景的方法主要有基于模型(model)和基于圖像繪制(IBR)兩種方法,本文采用的是基于模型的建模方法,該建模方法主要包括多邊形建模,非均勻有理B樣條曲線建模、細分曲面建模等在建模時,可根據需要選擇建模的方式,最后添加紋理,材質,渲染搭建好的三維虛擬場景[8]。

本文搭建的三維虛擬場景主要是保齡球館場景,該場景的需要獲取的數據主要有保齡球、保齡瓶,保齡球道的空間尺寸等。在建模過程中,對場景模型在點、線、面、體四個層次上調整即可創建出標準規格大小的保齡球瓶。構建好的三維模擬物體需要添加材質和貼圖。材質主要用于表現物體的衍射,質地,紋理,透明和光澤等特性,依靠各種類型的材質可以制作出現實世界中的任何物體[9]。本文中,主要通過貼圖以增強模型的質感,完善模型的造型,使三維場景更接近真實的環境。在材質編輯器界面,選擇貼圖中漫反射的貼圖類型,進入材質/貼圖瀏覽器中,選擇v-Ray中的VrayHDRI貼圖,最后載入要貼的位圖。直接貼上去的圖通常會顯得不夠真實自然,還需要使用UVM工具進行調整,最終完成對三維模擬物體的創建,如圖1所示。

2.1.2 載入模型

將在3DS MAX中建模好的三維虛擬物體加載到Vizard虛擬環境前,需要將三維虛擬物體從3DS MAX中導出為OSGB文件格式才可以被Vizard讀取加載。OSGB文件格式是Vizard默認的一種標準的存儲場景和物體等信息的文件格式,而3DS MAX無法直接保存為OSGB文件格式,還需要使用3DSMAX導出OSGB格式的OSGBexplorer.exe插件。

首先安裝插件程序OSGBexplorer.exe文件,這樣3DS MAX導出文件格式選項就會有OSGB文件導出格式。其次將3DS MAX中建模好的三維虛擬場景以OSGB文件格式輸出存儲,在輸出前需設置輸出單位為米,以保證Vizard能夠正確讀取導出文件的信息。最后利用Python語言編程載入相應的OSGB文件。實現加載OSGB文件的Python語句是:

object=viz.add('objectname.osgb')

加載之后可以通過運行程序,實時預覽/查看載入好的三維虛擬模型[3]。

2.1.3 游戲設計實現

游戲策劃的內容是:游戲由兩個場景組成,第一個場景是介紹引導界面,通過3D文字,介紹如何進行游戲;第二個場景是游戲界面,等待用戶按住H鍵,根據按下的時間,觸發發射不同速度的保齡球。K鍵視角左移,L鍵視角右移,Z鍵發球點左移,X鍵發球點右移,每次發射球,加入副窗口跟隨保齡球以觀察保齡球的運動及擊打效果。完成一次打球提示打倒多少只保齡球瓶,并用3D文字提示游戲的進度,完成一局顯示總分并給出評價,最后根據用戶需求,按下N鍵或者Y鍵選擇是否進行下一局,實現一局游戲的流程圖如圖2所示。

[引導界面][游戲界面][發球][等待下一局][統計并顯示游戲分數][顯示擊球運動及擊打效果]

最后根據游戲腳本,依次定義游戲引導任務,游戲場景模型初始化任務,游戲過程任務,計算總分任務,控制游戲是否結束任務,同時根據任務進程的需要,為各個任務設置分任務,并根據上述任務事件的發生順序,設計主控函數。主控制函數腳本如下:

def mainSequence():

while Game==True:

yield startInstruction()

yield initial3D()

yield gameProcess()

yield calculateScore()

yield quitGameOrNot()

viztask.schedule(main_Sequence)

2.2 增強現實技術應用

2.2.1 增強現實框架搭建

⑴ 安裝Kinect

Kinect作為新一代的體感設備,對于安裝Kinect環境的配置要求使用Windows8.1系統、i7處理器、CPU主頻3.1GHz,標準USB3.0接口、4GB RAM的電腦;連接Kinect到適配器,接入電源,通過USB3.0直接把Kinect連接到Windows PC設備上。

⑵ 配置FAAST

FAAST是一個中間件,由美國南加州大學(University of Southern California)MxR小組開發,提供基于prime sense的深度攝像頭的,人體姿態動作的轉譯。其基于CS架構,提供一個VRPN服務器來將通過Kinect捕捉到的全身動作流式傳輸給VRPN客戶端[10]。FAAST壓縮包可以通過MxR小組的網站獲得,最新版本支持kinect2.0,壓縮包下載解壓后內有一個執行文件FAAST.exe,點擊運行后將在本機生成一個VRPN服務器。服務器界面如圖3所示,點擊‘Connect按鈕,就能夠使PC連接上Kinect,并在FAAST Viewer欄實時顯示捕捉到的深度圖像。

2.2.2 增強現實虛擬人機保齡球實現

增強現實技術可以通過兩種方式實現人機交互。一是通過創建VRPN(Virtual-Reality Peripheral Network)實時追蹤人體骨骼節點,搜集人體骨骼節點之間在三維空間的相對位置坐標變化信息,編寫python腳本進行實時肢體語義分析,使分析結果觸發對應事件并通過屏幕反饋輸出。此方式的優點在于能夠直接把捕捉到的骨骼節點位置信息準確地傳給肢體語義分析模塊。通過模擬鍵值的方式,在打開的FAAST.exe中菜單Gestures選項,點擊“New Gestures”,創建一個手勢的捕捉與輸出事件;設置捕捉用戶特定動作的“Input”,點擊“Add”添加捕捉身體位置或動作速度的事件,并設置這些事件變化的方向、大小等詳細屬性;最后設置輸入到系統的“Output”。同樣點擊“Add”添加輸出為模擬鼠標、鍵盤或打字等事件并點擊“Save”保存手勢為XML文件,最后在Python腳本中定義捕捉“Output”輸出事件的模塊,并觸發相應的反饋輸出事件。此方式的優點在于無需編寫語義分析腳本,直接處理“Output”輸出事件即可。

增強現實人機保齡球采用前一方式實現。首先Vizard中通過連接FAAST框架搭建的VRPN服務器取得trackers。能夠取得的trackers一共有24個:

接著分析用戶肢體動作。先要獲取對應骨骼節點的三維坐標值,也就是trackers相對空間的坐標值,對坐標值進行空間向量處理,可以獲取表示骨骼的向量,再通過向量之間的角度關系,判斷肢體動作,并傳出狀態參數。

最后修改游戲腳本中的監測對象,把監測鍵盤事件的函數修改為監測狀態參數的事件,就可以實現人機交互。以下為實現腳本:

#創建VRPN服務器并取得trackers

trackers=[]

vrpn=viz.addExtension('vrpn7.dle')

for i in range(0, 24):

t=vrpn.addTracker('Tracker0@localhost',i)

trackers.append(t)

#分析肢體動作

def bodylanguage():

#獲取坐標值

pos_head=trackers[0].getPosition()

pos_rshoulder=trackers[11].getPosition()

pos_rteble=trackers[12].getPosition()

pos_rhand=trackers[13].getPosition()

#用cal_vector和cal_angle函數處理處理坐標值并返回參數

vec01=cal_vector(pos_rteble,pos_rshoulder)

vec02=cal_vector(pos_rhand,pos_rteble)

angle=cal_angle(vec01,vec02)

#分析角度值及頭部坐標判斷身體狀態并返回狀態參數

bodystate=analysisbody(angle,pos_head)

return bodystate

#監測狀態參數

def post(state):

#解析狀態參數并發送參數給控制對象

post01(state[0])

post02(stare[1])

return None

3 總結和展望

本文提出了一種新的將Vizard平臺和Kinect平臺相結合開發增強現實人機交互技術的研究方法。以虛擬人機保齡球為例,很大程度上增強了體感游戲的沉浸感。Vizard平臺能夠加快開發速度,Kinect能夠降低用戶的使用成本,說明這兩種技術的結合能夠快速高效的開發出低成本的增強現實人機交互應用。

后期還可將該技術運用到更多的領域,如趣味醫療復健系統,增強現實交互式虛擬實物展覽系統等。隨著Vizard平臺功能的豐富以及電子設備的發展更新,更多的高性能低成本的增強現實應用開發將會變得更容易,該技術也將會得到更廣泛的應用和發展。

參考文獻(References):

[1] Zhao Q P. A survey on virtual reality. Sci China Ser-F:Inf

Sci,2009.52:348-400

[2] 郭天太,王引童.虛擬現實技術與增強現實技術[J].機械制造,

2003.6.

[3] 林晨,林曉斌.三維虛擬場景建模及其在Vizard環境中的應

用研究[J].閩江學院學報,2015:5

[4] 羅元,謝彧,張毅.基于Kinect傳感器的智能輪椅手勢控制系

統的設計與實現[J].機器人,2012.34(1):110-113

[5] 劉鑫,許華榮,胡占義等.基于GPU和Kinect的快速物體重建[J].

自動化學報,2012.38(8):1288-1297

[6] 王萬良,馬慶,王鑫.基于KINECT的高維人體動畫實時合成

研究[J].計算機應用與軟件,2011.28(11):184-187

[7] 田屏.基于Kinect的虛擬試衣鏡[J].科技視界,2015.13.

[8] 陳波.3D巨匠:3DS MAX完全手冊[M].科學出版社,2013.

[9] 時代印象.3ds Max2014完全自學教程[M].人民郵電出版社,

2013.

[10] E.Suma, D.Krum, B.Lange, S.Koenig, A.Rizzo, and

MBolas. Adapting user interfaces for gestural interacti on with the flexible action and articulated skeleton toolkit. Computers & Graphics,2013.37(3):193-201

主站蜘蛛池模板: 手机在线看片不卡中文字幕| 亚洲国产成人自拍| 精品少妇人妻av无码久久| 日韩欧美中文字幕一本| 亚洲中文在线看视频一区| 天天综合网色中文字幕| 性欧美精品xxxx| 国产白浆视频| 国产美女91视频| 黄色网站不卡无码| 高潮毛片免费观看| 国产91视频免费观看| 大陆精大陆国产国语精品1024 | 亚洲国产午夜精华无码福利| 国产福利拍拍拍| 综合久久五月天| 免费观看亚洲人成网站| 国产在线一区视频| 日本精品视频一区二区| 久久亚洲高清国产| 亚洲人成影院午夜网站| 亚洲福利片无码最新在线播放| 91探花在线观看国产最新| 中文字幕 91| 国产在线欧美| 亚洲人成网站在线观看播放不卡| 麻豆国产在线观看一区二区| 亚洲成人精品久久| 亚洲欧洲日韩久久狠狠爱 | av无码一区二区三区在线| 人妻中文字幕无码久久一区| 欧美成人精品高清在线下载| 日韩国产黄色网站| 国产91在线免费视频| 欧美日韩中文字幕二区三区| 精品国产91爱| 国产一级毛片在线| 欧美日韩另类国产| 91网站国产| 日韩一区精品视频一区二区| 色妞永久免费视频| 国产精品黑色丝袜的老师| 久久青青草原亚洲av无码| 欧美一区二区福利视频| 真人免费一级毛片一区二区| 国产日韩欧美中文| 青青草原国产av福利网站| 国产日韩丝袜一二三区| 亚洲精品无码av中文字幕| 久久久久久久蜜桃| aa级毛片毛片免费观看久| 国产成人综合网在线观看| 四虎永久免费网站| 精品成人一区二区三区电影 | 最新日韩AV网址在线观看| 91尤物国产尤物福利在线| 精品免费在线视频| 久久久久国产一区二区| 欧美性色综合网| 国产欧美精品午夜在线播放| 欧美福利在线播放| 亚洲无码视频喷水| 日本人妻一区二区三区不卡影院| 亚洲午夜福利精品无码不卡 | 久久香蕉国产线看精品| 国产a在视频线精品视频下载| 免费观看精品视频999| 一级毛片在线免费看| 91精品国产无线乱码在线| 亚洲中文字幕97久久精品少妇| 一本一本大道香蕉久在线播放| 精品伊人久久大香线蕉网站| 精品人妻无码中字系列| 欧美成人精品高清在线下载| 久久国语对白| 色婷婷综合激情视频免费看| 亚洲中文精品久久久久久不卡| 麻豆a级片| 国产香蕉在线视频| 国产精品亚洲αv天堂无码| 亚洲欧美日韩高清综合678| 日本道中文字幕久久一区|