亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于結(jié)構(gòu)權(quán)重的三維模型動態(tài)約簡方法的研究*

        2021-03-01 00:39:46歐陽會東吳文江
        關(guān)鍵詞:面片約簡視點

        歐陽會東,吳文江,胡 毅

        (1.中國科學院大學,北京 100049 ;2.中國科學院沈陽計算技術(shù)研究所,沈陽 110168 ;3.沈陽高精數(shù)控智能技術(shù)股份有限公司,沈陽 110168)

        0 引言

        隨著“中國制造2025”和“工業(yè)4.0”在國內(nèi)的提出,工業(yè)生產(chǎn)的數(shù)字化建設也愈發(fā)重要。近年來,虛擬現(xiàn)實、數(shù)字孿生等技術(shù)的迅速發(fā)展也為數(shù)字化建設提供了強大的技術(shù)支持[1-3]。計算機硬件水平雖然在高速的發(fā)展,但是虛擬三維模型的渲染速度也在隨著用戶對模型精度的要求的提高越來越無法滿足需要。針對3D場景中模型的渲染,國內(nèi)外學者提出了很多不同的解決方法,如細節(jié)層次模型LOD(Level of Detail)技術(shù),基于GPU的渲染加速技術(shù)等[4-6]。上述方法雖然較大的提升了模型的渲染速度,但是上述方法都是對三維模型的整體進行渲染。針對復雜度高,子結(jié)構(gòu)較多的三維模型,仍然存在渲染速度過慢,GPU和內(nèi)存占用率過高的問題。

        本文通過研究三維模型的結(jié)構(gòu)特征,發(fā)現(xiàn)三維模型在不同的視點距離下,部分結(jié)構(gòu)的渲染對模型整體真實度的影響較小,這部分模型結(jié)構(gòu)對模型整體真實度的影響因子很低。根據(jù)模型子結(jié)構(gòu)相對于模型整體的體積比例不同,隨著視點與模型的距離變化,可以動態(tài)的計算各個子結(jié)構(gòu)的渲染度,通過與渲染閾值進行比較,可以避免對影響因子較低的結(jié)構(gòu)進行渲染。該方法可以較為明顯的減小三維模型的渲染壓力。能夠在不影響模型整體真實度的情況下,提高模型的渲染速度,降低GPU和內(nèi)存的占用率。

        1 三維模型結(jié)構(gòu)的權(quán)重系數(shù)的確定

        本文是根據(jù)三維模型與視點的距離,確定不同結(jié)構(gòu)的渲染程度。各個結(jié)構(gòu)的權(quán)重系數(shù)可以通過以下3步進行確定:

        (1)確定主要模型結(jié)構(gòu):主要模型結(jié)構(gòu)為三維模型的暴露在視點范圍內(nèi)的結(jié)構(gòu)。針對這部分結(jié)構(gòu),賦予較大的權(quán)重系數(shù),即使模型與視點的距離很大,也能保證視點范圍內(nèi)模型的整體真實度。

        (2)確定次要模型結(jié)構(gòu):次要的模型結(jié)構(gòu)為不暴露在視點范圍內(nèi)的結(jié)構(gòu)。這部分結(jié)構(gòu)的渲染度會跟隨視點距離模型的遠近不斷改變,從而動態(tài)的對模型結(jié)構(gòu)進行約簡。

        (3)針對每一個模型結(jié)構(gòu)相對于模型整體的的體積比,賦予模型結(jié)構(gòu)不同的權(quán)重系數(shù)。當視點與模型的距離非常遠的時候,細小的模型結(jié)構(gòu)的渲染對模型整體的影響將會變得很小,此時可以放棄這部分結(jié)構(gòu)的渲染,從而節(jié)省系統(tǒng)資源,提高渲染速度。

        2 動態(tài)約簡方法的實現(xiàn)

        動態(tài)約簡的實現(xiàn)主要分為三個方面:首先計算模型結(jié)構(gòu)相對于整體的體積比,然后判斷模型結(jié)構(gòu)是否在視點范圍內(nèi),并計算視點與模型之間的距離,最后計算模型結(jié)構(gòu)的渲染度,通過渲染度與渲染閾值的比較,判斷當前結(jié)構(gòu)是否需要進行渲染,實現(xiàn)渲染過程中對模型結(jié)構(gòu)的動態(tài)約簡。

        2.1 計算三維模型結(jié)構(gòu)的體積

        Unity3d引擎中,每一個模型都有MeshFilter組件,MeshFilter組件中又包含了Mesh屬性。Mesh屬性中記錄了vertices(頂點數(shù)據(jù)數(shù)組)、triangles(三角形頂點索引數(shù)組)、normals(法線向量數(shù)組)、uv(紋理坐標數(shù)組)等信息。針對每一個模型都有MeshFilter(網(wǎng)格過濾器)屬性。

        圖1 三維立方體模型圖

        為了計算三維模型的體積,首先我們需要取得三維模型所有頂點及三角面片的數(shù)據(jù),Unity3d中提供了mesh.vertices以及mesh.triangle兩個屬性,分別為vector3型數(shù)組和int型數(shù)組。其中mesh.vertices存儲的就是平面的頂點信息,mesh.triangles存儲的是三角形的頂點繪制順序。然后將計算的代碼腳本掛載于需要計算體積的模型結(jié)構(gòu)上。以一個三維立方體為例,如圖1所示。

        首先通過mesh.vertices獲取當前模型的三角面片所有頂點順序,然后根據(jù)渲染順序計算每三個連續(xù)繪制頂點與中心坐標點組合而成的三棱錐的體積。Unity3d引擎中,每個模型自身的中心坐標點為(0,0,0),假設三棱錐的三個連續(xù)繪制頂點坐標為分別為(x1,y1,z1),(x2,y2,z2),(x3,y3,z3)。根據(jù)坐標向量即可通過行列式計算三棱錐的體積,即空間坐標系中的三棱錐的體積計算公式如下所示:

        (1)

        最后統(tǒng)計所有三棱錐的體積之和,即可以得到當前三維模型結(jié)構(gòu)的體積。

        2.2 視點范圍的判斷方法

        Unity3d引擎中,與視點范圍相關(guān)的坐標系分別為視口坐標系與世界坐標系。視口坐標系用于描述整個渲染畫面的坐標,左下角為(0,0),右上角為(1,1)。世界坐標系為整個渲染場景的坐標系,可以通過transform.position()函數(shù)獲取。為了判斷模型是否在視點范圍內(nèi),首先需要判斷當前模型在視窗的坐標是否在視口坐標系的范圍類,然后通過點積運算判斷模型是否在攝像機的前面,最后根據(jù)上述的計算結(jié)構(gòu)即可確定模型結(jié)構(gòu)是否在視點的范圍內(nèi),詳細的流程如圖2所示。

        圖2 視點范圍判斷流程圖

        2.3 視點與模型之間的距離

        本文主要通過Unity3d軟件進行研究及實驗。距離的計算采用的是Unity3d軟件自帶的Vector3.Distance函數(shù),調(diào)用該函數(shù)可以計算出視點與模型之間的距離L(單位為m),函數(shù)偽代碼如下:

        float L=Vector3.Distance(transform1.position, transform2.position)

        2.4 渲染度計算

        本文算法在判斷三維模型的某個結(jié)構(gòu)是否渲染主要考慮兩個因素,一個是該結(jié)構(gòu)的體積Vi,另一個是視點與該模型之間的距離L,通過以上因素提出了渲染度以及渲染閾值的概念 。其中渲染度S定義公式為:

        (2)

        其中,當前模型結(jié)構(gòu)在視點范圍內(nèi)時P的值為1,否則為0,σ為視點范圍內(nèi)模型結(jié)構(gòu)的權(quán)重系數(shù)。ρ為體積占比的權(quán)重系數(shù)。

        針對每一個三維模型,設置一個渲染閾值M,并通過 Renderer.enabled 屬性控制其渲染。根據(jù)公式(1)計算該結(jié)構(gòu)的渲染度。當結(jié)構(gòu)渲染度小于閾值的時候,該結(jié)構(gòu)在通過腳本控制取消渲染。只有結(jié)構(gòu)的渲染度大于或等于渲染閾值的時候,腳本才將其渲染出來。根據(jù)不同計算機的硬件條件,可以設置不同精度的σ和ρ,σ和ρ越大,渲染的模型精度越高,隨著距離的增大,渲染的模型結(jié)構(gòu)數(shù)量越多。也可以宏觀的調(diào)節(jié)渲染閾值M的值,對所有模型結(jié)構(gòu)的渲染進行統(tǒng)一控制。

        3 實驗分析

        3.1 實驗環(huán)境

        實驗主要工具為Unity3d軟件,硬件配置如表1所示。

        表1 硬件配置表

        3.2 實驗過程與結(jié)果

        為了驗證基于三維模型結(jié)構(gòu)權(quán)重的動態(tài)約簡方法,使用不同三角面片數(shù)量的模型進行實驗,下圖為采用的實驗模型示意圖,其中圖3為實驗所用的模型結(jié)構(gòu)透視圖,圖4為模型實體圖。

        圖3 模型結(jié)構(gòu)透視圖

        圖4 模型實體圖

        該模型總計有547個子結(jié)構(gòu),216 802個三角面片,通過多次實驗,不斷調(diào)整參數(shù)的數(shù)值,實驗最終設置視點范圍內(nèi)模型結(jié)構(gòu)的權(quán)重系數(shù)σ為100,體積的權(quán)重系數(shù)ρ為1,渲染閾值M為0.75, 然后對模型的結(jié)構(gòu)進行體積計算并賦予相應的權(quán)重。通過調(diào)整視點與模型的遠近,記錄當前場景中的三角面片數(shù)量,幀率以及此時視點與模型之間的距離。表2為記錄的主要實驗數(shù)據(jù)。

        表2 面片數(shù)量變化表

        為了驗證方法的通用性,同時對三個不同三角面片數(shù)量的三維模型進行渲染,并繪制出三角面片數(shù)量根據(jù)距離的變化的折線圖,如圖5所示。其中縱軸為三角面片數(shù)量,橫軸為視點與模型之間的距離 。

        圖5 三角面片數(shù)量變化折線圖

        由折線圖可以觀察到,模型在視點與其距離逐漸增大的過程中,三角面片渲染的數(shù)量在逐步降低。并且隨著距離的進一步增大,開始趨向于一個穩(wěn)定數(shù)值,這樣距離過大時也保證了模型在視點范圍內(nèi)不會消失。

        在上述研究的基礎上,將該方法應用到虛擬現(xiàn)實場景中。通過對比試驗論證該方法的實用性,并繪制距離與FPS(畫面每秒傳輸幀數(shù))的變化圖。其中實驗1為不使用三維模型動態(tài)約簡方法,實驗2使用了三維模型動態(tài)約簡方法。

        圖6 實驗結(jié)果對比圖

        實驗結(jié)果顯示,三維模型動態(tài)約簡方法的應用,大幅度提升了虛擬現(xiàn)實場景渲染的流暢度,隨著視點與三維場景的距離的增加,系統(tǒng)整體的FPS不斷在上升并逐漸趨于穩(wěn)定。其中使用了三維模型動態(tài)約簡方法的實驗2的FPS隨著距離的增加一直高于未使用該方法的實驗1。

        4 結(jié)論

        虛擬現(xiàn)實、數(shù)字孿生等技術(shù)一直是很多國內(nèi)外學者研究的重點。三維模型作為這些技術(shù)的基礎,針對三維模型的簡化也有很多不同的方法。本文提出了基于模型結(jié)構(gòu)權(quán)重的三維模型動態(tài)約簡方法,該方法首先計算了模型結(jié)構(gòu)的體積,模型結(jié)構(gòu)與視點之間的距離,并判斷當前模型結(jié)構(gòu)是否在視點范圍內(nèi),然后通過渲染度公式計算每個模型結(jié)構(gòu)渲染度,最后通過渲染度與渲染閾值的比較,通過腳本控制當前模型結(jié)構(gòu)的渲染。 該方法針對復雜的三維模型以及大型三維場景的實時渲染,在保證模型真實性的前提下,大幅度減少了三角面片的渲染數(shù)量,提高了模型的渲染速度,保證了三維場景渲染的流暢度,通過對比實驗,在距離達到100 m以上時,三維場景的渲染幀率有了顯著提升。 同時本文所提出的渲染度公式中加入了人工調(diào)整的控制參數(shù),針對不同硬件配置的機器,調(diào)整不同的參數(shù)大小,保證了硬件配置較低的計算機同樣可以快速渲染模型及三維場景,賦予了該方法更多的靈活性與適用范圍。

        猜你喜歡
        面片約簡視點
        初次來壓期間不同頂板對工作面片幫影響研究
        基于二進制鏈表的粗糙集屬性約簡
        實值多變量維數(shù)約簡:綜述
        自動化學報(2018年2期)2018-04-12 05:46:01
        基于模糊貼近度的屬性約簡
        甜面片里的人生
        幸福家庭(2016年3期)2016-04-05 03:47:08
        視點
        河南電力(2016年5期)2016-02-06 02:11:24
        讓你每天一元錢,物超所值——《今日視點—2014精萃》序
        新聞前哨(2015年2期)2015-03-11 19:29:22
        兩會視點
        中國水利(2015年5期)2015-02-28 15:12:40
        青海尕面片
        飲食科學(2014年10期)2014-10-29 16:58:38
        老伴逼我搟面片
        色www亚洲| 亚洲精品成人无码中文毛片| 国产亚洲一区二区手机在线观看| 国产偷国产偷高清精品| 亚洲处破女av一区二区| 日韩亚洲精品国产第二页| 久久久久亚洲av无码麻豆| 久久久窝窝午夜精品| 一区二区三区午夜视频在线观看| 在线精品国产亚洲av麻豆| 男女猛烈xx00免费视频试看| 久久99精品久久久久久野外| 久九九久视频精品网站| 久久久麻豆精亚洲av麻花| 国产啪亚洲国产精品无码| 亚洲AV永久无码制服河南实里 | 水蜜桃一二二视频在线观看免费| 91久久国产香蕉熟女线看| 免费无码av一区二区| 亚洲精品成人网久久久久久| 久草精品手机视频在线观看| 高清日韩av在线免费观看| 性高湖久久久久久久久| 永久国产盗摄一区二区色欲| 国产精品久久婷婷六月| 欧美熟妇另类久久久久久多毛 | 91成人午夜性a一级毛片| 精品蜜桃av免费观看| 少妇爆乳无码专区| 国产人碰人摸人爱视频| 日韩精品一区二区av在线| 国内精品少妇高潮视频| 真人作爱免费视频| 二区久久国产乱子伦免费精品| 日本在线免费不卡一区二区三区| 久久午夜羞羞影院免费观看| 婷婷亚洲综合五月天小说| 日韩熟女一区二区三区| 亚洲最大免费福利视频网| 风韵饥渴少妇在线观看| 娇妻粗大高潮白浆|