国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于著色器LOD的模型間平滑過(guò)渡技術(shù)*

2018-12-05 12:02葉迎萍吳文江樸美燕劉勁松
關(guān)鍵詞:視距高斯紋理

葉迎萍,吳文江,胡 毅,樸美燕,劉勁松

(1.中國(guó)科學(xué)院大學(xué),北京 100049;2.中國(guó)科學(xué)院沈陽(yáng)計(jì)算技術(shù)研究所 高檔數(shù)控國(guó)家工程研究中心,沈陽(yáng) 110168;3.沈陽(yáng)高精數(shù)控智能技術(shù)股份有限公司,沈陽(yáng) 110168)

0 引言

隨著“工業(yè)4.0”和“中國(guó)制造2025”的提出,當(dāng)前制造業(yè)開(kāi)始從傳統(tǒng)以經(jīng)驗(yàn)為主的管理模式轉(zhuǎn)型為以數(shù)字信息為基礎(chǔ)的管理模式。數(shù)字化車間是以加工產(chǎn)品整個(gè)生命周期中的相關(guān)數(shù)據(jù)為基礎(chǔ),結(jié)合虛擬現(xiàn)實(shí)技術(shù),對(duì)整個(gè)生產(chǎn)過(guò)程進(jìn)行仿真、監(jiān)控、評(píng)估和優(yōu)化,并進(jìn)一步擴(kuò)展到整個(gè)產(chǎn)品生命周期的新型生產(chǎn)組織方式。它以數(shù)字化技術(shù)為手段,融合先進(jìn)的管理思想,提高生產(chǎn)效率,降低企業(yè)成本,切實(shí)提高車間的管理水平,是目前制造車間的發(fā)展方向[1-2]和中國(guó)制造2025的核心技術(shù)。其中,利用虛擬現(xiàn)實(shí)技術(shù)構(gòu)建的三維虛擬車間是數(shù)字化車間的一個(gè)重要部分。然而隨著車間場(chǎng)景大小、整體場(chǎng)景結(jié)構(gòu)的復(fù)雜程度,以及用戶對(duì)場(chǎng)景質(zhì)量需求的增加,在實(shí)際的虛擬車間開(kāi)發(fā)過(guò)程中,可能出現(xiàn)場(chǎng)景加載時(shí)間過(guò)長(zhǎng)、實(shí)時(shí)顯示滯后,甚至出現(xiàn)用戶交互行為處理滯后問(wèn)題,嚴(yán)重影響虛擬車間的交互體驗(yàn),因此對(duì)虛擬車間進(jìn)行場(chǎng)景優(yōu)化勢(shì)在必行。

LOD技術(shù),即層次細(xì)節(jié)技術(shù),作為目前主要的場(chǎng)景優(yōu)化方法,它根據(jù)物體的重要性、視點(diǎn)的相對(duì)速度或者位置等衡量標(biāo)準(zhǔn),動(dòng)態(tài)改變場(chǎng)景中三維模型的復(fù)雜程度,模型距離視點(diǎn)越近,顯示的模型細(xì)節(jié)越豐富,從而降低了CPU和GPU需要處理的頂點(diǎn)數(shù)量,提高場(chǎng)景的渲染速度[3-4]。但是在虛擬車間場(chǎng)景中為同一模型提供較多不同精度的切換模型,場(chǎng)景運(yùn)行時(shí)會(huì)大幅度增加計(jì)算機(jī)系統(tǒng)內(nèi)存占用量;如果使用較少切換模型,在模型切換臨界點(diǎn),可能會(huì)出現(xiàn)嚴(yán)重的畫(huà)面閃爍問(wèn)題[5-7]。因此,考慮系統(tǒng)運(yùn)行內(nèi)存占用問(wèn)題,可切換的模型個(gè)數(shù)一般都會(huì)控制在3個(gè)以下,因此多個(gè)模型之間進(jìn)行切換時(shí)的平滑過(guò)渡問(wèn)題也就顯得尤為重要。

目前模型間切換平滑過(guò)渡方法主要有兩種:第一種是模型-貼圖漸進(jìn)過(guò)渡方法,將原始紋理貼圖利用外部圖片壓縮工具生成多個(gè)不同質(zhì)量的紋理貼圖后根據(jù)距離進(jìn)行動(dòng)態(tài)切換[8-9],這種方法需要額外的貼圖文件,增加了貼圖文件的總體積;第二種是MipMap方法,紋理貼圖被處理成由一系列被預(yù)先計(jì)算和優(yōu)化過(guò)的圖片組成的文件后動(dòng)態(tài)切換[10-11],經(jīng)過(guò)處理后的紋理貼圖文件總體積也會(huì)相應(yīng)增加。

