本發(fā)明涉及超聲診斷技術(shù)領(lǐng)域,具體涉及基于gpu平臺的實時3d超聲掃描變換方法。
背景技術(shù):
2d模式下的掃描變換在傳統(tǒng)超聲中就需要消耗大量的計算資源,因為每繪制一個點都要進行掃描變換。有些廠家用dsp甚至fpga等專用硬件來完成掃描變換。有一些設(shè)備采用了cpu的快速算法,即使這樣,也需要很高端的cpu來完成。實時3d模式,也就是通常大家所說的4d模式,需要進行體數(shù)據(jù)的掃描變換,這對于傳統(tǒng)的cpu,dsp甚至fpga。都是巨大的挑戰(zhàn).傳統(tǒng)的掃描變換算法,無法實時對3d體數(shù)據(jù)進行掃描變換。
技術(shù)實現(xiàn)要素:
基于現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種基于gpu平臺的實時3d超聲掃描變換方法,用于實現(xiàn)3d體數(shù)據(jù)掃描變換,節(jié)省cpu資源。
為實現(xiàn)上述目的,本發(fā)明的技術(shù)方案為:
基于gpu平臺的實時3d超聲掃描變換方法,包括以下步驟:
1)預(yù)設(shè)一個掃描完成后的3d體圖像模型,所述預(yù)設(shè)的3d體圖像模型輪廓近似實際圖像且大于實際圖像;
2)建立直角坐標(biāo)系,由x軸和y軸確定xy平面,z軸垂直于xy平面,并對步驟1)中預(yù)設(shè)的3d體圖像在xy平面內(nèi)且垂直于z軸的方向建立一系列相互平行的代理平面,并將平面劃分為n*n的小格;
3)gpu獲得每個代理平面上各個小格的四個頂點的直角坐標(biāo)(x,y,z,);
4)對各個小格的四個頂點和中點的直角坐標(biāo)(x,y,z,)做gpu的紋理坐標(biāo)變換,得到各個小格四個頂點和中點的紋理坐標(biāo)(u,v,w),并將頂點和中點坐標(biāo)分別存放;
5)gpu通過色調(diào)映射算法,對各個小格的紋理坐標(biāo)(u,v,w)上的超聲進行采集,并將采集到的超聲的回聲強弱映射成亮度和對比度;
6)利用gpu繪制所有代理平面,同時打開gpu的alpha模塊混合繪制完成所有圖像。
所述4)中對各個小格的四個頂點的直角坐標(biāo)(x,y,z,)做gpu的紋理坐標(biāo)變換的方法包括gpu獲得繞xyz軸旋轉(zhuǎn)的視角變換矩陣t,并用所述變換矩陣t的逆矩陣變換所述3)中每個代理平面上各個小格的四個頂點的直角坐標(biāo)(x,y,z,),gpu計算出在探頭幾何模型空間中對應(yīng)的直角坐標(biāo)(x1,y1,z1),根據(jù)直角坐標(biāo)(x1,y1,z1),gpu計算出對應(yīng)的紋理坐標(biāo)(u,v,w)。
所述6)中繪制圖像時把每個代理平面中各個小格中間的點按照w紋理坐標(biāo)位置相同由gpu做線性插值。
本發(fā)明的有益效果為:采用gpu對3d體數(shù)據(jù)進行掃描變換,不需要額外的專用硬件,節(jié)省cpu計算資源,利用每臺pc都有的集成gpu即可完成。
附圖說明
圖1為本發(fā)明具體實施例預(yù)設(shè)的3d體圖像模型;
圖2為本發(fā)明具體實施例代理平面和掃描變換后的3d掃描體產(chǎn)生的交集結(jié)構(gòu)示意圖;
圖3為本發(fā)明具體實施例代理平面網(wǎng)格化的結(jié)構(gòu)示意圖;
圖4為本發(fā)明具體實施例中建立的一系列相互平行的代理平面結(jié)構(gòu)示意圖。
具體實施方式
以下將結(jié)合實施例和附圖對本發(fā)明的構(gòu)思、具體結(jié)構(gòu)及產(chǎn)生的技術(shù)效果進行清楚、完整地描述,以充分地理解本發(fā)明的目的、特征和效果。顯然,所描述的實施例只是本發(fā)明的一部分實施例,而不是全部實施例,基于本發(fā)明的實施例,本領(lǐng)域的技術(shù)人員在不付出創(chuàng)造性勞動的前提下所獲得的其他實施例,均屬于本發(fā)明保護的范圍。
基于gpu平臺的實時3d超聲掃描變換方法,包括以下步驟:
1)預(yù)設(shè)一個掃描完成后的3d體圖像模型,所述預(yù)設(shè)的3d體圖像模型輪廓近似實際圖像且大于實際圖像;圖1所示為預(yù)設(shè)的3d體圖像模型。
2)建立直角坐標(biāo)系,由x軸和y軸確定xy平面,z軸垂直于xy平面,并對步驟1)中預(yù)設(shè)的3d體圖像在xy平面內(nèi)且垂直于z軸的方向建立一系列相互平行的代理平面,并將平面劃分為n*n的小格;本實施例中z軸為垂直屏幕平面向里,垂直于z軸的,如圖2所示,每一個代理平面都和掃描變換后的3d掃描體產(chǎn)生一個交集。
將代理平面劃分為很多網(wǎng)格,雖然代理平面上原始3d體數(shù)據(jù)到xyz空間的變換成非線性分布。但是當(dāng)網(wǎng)格足夠細過后,可以認(rèn)為在細小網(wǎng)格內(nèi),坐標(biāo)呈線性分布。網(wǎng)格化后的代理平面結(jié)構(gòu)示意圖如圖3所示。
3)gpu獲得每個代理平面上各個小格的四個頂點的直角坐標(biāo)(x,y,z,);
4)對各個小格的四個頂點和中點的直角坐標(biāo)(x,y,z,)做gpu的紋理坐標(biāo)變換,得到各個小格四個頂點和中點的紋理坐標(biāo)(u,v,w),并將頂點和中點坐標(biāo)分別存放;
其中對各個小格的四個頂點的直角坐標(biāo)(x,y,z,)做gpu的紋理坐標(biāo)變換的方法包括gpu獲得繞xyz軸旋轉(zhuǎn)的視角變換矩陣t,并用所述變換矩陣t的逆矩陣變換所述3)中每個代理平面上各個小格的四個頂點的直角坐標(biāo)(x,y,z,),gpu計算出在探頭幾何模型空間中對應(yīng)的直角坐標(biāo)(x1,y1,z1),根據(jù)直角坐標(biāo)(x1,y1,z1),gpu計算出對應(yīng)的紋理坐標(biāo)(u,v,w)。
5)gpu通過色調(diào)映射算法,對各個小格的紋理坐標(biāo)(u,v,w)上的超聲進行采集,并將采集到的超聲的回聲強弱映射成亮度和對比度;
6)利用gpu繪制所有代理平面,同時打開gpu的alpha模塊混合繪制完成所有圖像。如圖4所示,把所有的代理平面按照z軸從后往前,由gpu完成繪制,繪制圖像時把每個代理平面中各個小格中間的點按照w紋理坐標(biāo)位置相同由gpu做線性插值。
需要說明的是,以上所述只是本發(fā)明的較佳實施例而已,本發(fā)明并不局限于上述實施方式,只要其以相同的手段達到本發(fā)明的技術(shù)效果,都應(yīng)屬于本發(fā)明的保護范圍。