黎泉 胡璋
摘? 要: 針對傳統(tǒng)家居展示方式單一、設計效率低下的問題,文中提出一種基于虛擬現(xiàn)實技術的家居仿真展示系統(tǒng)。該系統(tǒng)實現(xiàn)了毛坯房與自助設計的漫游展示、UI交互及場景切換,用戶可以自定義家居設計,包括家居物體交互、手柄提示、家居擺放和地板材質切換等功能。設計實現(xiàn)了系統(tǒng)資源采集與制作、環(huán)境部署、應用開發(fā)和發(fā)布測試4個階段?;贖TC Vive設備的實現(xiàn)與測試結果表明,所提出的家居仿真展示系統(tǒng)不僅能夠給用戶提供沉浸式的家居體驗,且具有出圖效率高與運營成本低的特點。
關鍵詞: 家居仿真展示系統(tǒng); 系統(tǒng)設計; 虛擬現(xiàn)實; 自定義設計; 系統(tǒng)實現(xiàn); 系統(tǒng)測試
中圖分類號: TN911?34; TM76? ? ? ? ? ? ? ? ? ?文獻標識碼: A? ? ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)18?0139?04
Abstract: In allusion to the single display methods and low design efficiency in the traditional home display system, a home simulation display system based on virtual reality technology is proposed. In this system, the roaming display, UI interaction and scene switching of roughcast room and DIY design can be realized. Users can customize the home design, including home object interaction, handle prompts, home placement and floor material switching. The design of the system can implement four phases of system resource collection and production, environment deployment, application development and publishing testing. The implementation and testing results based on HTC Vive equipment show that the proposed home simulation display system can not only provide immersive home experience for users, but also has the characteristics of high mapping efficiency and low operating costs.
Keywords: home simulation display system; system design; virtual reality; custom design; system implementation; system testing
0? 引? 言
隨著計算機技術的快速進步與硬件成本的不斷降低,虛擬現(xiàn)實(Virtual Reality,VR)技術迎來了新的發(fā)展浪潮[1],眾多企業(yè)開始參與到了VR技術的研發(fā)中。美國谷歌公司開發(fā)了Google Cardboard 產(chǎn)品,韓國三星公司開發(fā)了Gear VR頭戴設備,日本索尼公司開發(fā)了PlayStation頭戴設備[2?4]。然而在硬件設備蓬勃發(fā)展的同時,內容的匱乏嚴重制約了VR技術的發(fā)展與普及。目前,大多數(shù)企業(yè)通過結合現(xiàn)有的經(jīng)驗與新的技術理論,來不斷嘗試拓展VR技術的研究方向與發(fā)展前途,尤其是VR技術在家裝領域的應用[5?8]。
傳統(tǒng)的家居展示方式通常采用三維效果圖進行可視化仿真展示[9],但該展示方式無法實現(xiàn)全場景的預覽,容易導致建造成品不及客戶的心理預期[10]。因此,越來越多的人開始將VR技術應用到家居仿真展示系統(tǒng)中。該展示方式不僅可以為用戶提供沉浸式的家居體驗,且可以實現(xiàn)地板、地磚與墻紙花紋等家居細節(jié)的自助設計[11]。此外,傳統(tǒng)的家居展示方式設計復雜、出圖效率低;而基于VR技術的家居展示方式可以進行批量化操作,進而提升工作效率[12?13]。
為了提升家居仿真展示的效果,實現(xiàn)沉浸式的家居展示,本文提出了基于虛擬現(xiàn)實的家居仿真展示系統(tǒng)。該系統(tǒng)基于HTC Vive VR設備進行開發(fā)設計,充分考慮了家居展示與用戶之間的交互,實現(xiàn)了個性化的家裝設計。仿真設計與實現(xiàn)結果表明,所提出的家居展示系統(tǒng)不僅能夠給用戶提供沉浸式的家居體驗,且可以進行模塊化設計,提升開發(fā)的效率。
1? 系統(tǒng)整體功能設計
本文為了實現(xiàn)個性化的家居設計、多樣化的戶型與精裝房的選擇,提出了基于虛擬現(xiàn)實的家居仿真展示系統(tǒng)。該系統(tǒng)實現(xiàn)了毛坯房與DIY設計的漫游展示、UI交互及場景切換,如圖1所示。對于DIY設計,通過實現(xiàn)家居物體交互、手柄提示、家具擺放和地板材質切換等功能來實現(xiàn)個性化的家居設計。
各模塊的具體功能設計如下:
1) 基礎戶型模塊實現(xiàn)了家居的漫游展示、UI交互和多場景切換,用戶可以通過操作手柄實現(xiàn)漫游。該功能的目的是實現(xiàn)全局觀看戶型布局,并使用UI菜單實現(xiàn)用戶與家居細節(jié)的交互。
2) 自助設計模塊實現(xiàn)了個性化的家居設計與用戶自主的家具和地板材質切換、物體高亮展示與瞬移等功能。
2? 自定義家居展示功能實現(xiàn)
為了實現(xiàn)沉浸式的用戶體驗效果,本文使用HTC Vive設備搭建工作站,并結合VR技術實現(xiàn)基礎戶型模塊與DIY設計模塊。其具體實現(xiàn)過程包括資源采集與制作、環(huán)境部署、應用開發(fā)和發(fā)布測試4個階段。各階段具體操作細節(jié)如圖2所示。
2.1? 資源采集與制作
基于虛擬現(xiàn)實的家居仿真展示系統(tǒng),主要使用圖片、音頻和視頻3種素材。本文將系統(tǒng)所需的素材進行加工,使其符合Unity支持的格式。
音頻數(shù)據(jù)主要為系統(tǒng)所需的背景音樂,文中首先對挑選出的音頻素材進行裁剪,然后保存為Unity支持的.AIFF,.WAV,.MP3,.OGG格式,以便后續(xù)調用。
圖片數(shù)據(jù)主要為:系統(tǒng)背景圖片、家具材質和UI圖標。本文預先采集各種家具的材質貼圖,然后將其保存為.PNG格式數(shù)據(jù),以便系統(tǒng)讀取。
視頻數(shù)據(jù)為VR所需的高清視頻,包括VR模式、畫中畫模式和普通模式3種攝制模式下拍攝的視頻。
2.2? 應用開發(fā)
基于VR的應用開發(fā),主要包括模型制作、模型優(yōu)化、渲染貼圖和材質優(yōu)化共4個步驟。
模型制作:使用3ds MAX軟件對室內房屋進行建模,采用靜態(tài)立體圖像生成動畫,從而實現(xiàn)由建筑設計平面效果圖到立體沉浸式漫游效果的轉化。為了獲得更加逼真的效果,本文使用三維建模的方式構建虛擬房間模型。
三維模型可以根據(jù)其幾何特點分為:線框模型、實體模型和表面模型。本文采用多邊形網(wǎng)格建模方法來模擬曲面,從而構建出不同的三維物體。
多邊形網(wǎng)格建模方法定義了面?頂點、頂點?頂點、翼邊、半邊、地板網(wǎng)格和輻射邊等數(shù)據(jù)結構,并采用頂點、邊與平面來表示多面體。文中使用半邊數(shù)據(jù)結構來建模家居模型。該數(shù)據(jù)結構的每個頂點存儲一個半邊,并指向其相鄰上半邊與下半邊。同時為了便于對曲面進行建模,本文使用高斯曲率來計算曲面的平滑度,如下:
式中,K表示高斯曲率即曲面平滑度。第i個小平面的面積為A,且有:
式中,[v1,v2,v3]為三角形小平面的頂點,如圖3所示。
將獲取到三維物體的曲率與小平面組合完成后,即可對HTC Vive設備采集的點云數(shù)據(jù)進行三維建模。首先將點云數(shù)據(jù)表示為三角形數(shù)據(jù),然后對這些三角形數(shù)據(jù)進行相關處理,從而將房間建模為若干個小平面組成的虛擬環(huán)境。具體建模過程如下所述:
1) 查找小平面。首先計算三角形數(shù)據(jù)的每個頂點曲率,并將相鄰頂點的曲率值取平均后作為當前頂點的曲率,然后填充得到每個頂點最合適的小平面。
2) 合成平面。首先遍歷所有查找到的小平面,并將距離足夠大且曲率較低的平面合并成為一個大平面,然后使用廣度優(yōu)先算法進行頂點填充,得到生成的大平面。
3) 設置平面類型。首先確定水平面、垂直面與地板面,然后根據(jù)地板面篩選出家具實體與墻體的結構,最終融合各場景目標實現(xiàn)家居模型的構建。
模型優(yōu)化:為了減少模型運行時所占用的內存,本文通過刪除冗余以及不可視的場景面、頂點來節(jié)省模型占用的空間。
渲染貼圖:為了獲取更加逼真的材質效果,本文使用3ds MAX渲染器來處理家居的材質信息,并使用材質貼圖軟件設計與渲染材質。
材質優(yōu)化:為了進一步縮減材質貼圖軟件在處理材質大小時所耗費的計算時間,本文根據(jù)材質設計的特點進行了如下優(yōu)化計算。靈活使用相對值和定值,使用灰度圖代替沒有顏色信息的節(jié)點,使用大于16×16的位圖節(jié)點,以及禁用Alpha Blending等。
同時,為了實現(xiàn)用戶自主漫游與個性化家具設計和擺放,本文實現(xiàn)了瞬移功能、手柄功能及地板材質切換功能。各功能的具體實現(xiàn)方法如下所述:
1) 瞬移功能:VR的內容是由虛擬場景投射而來的,其本質不包含景深的2D平面。因此,本文利用瞬移功能來實現(xiàn)人在場景中的漫游。該功能主要通過SteamVR與VRTK集成實現(xiàn),首先使用Unity3D載入SteamVR Unity Toolkit插件與Virtual Reality Toolkit插件,然后進行場景朝向與位置的設置。
2) 手柄功能:用于添加用戶使用提示,本文使用VRTK中的ControllerTooltip工具包進行組件屬性的添加。
3) 地板材質切換功能:用戶可以使用手柄來點擊虛擬按鈕,從而切換地板材質。本文通過創(chuàng)建畫布(Canvas)并重命名為Floors作為材質類型列表,同時設置ShowMatButton按鈕展示材質、MatUIContainer容器來包含各種按鈕。
2.3? 環(huán)境部署
本文使用HTC Vive頭顯設備進行VR系統(tǒng)的開發(fā),首先需要搭建HTC Vive基站,然后搭建Unity3D的工作環(huán)境。HTC Vive基站的搭建包括:硬件的連接、Steam平臺的下載、安裝與注冊登錄、設備基站位置、地面位置和頭顯中心的校準。Unity3D工作環(huán)境是VR開發(fā)的基礎,使用里面的SteamVR組件,即可實現(xiàn)VR攝像機的部署與組件的添加。
3? 系統(tǒng)實現(xiàn)與測試
由于基于VR的虛擬現(xiàn)實家居仿真系統(tǒng)對軟硬件具有一定的要求,文章使用HTC Vive設備搭建工作站,并使用下述開發(fā)環(huán)境與工具,實現(xiàn)系統(tǒng)各模塊功能。系統(tǒng)環(huán)境為:Windows 10,64位系統(tǒng),Nvidia GeForce GTX1080 GPU, Intel[?] Core(TM) i7?7700 CPU,VR開發(fā)包為DOTween(HOTween V2)1.1.640,Virtual Reality Toolkit 3.2.1, Steam VR Plugin 1.2.3。
圖4為本文設備采集到的點云數(shù)據(jù)的可視化顯示。圖5為對該組點云數(shù)據(jù)進行建模后得到的結果。
本文也實現(xiàn)了用戶自定義的交互操作與實現(xiàn)效果,如圖6所示。用戶可以實現(xiàn)與建模結果的移動、縮放和全息投影的交互。
為了驗證本文進行模型優(yōu)化的有效性,表1給出了模型優(yōu)化前后算法所需的計算時間與占用的內存量。從表中可以看出,優(yōu)化后可以明顯節(jié)省內存并減少計算時間。
4? 結? 語
本文提出基于虛擬現(xiàn)實的家居仿真展示系統(tǒng),以實現(xiàn)個性化的家居設計、多樣性的戶型與裝修選擇。該系統(tǒng)使用界面功能模塊實現(xiàn)系統(tǒng)與用戶的交互、采用基礎戶型漫游模塊實現(xiàn)戶型漫游功能,精裝樣板間展示模塊提供了用戶自助設計功能?;贖TC Vive實現(xiàn)的場景渲染功能、手柄提示、家居擺放和地板材質切換等功能表明,本文設計的家居展示方式不僅能為用戶提供沉浸式的虛擬家居效果體驗,而且具有出圖效率高、運營成本低的優(yōu)勢。
參考文獻
[1] TACHI S. From 3D to VR and further to telexistence [C]// 2013 23rd International Conference on Artificial Reality and Telexistence. Tokyo: IEEE, 2018: 947?952.
[2] MENIN A, TORCHELSEN R, NEDEL L. An analysis of VR technology used in immersive simulations with a serious game perspective [J]. IEEE computer graphics and applications, 2018, 38(2): 57?73.
[3] KON Y, NAKAMURA T, SAKURAQI R, et al. HangerOVER: development of HMO?embedded haptic display using the hanger reflex and VR application [C]// 2018 IEEE Conference on Virtual Reality and 3D User Interfaces. Atlanta: IEEE, 2018: 326?333.
[4] 朱曉強,潘虹藝,徐浩,等.頭戴設備VR環(huán)境下光滑加權等距面交互建模[J].系統(tǒng)仿真學報,2018,30(7):2459?2464.
[5] 邱暢.基于PBR理論的虛擬現(xiàn)實室內家居展示的研究與應用[D].北京:北京工業(yè)大學,2018.
[6] LIM H T, KIM H G, RO Y M. VR IQA net: deep virtual reality image quality assessment using adversarial learning [C]// IEEE International Conference on Acoustics, Speech and Signal Processing. Morristown: IEEE, 2018: 202?211.
[7] KANTH A S V R, GARG N. Computational simulations for solving a class of fractional models via Caputo?Fabrizio fractional derivative [J]. Procedia computer science, 2018, 45(3): 476?482.
[8] 柯健,王敏,周德富,等.虛擬現(xiàn)實技術在室內家居設計中的應用[J].軟件導刊,2019,18(10):144?146.
[9] JERALD J. Human?centered VR design: five essentials every engineer needs to know [J]. IEEE transactions on computer graphics and applications, 2018, 38(2): 15?21.
[10] 黃東晉,唐鵬斌,王音,等.基于交互歷史的三維家居個性化推薦與虛擬展示[J].應用科學學報,2015,33(4):407?418.
[11] MOSSER M, PIERESSA F, REUTTER J, et al. Querying APIs with SPARQL: language and worst?case optimal algorithms [C]// European Semantic Web Conference. Berlin: Springer, 2018: 17?30.
[12] SPORTILLO D, PALJIC A, OJEDA L, et al. Light virtual reality systems for the training of conditionally automated vehicle drivers [C]// IEEE Conference on Virtual Reality and 3D User Interfaces. Oklahoma City: IEEE, 2018: 37?44.
[13] 崔淮.家居展示設計中虛擬仿真及交互設計的研究與應用[D].長沙:湖南師范大學,2016.