本研究利用計(jì)算機(jī)中可編程管線著色器,提出一種基于著色器LOD的模型間平滑過(guò)渡技術(shù)。該技術(shù)根據(jù)模型和視點(diǎn)的距離遠(yuǎn)近,在著色器中直接對(duì)貼圖輸出顏色進(jìn)行不同程度的高斯模糊處理,進(jìn)而達(dá)到模型間平滑過(guò)渡的效果。

1 著色器LOD平滑過(guò)渡方法

場(chǎng)景中物體從三維模型到屏幕畫(huà)面,需要經(jīng)過(guò)著色器進(jìn)行一系列的處理。著色器是可編程管線,它可以接收CPU計(jì)算出三維模型頂點(diǎn)的相關(guān)信息,如位置、法線、貼圖坐標(biāo)等,利用頂點(diǎn)著色器將此時(shí)的模型坐標(biāo),依次轉(zhuǎn)換為世界坐標(biāo),觀察坐標(biāo),投影坐標(biāo),再利用像素著色器,根據(jù)需要對(duì)紋理貼圖進(jìn)行處理,填充到柵格化后的圖形像素中[12]。

根據(jù)計(jì)算機(jī)圖形圖像渲染上述機(jī)制,提出基于著色器LOD模型間平滑過(guò)渡技術(shù)。該方法利用著色器中的頂點(diǎn)著色器和像素著色器配合使用。在頂點(diǎn)著色器中利用Model Matrix和View Matrix將輸入的頂點(diǎn)數(shù)據(jù)從Model坐標(biāo)系轉(zhuǎn)換到Camera 坐標(biāo)系下。通過(guò)一系列計(jì)算后獲取物體在Z方向上的位置和整個(gè)Z方向上歸一化后的視距。根據(jù)現(xiàn)實(shí)生活中人眼看近處物體清晰遠(yuǎn)處物體模糊情況,在像素著色器主要采用高斯模糊對(duì)紋理貼圖進(jìn)行模糊處理,從而降低紋理貼圖細(xì)節(jié),并根據(jù)頂點(diǎn)著色器處理得到的不同視距值,對(duì)紋理進(jìn)行不同程度的模糊處理,如圖1所示。

圖1 著色器LOD原理示意圖

2 關(guān)鍵技術(shù)

著色器LOD中的關(guān)鍵技術(shù)主要可分為兩個(gè)部分:首先獲取物體距離視點(diǎn)的距離,這里采用歸一化后的視距,然后是對(duì)紋理貼圖進(jìn)行的處理方法,這里采用高斯模糊算法。

2.1 歸一化視距δ計(jì)算

在觀察者坐標(biāo)系下,存在一個(gè)近截面和一個(gè)遠(yuǎn)截面,只有在這兩個(gè)截面范圍內(nèi)的物體才會(huì)顯示出來(lái)。在頂點(diǎn)著色器中,通過(guò)Model Matrix和Camera Matrix將CPU處理好的原始物體坐標(biāo)轉(zhuǎn)換到觀察者坐標(biāo)系中,物體投影到Z軸上的點(diǎn)到近截面中心點(diǎn)的距離和遠(yuǎn)截面中心點(diǎn)到近截面中心點(diǎn)的距離即為歸一化視距δ,如圖2所示。

假設(shè)在觀察者坐標(biāo)系中,此時(shí)視點(diǎn)為坐標(biāo)原點(diǎn)O,即(x0,y0,z0)=(0,0,0),三維物體為V,坐標(biāo)為(x1,y1,z1),OV間距離為dv,V投影到Z軸上的點(diǎn)為V′,V′到視點(diǎn)O距離為dz,OV和Z軸之間的夾角為θ,視點(diǎn)到遠(yuǎn)近截面的距離dnear和dfar,根據(jù)幾何知識(shí),視距比δ的計(jì)算方法見(jiàn)公式(1):

(1)

圖2 觀察者坐標(biāo)系示意圖

2.2 紋理貼圖高斯模糊算法

