資源描述:
《改進(jìn)的三維可視化用光線投射算法》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、改進(jìn)的三維可視化用光線投射算法【摘要】把圖像處理、光線投射與包圍體技術(shù)有機(jī)結(jié)合,提出了一種提高成像質(zhì)量和速度的三維可視化新方法。該方法利用物體空間的包圍體算法來減少追蹤光線的數(shù)量,加快了繪制速度。通過實(shí)際的醫(yī)學(xué)胸部CT圖像的三維重建實(shí)驗(yàn),取得了較好的三維顯示效果和速度,驗(yàn)證了改進(jìn)的光線投射算法對胸部CT圖像的快速三維可視化問題的有效性?!娟P(guān)鍵詞】光線投射算法;包圍體算法;可視化;三維重建;胸部CT圖像Abstract:Anovelmethodfor3Dvisualizationprovedimagequalityandspeedhasbeendevelopedbycloselybinedu
2、seofimageprocessing,raycastingandboundingboxtechnology.Themethodappliedspaceobjectsboundingboxtrackingalgorithmtoreducetheamountoflight,andimprovedraycastingalgorithmtospeeduptherenderingspeed.Goodperformancespeedand3DdisplayensionalreconstructionexperimentedicalchestCTimages,andtheeffectivenessof
3、theimprovedlightingprojectionalgorithmforrapid3DvisualizationofthechestCTimagesed.Keyage科學(xué)計(jì)算可視化(visualizationinscientificsomputing)是指運(yùn)用計(jì)算機(jī)圖形學(xué)或者一般圖形學(xué)的原理和方法,將科學(xué)與工程計(jì)算等產(chǎn)生的大規(guī)模數(shù)據(jù)轉(zhuǎn)換為圖形、圖像,以直觀的形式表示出來[1,2]。涉及計(jì)算機(jī)圖形學(xué)、圖像處理、計(jì)算機(jī)視覺、計(jì)算機(jī)輔助設(shè)計(jì)及圖形用戶界面等多個(gè)研究領(lǐng)域,已成為當(dāng)前計(jì)算機(jī)圖形學(xué)研究的重要方向。目前,在可視化領(lǐng)域中,醫(yī)學(xué)數(shù)據(jù)的可視化是最活躍的研究領(lǐng)域之一。由于二維圖像序列不
4、能使醫(yī)生直觀的研究人體內(nèi)部的真實(shí)結(jié)構(gòu)[3],所以需要利用科學(xué)計(jì)算可視化技術(shù)將一系列基于CT成像技術(shù)得到的二維圖像重建成三維結(jié)構(gòu)[4,5]。三維重建分為面繪制算法和體繪制算法兩種。其中,面繪制算法包括輪廓線法和移動(dòng)立方體法,體繪制算法包括光線投射算法、錯(cuò)切形變算法、拋雪球算法和紋理映射算法。本文所用可視化工具VTK(TheVisualizationToolkit)[6]構(gòu)造在C++語言上,基于C++類庫,并支持Java與OpenGL語言,包括三維計(jì)算機(jī)圖形學(xué)、圖像處理和可視化三大功能。由于VTK支持OpenGL,可以有效地利用各種支持OpenGL標(biāo)準(zhǔn)的顯卡的硬件加速功能,提高經(jīng)過圖像處理或可
5、視化后得到的圖像或圖形數(shù)據(jù)的繪制效率。VTK將數(shù)據(jù)可視化算法封裝成一系列定義清晰、易于擴(kuò)展的類[7],是一個(gè)很好的圖形圖像可視化的工具箱,對于面向?qū)ο蟮木幊陶Z言和工程應(yīng)用有著廣泛的實(shí)用價(jià)值,對醫(yī)療領(lǐng)域及相關(guān)研究有著深遠(yuǎn)的意義。1光線投射與包圍體算法1.1光線投射算法光線投射(raycasting,RC)算法[8,9]是基于圖像空間體繪制的經(jīng)典算法,它從圖像空間的每一像素出發(fā),按視線方向發(fā)射一條射線,這條射線穿過三維數(shù)據(jù)場,沿著這條射線選擇若干個(gè)等距的采樣點(diǎn),并由距離某一采樣點(diǎn)最近的8個(gè)數(shù)據(jù)點(diǎn)的顏色值和不透明度值作三次線性插值,求出該采樣點(diǎn)的不透明度值和顏色值。再將每條射線上各采樣點(diǎn)的顏色值
6、和不透明度值由前向后或由后向前加以合成,即可得到發(fā)出該射線的像素點(diǎn)處的顏色值,從而可以在屏幕上得到最終的圖像。RC算法如下:①讀入體數(shù)據(jù);②數(shù)據(jù)預(yù)處理;③光照明暗處理與分類,得到各體素的顏色值和不透度值。RC算法假設(shè)三維數(shù)據(jù)場為規(guī)則的,利用插值法估計(jì)出每個(gè)采樣點(diǎn)所對應(yīng)的體數(shù)據(jù)值,然后再根據(jù)這些點(diǎn)上的值計(jì)算光強(qiáng)和不透明度。一般的點(diǎn)采樣都是利用三元線性插值法,使之有利于保留圖像的細(xì)節(jié),繪制質(zhì)量高的圖像,但是,RC算法運(yùn)算成本較大,繪制速度低。而在交互式可視化系統(tǒng)中,繪制速度是非常重要的指標(biāo)。1.2包圍體算法在二維圖像中,當(dāng)其分辨率及采樣分辨率不變時(shí),如果減少實(shí)際進(jìn)行光線追蹤的光線或采樣點(diǎn)的數(shù)目
7、,能夠提高繪制速度。在醫(yī)學(xué)圖像的三維體數(shù)據(jù)中,一般情況下只包括幾個(gè)獨(dú)立的器官或臟器,假設(shè)可以用幾個(gè)凸多面體分別將它們包圍起來,稱這樣的凸多面體為包圍體。因此只要提前判定光線與任一個(gè)包圍體是否相交,如果不相交則不進(jìn)行后續(xù)的采樣過程,從而減少了實(shí)際追蹤光線的數(shù)量。并且通過將采樣過程限制在包圍體的內(nèi)部進(jìn)行來減少每個(gè)光線上采樣點(diǎn)數(shù)目。為了減少光線與它們交點(diǎn)所計(jì)算的時(shí)間,可以采用預(yù)先確定一組平面集法向量,它們獨(dú)立于要顯示的器官或臟