李知菲+何林知+洪震
摘要:根據虛擬現實技術課程知識綜合性強、教學過程創(chuàng)新性需求大和實驗工程應用性高的特點,筆者引入流行的體感交互技術,基于微軟公司的Kinect鏡頭,圍繞體感數據的捕捉與處理、人體動作的識別和虛擬交互設計三大知識模塊,給出了課程中體感交互教學實驗項目的原理、技術和開發(fā)方法。通過教學實踐,本文設計的教學實驗項目提高了學生學習的主動性,培養(yǎng)了學生的體感交互技術項目研發(fā)能力,增強了學生的創(chuàng)新思維能力和職業(yè)素養(yǎng)。
關鍵詞:體感交互;Kinect鏡頭;實驗教學;教學改革
近年來,體感交互技術的研究和應用在教育領域逐漸成為熱點,如在課堂教學[1]、教學游戲項目[2]和仿真實驗[3][4]等方面都有一定的成果。本文以浙江師范大學數理與信息工程學院開設的研究生課程《虛擬現實技術》為例,研究了基于微軟公司的體感捕捉設備——Kinect鏡頭的體感交互實驗系統(tǒng)開發(fā)方法,并給出了應用于教學中的實驗項目實例。
● 虛擬現實技術課程的特點
依托浙江師范大學計算機軟件與理論重中之重學科的虛擬現實與動作捕捉實驗室,面向計算機和軟件工程專業(yè)研究生開設的《虛擬現實技術》課程側重學生實驗技能和職業(yè)素養(yǎng)的培養(yǎng)。課程以項目化教學的方式進行,在介紹虛擬現實技術理論知識的基礎上,重點講授虛擬現實系統(tǒng)硬件環(huán)境的搭建及使用、三維模型構建及優(yōu)化、交互技術和開發(fā)平臺Quest 3D等方面的知識,最終通過實際橫向項目開發(fā)的方式鞏固學生的理論知識,并使學生掌握虛擬現實技術項目開發(fā)的流程和業(yè)界規(guī)范。
通過幾年的課程建設和教學實踐,總結出課程的特點如下:
(1)知識的綜合性:課程的教學內容包括了計算機圖形學、數字圖像處理、模式識別和多媒體技術等計算機專業(yè)的相關知識,也涉及信號處理與傳輸、網絡通信等網絡工程專業(yè)的內容,同時又要求學生有較好的程序開發(fā)基礎,課程具有非常強的綜合性。
(2)教學的創(chuàng)新性:虛擬現實技術的應用日益增多,從最初的簡單展示三維模型,發(fā)展到對展示對象或環(huán)境進行交互控制,到現在的體感交互和沉浸式環(huán)境,技術的進步和應用的需求互相促進,不斷創(chuàng)新。這就需要教師在教學過程中能引入較新的技術或成果,引起學生學習興趣,調動學生學習熱情,啟發(fā)學生創(chuàng)新思維。同時,學生在學的時候也需注意對發(fā)現新問題、找到新方法的創(chuàng)新性思想的培養(yǎng)。
(3)實驗的應用性:虛擬現實技術具有很強的工程應用性,對課程的理論知識和相關算法進行實驗驗證并不是實驗教學的主要目的,使學生通過真實項目的開發(fā),掌握到虛擬現實技術項目開發(fā)需要的技術、開發(fā)的流程和開發(fā)的規(guī)范才是教學的重點。
隨著體感交互技術應用的流行,根據課程的上述特點,將體感交互作為教學的重點內容是適合的。在教學計劃中,安排了16學時的體感交互技術內容,具體如下頁表所示。
教學內容以Kinect鏡頭作為體感捕捉設備,以Kinect SDK開發(fā)技術為理論重點,設計了兩個實驗項目。實驗項目1為三維建筑漫游,要求學生實現手臂動作的捕捉,并完成手臂控制虛擬攝像機進行場景漫游的交互設計,通過實驗使學生掌握簡單體感交互項目的開發(fā)方法。實驗項目2為機械拆裝,要求學生實現抓取、吸附移動、碰撞檢測和作用域控制等較深入的交互控制方式,此項目在項目1的基礎上增加了難度,使學生通過實驗能掌握較高級的體感交互系統(tǒng)開發(fā)技術,為以后工作中的項目開發(fā)打下基礎。同時,由于實驗項目2的內容較為綜合,覆蓋到課程的內容比例較大,因此將其作為整個課程考核的組成部分,在最終的總評成績中占40%。
● 體感交互技術教學實驗環(huán)境的搭建
《虛擬現實技術》課程的體感交互技術實驗統(tǒng)一安排在浙江師范大學計算機軟件與理論學科的虛擬現實與動作捕捉實驗室,選用的體感采集設備為微軟公司的Kinect鏡頭(如圖1),鏡頭采用USB口與計算機相連,即插即用,硬件設置簡單易行?;贙inect鏡頭和計算機平臺的體感交互實驗開發(fā)環(huán)境可以用如圖2所示。
圖2中①為硬件基礎層,核心部件是Kinect的傳感器,包括有鏡頭角度驅動馬達、攝像頭和麥克風陣列。實驗中主要用到的是鏡頭組,Kinect的鏡頭共有兩個,一個用于RGB彩色圖像采集,一個用于深度信息采集,還有一個紅外發(fā)射器,具體的原理可以參閱微軟公司的Kinect產品網頁。
層②為鏡頭設備的驅動層。實驗室選用DELL公司的INSPRIRON通用計算機,Windows 7操作系統(tǒng)作為開發(fā)平臺,設備通用性較高,開發(fā)的系統(tǒng)具有良好的平臺移植能力。Kinect鏡頭的驅動安裝非常簡單,需要調用的部分主要是設備訪問、視頻流控制和鏡頭組堆棧。
層③是自然人機接口NUI的API部分,也包括有音頻識別等功能的API。
軟件方面為基于微軟發(fā)布的Kinect SDK,主要提供了軟件類庫和開發(fā)工具,通過它可以捕獲體感交互中需要的自然數據,如人體的骨骼信息(動作信息)、深度信息(距離信息)和圖像信息等。Kinect鏡頭采集的體感數據交換流程如圖3所示。
● 體感交互技術教學實驗項目的設計
下面以課程的實驗項目1建筑漫游為例,說明體感交互技術教學實驗項目的設計。
1.項目概述
傳統(tǒng)的三維建筑漫游一般采用鼠標或鍵盤來控制攝像機,實現前后左右移動、旋轉、上下視角改變和鏡頭縮放(變焦)等功能,使用戶最大程度地接近真實世界中人在建筑群或室內等建筑環(huán)境中的游覽方式,也能實現真實世界中不能提供的方式,如透視、鳥瞰和變焦等。
鼠標或鍵盤操作遠不如手勢操作簡單自然,實驗項目基于Kinect鏡頭,通過捕捉用戶的手臂姿態(tài)動作實現上述建筑漫游時需要的交互控制功能,其體感交互情境如圖4所示。
2.系統(tǒng)的邏輯結構
系統(tǒng)分為三層,由下到上分別是Kinect設備層、手臂姿態(tài)識別層和應用層,如圖5所示。endprint
Kinect設備層基于Kinect SDK進行人體骨骼、深度圖像和RGB彩色圖像的實時采集,幀速率為30FPS,圖像大小可達640×480像素。系統(tǒng)可以實現兩人的骨骼動作跟蹤,并設定主要操作人員(距離鏡頭較近者)。深度圖像和彩色圖像提取出輪廓信息,融合骨骼信息后基于DTW算法進行手臂姿態(tài)跟蹤和識別。識別并標簽后的手臂動作作為驅動信息提供給應用層。應用層中采用交互設計軟件Quest 3D讀取用戶的手臂動作,并命令系統(tǒng)作出反饋,如左右轉向、前進和后退等。
3.實驗設計
本實驗需4學時,分兩次課進行,中間間隔1周,使得學生有較充分的課下準備時間。第1次課要求學生實現Kinect數據采集及基本處理。使用到的硬件為計算機和Kinect鏡頭,軟件為Visual Studio 2010和Kinect SDK V1.7,語言為C#。為了使學生的精力主要集中在數據處理和手臂姿態(tài)識別算法上,數據采集部分在Kinect Toolkits提供的算法基礎上做了濾波優(yōu)化。
第2次課要求學生基于DTW算法完成手臂動作的訓練和整個識別算法,并借助課程前面實驗中開發(fā)的Quest 3D建筑場景驗證算法的有效性。
通過本次實驗項目的開發(fā),學生將完整地掌握基于Kinect鏡頭的體感數據捕捉和處理、常用的人體動作識別算法和體感交互開發(fā)方法,熟悉體感交互系統(tǒng)邏輯結構和數據交換流程,為將來進行體感交互設計系統(tǒng)研發(fā)打下牢固的基礎。
實驗項目同時培養(yǎng)了學生的創(chuàng)新性思維,使學生學習的內容緊跟科技進步的最新成果,把握應用市場流行的脈搏。
● 結論
體感交互技術相關的系統(tǒng)開發(fā)涉及知識多,對學生的理論知識和實驗能力都有較高要求,但也能扎實地培養(yǎng)學生在此領域的專業(yè)技能,在2個專業(yè)、共計4輪的《虛擬現實技術》教學實驗中,師生反響熱烈。課程將自然人機交互的新成果Kinect體感交互技術融入到教學中,結合實際項目,構造虛擬教學情境,提高學生學習的主動性和參與度,實現了科技化教學。
參考文獻:
[1]陳靜.基于Kinect的手勢識別技術及其在教學中的應用[D].上海:上海交通大學,2013.
[2]馬建榮,章蘇靜,李鳳.基于體感技術的親子互動游戲設計與實現[J].中國電化教育,2012,(308):85-88.
[3]廖宏建,曲哲.基于Kinect體感交互技術的虛擬裝配實驗系統(tǒng)開發(fā)[J].實驗技術與管理,2013,30(7):98-102.
[4]廖宏建,楊玉寶.體感交互設計及其在三維虛擬實驗中的應用[J].遠程教育雜志,2013,(1):54-59.endprint