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

?

一種場景內(nèi)容分布的交互式渲染系統(tǒng)

2019-03-02 01:58柳有權(quán)張彩榮陳彥云
圖學(xué)學(xué)報 2019年1期
關(guān)鍵詞:客戶端分布式節(jié)點

孫 昭,柳有權(quán),張彩榮,石 劍,陳彥云

?

一種場景內(nèi)容分布的交互式渲染系統(tǒng)

孫 昭1,柳有權(quán)1,張彩榮1,石 劍2,陳彥云3

(1. 長安大學(xué)信息工程學(xué)院,陜西 西安 710064; 2. 中國科學(xué)院自動化研究所模式識別國家重點實驗室,北京 100190; 3. 中國科學(xué)院軟件研究所計算機(jī)科學(xué)國家重點實驗室,北京 100190)

近年來,三維虛擬場景的規(guī)模和復(fù)雜程度不斷提高,受到硬件的限制,一些應(yīng)用中的超大規(guī)模場景(如建筑群,城市等)很難在單機(jī)上進(jìn)行渲染或滿足可交互的需求。針對該問題,提出了一種分布式渲染框架,將大規(guī)模場景在內(nèi)容上進(jìn)行劃分,得到單一節(jié)點可渲染的子場景。這些子場景被分布到集群中不同的渲染節(jié)點進(jìn)行處理,其渲染結(jié)果根據(jù)深度信息進(jìn)行合成得到整個場景的最終渲染結(jié)果。為了降低交互響應(yīng)時間,需對子場景的渲染結(jié)果進(jìn)行壓縮傳輸。實驗充分驗證了提出的分布式渲染系統(tǒng)能夠高效處理超大規(guī)模場景的渲染和交互,并且具有良好的可擴(kuò)展性,能夠滿足很多領(lǐng)域中對大規(guī)模場景交互式渲染的需求。

渲染;分布式系統(tǒng);場景分布;交互式

近年來,計算機(jī)輔助設(shè)計在制造、建筑、機(jī)械設(shè)計和軟件開發(fā)等行業(yè)得到了廣泛地應(yīng)用,其模型對象通常具有規(guī)模大、精度高等特征。如,一套完整的建筑信息模型(building information modeling,BIM),通常包含多個建筑模型、鋼架結(jié)構(gòu)模型、管線模型等,其中每個模型都包含復(fù)雜的幾何信息。由于需要處理龐大的幾何數(shù)據(jù),所以對于此類場景的渲染是一個極具挑戰(zhàn)的問題。

由于渲染是一類計算密集型任務(wù),針對大規(guī)模場景,目前主流的方法是對其進(jìn)行簡化。通過模型簡化,可以得到“可渲染”的場景或提升場景的渲染效率,但是也會帶來一定的質(zhì)量損失。此外,對于大規(guī)模場景超過內(nèi)存限制的情況,也可以使用out-of-core渲染來進(jìn)行處理。在離線渲染中,人們通常使用集群(渲染農(nóng)場),通過增加計算資源來減少所需要的渲染時間,而該種集群渲染通常是基于幀或圖像區(qū)域進(jìn)行任務(wù)劃分,單一渲染節(jié)點上仍然需要完整的場景內(nèi)容數(shù)據(jù)。

如何提高渲染效率以滿足具體應(yīng)用的交互需求是渲染大規(guī)模場景所面臨的主要挑戰(zhàn)。對此,本文提出了一種分布式渲染框架來處理大規(guī)模場景的渲染和交互。首先,需將大規(guī)模場景在內(nèi)容上劃分為單一節(jié)點可渲染的子場景,并將其調(diào)度到渲染集群中的渲染節(jié)點上進(jìn)行處理。子場景的渲染結(jié)果將發(fā)送到客戶端,并根據(jù)場景深度信息進(jìn)行合成得到最終渲染結(jié)果。在整個過程中,客戶端產(chǎn)生的交互動作通過網(wǎng)絡(luò)消息通知渲染節(jié)點進(jìn)行處理,更新渲染結(jié)果。在網(wǎng)絡(luò)帶寬的限制下,為了降低交互響應(yīng)時間,可選擇一個高效的實時壓縮算法對渲染結(jié)果進(jìn)行壓縮傳輸,實驗表明本文提出的分布式渲染系統(tǒng)能夠達(dá)到可交互的性能,可以滿足實際應(yīng)用對大規(guī)模場景交互式渲染的需求。