高斯模糊廣泛應(yīng)用于圖形圖像處理領(lǐng)域,使用該技術(shù)處理后的圖片可以降低圖片的細(xì)節(jié)。從本質(zhì)上看,高斯模糊就是一種數(shù)據(jù)平滑技術(shù),模糊后的圖片中的每一個(gè)像素點(diǎn)取周圍像素的平均值[13]。由于圖像是連續(xù)的,距離像素點(diǎn)之間距離越近相互作用越大,反之越小,因此計(jì)算平均值時(shí),分配的權(quán)重也應(yīng)該更大,二維高斯函數(shù)正好符合這個(gè)標(biāo)準(zhǔn),高斯函數(shù)在二維空間的定義公式為(2):

(2)

圖3 三維高斯函數(shù)示意圖

其中,σ為偏差,在給定σ值時(shí),該公式在二維空間產(chǎn)生的曲面是從中心開(kāi)始向四周呈現(xiàn)正態(tài)分布,如圖3所示。

高斯模糊從數(shù)學(xué)角度分析,圖片的高斯模糊過(guò)程相當(dāng)于圖片和高斯分布做卷積計(jì)算,見(jiàn)公式(3):

J(x,y,σ)=G(x,y,σ)×I(x,y)

(3)

在對(duì)紋理貼圖運(yùn)用高斯模糊算法處理時(shí),一方面利用高斯模糊是線性可分的的特性[14],先對(duì)紋理貼圖在水平方向進(jìn)行一維矩陣變換,再在垂直方向進(jìn)行一維矩陣變換,從而降低了采樣次數(shù);另一方面,通過(guò)對(duì)貼圖進(jìn)行多次迭代模糊處理提高圖片的模糊程度,從而降低了采樣階數(shù),提高了貼圖的模糊效率。

3 實(shí)驗(yàn)分析

3.1 動(dòng)態(tài)模型加載的數(shù)字化車間場(chǎng)景構(gòu)建

結(jié)合Unity3d開(kāi)發(fā)平臺(tái)和3ds Max建模工具,實(shí)現(xiàn)三級(jí)模型LOD的數(shù)字化車間三維場(chǎng)景,即場(chǎng)景中的物體模型一種具有三個(gè)不同精度的模型可供替換。

首先利用3ds Max中創(chuàng)建車間模型,并導(dǎo)入U(xiǎn)nity中,并利用uniLOD插件生成兩個(gè)低層次細(xì)節(jié)的車床模型。根據(jù)數(shù)字化車間布局圖,在Unity中先用高進(jìn)度模型按照相應(yīng)的比例進(jìn)行布局,如圖4所示。

圖4 Unity中數(shù)字化車間布局圖

利用Unity中的LODGroup組件和上述步驟創(chuàng)建的三個(gè)不同精度的車床模型,實(shí)現(xiàn)三級(jí)模型LOD[15]。當(dāng)車床與物體的視距比≤50%時(shí),使用高精度模型,當(dāng)50%<車床與物體的視距比≤70%時(shí),使用中檔精度模型,當(dāng)70%<車床與物體的視距比≤90%,使用低精度模型,否則Culled,如圖5所示。

3.2 模型間平滑過(guò)渡

對(duì)車床模型使用1024×1024紋理貼圖,分別利用著色器LOD技術(shù)、模型-貼圖過(guò)渡顯示方法以及Mipmap方法進(jìn)行進(jìn)行模型平滑過(guò)渡處理。

對(duì)于著色器LOD技術(shù),利用ShaderLab語(yǔ)言定義所需的Shader文件。采用三級(jí)模型切換方法,在一二級(jí)模型間采用三級(jí)Shader LOD,分別對(duì)上述貼圖進(jìn)行1,2,4次高斯模糊處理,在二三級(jí)模型間采用兩級(jí)Shader LOD,分別對(duì)上述貼圖進(jìn)行8,16次高斯模糊處理,每次都進(jìn)行2像素的模糊操作。

對(duì)于模型-貼圖過(guò)渡顯示方法[4],利用外部圖片壓縮軟件對(duì)上述貼圖進(jìn)行不同程度的壓縮處理,獲取5張不同質(zhì)量的紋理貼圖文件。同樣采用三級(jí)模型切換方法,在一二級(jí)模型間采用相對(duì)高質(zhì)量的3張貼圖進(jìn)行切換,在二三級(jí)模型間采用相對(duì)低質(zhì)量的2張貼圖進(jìn)行切換。

圖5 Unity中的LODGroup組件

