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

鄰接矩陣在智能協同仿真實驗系統的應用

2019-11-12 12:01:33張祥裕
電腦知識與技術 2019年25期
關鍵詞:動畫實驗系統

張祥裕

摘要:近年來,沉浸的3D虛擬實驗環境越來越吸引研究者和學習者。隨著VR、AR技術的發展,給學生營造了一個更加逼真、生動、可交互的虛擬仿真實驗環境,使得虛擬仿真實驗更加逼近真實實驗。但是目前大部分虛擬仿真實驗都集中于單人實驗,學生之間缺乏交流和協作,同時實驗環境缺乏沉浸式的交互和實驗步驟呆板固定。對于這個問題,本文基于Unity 3D引擎設計了一個協同天平實驗,該協同實驗采用Unity 3D的Unity Network技術實現多用戶之間的實驗場景數據的同步,同時利用鄰接矩陣技術并根據實驗者的實際操作情況以動畫直觀的方式智能展示下一步的操作,最后使用Unity 3D碰撞技術實現整個實驗。

關鍵詞:虛擬實驗;協同實驗;鄰接矩陣;智能;Uinty 3D

中圖分類號:TP391.9? ? ?文獻標識碼:A

文章編號:1009-3044(2019)25-0299-0c

Abstract: In recent years, immersed 3D virtual experimental environment has attracted a growing number of researchers and learners.With the development of VR and AR technology, a more realistic, vivid and interactive virtual simulation experiment environment is created for students, which makes the virtual simulation experiment more close to the real experiment.However, most of the virtual simulation experiments are focused on single-person experiments at present. There is a lack of communication and cooperation between students. At the same time, there is a lack of immersive interaction and rigid experimental steps in the experimental environment.To solve this problem,this paper designs a cooperative balance experiment based on Unity 3D engine. The cooperative experiment uses Unity Network technology of Unity 3D to synchronize the experimental scene data among multi-users. At the same time, the Adjacency matrix technology is used to display the next operation intelligently in an animated and intuitive way according to the actual operation of the experimenter. Finally, the whole experiment is realized by using Unity 3D collision technology.

Key words: Virtual experiment; collaborative experiment; Adjacency matrix; intelligence; Unity 3D

三維虛擬仿真實驗教學是虛擬教學的重要組成部分,學生可以根據實際情況自己安排時間來完成實驗和重復某個實驗[1][2],打破了時間和空間上的限制。3D虛擬實驗環境給學生提供一個沉浸和高效的學習環境,在虛擬實驗環境中,學生可以進行虛擬實驗、探索和分析虛擬實驗現象[4]。但是大部分的虛擬仿真實驗平臺都是以單人虛擬仿真實驗為主[4][5][6][7],學生與學生的缺乏交流和合作,同時實驗缺乏合理的引導,使得學生失去對實驗的興趣,也不會在做實驗的基礎上進一步深入了解和探索。因此,一個智能的協同仿真實驗系統可以很好地解決這個問題,這樣的仿真系統可以讓多個學生一起做一個實驗,參與者可以相互合作[8],共同解決在實驗遇到的問題,提高了學生的積極性和學習興趣。本文利用Uinty 3D游戲引擎設計了一個以天平實驗為例的智能協同虛擬仿真實驗系統,該系統使用Unity 3D的Unity Network技術實現虛擬實驗實時的同步,采用鄰接矩陣根據實驗操作的實際實驗情況控制下一步操作的動畫的播放達到智能指導實驗,采用碰撞檢測技術和攝像機跟隨技術使得實驗更加沉浸和逼真,解決了交互性差、體驗差和單人實驗無趣乏味的問題。

1 相關工作

現在的協同實驗研究工作主要體現在四個方面:(1)增加輔助協同實驗的手段,這些手段包括語音聊天、視頻聊天、分享電子白板、分享虛擬桌面、錄制實驗操作過程等[9][10][11]。