1 相關(guān)工作

渲染可分為實時渲染和離線渲染。實時渲染是圖形數(shù)據(jù)的實時計算和輸出,主要應(yīng)用于3D游戲和交互式的可視化等[1]。由于對響應(yīng)時間有較高的要求,為了提升渲染性能,實時渲染在結(jié)果的真實感上會有所妥協(xié)。離線渲染針對動畫、電影等應(yīng)用,通過長時間的大量計算來模擬光線的物理傳播以獲得較高真實感的圖像。近年來,實時渲染和離線渲染得到了不斷發(fā)展,而隨著硬件性能的不斷提升,實時渲染的真實感也得到了很大的進(jìn)步。例如游戲畫面的分辨率和幀率越來越高(2048×1080,120 fps),效果也越來越真實。

大規(guī)模場景的渲染任務(wù)繁重且耗時長。針對大規(guī)模場景,LUEBKE[2]提出了一種幾何圖元刪減的方法,能夠在一定程度上降低場景的復(fù)雜程度。但是,該方法容易造成模型結(jié)構(gòu)的形變。除此之外,一些基于圖像的處理算法[3-4],嘗試使用自適應(yīng)分辨率紋理或使用圖像代替幾何圖元的方法來降低渲染的數(shù)據(jù)總量。但是與幾何圖元裁剪類似,此類渲染方法都是以犧牲視覺質(zhì)量為代價來換取場景繪制效率的提升。本文所提出的系統(tǒng)不依賴于模型簡化,但是可以使用模型簡化對場景進(jìn)行預(yù)處理來進(jìn)一步提升效率。

分布式渲染是將圖像渲染分布到多臺計算機(jī)上進(jìn)行處理的一種技術(shù)。MOLNAR等[5]提出了將分布式渲染架構(gòu)按照排序發(fā)生的順序和位置分為Sort-First、Sort-Middle及Sort-Last 3類,并分析了各自的計算、傳輸性能以及優(yōu)缺點。鄭利平等[6]針對地貌的渲染提出了基于Sort-Last的分布式渲染架構(gòu),其具有一定的靈活性和可擴(kuò)展性,適合于更一般的渲染服務(wù),如幾何體渲染。高官濤等[7]提出了一套基于Spark MapReduce的分布式渲染系統(tǒng),能夠顯著提高渲染速度,減輕開發(fā)所需的工作量。隨著移動設(shè)備的快速發(fā)展,遠(yuǎn)程渲染系統(tǒng)帶來了諸多便利,如CHEN等[8]提出了一種客戶端GPU加速的場景扭曲技術(shù),將渲染任務(wù)分布到客戶端和服務(wù)端共同渲染,最終進(jìn)行融合,可以大幅減少交互延遲并能提高用戶體驗。

針對大規(guī)模場景超過內(nèi)存限制的情況,VARADHAN和MANOCHA[9]提出了out-of-core渲染技術(shù),通過空間索引結(jié)構(gòu)快速對所需的數(shù)據(jù)進(jìn)行檢索,并通過調(diào)度算法實現(xiàn)顯存-內(nèi)存、內(nèi)存-外存之間的數(shù)據(jù)交換來進(jìn)行渲染。SCHEIBLAUER和WIMMER[10]使用out-of-core來渲染大規(guī)模點云數(shù)據(jù),并提出了點云選擇和交互編輯的算法。本文方法也可以使用out-of-core來渲染超過內(nèi)存限制的大規(guī)模子場景。

