《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動態(tài) > 德化陶瓷虛擬展廳

德化陶瓷虛擬展廳

2009-06-26
作者:陳柏生, 張志陽,杜吉祥

  摘 要: 討論了虛擬現(xiàn)實(shí)技術(shù)用于陶瓷展示的可行性,關(guān)鍵技術(shù)和系統(tǒng)的實(shí)現(xiàn)過程。利用3DS MAX和PhotoShop建立展廳和瓷器的三維模型,并使用貼圖技術(shù)增強(qiáng)瓷器模型的真實(shí)感;使用開源的圖形渲染引擎OGRE實(shí)現(xiàn)場景資源的組織和管理,并基于OGRE實(shí)現(xiàn)了虛擬展廳的實(shí)時交互和動態(tài)漫游功能。
  關(guān)鍵詞: 德化陶瓷; 虛擬展示; OGRE; 用戶交互

?

  德化是聞名世界的瓷都,并且逐漸成為全國最大的工藝陶瓷生產(chǎn)與出口基地[1]。目前德化陶瓷產(chǎn)品的展示主要是通過在線的圖片展示和離線的樣品展覽來實(shí)現(xiàn)。對于這兩種傳統(tǒng)的樣品展示方式,文字和圖片展示只能提供靜態(tài)的局部的視覺體驗(yàn),真實(shí)感和交互性都比較差。而實(shí)物展覽則要求客戶花費(fèi)不菲的時間和金錢成本到現(xiàn)場參觀,這往往也會顯著延長客戶下訂單的周期。近年來,虛擬現(xiàn)實(shí)技術(shù)在物品展示和場景重建的應(yīng)用中日益受到人們的關(guān)注。虛擬現(xiàn)實(shí)利用計算機(jī)制作出來的類似真實(shí)世界的虛擬環(huán)境,并可提供觀者實(shí)時性的互動和沉浸式的逼真感受[2],它為快速的展示瓷器樣品和發(fā)布產(chǎn)品信息、降低交易成本和加速產(chǎn)品銷售提供了一種可行的思路。
1 系統(tǒng)概述
  本課題利用相關(guān)的虛擬現(xiàn)實(shí)技術(shù)實(shí)現(xiàn)了一個具有友好用戶交互和動態(tài)漫游功能的虛擬陶瓷展廳,客戶可以在這個虛擬展廳中自由行走、任意觀看同時也可以借助交互式操作針對單個產(chǎn)品做更多細(xì)節(jié)的觀察。該系統(tǒng)包括圖形系統(tǒng)、腳本系統(tǒng)、交互系統(tǒng)、資源管理、場景管理等模塊。圖形模塊使用3DS MAX和PhotoShop建立展廳和瓷器的三維模型,腳本系統(tǒng)維護(hù)系統(tǒng)的所有配置文件和日志文件,交互系統(tǒng)則負(fù)責(zé)友好的場景交互功能。本系統(tǒng)使用開源的圖形引擎OGRE實(shí)現(xiàn)場景元素組織和場景資源管理。整個陶瓷虛擬展廳系統(tǒng)的框架結(jié)構(gòu)設(shè)計如圖1所示。

?


2? 關(guān)鍵技術(shù)
2.1 瓷器三維建模

  目前應(yīng)用于視景仿真的三維建模軟件主要有:MultiGen Creator、3DS MAX、MAYA、SOFTIMAGE/3D 等。
  3DS MAX是PC機(jī)上最普及的三維動畫和建模軟件,成本低廉,具有良好的軟件接口;系統(tǒng)集成了豐富的第三方插件,使得它具有強(qiáng)大的三維動畫和特技效果制作等功能[3]。本文使用3DS MAX 9.0建立展廳和陶瓷產(chǎn)品的實(shí)體模型,并利用相關(guān)插件將其轉(zhuǎn)化為本系統(tǒng)支持的內(nèi)部文件格式。
  獲取建立實(shí)體模型的相關(guān)參數(shù)是建模的準(zhǔn)備工作。數(shù)據(jù)采集往往可以通過使用相應(yīng)的測量設(shè)備測出產(chǎn)品原型或產(chǎn)品實(shí)物若干組點(diǎn)的坐標(biāo),進(jìn)而計算出模型參數(shù)。更簡單且在實(shí)際應(yīng)用中可行的一種方法是由產(chǎn)品設(shè)計者提供模型參數(shù)。繪制表面紋理圖案是增強(qiáng)瓷器產(chǎn)品真實(shí)感的重要步驟,但是直接使用3DS MAX建模瓷器的表面紋理是一個十分困難的工作。通常,要將實(shí)物圖片貼到三維模型的表面,使瓷器產(chǎn)品具有更加逼真的視覺效果,這些實(shí)物圖片稱為紋理貼圖。在具體操作中,先拍攝不同角度的實(shí)體照片,再用Photoshop對照片剪裁、校正和拼接等處理,最終得到所需的紋理貼圖。如圖2所示,整個瓷器產(chǎn)品的三維建模主要包括圖片處理和實(shí)體模型的建立兩個部分。

