金礪,嚴(yán)武軍,蘇國(guó)強(qiáng)
(太原師范學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)系,晉中 030619)
基于AR技術(shù)的學(xué)習(xí)系統(tǒng)的設(shè)計(jì)與研發(fā)
金礪,嚴(yán)武軍,蘇國(guó)強(qiáng)
(太原師范學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)系,晉中 030619)
AR技術(shù)將虛擬的事物與現(xiàn)實(shí)世界結(jié)合,給人一種沉浸感。探究將AR技術(shù)運(yùn)用到高校學(xué)生學(xué)習(xí)中,解決高校學(xué)生對(duì)書籍深感枯燥的問題。介紹AR技術(shù),并開發(fā)一個(gè)基于AR技術(shù)的學(xué)習(xí)系統(tǒng),系統(tǒng)中客戶端是一個(gè)手機(jī)App,學(xué)生可以利用這個(gè)App來輔助學(xué)習(xí),提高學(xué)習(xí)興趣。
AR;增強(qiáng)現(xiàn)實(shí);學(xué)習(xí)系統(tǒng)
增強(qiáng)現(xiàn)實(shí)(Augmented Reality,簡(jiǎn)稱AR),是一種實(shí)時(shí)地計(jì)算攝影機(jī)影像的位置及角度并加上相應(yīng)圖像的技術(shù),這種技術(shù)的目標(biāo)是在屏幕上把虛擬世界套在現(xiàn)實(shí)世界并進(jìn)行互動(dòng)。這種技術(shù)最早于1990年提出。隨著隨身電子產(chǎn)品運(yùn)算能力的提升,增強(qiáng)現(xiàn)實(shí)的用途越來越廣,增強(qiáng)現(xiàn)實(shí)技術(shù)具有廣闊的發(fā)展前景,研究增強(qiáng)現(xiàn)實(shí)技術(shù)在教育方面的應(yīng)用具有重要的意義。
例如《物聯(lián)網(wǎng)導(dǎo)論》是一門概述性的課程,課程為讀者勾畫出一個(gè)具有鮮明特征的物聯(lián)網(wǎng)時(shí)代,系統(tǒng)地闡述了物聯(lián)網(wǎng)的層次結(jié)構(gòu)和功能劃分。作為大學(xué)老師的教學(xué),重點(diǎn)不應(yīng)該是將書中的這些概念復(fù)述給學(xué)生,這些概念性的知識(shí)應(yīng)該由學(xué)生自己查看,而面對(duì)一大堆的文字描述,即使作者寫的再有趣,學(xué)生也難免會(huì)感覺枯燥,讀不了幾頁(yè)就會(huì)厭煩。那么如果運(yùn)用AR技術(shù),學(xué)生在看文字的同時(shí)還在文字旁邊出現(xiàn)相應(yīng)的視頻,3D模型等,這些虛擬的事物出現(xiàn)在現(xiàn)實(shí)中,那么學(xué)生的學(xué)習(xí)積極性必然指數(shù)倍的增長(zhǎng)。
系統(tǒng)主要分為客戶端和服務(wù)器端兩大部分??蛻舳思词謾C(jī)App,學(xué)習(xí)物聯(lián)網(wǎng)導(dǎo)論的學(xué)生可以打開App對(duì)《物聯(lián)網(wǎng)導(dǎo)論》課程進(jìn)行掃描,當(dāng)識(shí)別到是某些特定的頁(yè)面時(shí),就會(huì)有與本頁(yè)內(nèi)容相關(guān)的學(xué)習(xí)視頻出現(xiàn)在書中,并進(jìn)行播放。該客戶端要求界面簡(jiǎn)單,操作簡(jiǎn)單,并具有良好的交互性。服務(wù)端即后臺(tái)管理系統(tǒng),功能主要是對(duì)學(xué)習(xí)視頻進(jìn)行管理,還有手機(jī)App的更新。
系統(tǒng)功能結(jié)構(gòu)圖:
●管理員管理模塊:后臺(tái)人員可以通過管理員賬號(hào)密碼登錄,普通管理員登錄后可以對(duì)學(xué)科、視頻進(jìn)行管理,可以更新手機(jī)App。超級(jí)管理員還可以對(duì)管理員進(jìn)行管理,可以增加刪除普通管理員。
●學(xué)科管理模塊:學(xué)科管理模塊主要用來進(jìn)行課程結(jié)構(gòu)的搭建,在此模塊,可以對(duì)學(xué)科進(jìn)行添加、更改和刪除,學(xué)科中可以添加課程、刪除課程、更改課程。
●視頻管理模塊:視頻管理模塊用來管理視頻資源,可以添加視頻、修改視頻信息、刪除視頻,添加視頻資源后,可以查詢視頻網(wǎng)址。
●App管理模塊:進(jìn)行App的更新,上傳App后,自動(dòng)將App地址跟新。
表1 數(shù)據(jù)庫(kù)表
數(shù)據(jù)庫(kù)需要存放學(xué)科、課程、視頻、App和管理員信息,可以建5個(gè)表,表名分別為course、lesson、vedio、App、admin。其中course表中創(chuàng)建的字段有:id、name,name中存放學(xué)科名稱。lesson表中創(chuàng)建的字段有:id、name、cid、imgurl、cname,name中存放課程名,cid存放該課程所屬學(xué)科的id,imgurl中存放課程圖片地址,cname中存放所屬學(xué)科名稱。video表中創(chuàng)建的字段有:id、sid、cid、name、address、cname、sname,sid中存放所屬課程的id,cid中存放所屬學(xué)科的id,name存放視頻名稱,address中存放視頻存儲(chǔ)地址,cname中存放所屬課程名稱,sname中存放所屬學(xué)科名稱。App表中創(chuàng)建的字段有id、url,url中填手機(jī)App的存儲(chǔ)地址。admin表中創(chuàng)建的字段有:id、adminname、password,adminname中存放管理員名,password中填管理員密碼。
后臺(tái)語言使用PHP語言,使用MVC編程模式,采用單入口的結(jié)構(gòu)進(jìn)行后臺(tái)搭建。在訪問后臺(tái)主頁(yè)時(shí),會(huì)有一個(gè)判斷是否已經(jīng)登錄的程序,如果沒有登錄,則會(huì)自動(dòng)跳轉(zhuǎn)到登錄頁(yè)面,代碼如下:
后臺(tái)頁(yè)面除主頁(yè)和登錄頁(yè)外還有注冊(cè)頁(yè)reg.html、學(xué)科管理頁(yè)kecheng.html、添加學(xué)科頁(yè)addcourse.html、添加課程頁(yè) showaddlesson.htm l、視頻管理頁(yè) vedio. html、提示頁(yè)notice.html。后臺(tái)界面如圖2所示。
圖2 后臺(tái)界面
學(xué)科管理模塊包括兩個(gè)頁(yè)面:學(xué)科管理頁(yè)、添加學(xué)科頁(yè)。學(xué)科管理頁(yè)是對(duì)課程的結(jié)構(gòu)進(jìn)行管理,可以進(jìn)行刪除學(xué)科、修改學(xué)科、添加課程、刪除課程、修改課程的操作。其中添加課程功能就是在數(shù)據(jù)庫(kù)lesson表中添加一條,添加的信息有課程名稱、課程圖片、所屬學(xué)科的名稱、所屬學(xué)科的id。添加學(xué)科頁(yè)是新增一個(gè)學(xué)科,新增學(xué)科會(huì)在course表中新增一條數(shù)據(jù),數(shù)據(jù)中添加的信息是學(xué)科名稱。
視頻管理頁(yè)可以進(jìn)行視頻的添加、刪除、修改和查詢操作,可以對(duì)video表中數(shù)據(jù)進(jìn)行修改和刪除。
手機(jī)App使用Unity3D制作,以物聯(lián)網(wǎng)導(dǎo)論為例,準(zhǔn)備物聯(lián)網(wǎng)導(dǎo)論書籍某些頁(yè)面(即頁(yè)面的照片),還有與這些頁(yè)面相關(guān)的學(xué)習(xí)視頻。將學(xué)習(xí)視頻上傳到后臺(tái)管理系統(tǒng)中,并獲得視頻的網(wǎng)址。資源都準(zhǔn)備好后,進(jìn)行搭建。參照開發(fā)文檔中的“識(shí)別標(biāo)識(shí)圖片播放視頻”這篇文檔,將識(shí)別圖(即準(zhǔn)備好書籍頁(yè)面)和視頻進(jìn)行關(guān)聯(lián),并打包成手機(jī)App。
做出圖像識(shí)別功能后,考慮到添加新的一組資源很不方便,需要重新打包手機(jī)App。所以需要使用太虛AR云識(shí)別功能。制作assetbundle資源,上傳到太虛AR云服務(wù)平臺(tái)。使用云識(shí)別功能后,要添加一組資源就很方便了,只需往太虛AR云服務(wù)中上傳assetbundle資源即可。手機(jī)界面如如3所示,識(shí)別成功后如圖4所示。
圖3 手機(jī)界面
圖4 識(shí)別成功
在進(jìn)行測(cè)試時(shí),發(fā)現(xiàn)一些不方便的地方,以下是對(duì)這些地方的優(yōu)化。
(1)退出應(yīng)用不方便,點(diǎn)擊手機(jī)返回鍵無法退出應(yīng)用,一般手機(jī)應(yīng)用都是點(diǎn)擊兩次返回鍵后退出應(yīng)用,這樣的用戶體驗(yàn)還是很友好的。添加點(diǎn)擊兩次返回鍵退出應(yīng)用功能需要在AllDemoUI.cs腳本中進(jìn)行編寫。首先需要定義一個(gè)為點(diǎn)擊次數(shù)做記錄的變量 “int es鄄capeTimes=0;”。然后在Update中添加如下代碼:
這樣在點(diǎn)擊兩次返回按鈕后,應(yīng)用程序就可以正常退出。
(2)屏幕常亮。在使用手機(jī)App時(shí)要打開攝像頭,手機(jī)屏幕中會(huì)顯示拍攝到的場(chǎng)景。由于很多人會(huì)設(shè)置手機(jī)屏幕在一段時(shí)間后會(huì)自動(dòng)關(guān)閉,用戶要繼續(xù)使用手機(jī)App就需要觸摸屏幕讓屏幕激活。這樣顯然很麻煩,因?yàn)檫@款手機(jī)App使用時(shí)間一般比較長(zhǎng),在長(zhǎng)時(shí)間內(nèi)學(xué)生需要不斷地激活屏幕會(huì)使得學(xué)生感到麻煩,所以添加了屏幕常亮功能,在進(jìn)入App成功后,手機(jī)就會(huì)被設(shè)定為屏幕常亮。代碼為:“Screen.sleepTimeout= SleepTimeout.NeverSleep;”這句代碼寫在AllDemoUI.cs腳本中的start中。
(3)網(wǎng)絡(luò)判斷。在使用手機(jī)App時(shí),無論手機(jī)設(shè)備是否聯(lián)網(wǎng),都會(huì)打開手機(jī)攝像頭,在識(shí)別圖像時(shí),如果沒有聯(lián)網(wǎng),識(shí)別多久都無法出現(xiàn)教學(xué)視頻,因?yàn)榻虒W(xué)視頻等資源并沒有安裝到手機(jī)App中,那樣會(huì)造成手機(jī)App體積過大,學(xué)生就不愿意安裝。所以教學(xué)視頻等資源是實(shí)時(shí)地從網(wǎng)上打開并播放,這就要求手機(jī)需要聯(lián)網(wǎng)。但是上述所開發(fā)的手機(jī)App并沒有網(wǎng)絡(luò)識(shí)別功能,學(xué)生使用時(shí)如果沒有聯(lián)網(wǎng),就無法識(shí)別成功,學(xué)生可能并不知道手機(jī)需要聯(lián)網(wǎng),或者忘記聯(lián)網(wǎng),當(dāng)長(zhǎng)時(shí)間識(shí)別沒有反應(yīng)時(shí),學(xué)生可能就會(huì)產(chǎn)生誤解,以為本頁(yè)中沒有相關(guān)資源。所以網(wǎng)絡(luò)識(shí)別功能很是必要。并且如果用的網(wǎng)絡(luò)是移動(dòng)網(wǎng)絡(luò)也要給予提示,避免流量在不知情的情況下消耗。
由于需要給予用戶提示,所以要在界面上添加提示,這些提示剛開始都是隱藏的。當(dāng)未聯(lián)網(wǎng)時(shí)才會(huì)顯示出沒有聯(lián)網(wǎng)的提示,當(dāng)使用的是移動(dòng)網(wǎng)絡(luò)時(shí),顯示使用移動(dòng)網(wǎng)絡(luò)的提示。
代碼如下:
這些代碼寫在AllDemoUI.cs文件中的Update中,這樣就會(huì)在網(wǎng)絡(luò)發(fā)生變化時(shí)也給予相應(yīng)的提示。
(4)識(shí)別后的優(yōu)化。在測(cè)試時(shí),當(dāng)識(shí)別圖像成功后就會(huì)播放相應(yīng)的視頻,當(dāng)手機(jī)移動(dòng),識(shí)別的圖像不在屏幕中后,視頻也會(huì)消失。雖然這樣在AR技術(shù)中很合理,但是考慮到我們對(duì)于他的應(yīng)用是用于輔助學(xué)生學(xué)習(xí),當(dāng)學(xué)生識(shí)別某頁(yè)書成功后,正在播放視頻資源,但是由于自己的移動(dòng),視頻消失,學(xué)生還需要重新識(shí)別。這就給學(xué)生帶來了一定的麻煩,當(dāng)圖像識(shí)別成功后,學(xué)生的注意力已經(jīng)集中在出現(xiàn)的教學(xué)資源中,不再關(guān)注周圍場(chǎng)景,所以應(yīng)該圖像識(shí)別成功后即使圖像離開屏幕,也不要將教學(xué)資源消失。學(xué)生如需離開,可以手動(dòng)退出識(shí)別。這需要修改Marker.cs文件,代碼如下:
本系統(tǒng)是基于AR技術(shù)的學(xué)習(xí)系統(tǒng),AR技術(shù)能讓虛擬的事物、場(chǎng)景等出現(xiàn)在現(xiàn)實(shí)世界中,可以給人們強(qiáng)烈的視覺體驗(yàn)。這種技術(shù)可以運(yùn)用到教育領(lǐng)域,它能夠讓學(xué)生樂于學(xué)習(xí),大大提高學(xué)生學(xué)習(xí)的積極性!
[1]韓衛(wèi)關(guān).增強(qiáng)現(xiàn)實(shí)技術(shù)在采礦工程實(shí)驗(yàn)教學(xué)中的應(yīng)用[J].地球,2015(8).
[2]張洪波.增強(qiáng)現(xiàn)實(shí)技術(shù)在教學(xué)中的應(yīng)用研究[D].河南大學(xué),2012.
[3]李文霞,司占軍,顧翀.淺談增強(qiáng)現(xiàn)實(shí)技術(shù)[J].電腦知識(shí)與技術(shù),2013(28):6411-6414.
[4]周大镕.基于增強(qiáng)現(xiàn)實(shí)的體驗(yàn)式教學(xué)演示軟件的設(shè)計(jì)與實(shí)現(xiàn)[D].廣西師范大學(xué),2014.
Design and Development of Learning Platform Based on AR Technology
JIN li,YANWu-jun,SU Guo-qiang
(Departmentof Computer Science and Technology,Taiyuan Normal University,Jinzhong 030619)
AR technology combines virtual thingswith the real world,gives people a sense of immersion.Explores the application of AR technology to the study of college students,solves the problem of college students’deeply bored books.Describes the AR technology,and the devel鄄opment of a learning system based on AR technology,the system is amobile phone client App,students can use this App to assist learn鄄ing,improve learning interest.
金礪(1958-),女,山西忻州人,碩士研究生,教授,研究方向?yàn)榍度胧接?jì)算機(jī)及物聯(lián)網(wǎng)技術(shù)
2017-03-28
2017-05-03
1007-1423(2017)13-0081-04
10.3969/j.issn.1007-1423.2017.13.019
嚴(yán)武軍(1973-),男,山西侯馬人,碩士研究生,副教授,研究方向?yàn)槿斯ぶ悄?、UX和物聯(lián)網(wǎng)
蘇國(guó)強(qiáng)(1992-),男,山西晉中人,碩士研究生,講師,研究方向?yàn)榍度胧较到y(tǒng)與物聯(lián)網(wǎng)技術(shù)
AR;Augmented Reality;Learning System