2 分布式渲染系統(tǒng)

2.1 系統(tǒng)概述

本文提出的分布式渲染系統(tǒng)架構(gòu)如圖1所示。客戶端與渲染節(jié)點組成Master-Slave結(jié)構(gòu)的分布式系統(tǒng),渲染客戶端(Master)負(fù)責(zé)渲染節(jié)點、渲染任務(wù)和場景資源的管理,并處理最終渲染結(jié)果的合成、展示和用戶交互;渲染節(jié)點(Slave)持有渲染所需的場景數(shù)據(jù)并提供計算資源。客戶端和渲染節(jié)點之間通過網(wǎng)絡(luò)消息進(jìn)行通信、傳遞任務(wù)、交互信息以及渲染中間結(jié)果。

圖1 分布式渲染系統(tǒng)架構(gòu)

2.2 分布式渲染流程

本文所提出的分布式渲染系統(tǒng)在處理渲染任務(wù)時,整個流程分為以下步驟:

步驟1.系統(tǒng)初始化,客戶端與渲染節(jié)點建立1-to-N的網(wǎng)絡(luò)連接。

步驟2.用戶發(fā)起渲染請求,客戶端基于渲染任務(wù)中場景在渲染節(jié)點上的分布,進(jìn)行子任務(wù)分配,并發(fā)送消息通知渲染節(jié)點。

步驟3.渲染節(jié)點接受到渲染任務(wù)后,根據(jù)內(nèi)容加載對應(yīng)的場景,并將結(jié)果發(fā)送給客戶端。

步驟4.客戶端在全部場景加載成功后通知渲染節(jié)點進(jìn)行渲染;若場景加載失敗則通知用戶,并通知渲染節(jié)點釋放資源。

步驟5.渲染節(jié)點接到渲染指令后對場景進(jìn)行渲染,將子場景的渲染結(jié)果(圖像及深度)發(fā)送給客戶端。

步驟6.客戶端接收到渲染節(jié)點的中間結(jié)果后,根據(jù)深度信息進(jìn)行合成,得到最終渲染結(jié)果。

步驟7.當(dāng)用戶產(chǎn)生交互行為,需要更新渲染結(jié)果時,客戶端發(fā)送消息通知渲染節(jié)點,回到步驟5進(jìn)行處理。

分布式渲染整體流程如圖2所示。

圖2 分布式渲染系統(tǒng)流程圖

2.3 渲染結(jié)果壓縮

在網(wǎng)絡(luò)上,直接傳輸渲染后的中間結(jié)果會對分布式渲染中響應(yīng)時間產(chǎn)生很大影響。所以為了降低交互延遲,需對渲染節(jié)點上渲染任務(wù)的結(jié)果進(jìn)行壓縮后傳輸。綜合考慮各種壓縮算法的壓縮比以及壓縮/解壓縮效率,可選擇Snappy無損壓縮算法對渲染結(jié)果進(jìn)行壓縮。Snappy是Google基于LZ77用C++語言編寫的快速數(shù)據(jù)壓縮與解壓程序庫,其目標(biāo)是有非常高的速度和合理的壓縮率。表1列出了Snappy和其他壓縮算法在性能上的對比[11]。

表1 多種壓縮算法性能對比

3 性能和結(jié)果

3.1 實驗環(huán)境與對象

本文使用2臺計算機(jī)作為渲染節(jié)點,以及一臺筆記本作為客戶端。客戶端與渲染節(jié)點之間通過千兆以太網(wǎng)絡(luò)進(jìn)行連接。渲染節(jié)點的配置為i7 3.40 GHz CPU,8 GB內(nèi)存以及NVIDIA GeForce GTX 750 Ti GPU。