對(duì)于Mipmap方法,直接利用Unity游戲引擎對(duì)上述貼圖進(jìn)行Mipmap處理,生成8張不同精度的貼圖,Unity自動(dòng)進(jìn)行貼圖切換。

實(shí)驗(yàn)結(jié)果顯示,使用上述三種方法均可以達(dá)到平滑過(guò)渡的效果。但是相對(duì)于模型-貼圖和Mapmip方法,著色器LOD方法在整個(gè)平滑過(guò)渡過(guò)程中,只需添加一個(gè)Shader文件,貼圖文件總大小不變。而采用模型-貼圖方法,同一貼圖需要多個(gè)不同質(zhì)量的貼圖,對(duì)于實(shí)驗(yàn)中的貼圖,應(yīng)用五張不同質(zhì)量的替換貼圖,文件大小依次為104.38KB、95.74KB、86.00KB、55.02KB及29.52KB,貼圖文件總大小從140.38KB增加到511.04KB,增加近72.5%;而對(duì)于Mipmap技術(shù),在Unity中直接對(duì)貼圖采用該技術(shù)后,統(tǒng)一貼圖文件中包括了8張不同精度的貼圖,因此大小也從140.38KB增加到341.4KB,增加了近58.6%,如表1所示。

表1 三種模型平滑過(guò)渡方法文件大小對(duì)比

根據(jù)以上實(shí)驗(yàn)可以得出,使用Shader LOD方法進(jìn)行模型間平滑過(guò)渡,不僅可以達(dá)到預(yù)期的效果,同時(shí)可以大幅度的降低系統(tǒng)運(yùn)行時(shí)貼圖文件內(nèi)存占用率,同時(shí)該Shader文件可以直接被任意貼圖使用,相對(duì)于模型-貼圖平滑方法,也大幅度減少了整個(gè)系統(tǒng)的貼圖文件數(shù)量。從用戶體驗(yàn)方面來(lái)說(shuō),使用Shader LOD方法對(duì)貼圖進(jìn)行漸進(jìn)模糊處理,讓三維場(chǎng)景中的物體可以達(dá)到近處清晰,遠(yuǎn)處模糊的效果,從而增加了整個(gè)虛擬車間的真實(shí)感,如圖6所示。

圖6 Shader LOD處理后的局部場(chǎng)景

4 結(jié)束語(yǔ)

利用虛擬現(xiàn)實(shí)技術(shù)對(duì)數(shù)字化車間進(jìn)行虛擬仿真是目前車間技術(shù)發(fā)展的趨勢(shì)。在實(shí)踐過(guò)程中,為了實(shí)現(xiàn)更好的用戶體驗(yàn),需要對(duì)場(chǎng)景進(jìn)行必要的優(yōu)化處理。LOD技術(shù)廣泛應(yīng)用于三維場(chǎng)景優(yōu)化方面,它根據(jù)物體和視點(diǎn)的距離動(dòng)態(tài)切換不同精度的模型。在模型切換時(shí)容易出現(xiàn)畫(huà)面閃爍。本文提出一種基于著色器LOD技術(shù)的模型間平滑過(guò)渡方法,同樣根據(jù)物體與視點(diǎn)之間的距離,利用著色器直接對(duì)物體進(jìn)行繪制到屏幕中的貼圖像素進(jìn)行高斯模糊處理,達(dá)到近處貼圖細(xì)節(jié)清晰,遠(yuǎn)處細(xì)節(jié)模糊的效果。相對(duì)于現(xiàn)有平滑過(guò)渡方法,該方法不僅可以大幅度降低系統(tǒng)運(yùn)行時(shí)的貼圖文件在內(nèi)存中占用率,還提高了數(shù)字化虛擬車間的真實(shí)性。

猜你喜歡
視距高斯紋理
基于BM3D的復(fù)雜紋理區(qū)域圖像去噪
俄羅斯
數(shù)學(xué)王子高斯
天才數(shù)學(xué)家——高斯
使用紋理疊加添加藝術(shù)畫(huà)特效
一種基于非視距誤差補(bǔ)償?shù)膮f(xié)同定位算法
安全視距應(yīng)該成為道路安全管理的基礎(chǔ)共識(shí)
TEXTURE ON TEXTURE質(zhì)地上的紋理
淺談道路設(shè)計(jì)中的停車視距與驗(yàn)證
消除凹凸紋理有妙招!