• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Kinect的體感交互式兒童安全教育平臺設(shè)計(jì)

      2018-10-29 11:09戴路張潔
      軟件導(dǎo)刊 2018年8期

      戴路 張潔

      摘要:為改善現(xiàn)有兒童安全教育體系功能,解決傳統(tǒng)安全教育枯燥問題,采用Unity 3D游戲引擎架構(gòu),搭建兒童安全教育場景,結(jié)合Kinect傳感器采集體驗(yàn)者骨架信息。通過簡易分析,判斷體驗(yàn)者動作狀態(tài),導(dǎo)入Unity 3D動畫控制器,開發(fā)一款基于體感交互的兒童安全教育平臺。系統(tǒng)在兒童安全體驗(yàn)館受到歡迎,是一款互動性良好、兒童易接受、成本適中的安全教育平臺。

      關(guān)鍵詞:Kinect;體感交互技術(shù);兒童安全教育平臺

      DOIDOI:10.11907/rjdk.181349

      中圖分類號:TP319

      文獻(xiàn)標(biāo)識碼:A 文章編號:1672-7800(2018)008-0144-05

      英文摘要Abstract:In order to improve the existing children safety education system,an innovative child safety education platform based on the sense of body interaction is developed.To solve the problem of traditional safety education,the system adopts Unity 3D game engine structure to build children safety education scenario,and combines Kinect sensor to collect experiencers' skeleton information.Through simple analysis,we can judge operators' action state and import Unity 3D animation controller to build children safety education platform together.After the completion of the system debugging,it is welcomed by the children and parents in all kinds of exhibitions.Kinect-based somatosensory and interactive children safety education platform is a good-quality,safe,and affordable platform for children.

      英文關(guān)鍵詞Key Words:Kinect;somatosensory interaction technology;children's safety education platform

      0 引言

      意外傷害是兒童成長的重要威脅,世界衛(wèi)生組織和聯(lián)合國兒童基金會聯(lián)合出版的《世界預(yù)防兒童傷害報告》顯示:全世界每天有2 000多個家庭因非故意傷害或意外事故而失去孩子,從而使這些家庭變得支離破碎,而更多的兒童因?yàn)橐馔馐鹿试斐捎谰脗?。如果世界各國采取有效干預(yù),每天可挽救1 000多名兒童的生命。如果兒童具有一定的安全常識,這些傷害大部分是可以避免的[1]。

      現(xiàn)今的安全教育一般是通過口頭或書面方式,這種方式效果不是很好[2]。而教育效果較好的兒童安全體驗(yàn)館,因?yàn)榻ㄔO(shè)費(fèi)用高,絕大多數(shù)兒童無法通過這條途徑獲得教育機(jī)會。為改善這種現(xiàn)狀,本文設(shè)計(jì)了一款交互性良好、兒童易接受、成本適中的安全教育模式[3]。

      1 系統(tǒng)框架

      本系統(tǒng)以現(xiàn)有安全教育措施為基礎(chǔ),采用Unity 3D游戲引擎構(gòu)建虛擬的安全教育場景,將體驗(yàn)者帶入虛擬的安全場景中。通過動作捕捉傳感器,實(shí)時捕捉體驗(yàn)者姿態(tài),并判斷其動作,根據(jù)體驗(yàn)者的動作反饋進(jìn)行體感交互[4]。安全場景采用虛擬提示,通過體感的交互方式將體驗(yàn)者“帶入”虛擬的安全場景中,“親自”完成整個安全過程[5],以達(dá)到安全教育的目的。

      本系統(tǒng)的動作捕捉傳感器選擇微軟公司的Kinect V2。Kinect V2是微軟公司于2013年推出的Kinect V1的升級版,其內(nèi)部的高清攝像頭能采集30fps的1 080p的RGB圖像,獨(dú)立的30fps紅外傳感器能采集30fps的512×424的紅外圖像數(shù)據(jù),還能得到相當(dāng)于3倍Kinect V1精度的深度數(shù)據(jù)。Kinect V2還具備同時捕捉6個人體的準(zhǔn)確姿態(tài),每個人體能識別出25個重要關(guān)節(jié),同時識別兩個人體簡單手勢,還能判斷出一個人體的簡單表情。前端的麥克風(fēng)陣列組具備聲音定位功能,加入微軟推薦的Speech Platform語言包還能實(shí)現(xiàn)語音識別 [6]。

      2 系統(tǒng)軟件設(shè)計(jì)

      2.1 安全體驗(yàn)場景設(shè)計(jì)

      Unity 3D是由Unity Technologies開發(fā)的一個讓玩家輕松創(chuàng)建諸如三維視頻游戲、建筑可視化、實(shí)時三維動畫等互動內(nèi)容的多平臺綜合型游戲開發(fā)工具,是一個全面整合的專業(yè)游戲引擎。引擎中自帶Asset store,該商店是一個插件交互商店,開發(fā)者可售賣自己開發(fā)的插件,也可購買大量優(yōu)秀的成品插件,這種模式大大加快了應(yīng)用開發(fā)的周期[7-8]。

      本文通過Asset store獲得相關(guān)插件,構(gòu)建了多套不同安全教育場景,虛擬安全場景效果如圖3所示。

      2.2 Kinect V2在Unity 3D上的應(yīng)用

      Unity 3D上Kinect V2常用插件有:

      (1)專用插件包KinectFor Windows_UnityPro_2.0,該插件包在微軟的官方網(wǎng)站上可下載,下載后導(dǎo)入所有資源及導(dǎo)入場景后,Hierarchy有如圖4所示預(yù)制項(xiàng)目。

      插件包提供的示例場景展示了Kinect的大部分功能,BodyView實(shí)現(xiàn)Kinect實(shí)時采集人體的25個關(guān)節(jié)三維坐標(biāo),具體關(guān)節(jié)如圖5所示。將每個相連關(guān)節(jié)搭接起來,形成一具人體骨骼框架[9-10]。

      ColorView將Kinect采集的30fps的1 080p RGB圖像實(shí)時顯示,InfraredView將30fps的512×424的紅外圖像實(shí)時顯示,DepthBase將深度數(shù)據(jù)實(shí)時顯示,具體效果如圖6所示。

      (2)卡耐基梅隆的KinectWrapper插件包。從Kinect SDK1.0版本就開始支持卡耐基梅隆的KinectWrapper插件包,一直到當(dāng)前的Kinect SDK2.0。插件包可從Unity 3D自帶的Asset Store中獲得。下載后導(dǎo)入所有資源及加載AvatarsDemo場景所有的預(yù)制項(xiàng)目,如圖7所示。

      AvatarsDemo這個示例場景通過Kinect傳感器讀取人體主要關(guān)節(jié)點(diǎn)的實(shí)時坐標(biāo)以及姿態(tài),將這些數(shù)據(jù)綁定到一個動畫人物的骨架上,可實(shí)現(xiàn)虛擬人物實(shí)時動態(tài)跟蹤體驗(yàn)者動作,并同時實(shí)現(xiàn)被讀取人物的正面和背面動作,還能實(shí)現(xiàn)一個虛擬骨骼框架和一個BodyIndex人物大致外廓[11],如圖8所示。

      安全教育場景需要識別踏步、揮手、下蹲這3組較為簡單的動作,涉及到的關(guān)節(jié)部位較少。為盡量減少計(jì)算機(jī)的資源開銷,本系統(tǒng)選擇微軟自帶的KinectFor Windows_UnityPro_2.0插件包實(shí)現(xiàn)體感交互部分。

      本應(yīng)用中計(jì)算機(jī)有相當(dāng)部分資源消耗在動畫效果渲染上,體驗(yàn)者不需要精準(zhǔn)操作,只需要能正確識別動作即可,系統(tǒng)開銷小。

      2.3 簡易人體動作識別

      通過人體手、腳的運(yùn)動軌跡確定動作。采用公式(1)計(jì)算任意兩幀間關(guān)節(jié)p(x1,y1,z1)與p(x2,y2,z2)的移動距離。在同一幀內(nèi)采用公式(1)計(jì)算兩個關(guān)節(jié)的間距。踏步、揮手、跳動根據(jù)相鄰幀間相關(guān)關(guān)節(jié)的運(yùn)動距離進(jìn)行判定[12-13]。

      計(jì)算膝關(guān)節(jié)的角度能判斷人體是否下蹲,只要得到單邊髖關(guān)節(jié)、膝關(guān)節(jié)、踝關(guān)節(jié)的坐標(biāo),就可根據(jù)公式(1)計(jì)算出各個關(guān)節(jié)的距離,再通過余弦定理式(2)計(jì)算人體膝關(guān)節(jié)角度,判斷人體是否在完成下蹲動作[14-15]。

      相關(guān)動作狀態(tài)判定流程如圖9所示。啟動系統(tǒng)后打開Kinect傳感器,對骨骼進(jìn)行中值濾波,中值濾波會有一幀的延時,在處理時會根據(jù)計(jì)算機(jī)配置產(chǎn)生一定的延時。根據(jù)微軟文獻(xiàn),72%的人有100ms的反應(yīng)時延,因此只要將延時控制在100ms以內(nèi),大部分用戶是可以接受的[16]。濾波的輸入輸出及幀數(shù)關(guān)系如圖10所示,中值濾波可以較好地控制關(guān)節(jié)運(yùn)動中產(chǎn)生的噪點(diǎn)[17-18]。

      通過采用Unity 3D中MonoBehaviour內(nèi)置的定時器設(shè)定100ms的延時讀取并記錄相關(guān)關(guān)節(jié)數(shù)據(jù),再根據(jù)當(dāng)前幀和前項(xiàng)幀的關(guān)節(jié)坐標(biāo)判定相應(yīng)動作。

      人體行走的自然步頻是95~125步/分,踝關(guān)節(jié)在走路時是先抬高、后放下。根據(jù)最慢步頻95計(jì)算,踝關(guān)節(jié)做單程運(yùn)動每次為0.32ms[19]。據(jù)觀測,在有動畫提示的游戲過程中,體驗(yàn)者會將腳抬得比平時更高,因此在踏步條件中采用單邊踝關(guān)節(jié)的最低單程運(yùn)動數(shù)的1/3時間即100ms,體驗(yàn)者的踝關(guān)節(jié)運(yùn)動超過5cm,而另一邊踝關(guān)節(jié)沒有運(yùn)動,據(jù)此判定體驗(yàn)者處于踏步狀態(tài)[20]。

      人標(biāo)準(zhǔn)下蹲膝關(guān)節(jié)的角度為90°,但游戲過程中蹲得太低大大影響體驗(yàn)。因此,當(dāng)幀內(nèi)髖、膝、踝關(guān)節(jié)的夾角小于150°時就判定體驗(yàn)者處于蹲的狀態(tài)。

      揮手動作相對于前兩個動作來說相對簡單,只要腕關(guān)節(jié)高于肩關(guān)節(jié),且在300ms內(nèi)移動0.1m就判定當(dāng)前體驗(yàn)者處于揮手狀態(tài)[21]。

      上述的判斷條件及數(shù)值還會根據(jù)未來具體的體驗(yàn)情況進(jìn)行相應(yīng)修正。

      2.4 Unity 3D中Animator組件使用

      Unity 3D的Animator組件是一個能在多個動畫直接切換的控制器,也稱為動畫狀態(tài)機(jī),可在Assets中Create的Animator Controller組件進(jìn)行相關(guān)狀態(tài)設(shè)置,如本系統(tǒng)體驗(yàn)者的站立、踏步、下蹲、揮手4個狀態(tài)及其轉(zhuǎn)換路徑見圖11。在每個狀態(tài)的Motion參數(shù)里添加對應(yīng)的人物動作片段,之后在參數(shù)中設(shè)置狀態(tài)轉(zhuǎn)換變量,見圖12。當(dāng)腳本狀態(tài)變量改變時,場景中的人物就會從當(dāng)前動作切換到新的狀態(tài)中 [22]。

      系統(tǒng)通過Kinect采集并實(shí)時分析體驗(yàn)者動作,并將體驗(yàn)者動作狀態(tài)通過動畫狀態(tài)機(jī)在游戲中實(shí)時響應(yīng),將體驗(yàn)者帶入到虛擬的安全場景中,讓體驗(yàn)者在游戲中達(dá)到安全教育的目的。

      3 結(jié)語

      本系統(tǒng)采用體感的交互方式,讓兒童能在友好的環(huán)境下愉快學(xué)習(xí)安全知識,效果等同于市面上的兒童安全教育體驗(yàn)館,但成本大大降低。系統(tǒng)在相關(guān)展覽會上受到廣大兒童及家長歡迎,體驗(yàn)效果如圖13所示。

      圖13 測試現(xiàn)場

      參考文獻(xiàn):

      [1] PEDEN M,OYEGBITE K,OZANNE-SMITH J,et al.World report on child injury prevention[R].World Health Organization,2008:3-4.

      [2] 楊余香.幼兒對安全相關(guān)概念認(rèn)知的研究[D].南京:南京師范大學(xué),2008.

      [3] 呂瑤.體感技術(shù)何時闖入教育[J].中國遠(yuǎn)程教育,2012,23(16):75-78.

      [4] 王森.Kinect體感程序設(shè)計(jì)入門[M].北京:科學(xué)出版社,2014:33-35.

      [5] AOI.Unity將角色變成玩家[EB/OL].http://bbs.9ria.com/thread-285690-1-1.html.

      [6] 孫運(yùn)達(dá).多視點(diǎn)非接觸式人體運(yùn)動捕捉研究[D].北京:北京交通大學(xué),2006.

      [7] 盧金浩,張帥伍,傳敏,等.基于Unity 3D三維游戲場景與AI系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].三明學(xué)院學(xué)報,2013,12(6):33-35.

      [8] 吳志達(dá).一個基于Unity 3D游戲引擎的題干游戲研究與實(shí)現(xiàn)[D].廣州:中山大學(xué),2012.

      [9] Kinect和U3d結(jié)合開發(fā)基礎(chǔ)之基本的動作識別[EB/OL].http://blog.csdn.net/zhaoshouyue/ article/details/51225442.

      [10] 黃露丹,嚴(yán)利民.基于Kinect深度數(shù)據(jù)的人物檢測[J].計(jì)算機(jī)技術(shù)與發(fā)展,2013,36(3):121-124.

      [11] Kinect和U3d結(jié)合開發(fā)基礎(chǔ)之KinectWrapperPackage[EB/OL].http://blog.csdn.net/zhaoshouyue/ article/details/51178614.

      [12] 于芝枝.基于Kinect的人體姿勢識別與校正[D].廣州:廣東工業(yè)大學(xué),2014.

      [13] 吳淳,孫心佩,程健,等.體感CF2.0三維場景游戲之開發(fā)[J].電子世界,2014,34(9):13-14.

      [14] 董傲霜.使用Kinect深度圖像的靜態(tài)人體動作識別[D].阜新:遼寧工程技術(shù)大學(xué),2014.

      [15] 羅鳴.基于Kinect傳感器的骨骼定位研究[D].武漢:武漢科技大學(xué),2013.

      [16] 如何平滑處理Kinect采集的骨骼數(shù)據(jù)[EB/OL].http://www.cnblogs.com/microcampus/archive/ 2013/05/06/3063625.html.

      [17] 錢塹,馬旭東,戴先中.基于抽象隱馬爾可夫模型的運(yùn)動行為識別方法[J].模式識別與人工智能,2009,22(3):433-439.

      [18] CHANG Y J,CHEN S F.A Kinect-based system for physical rehabilitation:a pilot study for young adults with motor disabilities [J].Research in Developmental Disabilities,2011,32(6):2566-2570.

      [19] 劉開余,夏斌.基于Kinect的實(shí)時人體姿勢識別[J].電子設(shè)計(jì)工程,2014(19):31-34.

      [20] 韓旭.應(yīng)用Kinect的人體行為識別方法研究與系統(tǒng)設(shè)計(jì)[D].濟(jì)南:山東大學(xué),2013.

      [21] 鄧小園.基于Kinect運(yùn)動捕捉的高爾夫揮桿分析與輔助訓(xùn)練系統(tǒng)的研制[D].北京:北京郵電大學(xué),2013.

      [22] Mecanim Animator使用詳解[EB/OL].http://blog.csdn.net/myarrow/article/details/45242403.

      (責(zé)任編輯:杜能鋼)

      岢岚县| 斗六市| 湘西| 大洼县| 门头沟区| 东港市| 霞浦县| 彭山县| 浠水县| 信阳市| 灌阳县| 广南县| 大悟县| 永德县| 杂多县| 石狮市| 衡南县| 新和县| 舞钢市| 舒城县| 淮阳县| 靖安县| 化德县| 唐山市| 济宁市| SHOW| 西吉县| 微山县| 五华县| 台州市| 祥云县| 山西省| 株洲市| 当雄县| 靖远县| 中山市| 海南省| 临湘市| 东乌珠穆沁旗| 志丹县| 西乡县|