本技術(shù)屬于醫(yī)學影像處理,具體涉及一種基于環(huán)境光遮蔽的醫(yī)學容積真實渲染方法。
背景技術(shù):
1、隨著醫(yī)學影像水平的發(fā)展,診斷設(shè)備更加高端,特別是ct、mri等高分辨率斷層圖像出現(xiàn),促使醫(yī)學三維重建技術(shù)也在不斷的進步,這些技術(shù)能夠提供豐富的人體內(nèi)部結(jié)構(gòu)信息。以往二維圖像往往難以滿足臨床需求,尤其是在復(fù)雜的手術(shù)規(guī)劃和疾病診斷中。因此,通過三維真實容積渲染,夠提供更為直觀、精細和全面的醫(yī)學圖像信息。
2、現(xiàn)在3d重建技術(shù)中,光線投射(ray?casting)是一種常見的方法,特別是在體積渲染(volume?rendering)中。它通過模擬光線從光源發(fā)出,穿過三維空間并與場景中的物體相交,來生成圖像。從虛擬相機發(fā)出光線,這些光線沿著視線方向投射到場景中。
3、對于每條光線,檢測它與場景中所有像素的交點。這涉及到幾何計算,可能包括與不同方位像素的交點。在交點處,根據(jù)位置的材質(zhì)屬性和光照條件采樣得到像素顏色。
4、通過應(yīng)用光照模型來計算光線與體數(shù)據(jù)相互作用的結(jié)果。對光源方向、強度和顏色屬性計算。沿光線路徑混合顏色,疊加透明度和光的衰減。對于半透明或模糊物體,需要額外的計算來模擬吸收效果。最后將所有光線的顏色貢獻合成到最終的圖像中。這個過程涉及到像素的累積和混合,最后生成對應(yīng)渲染圖像。
5、光線投射雖然可以一定程度上展現(xiàn)解剖結(jié)構(gòu),但是,由于光照效果通常由直接光照(如方向光、點光源)和間接光照(如全局光照)組成。然而,這些技術(shù)往往忽略了局部的微小遮擋細節(jié),導(dǎo)致渲染效果與現(xiàn)實世界存在差異。為了改善這一問題,引入了環(huán)境光遮蔽技術(shù),它可以模擬光線在物體表面和角落的細微陰影,增強容積渲染的真實感。
6、現(xiàn)有的渲染方法存在以下缺點:
7、基于ray?casting的體渲染,雖然可以實現(xiàn)解剖結(jié)構(gòu)展示,但是不夠真實逼真,特別是有器官遮擋的時候,不能很方便的識別空間位置;
8、環(huán)境光遮蔽技術(shù)目前主要應(yīng)用到游戲行業(yè),也通常是表面重建的渲染,目前還沒有將其應(yīng)用于醫(yī)學容積體重建中。
9、環(huán)境光遮蔽技術(shù)由于遮蔽運算,涉及大量計算,影響運算效率和實時性,需要改進達到實時交互。
10、因此研發(fā)一種改進的基于環(huán)境光遮蔽的醫(yī)學容積真實渲染方法很有必要。
技術(shù)實現(xiàn)思路
1、本技術(shù)的目的在于克服上述現(xiàn)有技術(shù)的不足,提供了一種基于環(huán)境光遮蔽的醫(yī)學容積真實渲染方法。
2、為了解決技術(shù)問題,本技術(shù)的技術(shù)方法是:一種基于環(huán)境光遮蔽的醫(yī)學容積真實渲染方法,包括以下步驟:
3、步驟1:讀入dicom圖像;
4、步驟2:生成體數(shù)據(jù):對dicom圖像解析,按照圖像號順序,判斷層間距是否滿足重建,滿足重建的條件為所有圖像層間距一致,滿足則生成對應(yīng)體數(shù)據(jù);
5、步驟3:進行raycast渲染:將體數(shù)據(jù)輸入緩沖區(qū),定義光線ray,ray=(o,d),其中o是光線的起點,d是光線的方向向量;對于每條光線,計算光線與體素的交點,并計算深度距離t,其中體素為體數(shù)據(jù)的基本單元;
6、其中:
7、
8、t表示深度距離,像素;
9、pi表示對應(yīng)體素;
10、i表示所有投射方向上體素單元計數(shù);
11、步驟4:在步驟3計算獲得的交點處采樣體素數(shù)據(jù),獲取體素的顏色和密度屬性,應(yīng)用phong光照模型計算光線與體素相互作用,根據(jù)體素的顏色和密度屬性及phong光照模型計算交點的顏色,沿光線路徑累積顏色和透明度,遠的體素對顏色的貢獻會因為光的衰減而減少,沿光線路徑累積每個采樣點的貢獻,考慮光的透明度,將最終累積的顏色作為該光線的輸出顏色,生成渲染圖像;
12、步驟5:位置紋理編碼:通過步驟3計算出的所有交點,定義任意p點在三維空間中的位置向量先進行歸一化位置,然后進行紋理編碼;
13、步驟6:向量紋理編碼:通過步驟3計算出的所有交點,計算每個體素的向量,對所有向量進行編碼,對于任意p點向量進行紋理編碼;
14、步驟7:屏幕空間增量采樣:將步驟4生成的渲染圖像映射到視口區(qū)域,從視口區(qū)域每個像素發(fā)射射線,采用視口隨機增量采樣,每次隨機增量采集視口像素值;
15、步驟8:oa遮蔽計算:對于每個采樣點,計算當前像素是否被遮擋,如果采樣點深度距離t小于當前像素深度加上一個由采樣點法線方向和到當前像素向量決定的偏移量,則認為采樣點被遮擋,計算出遮蔽值,實現(xiàn)實時繪制;
16、步驟9:與原紋理深度比較:將步驟4生成的渲染圖像映射到視口區(qū)域,從視口區(qū)域每個像素發(fā)射射線,采用視口隨機增量采樣,每次隨機增量采集視口像素值,計算兩次隨機位置的偏移量,先把這個偏移量從切線空間轉(zhuǎn)到觀察空間,再把采樣點從觀察空間轉(zhuǎn)到屏幕空間,用得到的屏幕坐標采樣深度緩沖獲取采樣點的深度值randomdepth,提取紋理編碼后的深度距離t來進行比較,如果randomdepth大于深度距離t,進行遮蔽加權(quán),計算的遮蔽加權(quán)系數(shù)oa,否則丟棄;
17、步驟10:加權(quán)合成oa、合成結(jié)果圖像:將步驟4生成的渲染圖像,和步驟9計算的遮蔽加權(quán)系數(shù)oa,進行遍歷加權(quán)繪制,生成的帶環(huán)境光遮蔽的真實圖像,再次循環(huán)步驟7進行增量采樣,依次漸進繪制,多次繪制到高清顯示的合成結(jié)果圖像,結(jié)束渲染流程。
18、優(yōu)選的,所述步驟3中定義光線為:由一個視角起點和一個方向向量定義組成,方向向量是歸一化的,表示光線的傳播方向;ray=(o,d),其中o是光線的起點,d是光線的方向向量。
19、優(yōu)選的,所述步驟5中歸一化位置具體公式為:
20、
21、其中:
22、表示位置歸一化向量;
23、w是歸一化的權(quán)重,是場景的最大尺寸,在[0,1]范圍內(nèi);
24、所述紋理編碼方式如下:
25、
26、其中:
27、表示位置rgb紋理向量;
28、srgb是一個將線性紋理空間轉(zhuǎn)化為srgb顏色空間的函數(shù),用于處理顏色的非線性特性。
29、優(yōu)選的,所述步驟6中紋理編碼方式如下:
30、
31、其中:
32、octahedron?encode作為encode編碼函數(shù),具體如下:
33、
34、表示對應(yīng)八面體映射向量。
35、優(yōu)選的,所述步驟8中計算當前像素是否被遮擋的公式如下:
36、
37、式中:
38、occlusion為0時認為采樣點被遮擋,occlusion為1時認為采樣點未被遮擋;
39、其中sampledepth為深度距離t;currentdepth當前像素深度;
40、n是采樣點數(shù)量;
41、step函數(shù)在第一個參數(shù)小于0時返回1,否則返回0;
42、bias是為了避免深度圖中的噪聲而添加的一個小偏移量。
43、優(yōu)選的,所述步驟9中遮蔽加權(quán)的遮蔽加權(quán)系數(shù)oa公式如下:
44、
45、式中:
46、np代表p的法線;
47、w代表p的切平面正方向的任意單位向量;
48、v(p,w)代表可見函數(shù),如果,在w方向被遮擋則為1,否則為0。
49、與現(xiàn)有技術(shù)相比,本技術(shù)的優(yōu)點在于:
50、(1)本技術(shù)公開了一種基于環(huán)境光遮蔽的醫(yī)學容積真實渲染方法,實現(xiàn)光線投射體渲染陰影效果,提升了層次和細節(jié),改進光線投射算法,在投射過程中生成遮蔽紋理圖,改進采樣點與射線使用隨機算法以減輕遮蔽瑕疵,通過oa增量采樣方式,漸進式渲染滿足實時繪制,使渲染圖像更加真實逼真,特別是有器官遮擋的時候,能很方便的識別空間位置;
51、(2)本技術(shù)容積重建引入環(huán)境光遮蔽技術(shù),增加了醫(yī)學圖像的深度感和細節(jié),使得重建的更加真實;
52、(3)本技術(shù)在光線投射算法中,引入位置紋理編碼和向量紋理編碼,方便后期gpu并行加速加權(quán)運算繪制,提高了運算效率和實時性,可達到實時交互;
53、(4)本技術(shù)通過遮蔽隨機位置探測方案,優(yōu)化遮蔽運算效率和質(zhì)量,能更方便的識別空間位置。