王 康
☆電子白板教學(xué)應(yīng)用☆
基于Kinect的體感交互式電子白板初探
王 康
隨著教學(xué)信息化進程的加快推進,電子白板在基礎(chǔ)教育領(lǐng)域?qū)⒌玫綇V泛應(yīng)用,交互式電子白板作為一種運用于教室教學(xué)中的先進科技設(shè)備,融合了大屏幕投影、精確定位等多技術(shù)于一體。電子白板的普及,有效地減少了板書的粉塵污染,提升了教學(xué)質(zhì)量,縮短了板書時間,且更節(jié)能低碳。交互式電子白板將是實現(xiàn)教育現(xiàn)代化的有力工具,也是未來的發(fā)展趨勢。
現(xiàn)階段電子白板的精確定位主要采用7種技術(shù)[1]:電阻式、電磁式、紅外線光學(xué)式、雷射式、超聲波式及視像鏡頭光學(xué)式。電子白板的優(yōu)點有:(1)相對于傳統(tǒng)投影機的單向式,使用互動電子白板使課程更為互動;(2)使教師專注于課堂,而不是處理計算機或投影機等技術(shù)上的問題;(3)通過電子白板的軟件,利用軟件的記錄功能,使課堂上臨時或即興的教學(xué)亦得以記錄;(4)增加課堂的趣味。然而綜合現(xiàn)階段電子白板的應(yīng)用情況,電子白板還存在一些問題:(1)售價比較昂貴;(2)白板的清潔及保養(yǎng)問題;(3)在使用時感應(yīng)觸摸板上無法隨意感應(yīng)揮灑,需要背對學(xué)員,無法得知當(dāng)下教學(xué)成果;(4)在電力供應(yīng)不穩(wěn)定的地方不宜使用。
而Kinect設(shè)備的出現(xiàn),為這些問題的解決提供了技術(shù)支撐。筆者通過整合目前已開放源碼的Kinect來做影像辨識,結(jié)合兩者功能,探討基于Kinect的體感交互式電子白板的設(shè)計與應(yīng)用,讓教師通過簡單的手勢去操作屏幕,直接面對學(xué)生,達到學(xué)習(xí)最高效率,使上課更輕松,臺上臺下互動更加密切。通過在投影的白板上開啟功能選單、筆跡辨識、圖像的縮放旋轉(zhuǎn),Kinect接收影像數(shù)據(jù)并在PC上進行影像辨識,將動作結(jié)果顯示于投影的白板上,讓教師的教學(xué)更為活潑,也更輕松省力。
基于Kinect的體感式交互電子白板由Kinect與電子白板技術(shù)整合而成,是Kinect在教學(xué)上的一種應(yīng)用。Kinect在教育方面的應(yīng)用,以各式體感教學(xué)為主,倡導(dǎo)身體的活動與學(xué)習(xí)。
[1] 交互式電子白板:技術(shù)原理分析[EB/OL].http://www.turbotek. cn/yuanli.html.
[2] Kinect[EB/OL].http://en.wikipedia.org/wiki/Kinect.
[3] Kinect內(nèi)幕[EB/OL].http://www.mp77.cn/blog/?p=347.
[4] Windows Kinect SDK[EB/OL].http://kinectforwindows.org/.
[5] PrimeSense OpenNI[EB/OL].http://www.primesense.com/.
[6] 華師京城電子白板[EB/OL].http://www.hsjc.com.cn/index.aspx.
2011-11-19
王康,碩士,技術(shù)員。
湖北省武漢市教育科學(xué)研究院現(xiàn)代教育技術(shù)中心。
1.Kincect
Kinect[2]是由微軟公司開發(fā)的一款姿態(tài)傳感輸入設(shè)備,它主要由一個攝影機、一對深度傳感器、一組麥克風(fēng)及一個馬達構(gòu)成,Kinect具備即時動態(tài)捕捉、影像辨識、麥克風(fēng)輸入、語音辨識、社群互動等多種功能。
Kinect的運作原理如下:Kinect一次可獲取3種信息,分別是彩色影像、3D深度影像和聲音訊號。
Kinect機身上有3個鏡頭,中間的鏡頭是一般常見的RGB彩色攝影機,左右兩邊的鏡頭則分別為紅外線發(fā)射器和紅外線CMOS攝影機所構(gòu)成的3D深度傳感器,Kinect主要就是靠3D深度傳感器偵測使用者的動作。中間視訊鏡頭則是用來辨識使用者身份,此外也能應(yīng)用在擴增實境教學(xué)以及視訊通話中。同時,Kinect還搭配了追焦技術(shù),底座馬達會隨著對焦物體的移動而轉(zhuǎn)動。Kinect也內(nèi)建了麥克風(fēng)系統(tǒng),用的還是數(shù)組式麥克風(fēng)。它的好處是由多組麥克風(fēng)同時收音,比對后消除雜音,等于提供了降噪功能,讓用戶的聲音能更清楚地傳遞出去。
2.Kinect的開發(fā)架構(gòu)
Kincect開發(fā)架構(gòu)有4層[3]:(1)底層硬件Kinect傳感器,主要包含多種攝像頭、麥克風(fēng)陣列、馬達;(2) Kinect內(nèi)核驅(qū)動,主要包含Windows的Kinect內(nèi)核驅(qū)動以及對應(yīng)的WinUSB設(shè)備堆棧、WinUSB視頻堆棧、WinUSB音頻堆棧,還包括堆棧上的設(shè)備控制、視頻流控制、音頻流控制;(3)應(yīng)用程序接口(API)層,主要由各種事件響應(yīng)函數(shù)包組成,同時還包含應(yīng)用的視頻組件與音頻組件,構(gòu)成Kinect SDK;(4)應(yīng)用層,主要通過Kincect SDK用C/C++/CLI/C#/Visual Basic.NET編寫Kinect的應(yīng)用程序。Kincect的開發(fā)架構(gòu)如圖1所示:
圖1 Kinect開發(fā)架構(gòu)圖
在應(yīng)用程序接口(API)層中,目前最主流的Windows-Kinect驅(qū)動程序(API)有微軟[4]的Kinect SDK,PrimeSense[5]的OpenNI,兩者在性能方面有各自的特點,用戶針對所需的特定功能,選取相應(yīng)的API進行程序開發(fā)。其中兩者的性能對比見表1:
表1 Microsoft Kinect SDK與PrimeSense OpenNI開發(fā)包功能對比表
性能 Microsoft PrimeSense列表 Kinect SDK OpenNI可商業(yè)用途* √支持音頻 √支持馬達 √支持多傳感器 √ √無姿勢要求、能處理關(guān)節(jié)閉塞 √安裝更方便 √ 還需單獨安裝NITE支持手部追蹤與識別等特定模式* 只能追蹤全身 √系統(tǒng) 僅支持 支持Windows和Linux支持* Win7 OSX和Android CPU消耗更少 √支持數(shù)據(jù)記錄或回放到硬盤* √支持紅外線視頻數(shù)據(jù)流 √全身追蹤包含坐標(biāo)數(shù)據(jù)及旋轉(zhuǎn)數(shù)據(jù) 只有坐標(biāo)數(shù)據(jù) √支持PrimeSense和華碩WAVI Xtion硬件平臺 √支持Unity3D游戲引擎 √提供用戶被偵測或丟失等事件響應(yīng)函數(shù)*√支持自動對齊深度圖數(shù)據(jù)到彩色圖數(shù)據(jù)√
3.基于Kinect的體感交互式電子白板
有別于現(xiàn)今的電子白板仍須在版面做感測的動作,而使用Kinect來做手勢影像辨識,屆時教師手中將不需要拿電子筆,而是通過手部的定位與簡單的手勢即可于投影幕上開啟功能菜單、上下左右移動頁面、寫字擦除等多功能操作,并由投影至白板上的屏幕,將結(jié)果再顯示于白板上。基于Kinect的體感交互式電子白板將電子白板與Kinect的手勢識別進行整合,以達到高度自然的人機交互環(huán)境。該環(huán)境使得教師直接面對學(xué)生,學(xué)習(xí)效益達到最高,教師上課更輕松,教學(xué)更靈活,師生臺上臺下互動更加密切。
目前以華師京城電子白板[6]為例,應(yīng)用模式有3種:鼠標(biāo)模式、注解模式、白板模式;針對不同的模式,定義相對應(yīng)的手勢操作。鼠標(biāo)模式下,可以通過手勢來控制鼠標(biāo),如通過握住手掌實現(xiàn)單擊,以達到使用手勢對鼠標(biāo)模式下的操作;注解模式可以通過手勢來代替電子筆,如通過單手指移動實現(xiàn)標(biāo)記與注解,以達到使用手勢實現(xiàn)對注解模式下的操作;白板模式類似于黑板,用于教師的板書,以及師生間課堂互動,師生都可通過手勢來書寫與描繪,操作方式與注解模式類似,以達到使用手勢實現(xiàn)對白板模式下的操作。
針對體感交互式電子白板的手勢識別及其他相關(guān)需求,其中手勢定義見表2;依據(jù)表1中兩者的分析對比,基于Kinect的體感交互式電子白板將在Visual Studio 2008平臺下選用OpenNI+NITE開發(fā)包,使用C/C++編寫Kinect應(yīng)用程序,實現(xiàn)特定手勢觸發(fā)自定義的鍵盤命令,達到手勢控制電子白板的目的,打造體感交互式的虛擬教學(xué)環(huán)境。
表2 手勢定義表
標(biāo)識 定義 注解1 MakeFist(握住手掌) 單擊2 OpenFist(張開手掌) 關(guān)閉3 Up(手掌移動) 上移4 Down 下移5 Left 左移6 Right 右移7 Rotate(拇指與食指) 旋轉(zhuǎn)8 Write(單手指) 寫注9 Push 放大10 Pull 縮小