• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種基于六邊形網(wǎng)格的球面體可視化算法*

    2021-01-08 09:39:52張繼凱張然趙君顧蘭君
    關(guān)鍵詞:經(jīng)緯度六邊形光線

    張繼凱,張然,趙君,顧蘭君

    (內(nèi)蒙古科技大學(xué) 信息工程學(xué)院,內(nèi)蒙古 包頭 014010)

    近年來,隨著高分衛(wèi)星的應(yīng)用和遙感技術(shù)的飛速發(fā)展,地理信息相關(guān)的遙感數(shù)據(jù)量呈爆發(fā)式增長.因遙感數(shù)據(jù)的地理跨度較大,地表弧度帶來的影響無法忽略不計(jì),導(dǎo)致傳統(tǒng)體可視化中的立方體法無法適用;另外,傳統(tǒng)的全球范圍數(shù)據(jù)可視化方式多采用經(jīng)緯度網(wǎng)格進(jìn)行數(shù)據(jù)存儲(chǔ),這就造成數(shù)據(jù)分布在全球各處密度不同,不僅會(huì)造成各緯度的可視化細(xì)節(jié)表現(xiàn)差異,更是會(huì)帶來嚴(yán)重的極點(diǎn)問題和數(shù)據(jù)存儲(chǔ)冗余現(xiàn)象.國內(nèi)外研究人員對(duì)此提出過多種不同的球面網(wǎng)格剖分方式,其中六邊形離散網(wǎng)格因其良好的數(shù)據(jù)分布特性,成為地理信息領(lǐng)域和數(shù)據(jù)可視化領(lǐng)域近年來的一個(gè)研究熱點(diǎn).

    本文在對(duì)球面進(jìn)行體可視化的操作過程中將六邊形離散網(wǎng)格引入其中,使得球面各處得數(shù)據(jù)密度可以保持一致.同時(shí),為了簡化光線投射算法的插值過程,設(shè)計(jì)一種基于三角形單元的編碼方式,以紋理作為其存儲(chǔ)載體,使光線投射過程的數(shù)據(jù)插值點(diǎn)更容易查找,更適合硬件加速實(shí)現(xiàn).

    1 相關(guān)工作

    隨著硬件計(jì)算能力地提升和圖形顯示手段地發(fā)展,對(duì)海量數(shù)據(jù)進(jìn)行可視化成為數(shù)據(jù)分析和知識(shí)發(fā)現(xiàn)的有效手段之一,而其中三維遙感數(shù)據(jù)的體可視化是信息含量最大難度最高的可視化形式.

    直接體可視化技術(shù)經(jīng)過多年的發(fā)展,已經(jīng)產(chǎn)生諸如拋雪球算法[1,2]、頻域算法[3]、錯(cuò)切-變形算法[4]以及光線投射算法[5]等多類算法.其中,因算法原理相對(duì)簡單,可視化效果相對(duì)更符合實(shí)際數(shù)據(jù)特征等優(yōu)勢,光線投射算法成為當(dāng)前體可視化中應(yīng)用最為廣泛的一類算法.

    在球面離散網(wǎng)格的研究上,趙學(xué)勝等[6,7]于2009年提出一種基于菱形塊四叉樹節(jié)點(diǎn)的鄰近搜索算法,使用三角形單元作為頂層節(jié)點(diǎn),而其余各層使用四邊形單元且層次越低越接近于矩形,但因各緯度帶的剖分差異性造成復(fù)雜的拓?fù)浣Y(jié)構(gòu).針對(duì)六邊形離散網(wǎng)格,賁進(jìn)、童曉沖和張永生等人進(jìn)行了一系列探索[8-11],他們通過分析各種六邊形剖分方法,實(shí)現(xiàn)一種新的全球六邊形離散網(wǎng)格剖分及編碼算法,并證明了其在計(jì)算幾何領(lǐng)域有較好地應(yīng)用潛力[12,13].但因該方法的編碼規(guī)則比較復(fù)雜且涉及大量的歸屬性判斷,使得很難將其應(yīng)用于數(shù)據(jù)可視化尤其是三維數(shù)據(jù)場可視化中.

    XIE J等[15]于2013年提出了基于六邊形網(wǎng)格的光線投射算法,才使得球面離散網(wǎng)絡(luò)應(yīng)用于體可視化領(lǐng)域的探索有所突破.該算法通過采用六邊形網(wǎng)格實(shí)現(xiàn)了直接體繪制,但是由于需提前按照六邊形網(wǎng)格相互之間的對(duì)應(yīng)關(guān)系將其頂點(diǎn)、邊以及網(wǎng)格單元全都連接起來,然后實(shí)時(shí)的依據(jù)該相互之間的對(duì)應(yīng)關(guān)系檢索相鄰的網(wǎng)格單元,從而實(shí)現(xiàn)光線投射,但該算法復(fù)雜程度高.為了提高渲染速度,他們之后還研究使用多GPU并行處理的方式對(duì)全球體數(shù)據(jù)進(jìn)行體可視化[16].

    2 球面六邊形網(wǎng)格數(shù)據(jù)預(yù)處理

    2.1 數(shù)據(jù)組織方式

    通過合理的方式構(gòu)造和儲(chǔ)存六邊形網(wǎng)格信息,從而應(yīng)用于光線投射算法.圖1所示為六邊形網(wǎng)格的構(gòu)造組成,六邊形網(wǎng)格單元的每個(gè)頂點(diǎn)使用灰色數(shù)字進(jìn)行編碼,六邊形的中心則用黑色圓點(diǎn)表示,并用黑色數(shù)字對(duì)其中心進(jìn)行編碼,由圖可知每個(gè)六邊形網(wǎng)格的中心都與其6個(gè)頂點(diǎn)相對(duì)應(yīng),而每個(gè)六邊形的頂點(diǎn)又與其周圍相鄰的3個(gè)六邊形中心相對(duì)應(yīng),網(wǎng)格數(shù)據(jù)根據(jù)該結(jié)構(gòu)進(jìn)行構(gòu)造.

    為了滿足不同分辨率數(shù)據(jù)下的可視化需求,依據(jù)文獻(xiàn)[15]提出的球面離散網(wǎng)格生成算法對(duì)不同分層的六邊形網(wǎng)格數(shù)據(jù)進(jìn)行構(gòu)造生成.對(duì)于每個(gè)六邊形網(wǎng)格單元,使用XML的文件形式構(gòu)造保存網(wǎng)格數(shù)據(jù),主要包含單元網(wǎng)格編碼、六邊形網(wǎng)格各個(gè)頂點(diǎn)及其中心點(diǎn)的經(jīng)度坐標(biāo)數(shù)據(jù)與緯度坐標(biāo)數(shù)據(jù).表1展示了不同分層的網(wǎng)格構(gòu)造過程,其中在當(dāng)前分辨率下,每個(gè)六邊形網(wǎng)格單元的面積用表示,地球的表面積使用表示,網(wǎng)格分層層數(shù)用N表示.

    表1 網(wǎng)格剖分說明表

    2.2 數(shù)據(jù)項(xiàng)處理

    在對(duì)體數(shù)據(jù)進(jìn)行可視化時(shí),若通過具有相同分辨率的第一層網(wǎng)格中心為原點(diǎn)按不同步長向徑向進(jìn)行縮放,用同樣的層次數(shù)且分辨率也一致的六邊形網(wǎng)格作為數(shù)據(jù)載體,以充分體現(xiàn)體數(shù)據(jù)的多層次特性,即可得到具有不同高度但分辨率相同的多層次網(wǎng)格.

    六邊形單元都是由6個(gè)頂點(diǎn)和1個(gè)中心點(diǎn)組成,將體數(shù)據(jù)與六邊形網(wǎng)格互相關(guān)聯(lián)時(shí),可以在頂點(diǎn)和中心點(diǎn)間進(jìn)行選擇.若選擇前者,則圖2所示的每個(gè)黑色網(wǎng)格代表一個(gè)“數(shù)據(jù)單元”,任一層六邊形單元在位置上都與其他層單元在徑向上呈對(duì)應(yīng)關(guān)系,且相鄰2層的“數(shù)據(jù)單元”可以形成1個(gè)六棱柱結(jié)構(gòu),如圖3(a)所示;若選擇中心點(diǎn)綁定,每3個(gè)相鄰六邊形的中心點(diǎn)相連得到1個(gè)三角形“數(shù)據(jù)單元”,圖2的紅色4虛線所示,相鄰兩層的三角形“數(shù)據(jù)單元”之間可構(gòu)成三棱柱,如圖3(b)示.

    基于六邊形網(wǎng)格的光線投射插值算法會(huì)涉及2步耗時(shí)量的工作:一是確定采樣點(diǎn)所在的棱柱,二是計(jì)算采樣點(diǎn)的數(shù)據(jù)值.前者需要獲取采樣點(diǎn)的經(jīng)緯度以及高度信息,后者需要計(jì)算采樣點(diǎn)在棱柱內(nèi)部所處的位置,并根據(jù)棱柱頂點(diǎn)數(shù)據(jù)進(jìn)行插值計(jì)算.鑒于中心綁定的計(jì)算量比頂點(diǎn)綁定要少,因此選擇六邊形中心綁定數(shù)據(jù).在減少計(jì)算時(shí)間的同時(shí),為進(jìn)一步減少存儲(chǔ)空間,在縱向上利用棱柱體形成的各層數(shù)據(jù)的一一映射關(guān)系,在橫向上利用每個(gè)六邊形中心與一系列處于同一經(jīng)緯度的數(shù)據(jù)形成的關(guān)聯(lián)關(guān)系,可得到其他層的數(shù)據(jù),所以只需存儲(chǔ)最底層網(wǎng)格數(shù)據(jù).

    關(guān)于空間某點(diǎn)所屬三棱柱的確定,首先根據(jù)三棱柱的投影三角形與坐標(biāo)點(diǎn)的經(jīng)度、維度進(jìn)行關(guān)聯(lián),得到該點(diǎn)底部三角形的位置,而后通過點(diǎn)的高度信息向上正方向映射從而確定該點(diǎn)所在網(wǎng)格單元的層級(jí),得到該點(diǎn)所屬三棱柱的信息.假設(shè)在各種條件都滿足的條件下,三角形的網(wǎng)格單元與經(jīng)度信息和緯度信息理應(yīng)具有線性轉(zhuǎn)換關(guān)系,也就是說即使經(jīng)度值與緯度值具有非常高的精度,也都可以通過相關(guān)的轉(zhuǎn)換或檢索計(jì)算,最終獲得相應(yīng)的三角形網(wǎng)格單元.利用體數(shù)據(jù)分布的離散性,構(gòu)造一張精度極高的“檢索表”,該表可以對(duì)經(jīng)緯度到三角形單元的映射進(jìn)行詳細(xì)記錄,進(jìn)而有效地減少巨大的計(jì)算量,如對(duì)空間中某點(diǎn)所屬的三角形單元進(jìn)行檢索時(shí),通過“檢索表”快速縮小查找范圍,再經(jīng)少量計(jì)算即可完成轉(zhuǎn)換.該“檢索表”的原理如圖4(a)所示,其具有個(gè)大小均勻的單元,為最大經(jīng)度,最小經(jīng)度,為最大緯度,為最小緯度,每個(gè)單元都一個(gè)有獨(dú)一無二的經(jīng)緯度范圍,并且固定經(jīng)緯度范圍的單元中存放了所屬的三角形單元編號(hào).在查找某一經(jīng)緯度所屬三角形單元時(shí),只需查找其所在單元格即可.

    如圖4(a)所示,圖中所屬三角形的邊緣處用藍(lán)色網(wǎng)格單元表示,當(dāng)劃分該單元格所屬的三角形時(shí),由于其或許橫跨多個(gè)三角形,所以存儲(chǔ)于該藍(lán)色網(wǎng)格單元中的編碼信息也許存在稍許誤差.對(duì)此,如圖4(b)所示,將單元格的密度增大,減小誤差,從而也使得處于三角形邊緣的單元格區(qū)域大大減小.然而,如果單純的增大劃分單元格的密度,則會(huì)占用“檢索表”大量的存儲(chǔ)空間,由此需要找到一個(gè)合適劃分的密度,既不會(huì)讓誤差增大,也無需占用大量存儲(chǔ)空間.通過多次對(duì)比實(shí)驗(yàn)表明,當(dāng)將“檢索表”的單元格精度設(shè)置為(單位:度)時(shí),最終可視化呈現(xiàn)的效果最佳,的計(jì)算公式如下:

    (1)

    式中:dc為每2個(gè)相鄰的六邊形中心的距離;β為緯度值.式(1)顯示緯度與劃分的網(wǎng)格精度成反比.

    “檢索表”初始化之前必須對(duì)其精度進(jìn)行確認(rèn),而每張“檢索表”的單元格的標(biāo)準(zhǔn)均設(shè)置為其中心點(diǎn)的經(jīng)緯度坐標(biāo)位置,因?yàn)橐阎總€(gè)三角形單元的所有頂點(diǎn)的坐標(biāo),由此可運(yùn)用重心法計(jì)算得到各個(gè)三角形和每個(gè)“檢索表”單元的從屬關(guān)系,每個(gè)單元存儲(chǔ)屬于其三角形的編碼.為了在可視化進(jìn)行中可以快速讀取,通過二進(jìn)制或文本的結(jié)構(gòu)形式將該表按照“行優(yōu)先”的存儲(chǔ)方式置于外存中,該表的生成均在預(yù)處理階段完成.

    重心法的基本原理是:已知三角形的所有頂點(diǎn)均處于同一個(gè)平面,若將該三角形的任一頂點(diǎn)設(shè)為原點(diǎn)坐標(biāo),那么由該點(diǎn)指向其他2點(diǎn)的方向即為2個(gè)坐標(biāo)軸的方向.如圖5所示,將點(diǎn)A定為原點(diǎn),則AB方向?yàn)樽鴺?biāo)軸V的正坐標(biāo)方向A方向?yàn)樽鴺?biāo)軸U的正坐標(biāo)方向.

    因此,對(duì)于同一平面內(nèi)的任意一點(diǎn),均可通過式(2)表示得出:

    p=A+(C-A)·x+(B-A)·y.

    (2)

    可見,如果x或y為負(fù)數(shù),則點(diǎn)是向U或V軸的負(fù)方向移動(dòng),就處于三角形外部,因此為了保證點(diǎn)處于三角形內(nèi)部,需要同時(shí)滿足如下條件:x≥0,y≥0且x+y≤1.其中,當(dāng)x=0且y=0時(shí),p點(diǎn)與A點(diǎn)重合;同理,當(dāng)x=0且y=1時(shí),p點(diǎn)B與點(diǎn)重合;當(dāng)x=1且y=0時(shí),p點(diǎn)與C點(diǎn)重合.

    為了求取已知直角坐標(biāo)的點(diǎn)在三角形中的UV坐標(biāo),對(duì)式(2)做如下變換:

    p-A=(C-A)·x+(B-A)·y.

    (3)

    令向量v0=C-A,v1=B-A,v2=p-A,則v2=v0·x+v1·y,有

    v2·v0=(v0·x+v1·y)·v0

    v2·v1=(v0·x+v1·y)·v1,

    (4)

    對(duì)其求解可得:

    (5)

    所以,將三角形網(wǎng)格的單元中心點(diǎn)與其頂點(diǎn)的位置坐標(biāo)代入式(5),若和值是滿足條件,那么可以得出三角形與單元格之間滿足相對(duì)應(yīng)的從屬關(guān)系.

    3 基于六邊形網(wǎng)格的體繪制

    本文使用光線投射算法對(duì)體數(shù)據(jù)進(jìn)行可視化的操作過程中,各光線的積分、插值等運(yùn)算沒有任何融合等現(xiàn)象存在.由于GPU有著強(qiáng)大的并行處理能力,利用該方法進(jìn)行計(jì)算,并且每條光線獨(dú)立積分運(yùn)算.算法的大致流程圖如圖6所示.

    球面光線投射算法的具體步驟如下:

    3.1 球面光線插值

    傳統(tǒng)的光線投射算法將數(shù)據(jù)分別存放于六面體的6個(gè)面中,且所有數(shù)據(jù)均通過長、寬、高3個(gè)維度相互對(duì)應(yīng).當(dāng)有屏幕像素隨著視線穿過六面體時(shí),六面體的表面就留下了2個(gè)交點(diǎn),分別為輸入點(diǎn)與輸出點(diǎn),如圖7(a)所示,射線與六面體分別相交于和.光線投射算法的基本原理為,均勻的在和之間取若干個(gè)數(shù)據(jù),通過顏色疊加和變化等運(yùn)算獲得屏幕上光線的顏色值.

    在全球數(shù)據(jù)體可視化中,體數(shù)據(jù)范圍一般分布在一定高度的球殼中,坐標(biāo)系也從直角坐標(biāo)系轉(zhuǎn)換成球面坐標(biāo)系,所以數(shù)據(jù)維度也就不存在上述所說的一一對(duì)應(yīng)的關(guān)系,數(shù)據(jù)被壓縮到地球表面的空心球殼中,光線在該球殼體中的投射過程如圖7(b)所示.本文采用六邊形網(wǎng)格作為數(shù)據(jù)載體,由1.2節(jié)獲取光線中的采樣點(diǎn)數(shù)據(jù)可知,求得各采樣點(diǎn)的經(jīng)緯高坐標(biāo)才是關(guān)鍵,由于光線只在直角坐標(biāo)系椽筆,所以均勻采樣也要在該坐標(biāo)系進(jìn)行,因此球面光線投射中采樣點(diǎn)經(jīng)緯高坐標(biāo)的計(jì)算步驟如下:

    Step1 利用幾何著色器和渲染到紋理技術(shù)將代理幾何體前后面的坐標(biāo)信息保存成紋理形式,三維位置信息中的XYZ分別保存至紋理的RGB通道中.

    Step2 在Step1中的2個(gè)紋理中,按對(duì)應(yīng)坐標(biāo)查找光線的2個(gè)交點(diǎn),將其坐標(biāo)分別設(shè)為和.

    Step3 按照設(shè)定步長從前到后選擇采樣點(diǎn),假設(shè)采樣步長為,對(duì)于第個(gè)采樣點(diǎn),其空間坐標(biāo)計(jì)算式(6)所示,其中l(wèi)ength()為求取向量長度的函數(shù).

    (6)

    Step4 利用式(7)將采樣點(diǎn)坐標(biāo)從直角坐標(biāo)(X,Y,Z)轉(zhuǎn)化為地球球面經(jīng)緯高坐標(biāo)(lon,lat,alt).

    lon=arctan(Y/X)

    lat=arctan(U/V)

    alt=p/cos(lat)-N.

    (7)

    式中:P,N,U,V的計(jì)算公式如下:

    (8)

    式中:re,rp分別為地球的赤道半徑和2極半徑,ds,theta的計(jì)算公式如下:

    ds=(re2-rp2)/rp2

    theta=arctan(Z·re/(p·rp)) .

    (9)

    2.2 采樣點(diǎn)數(shù)據(jù)計(jì)算

    通過在數(shù)據(jù)預(yù)處理階段生成的三角網(wǎng)格編碼的“檢索表”,可以從采樣點(diǎn)的經(jīng)緯度直接得到相應(yīng)的三角網(wǎng)格編碼TCn,然后,根據(jù)1.1中的XML文件,查詢到相應(yīng)的3個(gè)六邊形編碼HCn1,HCn2和HCn3,并找到它們對(duì)應(yīng)的數(shù)據(jù)鏈表,為了確定對(duì)應(yīng)的三棱柱6個(gè)頂點(diǎn)的相關(guān)數(shù)據(jù),應(yīng)根據(jù)式(10)計(jì)算采樣點(diǎn)的網(wǎng)格層次,即采樣點(diǎn)相對(duì)于地面的高度h,體數(shù)據(jù)的空間高度hv,體數(shù)據(jù)的層數(shù)l,以及體數(shù)據(jù)所在棱鏡的上表面索引index.

    (10)

    因此,可以從3個(gè)數(shù)據(jù)鏈接表中獲得index和index-1層的6個(gè)三角形頂點(diǎn)a,b,c,a′,b′和c′,及其對(duì)應(yīng)的6個(gè)數(shù)據(jù)值,并且它們與采樣點(diǎn)的關(guān)系如圖8所示.其中,O點(diǎn)是地球的中心點(diǎn),p為采樣點(diǎn),O和P的連線在上下表面的交點(diǎn)分別是p′和p″.首先,采用重心插值法計(jì)算P′和P″的數(shù)據(jù)值,然后采用線性插值則可獲得P的數(shù)據(jù)值.

    數(shù)據(jù)值和顏色值之間的轉(zhuǎn)換需要使用傳遞函數(shù).在文中,線性映射函數(shù)被用作體積可視化的傳遞函數(shù),即圖9所示的顏色映射表的藍(lán)色末端.對(duì)應(yīng)于數(shù)據(jù)的最小值,紅色端對(duì)應(yīng)于數(shù)據(jù)的最大值,并根據(jù)數(shù)據(jù)大小通過線性插值得到其他數(shù)據(jù)的相應(yīng)位置.相應(yīng)的屏幕像素的最終顏色值可以通過累積光線上的采樣點(diǎn)的顏色來獲得.

    2.3 繪制模式

    由于體繪制過程中需要進(jìn)行大量復(fù)雜的計(jì)算,如果對(duì)圖像的每一幀都進(jìn)行計(jì)算,將占用很大的計(jì)算資源.根據(jù)光線投射原理,當(dāng)視覺參數(shù)不變,即視點(diǎn)、場景、窗口等參數(shù)一致時(shí),光線投射產(chǎn)生完全相同的結(jié)果,即無需重復(fù)計(jì)算;除此之外,視點(diǎn)的視覺辨別力在移動(dòng)的過程中會(huì)下降,從而對(duì)場景渲染精度的要求也會(huì)隨之減小,所以,在視點(diǎn)移動(dòng)的過程中,可以通過適當(dāng)?shù)慕档凸饩€的計(jì)算精度,從而使繪制速度有效提升.

    為了有效利用繪制資源,避免額外的開銷,提升預(yù)測的效率,設(shè)置了3種繪制方式:方式Ⅰ,零繪制,即將上一幀的繪制結(jié)果直接用于下一幀的繪制;方式Ⅱ,粗繪制,即光線投射計(jì)算時(shí)設(shè)置較大的步長進(jìn)行采樣;方式Ⅲ,精細(xì)繪制,即實(shí)施完整的光線投射計(jì)算,同時(shí)在計(jì)算過程中按規(guī)定步長采樣.這3種方式的選擇和調(diào)度過程如圖10所示,其中閾值f是指當(dāng)視覺參數(shù)保持f幀靜止時(shí)設(shè)置精細(xì)計(jì)算,設(shè)置閾值的目的是為了預(yù)防交互過程中出現(xiàn)假靜止,避免不必要的繪制.

    4 實(shí)驗(yàn)結(jié)果分析

    為了證明該算法的有效性,在windows7操作系統(tǒng)下,分別使用OSG三維圖形引擎、GPU編程語言CUDA以及GLSL著色語言對(duì)算法進(jìn)行了實(shí)驗(yàn);實(shí)驗(yàn)所使用的硬件環(huán)境是Intel i7-4770k 3.5 GHz CPU,NVIDIA GTX780TI GPU,以及16G RAM;測試數(shù)據(jù)分為單層數(shù)據(jù)和多層體數(shù)據(jù),其中前者為全球海洋某一時(shí)刻的溫度場數(shù)據(jù),后者數(shù)據(jù)是來自太平洋西部海域某時(shí)刻的海洋鹽度數(shù)據(jù),經(jīng)度在(99.0°E-150.0°E)和(0.5°N-52°N)范圍之內(nèi),分辨率為 409×497×51.接下來將從以下方面對(duì)實(shí)驗(yàn)的結(jié)果進(jìn)行論述.

    4.1 六邊形網(wǎng)格的全球分布及其可視化

    圖11為單層六邊形網(wǎng)格在全球的分布效果示意圖,其中圖11(a),(b),(c)分別為地球中部低緯度地區(qū)和兩極地區(qū)的可視化結(jié)果,可見在地球球面的任意位置,六邊形網(wǎng)格的分布都呈現(xiàn)比較均勻的特性.將單層六邊形網(wǎng)格用于全球海洋溫度場可視化的效果如圖12所示.

    4.2 渲染效果對(duì)比

    圖13是基于經(jīng)緯度網(wǎng)格的體可視化效果,圖14是基于六邊形網(wǎng)格的體可視化效果,使用了不同的顏色代表的了該位置此刻的鹽度強(qiáng)度,越接近藍(lán)色說明鹽度越低,相反越接近紅色說明鹽度越高.由圖13(b)和圖14(b)進(jìn)行對(duì)比可以看出,基于經(jīng)緯度網(wǎng)格的體可視化過程中會(huì)出現(xiàn)顆粒感,特別是在一些起伏較大的區(qū)域,在使用文中的算法之可以使可視化后的效果更加平滑,整體效果表現(xiàn)良好.

    4.3 渲染幀率對(duì)比

    文中在場景渲染效率方面基于六邊形網(wǎng)格的體可視化方法與傳統(tǒng)方法進(jìn)行了比較.如圖15所示,步長越短,采樣的點(diǎn)就越多,積分的速度就越慢,導(dǎo)致光線投射的時(shí)間延長,但是最終繪制的可視化效果也會(huì)因此變佳,需要在最終呈現(xiàn)的可視化效果和性能權(quán)衡中取1個(gè)平衡值,將其用于實(shí)際應(yīng)用中.

    從圖15中的4條曲線可以看出,基于經(jīng)緯度的方法比基于六邊形網(wǎng)格渲染幀率高,前者在渲染幀率上增加了19.7%,造成該現(xiàn)象的原因首先是傳統(tǒng)經(jīng)緯網(wǎng)格只需1次三線性插值即可獲取數(shù)據(jù)值,而基于六邊形的方法在平頭截錐體中進(jìn)行多次插值才能獲得;其次另一個(gè)原因是六邊形網(wǎng)格在光線投射過程中要進(jìn)行幾次的空間坐標(biāo)與經(jīng)緯度坐標(biāo)的轉(zhuǎn)換,這同時(shí)就會(huì)增加運(yùn)算的時(shí)間.但在實(shí)際的應(yīng)用中兩種方法在繪制幀率上的差別幾乎難以發(fā)覺.

    4.4 數(shù)據(jù)量對(duì)比

    六邊形網(wǎng)格方法不僅能夠有效提升繪制的效果,而且還能夠減少體數(shù)據(jù)量,以本文為例,經(jīng)緯度網(wǎng)格的分辨率是409×497×51,總共有10 366 923個(gè)標(biāo)量值.如果按照六邊形網(wǎng)格進(jìn)行存儲(chǔ),僅需9 246 934個(gè)標(biāo)量值就可以達(dá)到低緯數(shù)據(jù)密度,數(shù)據(jù)量減少了10.8%,如在全球范圍內(nèi)使用六邊形網(wǎng)格存儲(chǔ)將比經(jīng)緯度存儲(chǔ)減少33.7%的數(shù)據(jù)存儲(chǔ)量.由于硬件的發(fā)展不均衡,目前顯存價(jià)格是遠(yuǎn)遠(yuǎn)要比同等容量的內(nèi)存要昂貴,所以縮小體數(shù)據(jù)的容量以減少顯存占用明顯具有重要的意義.

    4.5 算法復(fù)雜度

    文獻(xiàn)[14]中提出的基于六邊形網(wǎng)格的光線投射算法,使用了4張二維表將各個(gè)六邊形單元的中心點(diǎn)、頂點(diǎn)還有邊的對(duì)應(yīng)關(guān)系進(jìn)行了存儲(chǔ),用于緊鄰搜索,因?yàn)橐闅v網(wǎng)格單元,所以算法的復(fù)雜度是O(n).而本文算法實(shí)在數(shù)據(jù)預(yù)處理階段就生成了一張經(jīng)緯度-三角形網(wǎng)格的檢索表,所以將算法的復(fù)雜度降為了O(1),有效的減少了計(jì)算量.

    5 結(jié)論

    將球面六邊形網(wǎng)格引入球面體繪制算法中,有效地降低了數(shù)據(jù)存儲(chǔ)空間的占用率,在渲染效果方面有顯著提升;通過建立經(jīng)緯度-三角形檢索表以及設(shè)計(jì)三棱柱采樣點(diǎn)插值算法,降低了算法的復(fù)雜度,同時(shí)經(jīng)過優(yōu)化渲染模式,在對(duì)結(jié)果影響很小的情況下提升了渲染的速率.

    由于全球空間有著大范圍、大數(shù)據(jù)量的特性,將這些完整的數(shù)據(jù)在普通計(jì)算機(jī)上進(jìn)行可視化,傳統(tǒng)的算法是難以實(shí)現(xiàn)的,考慮到三維空間中人眼對(duì)于較近位置的場景觀察力要比較遠(yuǎn)處高,所以下一步將考慮把光線投射中的自適應(yīng)采樣技術(shù)引入到六邊形網(wǎng)格體繪制中,進(jìn)一步提高數(shù)據(jù)規(guī)模較大時(shí)的計(jì)算速度.

    猜你喜歡
    經(jīng)緯度六邊形光線
    春日暖陽
    知識(shí)快餐店 到處都是六邊形
    “你看不見我”
    中外文摘(2019年8期)2019-04-30 06:47:36
    創(chuàng)意六邊形無限翻
    童話世界(2018年32期)2018-12-03 05:14:56
    怎樣剪拼
    怎樣剪拼
    自制中學(xué)實(shí)驗(yàn)操作型經(jīng)緯測量儀
    澳洲位移大,需調(diào)經(jīng)緯度
    淘氣的光線
    一種利用太陽影子定位的數(shù)學(xué)模型
    噶尔县| 越西县| 南木林县| 兴国县| 曲阜市| 汾西县| 常宁市| 拉孜县| 长垣县| 钟祥市| 兴业县| 防城港市| 安仁县| 湘潭县| 新民市| 抚州市| 通江县| 沧州市| 进贤县| 新宁县| 安阳县| 泉州市| 奉新县| 土默特左旗| 三亚市| 日照市| 库伦旗| 延吉市| 慈溪市| 涟水县| 北票市| 霍邱县| 克东县| 越西县| 会宁县| 高尔夫| 申扎县| 上思县| 平定县| 汉中市| 高雄市|