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

        ?

        一種基于網(wǎng)絡(luò)的并行渲染和跨平臺同步展示系統(tǒng)

        2017-11-01 17:14:41呂圣卿陳一民高明柯
        計算機應(yīng)用與軟件 2017年10期
        關(guān)鍵詞:跨平臺系統(tǒng)

        呂圣卿 陳一民* 黃 晨 高明柯,2

        1(上海大學(xué)計算機工程與科學(xué)學(xué)院 上海 200444)

        2(湖南科技大學(xué)數(shù)學(xué)與計算科學(xué)學(xué)院 湖南 湘潭 411201)

        一種基于網(wǎng)絡(luò)的并行渲染和跨平臺同步展示系統(tǒng)

        呂圣卿1陳一民1*黃 晨1高明柯1,2

        1(上海大學(xué)計算機工程與科學(xué)學(xué)院 上海 200444)

        2(湖南科技大學(xué)數(shù)學(xué)與計算科學(xué)學(xué)院 湖南 湘潭 411201)

        虛擬現(xiàn)實的實時展示和交互的應(yīng)用越來越廣泛,但由于普通PC機渲染的性能問題,無法在保證幀率的條件下渲染超高分辨率的場景?;诰W(wǎng)絡(luò)的并行渲染系統(tǒng)具有性價比高、擴展性好等特點,并且可以輸出超高分辨率的畫面,適合大型的虛擬現(xiàn)實場景展示。該系統(tǒng)使用Unity3D支持虛擬現(xiàn)實渲染和跨平臺的特性,使用PC機群基于Sort-First結(jié)構(gòu)的實時并行渲染框架展示弧形超高分辨率場景,并使用網(wǎng)絡(luò)將手機、平板和PC機群連接在一起,利用增強現(xiàn)實的方式同步展示整個場景。該系統(tǒng)支持多機同時連接展示,可以應(yīng)用到博物館、教學(xué)、展覽等領(lǐng)域。

        并行渲染 Sort-First Unity3D 跨平臺 同步

        0 引 言

        目前,虛擬現(xiàn)實的實時展示和交互的應(yīng)用越來越廣泛,已成功應(yīng)用于車輛仿真[1]、計算機輔助設(shè)計[2]、地理信息系統(tǒng)、醫(yī)學(xué)康復(fù)訓(xùn)練[3]等領(lǐng)域。隨著虛擬現(xiàn)實場景規(guī)模的不斷增加,以及人們對高幀率、超高分辨率畫面的追求,用普通的PC單機難以實現(xiàn),而大型圖像工作站和高端顯卡成本昂貴,難以普及和擴展。在這種情況下,基于網(wǎng)絡(luò)的并行渲染系統(tǒng)是一種比較好的替代方案,它將需要渲染的整個場景任務(wù)分配到多個渲染結(jié)點上,多個渲染結(jié)點協(xié)同完成每幀圖像,他們共同組成一個高分辨率的圖像。該系統(tǒng)具有性價比高、兼容性好、擴展性好等特點[4]。

        1994年,Molnar等[5]提出了一種從數(shù)據(jù)分配(sorting)的角度對并行渲染的分類方法。它依據(jù)從對象空間到屏幕空間的轉(zhuǎn)換過程中渲染任務(wù)發(fā)生的時間節(jié)點,將并行渲染方法分為3類:sort-first,sort-middle和sort-last。三種方式中,sort-middle和sort-last適合硬件實現(xiàn)[6-7]。而sort-first方式能將渲染資源充分利用,是三種方法中通信量最少的,適合于軟件實現(xiàn),構(gòu)建集群式的并行渲染系統(tǒng)[8-9]。

        Unity3D是一款跨平臺的游戲開發(fā)引擎,它具有很好的網(wǎng)絡(luò)控制、三維展示和交互功能,非常適用于虛擬現(xiàn)實平臺的設(shè)計開發(fā)[10-11]。

        在目前的并行渲染展示系統(tǒng)中,基本都是平面的展示屏幕[12-13]或者長方體的CAVE投影系統(tǒng)[14],而且這些展示系統(tǒng)是孤立的部分,無法和手機、平板等其他設(shè)備聯(lián)動。

        為了提供更好的視覺體驗,本文將一組大屏幕排列成弧形,形成一個環(huán)幕的效果,并提出一種基于矩陣變換的弧形多屏顯示墻投影矩陣計算方法,從而利用Unity3D實現(xiàn)了一種基于網(wǎng)絡(luò)的sort-first并行渲染系統(tǒng)來展示超高分辨率場景。同時使用網(wǎng)絡(luò)將移動端和PC機群連接在一起,利用增強現(xiàn)實的方式展示場景。

        1 系統(tǒng)結(jié)構(gòu)

        本文設(shè)計了一種基于網(wǎng)絡(luò)的sort-first并行渲染系統(tǒng)。該系統(tǒng)將多臺計算機模擬在同一個場景中,并通過同步服務(wù)分別顯示場景中一個部分的畫面,這些畫面共同拼接成整個場景。圖1為系統(tǒng)的硬件結(jié)構(gòu)。

        圖1 系統(tǒng)結(jié)構(gòu)

        系統(tǒng)由一臺總控服務(wù)器、一組PC機群渲染結(jié)點和若干個手機、平板組成,并且由高速以太網(wǎng)和WIFI連接。多屏顯示墻用于顯示高分辨率虛擬現(xiàn)實場景??偪胤?wù)器用來同步控制及動態(tài)協(xié)調(diào)并行渲染結(jié)點和移動終端的展示內(nèi)容,并可以接收用戶輸入,操縱場景中顯示對象的位置、方向等。并行渲染結(jié)點運行Unity3D,接收總控服務(wù)器的控制信息,通過視點和視角動態(tài)調(diào)整視棱錐,把渲染后的像素信息顯示到多屏顯示墻上。移動終端通過無線熱點與總控服務(wù)器連接,利用增強現(xiàn)實的方式同步展示整個場景。

        該系統(tǒng)可以支持多用戶同時觀看,既可以通過多屏顯示墻觀看超高分辨率的虛擬現(xiàn)實場景,又可以通過移動端AR,多終端多角度同時觀察整個場景。

        2 并行渲染分屏

        在目前的并行渲染展示系統(tǒng)中,分屏方式有兩種:一種是按照平面矩形進行分屏,如圖2所示,該方式實現(xiàn)簡單,適用于屏幕和投影,但是該方式在顯示范圍廣的情況下可能會導(dǎo)致虛擬現(xiàn)實三維場景的失真;另一種按照長方體的CAVE投影系統(tǒng)進行分屏,圖3展示了CAVE系統(tǒng)的視景體空間分布圖,它用投影方式展示,能夠展示大視角的虛擬現(xiàn)實場景,給人身臨其境地感覺,但是它采用投影方式,一定長度上限制了其分辨率和清晰度,而且需要特定的空間才能展示。

        圖3 CAVE系統(tǒng)視景體空間分布圖

        圖2 按照平面矩形進行分屏

        本文結(jié)合了兩種方式的優(yōu)點,將多屏顯示墻擺放成弧形,如果顯示器足夠,可以形成環(huán)形屏幕陣列。該方法擁有顯示分辨率高,可視角度大并且三維場景不失真等優(yōu)點,能夠讓用戶身臨其境地觀察和體驗虛擬場景。

        2.1 視棱錐和透視投影

        在Unity3D的虛擬現(xiàn)實場景中,相機一般采用視棱錐透視投影,在遠近兩個裁剪面之間的視棱錐中的圖元才會進行投影變換和渲染,這樣可以大大減少渲染的圖元數(shù)量和提高渲染速度。

        在并行渲染中,分屏?xí)⒄麄€場景視棱錐根據(jù)分屏要求沿著相機射線方向進行劃分,如圖4所示,將原來的視棱錐一分為二,形成2個視棱錐。這兩個視棱錐中的場景會分配給兩個并行渲染結(jié)點分別進行渲染。與傳統(tǒng)劃分不同的是,本文采用多個正棱錐進行組合,形成一個近似弧形的前裁剪面和后裁剪面,這樣可以使得并行渲染展示系統(tǒng)達到更好的效果。

        圖4 一分為二的視棱錐

        2.2 弧形多屏顯示墻投影矩陣計算

        多屏顯示墻使用多個并行渲染結(jié)點進行顯示的模式,內(nèi)在場景相同,但是每個節(jié)點展示視角不同。單個渲染結(jié)點上的投影矩陣如圖5所示,通過顯示屏幕的尺寸和觀察者頭部位置來計算出Unity 3D中投影矩陣和相機位置,其中,pa、pb、pc為投影平面的三個頂點,該平面為視棱錐的前裁剪面,pe為相機位置,這樣確定了相機與屏幕之間的位置關(guān)系、方向等信息。

        圖5 單個投影矩陣

        為了達到更好的視覺效果,多屏顯示墻呈弧形排列,弧形所對應(yīng)圓的半徑為R,如圖6所示。令H為顯示屏長邊長度,W為顯示屏短邊寬度,w′為顯示屏的邊框厚度,α表示相鄰兩塊顯示屏之間的夾角。在投影矩陣計算時,考慮w′,可以抵消顯示屏間隙導(dǎo)致的畫面顯示失真。

        圖6 計算投影矩陣(俯視圖)

        假設(shè)空間中一點Q的坐標(biāo)系1中的坐標(biāo)值為Q(x,y,z),則點Q在坐標(biāo)系2中的坐標(biāo)值Q′(x′,y′,z′)可以表示為:

        (1)

        式(1)中,T表示平移矩陣,R表示旋轉(zhuǎn)矩陣,且R=RxRyRz,其中:

        (2)

        (3)

        (4)

        以計算坐標(biāo)系3中的點pa′在坐標(biāo)系1中的坐標(biāo)值為例。顯示屏1的中心點為坐標(biāo)系1的坐標(biāo)原點,顯示屏2的中心點為坐標(biāo)系3的坐標(biāo)原點,pe為坐標(biāo)系2的坐標(biāo)原點,且pe在顯示屏1和顯示屏2的中心垂線上。pa′在坐標(biāo)系1、2、3中的坐標(biāo)值分別為pa′(x1,y1,z1)、pa′(x2,y2,z2)、pa′(x3,y3,z3)。則:

        (5)

        (6)

        式(5)中T=[0 0R]T,R=RxRyRz,其中:

        (7)

        (8)

        (9)

        所以,可以得到以下關(guān)系:

        (10)

        同理,通過以上方法,可以求得各屏幕頂點在坐標(biāo)系1中的坐標(biāo)值,然后配置每個渲染結(jié)點的投影矩陣,從而進行并行渲染。

        3 系統(tǒng)實現(xiàn)

        3.1 sort-first并行渲染的網(wǎng)絡(luò)同步控制

        在sort-first并行渲染中必須要考慮的就是負載均衡的問題,負載不均衡的情況會導(dǎo)致各結(jié)點完成渲染任務(wù)時所用的時間不同,使得渲染后畫面不同步而導(dǎo)致畫面不完整或者撕裂感。在展示過程中,也會需要和三維場景進行交互。因此需要設(shè)計一個并行渲染結(jié)點、移動終端和總控服務(wù)器同步場景和輸出的機制。

        本系統(tǒng)基于Unity3D,利用網(wǎng)絡(luò)功能實現(xiàn)同步。在系統(tǒng)開始運行時,通過Network模塊,在總控服務(wù)器創(chuàng)建Server,每個并行渲染結(jié)點和移動終端連接到Server。

        本系統(tǒng)的網(wǎng)絡(luò)同步機制如圖7所示。并行渲染系統(tǒng)每一幀圖像渲染的基本流程如下。

        圖7 系統(tǒng)網(wǎng)絡(luò)同步機制

        步驟1總控服務(wù)器接收用戶輸入,根據(jù)用戶輸入和系統(tǒng)時間更新場景信息。

        步驟2將需要同步的對象和相機信息打包,通過網(wǎng)絡(luò)發(fā)送給并行渲染結(jié)點和移動終端。

        步驟3并行渲染結(jié)點接收到數(shù)據(jù)后,同步該場景信息,并根據(jù)該機器的配置,應(yīng)該渲染哪一部分的場景,動態(tài)調(diào)整相機視視角(即調(diào)整相機投影矩陣),渲染指定場景并輸出到多屏顯示墻進行展示。

        步驟4移動終端接收到數(shù)據(jù)后,同步該場景信息,在通過攝像頭拍攝到的圖像中跟蹤標(biāo)記,并把三維場景注冊到畫面中進行增強現(xiàn)實的顯示。

        3.2 移動終端AR展示

        Unity3D是當(dāng)前最流行的跨平臺游戲開發(fā)引擎,在本文搭建的系統(tǒng)中,選用Android系統(tǒng)的移動終端設(shè)備,通過WiFi接入系統(tǒng)網(wǎng)絡(luò),實現(xiàn)同步展示。Vuforia SDK是一個用于移動終端增強現(xiàn)實系統(tǒng)開發(fā)的工具包,它提供了人工標(biāo)記、自然特征的平面圖像注冊等功能。

        移動終端AR同步展示系統(tǒng)開發(fā)及展示過程如下:

        步驟1設(shè)置標(biāo)識物:移動增強現(xiàn)實系統(tǒng)是典型的視頻透視增強現(xiàn)實系統(tǒng),通常采用基于計算機視覺的三維注冊方法。本文中,使用基于自然特征的三維注冊方法實現(xiàn)虛擬物體的準確注冊。

        步驟2設(shè)置三維場景:在Unity3D環(huán)境中,導(dǎo)入與并行渲染相同的三維場景。將ARCamera與ImageTarget組件導(dǎo)入場景視圖。ARCamera對應(yīng)虛擬相機位姿狀態(tài),ImageTarget對應(yīng)標(biāo)識物與三維模型之間的位置關(guān)系,在場景視圖中對兩者進行調(diào)整。

        步驟3同步處理:移動終端連接到總控服務(wù)器Server,接收總控服務(wù)器的信息,并同步三維場景信息。由于在增強現(xiàn)實中,是按照標(biāo)識物為原點來構(gòu)建三維坐標(biāo)系的,在服務(wù)器傳過來三維模型的位置、方向、角度等信息之后,需要按式(11)進行一次坐標(biāo)變換,將場景整體平移到標(biāo)識物位置。公式中A表示原先三維模型坐標(biāo),B表示平移矩陣,A′為平移后的坐標(biāo)。

        A′=A+B

        (11)

        步驟4同步AR展示:在移動終端系統(tǒng)運行時,通過攝像頭拍攝顯示世界在屏幕上顯示,當(dāng)識別到標(biāo)識物時,會將虛擬現(xiàn)實場景注冊到屏幕上進行顯示。

        4 測試實驗

        4.1 實驗環(huán)境和設(shè)置

        并行渲染系統(tǒng)實驗環(huán)境場地空間長10.6 m,寬6.2 m,高4.5 m。硬件平臺采用6臺聯(lián)想普通商務(wù)機(搭配英偉達GTX650顯卡),6臺海信55寸4K電視機,以及1臺Android手機,各設(shè)備通過千兆網(wǎng)絡(luò)和WiFi相連。軟件使用Unity3D+C#編程,多屏顯示墻輸出分辨率高達10 800×3 840。使用屏幕H=1.24 m,W=0.72 m,w′=0.015 m,相鄰屏幕夾角α=30度,該參數(shù)用于計算各渲染結(jié)點的相機投影矩陣計算。

        4.2 實驗結(jié)果

        本文設(shè)計了一個地球自轉(zhuǎn),月球自轉(zhuǎn)并繞地球公轉(zhuǎn)的場景,來驗證本系統(tǒng)。圖8展示了這個場景,觀察的視角是地球赤道的正上方,這里可以看到整個地球的全景,各屏幕顯示的畫面拼接到一起,形成了一幅整體畫面。注意屏幕之間縫隙周圍的畫面,由于在弧形多屏顯示墻投影矩陣計算時考慮了縫隙的因素,能夠很好地解決因此帶來的圖像形變的問題。如圖9所示,白色區(qū)域為圓形應(yīng)該顯示的效果,但如果不對縫隙做特殊處理,會導(dǎo)致圓形不再是一個圓,在圖中為白色加上灰色區(qū)域,這樣就對顯示的效果造成了影響。

        圖8 虛擬現(xiàn)實場景

        圖9 顯示器間縫隙對顯示效果的影響

        圖8中,同時展示了使用手機作為移動終端連接到系統(tǒng)上,通過AR的方式展示三維場景。通過手機的攝像頭拍攝內(nèi)容,在桌子上注冊三維場景并顯示,從手機中就可以看到地球和月球仿佛出現(xiàn)在桌子上,并且會跟隨著用戶的移動動態(tài)跟蹤顯示場景,可以從不同的角度來觀察整個場景。而且整個場景是通過網(wǎng)絡(luò)和總控服務(wù)器保持同步,實現(xiàn)了跨平臺的同步展示。

        5 結(jié) 語

        本文提出了一種弧形多屏顯示墻投影矩陣計算方法,該方法能夠有效去除由于多屏幕之間縫隙帶來的圖像變形,并且環(huán)形屏能帶給人更好的視覺體驗。本文實現(xiàn)的基于網(wǎng)絡(luò)的并行渲染和跨平臺同步展示系統(tǒng),能夠同時在PC機群、移動終端同步展示整個場景,并且擁有很好的擴展能力。該系統(tǒng)憑借其高性價比、高可擴展性和跨平臺展示能力,可以應(yīng)用于博物館展覽、工業(yè)設(shè)計展示、教學(xué)模擬等領(lǐng)域。

        [1] 婁明,宋靖雁,張毅.基于Java3D技術(shù)的虛擬車輛仿真系統(tǒng)[J].計算機工程與應(yīng)用,2004,40(7):198-202.

        [2] 劉宏偉,翁益平,張云坤,等.計算機輔助設(shè)計及電子束熔融快速成型金屬3D打印技術(shù)制備個性化股骨假體[J].中國修復(fù)重建外科雜志,2015(9):1088-1091.

        [3] 馬樂,宋嶸,劉燕,等.基于虛擬現(xiàn)實技術(shù)的康復(fù)訓(xùn)練系統(tǒng)設(shè)計與實驗驗證[J].計算機應(yīng)用與軟件,2013,30(7):94-97.

        [4] 汪偉,范秀敏,武殿梁.虛擬現(xiàn)實應(yīng)用中的并行渲染技術(shù)[J].計算機工程,2009,35(3):282-284.

        [5] Molnar S,Cox M,Ellsworth D,et al.A Sorting Classification of Parallel Rendering[J].IEEE Computer Graphics & Applications,1994,14(4):23-32.

        [6] Akeley K.Reality Engine graphics[C]//Conference on Computer Graphics and Interactive Techniques,SIGGRAPH,1993:109-116.

        [7] Olano M,Lastra A.A shading language on graphics hardware:the pixelflow shading system[C]//Conference on Computer Graphics and Interactive Techniques,1998:159-168.

        [8] 謝文斌,陳學(xué)適,姜忠鼎.并行繪制游戲系統(tǒng)中同步傳輸協(xié)議的設(shè)計與實現(xiàn)[J].計算機應(yīng)用與軟件,2014,31(10):99-103.

        [9] 邵華,江南,胡斌,等.面向復(fù)雜城市場景的Sort-First并行繪制系統(tǒng)中負載平衡與性能分析[J].地球信息科學(xué)學(xué)報,2014,16(3):376-381.

        [10] 王星捷,李春花.基于Unity3D平臺的三維虛擬城市研究與應(yīng)用[J].計算機技術(shù)與發(fā)展,2013(4):241-244.

        [11] 上官大堰,黃心淵,孫望舒,等.基于Android平臺的Unity3D網(wǎng)絡(luò)功能的開發(fā)[J].計算機應(yīng)用與軟件,2015,32(8):72-75.

        [12] 孫益輝,陳福民,王海峰.一種基于OGRE圖形引擎的實時分布式渲染系統(tǒng)[J].計算機工程與應(yīng)用,2008,44(31):102-103.

        [13] 雷開彬,熊華.基于大屏幕投影的中國傳統(tǒng)服飾3D展示系統(tǒng)[J].西南民族大學(xué)學(xué)報(自然科學(xué)版),2015,41(6):717-722.

        [14] 劉勁松,戴擁民,孫建剛,等.CAVE系統(tǒng)中不規(guī)則多屏投影變換矩陣[J].計算機與現(xiàn)代化,2016(9):40-44.

        AWEB-BASEDPARALLELRENDERINGANDCROSS-PLATFORMSYNCHRONIZATIONDEMONSTRATIONSYSTEM

        Lü Shengqing1Chen Yimin1*Huang Chen1Gao Mingke1,2

        1(SchoolofComputerEngineeringandScience,ShanghaiUniversity,Shanghai200444,China)2(SchoolofMathematicsandComputingScience,HunanUniversityofScienceandTechnology,Xiangtan411201,Hunan,China)

        Real-time display and interactive application in virtual reality are widely used recently. Since common PC has the performance problem when rendering, it is not possible to render ultra-high resolution scenes and ensure frame rates. The parallel rendering system based on the network has features of high performance-to-price ratio and good expansibility, and can output ultra-high resolution images for large-scale virtual reality scene display. Our system uses Unity3D to support virtual reality rendering and cross-platform features. It uses the PC cluster to display arc-shaped super-high resolution scenes based on the real-time parallel rendering framework with sort-first structure. What’s more, it connects a mobile phone, tablet and PC cluster together to display the entire scene with the way of augmented reality. The system supports multi-machine display simultaneously and can be applied to many fields such as museums, teaching, and exhibitions.

        Parallel rendering Sort-First Unity3D Cross-platform Synchronization

        TP391

        A

        10.3969/j.issn.1000-386x.2017.10.019

        2016-11-29。上海市科技創(chuàng)新行動計劃項目(16511101200);上海市科委國際合作項目(12510708400)。呂圣卿,碩士生,主研領(lǐng)域:并行渲染,計算機圖形學(xué)。陳一民,教授。黃晨,博士生。高明柯,講師。

        猜你喜歡
        跨平臺系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        跨層級網(wǎng)絡(luò)、跨架構(gòu)、跨平臺的數(shù)據(jù)共享交換關(guān)鍵技術(shù)研究與系統(tǒng)建設(shè)
        一款游戲怎么掙到全平臺的錢?
        電腦報(2021年11期)2021-07-01 08:10:05
        WJ-700無人機系統(tǒng)
        ZC系列無人機遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        跨平臺APEX接口組件的設(shè)計與實現(xiàn)
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        基于QT的跨平臺輸電鐵塔監(jiān)控終端軟件設(shè)計與實現(xiàn)
        久久久久无码精品亚洲日韩| 久久天堂一区二区三区av| 潮喷失禁大喷水aⅴ无码| 欧美孕妇xxxx做受欧美88| 任你躁欧美一级在线精品免费| 97自拍视频国产在线观看| 中文乱码字字幕在线国语| 人妻久久久一区二区三区| 欧美专区在线| 一区二区三区岛国av毛片| 免费在线观看av不卡网站| 50岁退休熟女露脸高潮| 国产一区曰韩二区欧美三区| 亚洲福利av一区二区| 人妻制服丝袜中文字幕| 免费毛片a线观看| 日韩乱码视频| 亚洲一区二区三区一区| 亚洲av无码国产精品色| 日本丰满熟妇bbxbbxhd| 国产情侣一区在线| 亚洲中文字幕第一页免费| 亚洲日韩精品一区二区三区无码| 亚州少妇无套内射激情视频| 国产亚洲女人久久久久久| av一区二区在线网站| 久久天天躁狠狠躁夜夜av| 俺也去色官网| 色se在线中文字幕视频| 青春草在线视频观看| 免费观看黄网站| AV中文码一区二区三区| 国产国语按摩对白av在线观看| 内射爽无广熟女亚洲| 亚洲成av人片无码不卡播放器| 日本av第一区第二区| 色综合久久无码五十路人妻| 亚洲av理论在线电影网| 啪啪视频免费看一区二区| 日韩精品中文一区二区三区在线| 九九99久久精品国产 |