(2)引入VR設備使得協同實驗更加的沉浸和提高用戶之間的交互[14][16],如微軟的Kinect、在化學實驗中發出刺激性氣味的嗅覺裝置、Oculus和Leap Mothion VR devices。(3)變換協同實驗的形式,如老師帶領和監督學生做實驗[10][12]、提供錯誤信息反饋[10]。(4)針對不同類型協同實驗采取不同的協同算法[14]。現在主流的協同實驗系統都體現著這四個方面中的一個或者多個方面,如:Teresa Monahan, Gavin McArdle, and Michela Bertolotto等人利用VR技術設計了一個以網站為平臺的多媒體協作e-learning系統CLEV-R[13], 該系統為學生提供文字聊天、語音聊天功能和能直接從網絡攝像頭采集數據并向3D環境廣播,在這個系統中,學生也可以上傳并分享個人文件。Moh. Zikky, Kholid Fathoni, Miftakhul Firdaus等人利用VR設備Oculus和Unity 3D引擎的Unity Network技術設計了以太陽系為課題的遠程交互的多媒體虛擬協作學習系統[9],該系統的重心是如何建立通信通道、如何進行連接和在三維虛擬場景中共享對象。Jara 等設計的在線實時虛擬協同實驗室[15]采用加鎖發控制協同實驗的并發問題,教師在操作時學生只能觀看而不能操作,學生需經過老師的同意之后才能取得操作權。Kong等人開發了實時同步虛擬協同實驗平臺[16],該平臺利用利用網絡編程技術、C#編程語言、.NET類庫及 Sql Server 數據庫等關鍵技術,設計和實現了一個允許多人實時同步合作完成同一實驗的虛擬協同實驗平臺。Guo等人開發了基于 Kinect 的多人在線虛擬實驗系統[17],采用Uinty 3D的RPC技術和Kinect 體感交互技術使得實驗者可以采用肢體動作操縱虛擬角色進行自由行走,并把操作同步到其他客戶機上。由此可見協同虛擬仿真教學實驗具有很大的發展潛力和深深吸引著研究者。但是目前的協同虛擬實驗仿真還處于研究初級階段,人機交互性還相對比較差,實驗場景不夠逼真。基于以上缺點,本文設計了一個以天平實驗為例的智能協同虛擬仿真實驗系統,攝像機以第三人稱視角,跟隨虛擬手模型的移動和旋轉,虛擬手模型模擬現實中的手抓取儀器零件,使得實驗場景更加地逼近真實實驗,利用鄰接矩陣以動畫的方式動態指導實驗操作者如何進行實驗,使得人機交互變得更加的靈活。

2 協同實驗學習虛擬環境

2.1 Client-Server基礎結構

協同實驗學習虛擬環境使用Unity 3D引擎自帶的網絡通信框架Unity Networking(簡稱UNET)來實現虛擬實驗的同步,利用該框架的NetworkManager組件來管理三維虛擬物體的同步生成和同步銷毀,利用Network Identity組件來標識每一個三維虛擬物體,利用同步變量的方式來同步三維虛擬物體的位置和旋轉。需要同步的三維虛擬物體都在Server端生成,然后通知各個Client端同步生成。該系統需要同步三維虛擬物體的生成、銷毀、位置和旋轉,其他的所有交互操作都在各自的客戶端完成,因為客戶端和服務端使用同一套代碼,只需要加以相關的控制即可,這樣可以減少網絡數據的傳輸。

2.2 協同實驗虛擬環境設計

該系統以天平稱量硬幣質量實驗為例說明客戶端實驗的設計與實現,采用Unity 3D的碰撞檢測技術完成天平零件的裝配和硬幣質量的稱量和使用鄰接矩陣算法動態給出實驗指導方案。

2.2.1協同實驗結構

該協同實驗包括四個部分:(1)通過鍵盤控制虛擬手模型的彎曲來抓取或者放開實驗儀器零件。(2)被抓取的儀器零件和客戶端各自的攝像機跟隨手模型的移動,并把對應的位置信息同步到其他客戶端。(3)被抓取的儀器部件碰撞到對應的位置就會引發碰撞事件,并把該儀器部件固定到該位置上。(4)天平裝配完成后,手模型抓取硬幣放入天平的左盤,抓取鑷子夾取砝碼放入天平右盤,根據需要更換砝碼的大小,直到天平平衡。如圖1的a所示:

圖1的b展示了用來準確固定天平零件裝配后的位置和角度的box碰撞體,當手模型抓取的天平零件碰撞到相應的box碰撞體時,把天平零件吸取過去,并把該box碰撞體的位置和角度的值賦值給抓取的天平零件的位置和角度,手模型放開,完成零件的裝配。

在需要實時同步的三維虛擬物體的預制體都掛載同一個腳本,該腳本的作用是同步當前三維虛擬物體的位置和旋轉角度。先定義兩個同步三維虛擬物體的位置和角度的Vector3類型的變量vecPosition,vecRotation,判斷手模型抓取的三維虛擬物體是否是當前客戶端的三維虛擬物體,如果是當前客戶端三維虛擬物體,則記錄下當前三維虛擬物體的位置和旋轉角度,并把它們賦值到vecPosition,vecRotation,如果不是當前客戶端三維虛擬物體,則把vecPosition,vecRotation的值帶上當前三維虛擬物體的名稱currentName發送到服務端,在服務端根據客戶端發來的三維虛擬物體的名稱找到在客戶端對應的三維物體,并把vecPosition,vecRotation的值賦給找到的三維物體,服務端同時還會把更改的操作同步到各個客戶端。

2.2.2 鄰接矩陣算法

