




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
基于圖形硬件實現(xiàn)的反走樣體splang算法
1體splatch算法直接體描繪是科學(xué)計算可視化領(lǐng)域的一種常見技術(shù)。在不生成多邊形表示的情況下,可以直接可視化體場景的內(nèi)部結(jié)構(gòu)。其中,體積協(xié)議算法是一種直接以物體空間為處理順序的體積映射算法。將每個體元素視為空間中的點采樣的三維核函數(shù),并沿圖像方向的光譜分析來獲得體積三維構(gòu)建的二維結(jié)果,從而累積圖像平面上的貢獻。由于在圖像平面上的每個像素的值可以被視為一系列二維投影疊加,因此這些二維投影也被用作fotprins。體積協(xié)議算法采用一只處理體素的方法,可以同時處理和計算。它避免了基于圖像空間的光束映射算法中個體元素的隨機對照試驗的負(fù)面影響,從而提高了體積元素的表示效率。通過提前計算三維網(wǎng)格的二維積分和fotprin跟蹤技術(shù)。迄今為止,絕大多數(shù)體Splatting算法或著重于反走樣技術(shù),或著眼于算法加速.其中,紋理映射Splats方法是目前最廣為人知的加速技巧.但是,此類算法本質(zhì)上僅利用了紋理映射功能,并將體數(shù)據(jù)置于主存,而從主存到顯存的帶寬瓶頸極大地限制了算法的繪制速度;此外,頂點變換和投影計算仍然需要在CPU中執(zhí)行.2體splattng交互算法實現(xiàn)在體Splatting算法中,常用的三維重建核表示有多項式核、球形核、三線性核、橢圓核的泊松重采樣逼近和三次樣條核等.1997年,Swan等提出了隨距離變化的二維投影計算方法,有效地取得了低通濾波器的反走樣效果,它比Zwicker等隨后提出的橢圓加權(quán)平均濾波算子具有更為簡單的計算形式.從實用的角度看,直接體繪制的優(yōu)勢在于它能快速地揭示器官的內(nèi)部組織,以實體或透明的繪制模式可視化感興趣區(qū)域.但是,龐大的數(shù)據(jù)處理量限制了數(shù)據(jù)繪制速度,如在醫(yī)學(xué)可視化領(lǐng)域,醫(yī)生經(jīng)常需要對體數(shù)據(jù)作平移、旋轉(zhuǎn)操作,去除自遮擋區(qū)域,將不同區(qū)域賦予不同顏色等.因此交互的高質(zhì)量的體繪制(即每秒能夠繪制10幀以上)是其中的一個關(guān)鍵因素.在經(jīng)典的體Splatting中,純粹的軟件加速技術(shù)有體素等值鏈表、層次Splatting、并行Splatting、遮擋剔除以及光線驅(qū)動Splatting等.而利用圖形硬件加速的體Splatting算法只有紋理映射Splats方法,它部分地利用了圖形硬件中的紋理映射功能.因此,如何最大限度地利用當(dāng)前可編程圖形硬件的強大計算能力,高質(zhì)量交互地實現(xiàn)體Splatting算法,是本文要解決的問題.3基于fpga的低通濾波算子本節(jié)闡述一個新的基于可編程圖形硬件(GPU)體Splatting算法.其主要技術(shù)貢獻有三點:(1)改進Swan等提出的隨空間變化的低通濾波算子的形式,使之適用于硬件編程實現(xiàn);(2)利用可編程頂點渲染器和像素渲染器,將原來在CPU中完成的計算轉(zhuǎn)移至GPU;(3)考慮到體數(shù)據(jù)的規(guī)則采樣屬性,提出一種新的頂點數(shù)據(jù)壓縮策略,可將2563大小的體數(shù)據(jù)值和體素幾何完全置于顯存.注意,本文的處理對象是規(guī)則采樣的256色灰度值的三維體數(shù)據(jù).3.1基于透視變換的反走樣算法圖1所示為標(biāo)準(zhǔn)體Splatting的算法流程:體數(shù)據(jù)首先從物體空間經(jīng)視點變換至相機空間;再進行基于三維濾波核的重建和基于傳輸函數(shù)的體數(shù)據(jù)分類.分類后的體素從前至后投影至幀緩沖區(qū);最后逐個渲染體素并累積其光亮度貢獻至成像平面.在科學(xué)計算可視化中,透視變換幫助用戶獲得有用的深度提示,理解數(shù)據(jù)間的空間關(guān)系.不難知道,當(dāng)采樣率沿著發(fā)散的光線變化時,透視變換是產(chǎn)生走樣的主要因素之一,如圖2a所示.設(shè)p為成像平面每個像素之間的距離,s為體素之間的間隔,D表示相機離屏幕的距離.令體采樣頻率與在距離k處的成像平面采樣頻率相等,則有當(dāng)體素與視點距離大于k時,體采樣頻率大于幀緩沖區(qū)采樣頻率,產(chǎn)生走樣現(xiàn)象,如圖2b所示.Swan等提出距離相關(guān)的反走樣算法,即隨體素到視點距離的增加,相應(yīng)增加Splats的大小及光亮度權(quán)重.設(shè)在距離k處的體素ok半徑為rk,則在距離f>k處,of的半徑rf=rkf?k.同理,兩者的相對光亮度權(quán)重關(guān)系為在距離f<k處,不存在走樣現(xiàn)象,因此不需要進行處理.3.2反走樣在圖形硬件中的實現(xiàn)為了完全在圖形硬件中實現(xiàn)體Splatting,首先需解決三個問題:(1)反走樣在圖形硬件中的實現(xiàn);(2)體數(shù)據(jù)的有序遍歷;(3)體數(shù)據(jù)的代理幾何表示以及代理幾何的壓縮和解壓縮.3.2.1基于splatch算法的foiprin由于圖形硬件中只支持點、線、面等幾何數(shù)據(jù),因此必須人為地生成代理幾何來表示體素.如圖3所示,本文采用一個正方形來表示單個體素,該正方形的頂點被送入GPU,其在屏幕上的位置根據(jù)下文的描述確定.令體素之間的間隔為s,體素半徑為,使相鄰體素的三維重建信號在空間中互相覆蓋.由于體素在成像平面的二維投影即footprint的半徑取決于體素與視點之間的距離,因此只有在投影變換以后才能確定footprint的半徑.由圖3可知,體素在屏幕上的投影大小of為一常數(shù),即.據(jù)此可對每個體素直接構(gòu)造對應(yīng)的、具有所需尺寸的屏幕空間footprint,從而省略在相機空間的計算量.將紋理映射的四邊形投影到屏幕的反走樣Splatting算法步驟如下:Step1.構(gòu)造一個正方形代表當(dāng)前體素,其中心位于體素的物體空間位置;Step2.將正方形的中心從物體空間變換至相機空間;Step3.通過式(1)計算參數(shù)k;Step4.利用式(3)將體素中心投影至成像平面;Step5.計算正方形在成像平面上的大小,形成屏幕上的一個footprint;Step6.直接將預(yù)積分footprint表應(yīng)用于屏幕footprint上;Step7.按照式(2)相應(yīng)地增大屏幕正方形的光亮度權(quán)重;Step8.渲染并合成各個footprint的貢獻.在Step1中,of在屏幕空間的投影位置xf可以使用xf=VWok(3)xf=VWok(3)估計,其中,W和V分別為視見變換矩陣和透視變換矩陣.3.2.2srce-alhned遍歷方式直接體繪制與面繪制的一個重要區(qū)別是直接體繪制中的體數(shù)據(jù)必須從后往前或從前往后遍歷,以保證繪制的正確性,其本質(zhì)是體素的排序問題.體Splatting文獻中共有三類遍歷方式:(1)體素bucket方法,即將體素按照與當(dāng)前視點的距離從大到小排列成一個桶狀結(jié)構(gòu)(bucket),再從前到后逐層做Splatting;(2)根據(jù)視點方向選擇冠狀、矢狀和橫切面的任意一個方向,以二維切片的方式逐層繪制,即Slice-Aligned遍歷方式;(3)Huang等提出的Image-Aligned遍歷方式,它針對當(dāng)前視線方向?qū)⒚總€體素分割為平行于成像平面的數(shù)個厚片,再根據(jù)距離分層遍歷各個厚片.不難發(fā)現(xiàn),方式(1)和(3)需要逐幀對體數(shù)據(jù)重新排序,大大降低了繪制效率,不適用于圖形硬件加速繪制.基于此,我們采用圖4所示的二維切片方式對體數(shù)據(jù)進行遍歷,共計x,y,z三個遍歷方向.在以往的紋理映射的Splats算法中,體數(shù)據(jù)的遍歷雖然可自由地采用上述方式中的任意一種,但體素值和代理幾何(即四邊形)是逐個裝入顯存進行Splatting,而本文算法一次性將三維體紋理和每個遍歷方向?qū)?yīng)的代理幾何置入顯存,避免了在內(nèi)存和顯存之間傳輸數(shù)據(jù).對于任意一個遍歷方向,每個切片上對應(yīng)的體素屬性只在slice層次上有所區(qū)別.3.2.3維紋理坐標(biāo)的壓縮圖形芯片的內(nèi)存一直是圖形硬件加速的一個極大瓶頸.以尺寸為2563(16M體素)的體數(shù)據(jù)為例,其內(nèi)存開銷主要有兩部分:每個體素的屬性和表示這個體素的體素幾何.其中,體素屬性包括原始灰度值和經(jīng)差分計算獲得的梯度向量(用于在像素渲染器中的光照明計算).如果采用量化的整型數(shù)據(jù)表示梯度,需要4Byte.每個體素幾何包括4個頂點,共計64M頂點,占用2048MB,加上其他消耗,總需2114MB內(nèi)存,如表1所示.我們的第一個策略是巧妙壓縮單個體素代理幾何的頂點數(shù)據(jù).單個體素代理幾何的頂點數(shù)據(jù)共有三項:體素三維紋理坐標(biāo),濾波核紋理坐標(biāo)和體素中心位置.由于體數(shù)據(jù)采樣的規(guī)則性,體素中心位置坐標(biāo)與體素三維紋理坐標(biāo)存在固定的線性關(guān)系,因此我們在顯存中只記錄體素紋理坐標(biāo),利用頂點渲染器的可編程性從體素三維紋理坐標(biāo)恢復(fù)體素中心位置坐標(biāo).當(dāng)前的圖形硬件的頂點渲染器只接受浮點數(shù)輸入,體素三維紋理坐標(biāo)需要12Byte.考慮到三維紋理坐標(biāo)實際是0~255之間的一個整數(shù),我們可將任意一個三維紋理坐標(biāo)(a,b,c)寫成a.bc的形式,如(255,150,38)表示為255.150038,僅需一個浮點數(shù)(4Byte).壓縮后的三維紋理坐標(biāo)可在Direct3D的頂點渲染器中巧妙地利用‘frc’指令(獲得某個浮點數(shù)的小數(shù)部分)解壓縮,其算法偽代碼如下:①Do‘frc’operationona.bctoget0.bc;②Subtract0.bcfroma.bctogeta;③Multiple0.bcby1000togetb.c;④Do‘frc’operationonb.ctoget0.c;⑤Subtract0.cfromb.ctogetb;⑥Multiple0.cby1000togetc.觀察到濾波核局部紋理坐標(biāo)(u,v)是((0,0),(0,1)(1,0),(1,1))之一,我們在體素三維紋理坐標(biāo)的壓縮表示a.bc的基礎(chǔ)上對u,v進行如下方式的編碼:若u為0,則將a.bc改為-a.bd;否則,改為a.bd,其中d=v+c.在頂點渲染器中,這種編碼方式可由數(shù)個數(shù)學(xué)指令快速恢復(fù).因此,我們用4Byte完全表示了每個體素代理幾何的單個頂點.我們的第二個策略是基于體采樣規(guī)則性的整個體數(shù)據(jù)的增量式幾何壓縮.有兩個事實:(1)對于均勻采樣的體數(shù)據(jù)而言,在每個采樣方向上相鄰兩個體素之間的距離為一常數(shù);(2)與體素相對應(yīng)的體素的中心位置距離以及相鄰兩層體數(shù)據(jù)的紋理坐標(biāo)距離也是不變量.因此,對于第3.2.2節(jié)所述的任意一種遍歷方式,只需將代表性的一層代理幾何信息保存在顯存.在繪制時,通過頂點渲染器中的增量運算可增量式地獲得所有層次的代理幾何信息.例如,對于z方向的遍歷方式,顯存中記錄的一層代理幾何信息上每個體素幾何的紋理坐標(biāo)表示為(x,y,i);在逐層繪制時,根據(jù)當(dāng)前繪制的層次在頂點渲染器中對i累積1,即可逐層恢復(fù)整個體數(shù)據(jù)代理幾何信息,而一層代理幾何所占內(nèi)存僅有256×256×16(1MB).由于本文采用Slice-Aligned遍歷方式,共需三份在不同視點方向下的代理幾何信息,因此代理幾何總內(nèi)存消耗為3MB(256×256×4×3),加上其他表示的66MB,共計69MB.3.3s法律處理流程本文Splatting算法框架中提到的所有操作均由可編程頂點渲染器和像素渲染器實現(xiàn).為了充分利用現(xiàn)有的可編程圖形硬件體系結(jié)構(gòu),算法流程包括以下幾個方面:(1)采用三維球形高斯濾波核作為反走樣重建濾波,獲得與Swan等提出的三次樣條核相近的效果,但在計算上更為簡單.在實現(xiàn)時,高斯濾波核量化為二維紋理并在像素渲染器存取.(2)由于體數(shù)據(jù)中不包含傳統(tǒng)圖形硬件可處理的幾何元素(如三角形、多邊形、線等),需要將每一個體素用兩個三角形表示.每個三角形頂點的數(shù)據(jù)結(jié)構(gòu)如表1所示.(3)結(jié)合第3.2.3節(jié)的頂點壓縮算法,第3.2.1節(jié)的計算流程完全在可編程頂點渲染器中實現(xiàn).(4)體數(shù)據(jù)分類在重建步驟前進行,傳輸函數(shù)量化為一個256入口的查找表,用于表示每個灰度值對應(yīng)的顏色和透明度.(5)每個體素的梯度向量預(yù)先計算并存儲在三維紋理中,用于在像素渲染器中做基于梯度的光照明計算.(6)體Splatting算法需要累加同一深度層次的體素光亮度貢獻,然后從前至后融合各個層次的光亮度貢獻.因此,在Slice-Aligned的遍歷時,我們設(shè)置同一slice的光亮度累積函數(shù)為加法,然后采用圖形硬件中的Render-to-Texture技術(shù)保存中間結(jié)果,即對應(yīng)的Sheet-Buffer,再與后續(xù)層次slice的光亮度貢獻做over或under融合操作.4實驗結(jié)果與分析我們在配置為PⅣ1.7GHzCPU,256MB內(nèi)存和ATIRadeon9700顯卡的微機上,用DirectX9.0軟件包實現(xiàn)了本文算法.圖5,6所示為部分實驗結(jié)果,原圖分辨率為512×512.體Splatting繪制順序采用Slice-AlignedSheet-Buffer方法,繪制模型采用基于體分類查找表的梯度渲染模型.表2所示為本文算法在不同體數(shù)據(jù)下的繪制效率.從表2可知,本文算法每秒可繪制300萬個體素,適用于高質(zhì)量交互科學(xué)計算可視化的應(yīng)用.5基于低通濾波的異向濾波實驗結(jié)果表明,本文算法可在普通的PC平臺上實現(xiàn)交互的高質(zhì)量體可視化.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 客戶購車合同范本
- 蒲公英甾醇對帕金森病小鼠模型中自噬功能異常的保護作用研究
- 結(jié)直腸鋸齒狀腺瘤臨床內(nèi)鏡病理特征分析及同時性腫瘤發(fā)生風(fēng)險研究
- Mg和Li含量對Al-Mg-Li-Cu合金力學(xué)性能和腐蝕性能的影響研究
- 《魔種》中世界主義的研究
- 科技創(chuàng)新在教育行業(yè)中的國際比較研究
- 設(shè)計方主導(dǎo)的EPC聯(lián)合體項目風(fēng)險管理研究
- 中老年女裝企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略研究報告
- 醫(yī)學(xué)魚鱗皮膚霜企業(yè)制定與實施新質(zhì)生產(chǎn)力戰(zhàn)略研究報告
- 生鮮農(nóng)產(chǎn)品產(chǎn)地冷鏈物流設(shè)施的采用模式及驅(qū)動因素分析
- 網(wǎng)絡(luò)安全系統(tǒng)集成高職PPT完整全套教學(xué)課件
- 射頻消融術(shù)介紹【共48張PPT】
- 驗證機械能守恒物理實驗報告
- 5.13 導(dǎo)游口頭語言表達技巧《導(dǎo)游業(yè)務(wù)》教學(xué)課件
- 人教版小學(xué)信息技術(shù)教材-課件
- 30萬室內(nèi)裝修預(yù)算表
- 拉線的制作詳細(xì)
- 律師報價函(訴訟)
- 新生兒沐浴評分標(biāo)準(zhǔn)
- 潛水作業(yè)指導(dǎo)書
- (完整版)設(shè)計管理
評論
0/150
提交評論