本實驗對象將使用2個不同小區(qū)建筑的真實數(shù)據(jù)模型(場景A、B)作為測試數(shù)據(jù)。當(dāng)進(jìn)行場景劃分時,將每一棟樓作為一個子場景。場景A,B的大小分別為874 MB,2 215 MB,分別包含6個及14個子場景。圖3為場景B的模型俯視圖,可以看到小區(qū)建筑中包含了樓體、公路、湖泊等子場景。圖4分別展示了場景B中幕墻、整棟樓的鋼架結(jié)構(gòu)以及樓體本身等不同子場景的結(jié)構(gòu)模型。

圖3 場景B

圖4 場景B子場景

3.2 單機(jī)渲染性能

將場景A,B分別進(jìn)行加載,完成單機(jī)渲染。表2和表3分別列出了2個場景及其子場景在單一渲染節(jié)點上的渲染性能。

表2 場景A單機(jī)渲染性能

表3 場景B單機(jī)渲染性能

3.3 分布式渲染性能及分析

當(dāng)進(jìn)行分布式渲染大規(guī)模場景時,將場景中的內(nèi)容按內(nèi)存大小平均分配到兩臺渲染節(jié)點上進(jìn)行渲染。表4顯示了場景分布式渲染性能結(jié)果。

表4 場景分布式渲染性能

表4中各項測試時間結(jié)果是在完成相應(yīng)任務(wù)時耗時最長的渲染節(jié)點中取得;其他項為網(wǎng)絡(luò)通訊和消息處理等時間;總計為交互響應(yīng)延時,包括渲染時間、壓縮解壓時間、傳輸時間、客戶端發(fā)送/接收指令等時間。

實驗結(jié)果表明,采用本文提出的分布式渲染系統(tǒng)進(jìn)行大規(guī)模場景繪制,減少了場景加載時間,將渲染結(jié)果進(jìn)行壓縮傳輸,能夠降低系統(tǒng)交互延時,解壓時間可以忽略不計。整個分布式渲染系統(tǒng)交互響應(yīng)所需時間遠(yuǎn)遠(yuǎn)小于單機(jī)渲染時間,利用分布式渲染框架,極大地提高了渲染效率。

4 小 結(jié)

本文提出了一種渲染大規(guī)模場景的分布式渲染框架。將大規(guī)模場景在內(nèi)容上劃分為單一節(jié)點可渲染的子場景,使用多個渲染節(jié)點進(jìn)行分布式處理,各個渲染節(jié)點上的子場景渲染結(jié)果根據(jù)深度信息進(jìn)行融合得到最終結(jié)果,為了降低交互延時,使用一種實時壓縮算法對渲染結(jié)果進(jìn)行壓縮,減少了網(wǎng)絡(luò)傳輸?shù)拈_銷。本文提出的分布式渲染系統(tǒng)能夠在處理超大規(guī)模時達(dá)到可交互的性能。

[1] AKENINE-M?LLER T, HAINES E, HOFFMAN N. Real-time rendering [M]. Wellesley: A.K.Peters Ltd, 2008: 1-2.

[2] LUEBKE D, WATSON B, COHEN JD, et al. Level of detail for 3D graphics [M]. New York: Elsevier Science Inc., 2002: 219-223.

[3] 杜瑩, 武玉國, 游雄. 全球虛擬地形環(huán)境中Mipmap紋理技術(shù)研究[J]. 測繪科學(xué)技術(shù)學(xué)報, 2006, 23(5): 355-358.

[4] ANDUJAR C, BRUNET P, CHICA A, et al. Visualization of large-scale urban models through multi-level relief impostors [J]. Computer Graphics Forum, 2010, 29(8): 2456-2468.

[5] MOLNAR S, COX M, ELLSWORTH D, et al. A sorting classification of parallel rendering [J]. IEEE Computer Graphics and Applications, 1994, 14(4): 23-32.