?

?

  圖3給出了一個瓷器產(chǎn)品建模的實(shí)例。紋理貼圖被導(dǎo)入到3DS MAX并被貼合到瓷器的三維模型表面,然后賦予其真實(shí)的材質(zhì)、環(huán)境、燈光等,再通過渲染器渲染出逼真的效果。從圖3(b)可以看出,本文方法創(chuàng)建出的瓷器模型與真實(shí)的瓷器效果非常接近。本文系統(tǒng)使用OGRE圖形引擎組織和管理場景資源,所以,完成好的三維模型通過Deep Exploration進(jìn)行數(shù)據(jù)轉(zhuǎn)換、優(yōu)化后利用工具軟件3ds2mesh導(dǎo)出為OGRE所支持的.mesh文件。

?


2.2 場景資源的組織和管理
  本文使用開源的三維圖形渲染引擎OGRE(Object-oriented Graphics Rendering Engine)組織和管理場景資源以及實(shí)現(xiàn)虛擬展廳的實(shí)時漫游。OGRE是用C++開發(fā)的面向?qū)ο笄沂褂渺`活的3D圖形引擎,讓開發(fā)者能更方便和直接地開發(fā)基于3D硬件設(shè)備的應(yīng)用程序或游戲。OGRE中的類庫對更底層的Direct3D和OpenGL系統(tǒng)庫的全部使用細(xì)節(jié)進(jìn)行了抽象,并提供了基于現(xiàn)實(shí)世界對象的接口和其他類。OGRE圖形引擎全面支持Direct3D和OpenGL,同時具有更高的開發(fā)效率和更好的系統(tǒng)可擴(kuò)展性。
OGRE系統(tǒng)主要包括:Render系統(tǒng)和Render插件、Material系統(tǒng)和Material腳本、Entity(主要是物件系統(tǒng))、GUI系統(tǒng)和Overlay腳本、Texture和圖片解碼器、Archive系統(tǒng)和文件解碼器、Scene插件(主要是地形系統(tǒng))、粒子系統(tǒng)、日志、Dll動態(tài)導(dǎo)入和插件系統(tǒng)等[4]。而系統(tǒng)所有的對象全部歸Ogre::Root統(tǒng)一管理。Root是整個OGRE的核心部分,通過Root對象可以配置系統(tǒng),還可以獲得系統(tǒng)內(nèi)的其他對象。圖4給出了OGRE中的關(guān)鍵對象及其關(guān)聯(lián)。

?

  Ogre::SceneManager是OGRE的場景管理器,負(fù)責(zé)組織和管理場景中的物體,并將物體發(fā)送到渲染系統(tǒng)進(jìn)行渲染。OGRE將現(xiàn)實(shí)世界中的場景劃分成抽象的不同空間,這些空間還可以劃分成更小的子空間。每個空間都由一個場景節(jié)點(diǎn)SceneNode對象來管理,場景節(jié)點(diǎn)將處理移動、旋轉(zhuǎn)和縮放等與空間相關(guān)的行為。在每個場景節(jié)點(diǎn)之上可以掛載各種場景元素,如Entity、Light、Camera等。OGRE將大量場景節(jié)點(diǎn)按照空間的劃分層次組織成樹狀結(jié)構(gòu),從而實(shí)現(xiàn)對整個場景的有序、高效管理。
3? 系統(tǒng)實(shí)現(xiàn)與結(jié)果
3.1 使用OGRE繪制視景
  使用OGRE管理場景資源和繪制虛擬展廳的主要過程如下:
 ?。?)系統(tǒng)啟動,檢測OGRE動態(tài)鏈接庫;設(shè)備信息管理器從設(shè)備信息文件中讀入設(shè)備信息進(jìn)行初始化。
 ?。?)資源管理器從外部文件中載入系統(tǒng)需要使用的資源,包括模型文件(.mesh)、骨骼動畫(.skeleton)、粒子模板定義文件(.particle)、材質(zhì)定義文件(.material),以及各種圖像文件。
  (3)建立場景管理器,建立成功后系統(tǒng)從場景文件中載入場景,并按照文件設(shè)置創(chuàng)建虛擬場景。整個場景由若干場景節(jié)點(diǎn)按照空間的劃分層次組織成樹狀結(jié)構(gòu)。
 ?。?)場景節(jié)點(diǎn)從瓷器三維模型定義文件中載入瓷器,載入后按模型文件指定值設(shè)置瓷器擺放的初始位置。
  (5)OGRE幀監(jiān)聽器開始循環(huán)監(jiān)聽,讀取串口或鼠標(biāo)鍵盤輸入,并進(jìn)行處理;然后將數(shù)據(jù)發(fā)送至相應(yīng)的場景節(jié)點(diǎn),場景節(jié)點(diǎn)通知綁定在其上的粒子發(fā)射器發(fā)射粒子;最后,OGRE渲染系統(tǒng)將視景渲染到顯示終端。
  OGRE的場景管理器按照場景文件創(chuàng)建虛擬展廳。本系統(tǒng)中定義了一種xml 格式的場景文件,其中關(guān)鍵信息是場景節(jié)點(diǎn)結(jié)構(gòu)。xml 的樹型結(jié)構(gòu)正好與場景節(jié)點(diǎn)的樹型結(jié)構(gòu)一致,該文件規(guī)定了節(jié)點(diǎn)對應(yīng)的網(wǎng)格模型、節(jié)點(diǎn)的縮放比例、節(jié)點(diǎn)的位置方向、是否是靜態(tài)物體。場景文件被載入后,系統(tǒng)對 xml 文件中的Node 節(jié)點(diǎn)進(jìn)行遍歷,遇到 Node 節(jié)點(diǎn)時在 OGRE 應(yīng)用程序中創(chuàng)建場景節(jié)點(diǎn)Ogre::SceneNode。
3.2 用戶交互的實(shí)現(xiàn)
  在虛擬漫游系統(tǒng)中,系統(tǒng)通過不斷改變視點(diǎn)和觀察點(diǎn)的位置來產(chǎn)生視景的三維動畫。本系統(tǒng)中的場景控制主要包括以下兩個方面:鍵盤漫游和鼠標(biāo)控制。鍵盤漫游就是用戶通過操縱鍵盤來實(shí)現(xiàn)在三維場景中的任意漫游。通過鍵盤漫游用戶可以靈活、準(zhǔn)確地對場景進(jìn)行全方位觀察。鼠標(biāo)控制則是利用鼠標(biāo)進(jìn)行模型的多角度觀察以及放大、縮小等詳細(xì)查看場景對象。鍵盤控制前進(jìn)、后退、左移、右移,鼠標(biāo)控制視野的抬頭、低頭、左右旋轉(zhuǎn)。此外,用戶可用鼠標(biāo)選擇對象,對指定對象進(jìn)行瀏覽,其右鍵功能可以詳細(xì)查看瓷器信息的文本描述,包括瓷器名稱、尺寸、產(chǎn)地、特性描述等。圖5(a)、(b)分別給出了一幅陶瓷虛擬展廳的全景圖和使用鼠標(biāo)控制詳細(xì)觀察所選定瓷器的近景圖。

?


  本文使用相關(guān)虛擬現(xiàn)實(shí)技術(shù)實(shí)現(xiàn)了一個具有樣品擺放和展示、用戶交互與場景漫游功能的陶瓷虛擬展廳原型系統(tǒng)。利用功能強(qiáng)大的開源三維圖形渲染引擎OGRE完成虛擬場景的資源組織與管理,極大地降低了開發(fā)成本并縮短了開發(fā)周期,使得系統(tǒng)具有良好的平臺適應(yīng)性和可擴(kuò)展性。陶瓷虛擬展廳克服了傳統(tǒng)展示方式真實(shí)感較差,交互性不強(qiáng),而且展示成本高的缺點(diǎn),為實(shí)現(xiàn)快速、低成本的陶瓷樣品展示和縮短交易時間提供了一條可行的思路。同時,虛擬展示系統(tǒng)如能夠與企業(yè)現(xiàn)有的計算機(jī)輔助設(shè)計系統(tǒng)及在線銷售系統(tǒng)進(jìn)行整合,將很好地實(shí)現(xiàn)陶瓷產(chǎn)品設(shè)計、樣品展示、在線訂單一體化,極大降低企業(yè)成本,加快產(chǎn)品銷售速度。


參考文獻(xiàn)
[1]?蔡衛(wèi)紅. 德化陶瓷業(yè)國際化的戰(zhàn)略選擇[J]. 發(fā)展研究, 2006,22(1): 42-43.
[2]?石教英. 虛擬現(xiàn)實(shí)基礎(chǔ)及實(shí)用算法[M]. 北京: 科學(xué)出版社, 2002.
[3]?胡安林, 蘭海. 3ds Max材質(zhì)與貼圖應(yīng)用技法精粹[M]. 北京: 科學(xué)出版社, 2008.
[4]?Mage 小組.OGRE(Object-Oriented Graphics Rendering Engine)使用指南, 2003.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。