利用鄰接矩陣算法來動態指導動畫的播放,并通過特定的攝像機拍攝動畫并顯示到屏幕上,實現從實驗開始到實驗結束的全程指導。把用戶的當前完整的操作看成是一個步驟,如用戶點擊按鈕也相當于一個步驟,一個實驗的完成由多個步驟組成,步驟之間根據實際情況可以相互切換并且切換往往是錯綜復雜的,如圖2中的步驟之間的切換關系:

圖2中展示了9個步驟和步驟之間得切換關系,這9個步驟分別是step_a、step_b、step_c1、step_c2、step_d1、step_d2、step_d3、step_e1、step_e2,其中step_a是起始步驟。步驟到另外一個步驟有箭頭指向就代表可以從這個步驟切換到那個步驟,并設路徑長度為1。根據這9個步驟可以建立9階的方陣S,該方陣的建立規則如下:

(1) 找出起始步驟到當前步驟所有可能路徑,并記錄路徑長度最小的路徑

(2) 從當前步驟開始,沿著最短路徑往起始步驟方向走,從中所經過的步驟(包括起始步驟)與當前步驟的關系在方陣中表示設為1,其余的步驟與當前步驟在方陣中表示為0

則根據規則,這9階方陣如圖3所示:

下面以該方陣中的第三行數據為例進行說明:

方陣中第三行數據表示的是步驟step_c1與其他步驟之間的關系,步驟step_c1到起始步驟step_a最短距離為2,從step_c1沿著最短路徑到step_a,經過step_b和step_a,所以step_c1與step_b的關系和step_c1與step_a的關系的值在方陣中表示都為1,則方陣中第三行第二列、第三行第一列中的值都為1,該行其他列為0。

容易知道,鄰接矩陣S有如下性質:

(1)如果第i行中的元素全部為0,則步驟i可以操作;

(2)如果不存在某行的元素全部為0,則沒有步驟能操作。

于是得到鄰接矩陣S的算法:

(1)當存在一行元素全部為0時,則推薦給用戶的步驟只有一種選擇;

(2)當存在多行元素全部為0時,則推薦給用戶的步驟有多個,可以隨機返回一個步驟給用戶;

(3)當步驟i完成后,把鄰接矩陣的第i行和第i列的元素全部移除,并重新更新鄰接矩陣S。

2.2.3 鄰接矩陣算法在協同虛擬實驗環境的應用

天平實驗待操作的零件如圖4所示,操作零件r2記為步驟r2,操作零件r3記為步驟r3,操作零件r4_left記為步驟r4_left,操作零件r4_right記為步驟r4_right,操作零件r5_left記為步驟r5_left,操作零件r5_right記為步驟r5_right,操作零件r6_left記為步驟r6_left,操作零件r6_right記為步驟r6_right,把硬幣放進天平的左盤的操作記為步驟coin,把砝碼用鑷子夾進天平右盤的操作記為步驟weight。

則可得該實驗的步驟切換關系如圖5所示:

根據步驟切換關系圖得鄰接矩陣S,如圖6所示:

把每一步操作的步驟都錄制成可視化的動畫文件,建立鄰接矩陣的行號與動畫名稱一一映射關系。當一個步驟被操作后,就刪除鄰接矩陣中的對應的行和列的元素,同時查找下一個操作步驟的行號,如果找到多個行號符合要求,則隨機返回一個行號,并根據該行號找到與之對應的動畫名稱并播放該動畫,實驗操作者可以通過觀看該動畫可以知道下一個操作如何做,從而達到指導的效果。該動畫在Unity 3D實驗場景的另外一個地方內執行,利用專門的攝像機拍攝并渲染到實驗場景中的帶有RenderTexture材質貼圖的3D屏幕上,效果如圖7所示:

只要符合實際,實驗操作者可以隨心所欲地操作,并且可以根據實驗操作者的實際操作情況,動態給出實驗指導,同時實驗操作者可以不按照給出的指導步驟進行操作,擺脫傳統的安排好的操作流程,每一步都是固定好的,不按照它指導的操作步驟做無法進行下一步實驗。

3 結果和討論

系統利用Unity3D的碰撞檢測技術完成天平零件的裝配和硬幣的質量稱量,利用Unity Network技術實現虛擬實驗的同步,利用鄰接矩陣實現實驗教程動態指導,實現了一個智能、沉浸的三維協同實驗系統。攝像頭以第三人稱視角跟隨手模型移動和旋轉,手模型抓取虛擬物體在三維場景中移動和旋轉并與其他三維虛擬物體進行交互,擺脫按住鼠標拖拽物體進行交互的傳統方式,使得虛擬實驗更加逼近真實的實驗。該系統還可以進一步完善,如增加互動功能(視頻聊天)、智能人機交互功能(AR技術)、動態建模功能(2D圖像轉3D模型)、動態增加習題功能(動態從數據庫抽題并根據題目要求動態建立習題UI)。

