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

德化陶瓷虛擬展廳

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

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

?

  德化是聞名世界的瓷都,并且逐漸成為全國最大的工藝陶瓷生產(chǎn)與出口基地[1]。目前德化陶瓷產(chǎn)品的展示主要是通過在線的圖片展示和離線的樣品展覽來實現(xiàn),。對于這兩種傳統(tǒng)的樣品展示方式,,文字和圖片展示只能提供靜態(tài)的局部的視覺體驗,真實感和交互性都比較差,。而實物展覽則要求客戶花費不菲的時間和金錢成本到現(xiàn)場參觀,,這往往也會顯著延長客戶下訂單的周期。近年來,,虛擬現(xiàn)實技術(shù)在物品展示和場景重建的應(yīng)用中日益受到人們的關(guān)注,。虛擬現(xiàn)實利用計算機(jī)制作出來的類似真實世界的虛擬環(huán)境,并可提供觀者實時性的互動和沉浸式的逼真感受[2],,它為快速的展示瓷器樣品和發(fā)布產(chǎn)品信息,、降低交易成本和加速產(chǎn)品銷售提供了一種可行的思路。
1 系統(tǒng)概述
  本課題利用相關(guān)的虛擬現(xiàn)實技術(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實現(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)集成了豐富的第三方插件,使得它具有強大的三維動畫和特技效果制作等功能[3],。本文使用3DS MAX 9.0建立展廳和陶瓷產(chǎn)品的實體模型,,并利用相關(guān)插件將其轉(zhuǎn)化為本系統(tǒng)支持的內(nèi)部文件格式。
  獲取建立實體模型的相關(guān)參數(shù)是建模的準(zhǔn)備工作,。數(shù)據(jù)采集往往可以通過使用相應(yīng)的測量設(shè)備測出產(chǎn)品原型或產(chǎn)品實物若干組點的坐標(biāo),,進(jìn)而計算出模型參數(shù)。更簡單且在實際應(yīng)用中可行的一種方法是由產(chǎn)品設(shè)計者提供模型參數(shù),。繪制表面紋理圖案是增強瓷器產(chǎn)品真實感的重要步驟,,但是直接使用3DS MAX建模瓷器的表面紋理是一個十分困難的工作。通常,,要將實物圖片貼到三維模型的表面,,使瓷器產(chǎn)品具有更加逼真的視覺效果,這些實物圖片稱為紋理貼圖,。在具體操作中,,先拍攝不同角度的實體照片,再用Photoshop對照片剪裁,、校正和拼接等處理,,最終得到所需的紋理貼圖。如圖2所示,,整個瓷器產(chǎn)品的三維建模主要包括圖片處理和實體模型的建立兩個部分,。

?

?

  圖3給出了一個瓷器產(chǎn)品建模的實例。紋理貼圖被導(dǎo)入到3DS MAX并被貼合到瓷器的三維模型表面,,然后賦予其真實的材質(zhì),、環(huán)境、燈光等,再通過渲染器渲染出逼真的效果,。從圖3(b)可以看出,,本文方法創(chuàng)建出的瓷器模型與真實的瓷器效果非常接近。本文系統(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)組織和管理場景資源以及實現(xiàn)虛擬展廳的實時漫游,。OGRE是用C++開發(fā)的面向?qū)ο笄沂褂渺`活的3D圖形引擎,讓開發(fā)者能更方便和直接地開發(fā)基于3D硬件設(shè)備的應(yīng)用程序或游戲,。OGRE中的類庫對更底層的Direct3D和OpenGL系統(tǒng)庫的全部使用細(xì)節(jié)進(jìn)行了抽象,,并提供了基于現(xiàn)實世界對象的接口和其他類。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)實世界中的場景劃分成抽象的不同空間,這些空間還可以劃分成更小的子空間,。每個空間都由一個場景節(jié)點SceneNode對象來管理,,場景節(jié)點將處理移動、旋轉(zhuǎn)和縮放等與空間相關(guān)的行為,。在每個場景節(jié)點之上可以掛載各種場景元素,,如Entity,、Light、Camera等,。OGRE將大量場景節(jié)點按照空間的劃分層次組織成樹狀結(jié)構(gòu),,從而實現(xiàn)對整個場景的有序、高效管理,。
3? 系統(tǒng)實現(xiàn)與結(jié)果
3.1 使用OGRE繪制視景
  使用OGRE管理場景資源和繪制虛擬展廳的主要過程如下:
 ?。?)系統(tǒng)啟動,檢測OGRE動態(tài)鏈接庫,;設(shè)備信息管理器從設(shè)備信息文件中讀入設(shè)備信息進(jìn)行初始化,。
  (2)資源管理器從外部文件中載入系統(tǒng)需要使用的資源,,包括模型文件(.mesh)、骨骼動畫(.skeleton),、粒子模板定義文件(.particle),、材質(zhì)定義文件(.material),以及各種圖像文件,。
 ?。?)建立場景管理器,建立成功后系統(tǒng)從場景文件中載入場景,,并按照文件設(shè)置創(chuàng)建虛擬場景,。整個場景由若干場景節(jié)點按照空間的劃分層次組織成樹狀結(jié)構(gòu)。
 ?。?)場景節(jié)點從瓷器三維模型定義文件中載入瓷器,,載入后按模型文件指定值設(shè)置瓷器擺放的初始位置。
 ?。?)OGRE幀監(jiān)聽器開始循環(huán)監(jiān)聽,,讀取串口或鼠標(biāo)鍵盤輸入,并進(jìn)行處理,;然后將數(shù)據(jù)發(fā)送至相應(yīng)的場景節(jié)點,,場景節(jié)點通知綁定在其上的粒子發(fā)射器發(fā)射粒子;最后,,OGRE渲染系統(tǒng)將視景渲染到顯示終端,。
  OGRE的場景管理器按照場景文件創(chuàng)建虛擬展廳。本系統(tǒng)中定義了一種xml 格式的場景文件,,其中關(guān)鍵信息是場景節(jié)點結(jié)構(gòu),。xml 的樹型結(jié)構(gòu)正好與場景節(jié)點的樹型結(jié)構(gòu)一致,該文件規(guī)定了節(jié)點對應(yīng)的網(wǎng)格模型,、節(jié)點的縮放比例,、節(jié)點的位置方向、是否是靜態(tài)物體。場景文件被載入后,,系統(tǒng)對 xml 文件中的Node 節(jié)點進(jìn)行遍歷,,遇到 Node 節(jié)點時在 OGRE 應(yīng)用程序中創(chuàng)建場景節(jié)點Ogre::SceneNode。
3.2 用戶交互的實現(xiàn)
  在虛擬漫游系統(tǒng)中,,系統(tǒng)通過不斷改變視點和觀察點的位置來產(chǎn)生視景的三維動畫,。本系統(tǒng)中的場景控制主要包括以下兩個方面:鍵盤漫游和鼠標(biāo)控制。鍵盤漫游就是用戶通過操縱鍵盤來實現(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ù)實現(xiàn)了一個具有樣品擺放和展示,、用戶交互與場景漫游功能的陶瓷虛擬展廳原型系統(tǒng)。利用功能強大的開源三維圖形渲染引擎OGRE完成虛擬場景的資源組織與管理,,極大地降低了開發(fā)成本并縮短了開發(fā)周期,,使得系統(tǒng)具有良好的平臺適應(yīng)性和可擴(kuò)展性。陶瓷虛擬展廳克服了傳統(tǒng)展示方式真實感較差,,交互性不強,,而且展示成本高的缺點,為實現(xiàn)快速,、低成本的陶瓷樣品展示和縮短交易時間提供了一條可行的思路,。同時,,虛擬展示系統(tǒng)如能夠與企業(yè)現(xiàn)有的計算機(jī)輔助設(shè)計系統(tǒng)及在線銷售系統(tǒng)進(jìn)行整合,將很好地實現(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)實基礎(chǔ)及實用算法[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)站贊同其觀點。轉(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,;郵箱:[email protected]