[6] 鄭利平, 陳斌, 王文平, 等. 基于分布式渲染架構(gòu)的遠(yuǎn)程可視化研究[J]. 計算機(jī)研究與發(fā)展, 2012, 49(7): 1438-1449.

[7] 高官濤, 鄭小盈, 宋應(yīng)文, 等. 基于Spark MapReduce框架的分布式渲染系統(tǒng)研究[J]. 軟件導(dǎo)刊, 2013(12): 26-29.

[8] CHEN Y J, HUNG C Y, CHIEN S Y. Distributed rendering: Interaction delay reduction in remote rendering with client-end GPU-accelerated scene warping technique [C]//IEEE International Conference on Multimedia and xpo Workshops. New York: IEEE Press, 2017: 67-72.

[9] VARADHAN G, MANOCHA D. Out-of-core rendering of massive geometric environments [EB/OL]. (2002-11-01)[2018-03-18].http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=90A14D277042676F059C400F3BF7066E?doi=10.1.1.298.4890&rep=rep1&type=pdf.

[10] SCHEIBLAUER C, WIMMER M. Out-of-core selection and editing of huge point clouds [J]. Computer and Graphics, 2011, 35(2): 342-351.

[11] GEORGE L. HBase: The definitive guide: random access to your planet-size data [M]. California: O’Reilly Media, Inc., 2011: 424-425.

A Scene-Distributed Interactive Rendering System

SUN Zhao1, LIU You-quan1, ZHANG Cai-rong1, SHI Jian2, CHEN Yan-yun3

(1. School of Information Engineering, Chang’an University, Xi’an Shaanxi 710064, China; 2. State Key Laboratory of Pattern Recognition, Institute of Automation, Chinese Academy of Sciences, Beijing 100190, China; 3. State Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences, Beijing 100190, China)

With the constant increase in the scale and complexity of three-dimensional virtual scenes in recent years, very large-scale scenes (such as buildings, cities, etc.) can hardly be processed on single rendering node and their interactive performance can also be hard to achieve. Aiming at this shortcoming, the authors present an interactive distributed rendering framework. The authors divide the large scene into a set of renderable sub-scenes, which are distributed to different rendering nodes for processing. Intermediate sub-scene rendering results are merged to the final result based on depth information. To reduce the latency, the rendering results are compressed to accelerate the network transmission. The proposed distributed rendering system can efficiently process rendering and interaction for large-scale scenes. Moreover, the experiment has also confirmed that it is able to provide good scalability. A wide range of applications can benefit from interactive distributed rendering by this system.

rendering;distributed system; scene distribution; interactive

TP 391

10.11996/JG.j.2095-302X.2019010087

A

2095-302X(2019)01-0087-05

2018-07-02;

2018-07-12

中央高?;究蒲袠I(yè)務(wù)費專項資金項目(310824173401)

孫 昭(1992-),女,陜西咸陽人,碩士研究生。主要研究方向為計算機(jī)圖形學(xué)。E-mail:2016124012@chd.edu.cn

柳有權(quán)(1976-),男,湖北秭歸人,教授,博士,碩士生導(dǎo)師。主要研究方向為計算機(jī)圖形學(xué)。E-mail:youquan@chd.edu.cn

猜你喜歡
客戶端分布式節(jié)點
你的手機(jī)安裝了多少個客戶端
你的手機(jī)安裝了多少個客戶端
CM節(jié)點控制在船舶上的應(yīng)用
基于RTDS的分布式光伏并網(wǎng)建模研究
基于AutoCAD的門窗節(jié)點圖快速構(gòu)建
概念格的一種并行構(gòu)造算法
結(jié)合概率路由的機(jī)會網(wǎng)絡(luò)自私節(jié)點檢測算法
如何看待傳統(tǒng)媒體新聞客戶端的“斷舍離”?
基于預(yù)處理MUSIC算法的分布式陣列DOA估計
基于DDS的分布式三維協(xié)同仿真研究