參考文獻:

[1] Valdez M T, Ferreira C M, Martins M J M. 3D virtual reality experiments to promote electrical engineering education[C]//2015 International Conference on Information Technology Based Higher Education and Training (ITHET). IEEE, 2015: 1-4.

[2] Zikky M, Fathoni K, Firdaus M. Interactive Distance Media Learning Collaborative Based on Virtual Reality with Solar System Subject[C]//2018 19th IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD). IEEE, 2018: 4-9.

[3] Grivokostopoulou F, Perikos I, Kovas K. Utilizing virtual reality to assist students in learning physics[C]//2017 IEEE 6th International Conference on Teaching, Assessment, and Learning for Engineering (TALE). IEEE, 2017: 486-489.

[4] Daineko Y A, Ipalakova M T, Yunnikova M V. Using of ICT in E-learning: Development of the virtual learning environment for physics study[C]//2017 Computing Conference. IEEE, 2017: 1195-1198.

[5] Liao H, Qu Z. Virtual experiment system for electrician training based on Kinect and Unity3D[C]//Proceedings 2013 International Conference on Mechatronic Sciences, Electric Engineering and Computer (MEC). IEEE, 2013: 2659-2662.

[6] Du H, Jia Z, Wang J. A control mechanism of the physical simulation experiment based on game engine[C]//2009 International Conference on Computational Intelligence and Software Engineering. IEEE, 2009: 1-3.

[7] Alam A, Ullah S. Adaptive 3D-Virtual Learning Environments: From Students' Learning Perspective[C]//2016 International Conference on Frontiers of Information Technology (FIT). IEEE, 2016: 7-10.

[8]Scheucher B, Bayley P, Gütl C. Collaborative virtual 3d environment for internet-accessible physics experiments[J]. International Journal of Online Engineering, 2009, 5(REV 2009): 65-71.

猜你喜歡
動畫實驗系統
記一次有趣的實驗
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
做個動畫給你看
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
動畫發展史
我的動畫夢
文苑(2019年22期)2019-12-07 05:28:56
做個怪怪長實驗
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
NO與NO2相互轉化實驗的改進
主站蜘蛛池模板: 最新国语自产精品视频在| 人妻精品久久久无码区色视| 日韩无码白| 在线观看精品自拍视频| 欧美第二区| 亚洲成人网在线观看| 亚洲精品在线影院| 成人在线观看一区| 国产精品部在线观看| 国产精品污视频| 欧美啪啪网| 色偷偷综合网| 久草视频精品| 99热这里都是国产精品| 国产丝袜无码精品| 在线精品亚洲一区二区古装| 91精品啪在线观看国产91| 波多野结衣一区二区三区四区视频| 亚洲一区波多野结衣二区三区| 欧美日韩国产成人高清视频| 中国国产A一级毛片| 国产av色站网站| 日韩无码视频专区| 无码aaa视频| 欧美一级特黄aaaaaa在线看片| 噜噜噜综合亚洲| 色婷婷狠狠干| 精品無碼一區在線觀看 | 国产成人精品男人的天堂下载| 狠狠色狠狠综合久久| 久久国语对白| 在线一级毛片| 欧美一区二区三区香蕉视| 91久久国产成人免费观看| 欧美伦理一区| 午夜免费小视频| 久久国产精品嫖妓| av一区二区三区高清久久| 国产精品免费入口视频| 国产精品片在线观看手机版| 国产成人精品高清不卡在线| 六月婷婷综合| 青青草原国产av福利网站| 亚洲女同欧美在线| 高清不卡毛片| 久久成人国产精品免费软件 | 久久77777| 国产喷水视频| 精品综合久久久久久97超人| 国产欧美日韩91| 亚洲男人天堂久久| 国产在线视频自拍| 国产成人精品一区二区| 一区二区自拍| 亚洲午夜福利精品无码不卡 | 日韩高清一区 | 99久久亚洲综合精品TS| 无码日韩人妻精品久久蜜桃| 欧美国产在线一区| 国产91丝袜在线播放动漫| 亚洲日本www| 九九热这里只有国产精品| 国产成人高清精品免费软件| 自偷自拍三级全三级视频| 99精品免费在线| 欧亚日韩Av| 亚洲AV免费一区二区三区| 综合五月天网| 久久不卡国产精品无码| 国产色婷婷| 四虎永久免费地址| 免费黄色国产视频| 青青草91视频| 91精品免费高清在线| 国产成人狂喷潮在线观看2345| 欧美 亚洲 日韩 国产| 国产办公室秘书无码精品| 在线免费无码视频| 久久情精品国产品免费| 国产精品3p视频| 中文字幕在线观| 99精品热视频这里只有精品7|