1.面向医学海量数据的多分辨率体绘制方法,包括以下步骤:
1)、导入需要绘制的医学体数据,将该医学体数据作为原始体数据;
2)、对所述的原始体数据进行统一划分、形成一系列大小相同父分块;获取一个父分块作为当前父分块,计算当前父分块的各个细节层次所具有的标量变化率,根据用于指定的标量阈值来决定父分块的最终细节层次等级;将当前父分块压缩到该最终细节层次等级、形成压缩父分块;将所有父分块转换为压缩父分块;
3)、根据用户设定的不透明度函数,筛选出不透明度非零的压缩父分块,将所有不透明度非零的压缩父分块导入图形卡的纹理缓存中并进行重组;
4)、利用光线投射法,沿着光线方向对体数据进行自适应采样,完成提数据的绘制。
2.如权利要求1所述的面向医学海量数据的多分辨率体绘制方法,其特征在于:步骤
2)包括以下具体步骤:
(2.1)、对所述的原始体数据进行统一划分、形成一系列大小相同的三维矩阵,每个三维矩阵作为一个父分块;通常父分块的大小为32×32×32或是16×16×16;
(2.2)、获取一个父分块作为当前父分块,将当前父分块根据不同的细节层次等级l(l∈(0,max_l))、划分为一系列大小相同的三维矩阵,每个三维矩阵作为一个子分开,细max_1-1节层次等级l与子分块每一维度的大小dim以及子分块数量n之间的关系为:dim=2 ;
3l
n=2 ;
(2.3)、引入高斯函数,计算每一个子分块中的每个体素的高斯分布值SG,第i个子分块中的第j个体素的高斯分布值其中:σmax_i表示第i个子分块所有标量值的标准差,μmax_i表示第i个子分块所有标量值的期望值,Sj为当前父分块的第j个体数据;
第i个子分块中最大高斯分布值
将Wij作为第i个分块第j个体素的权重值,则Wij=(1+SGij/Gmax_i);
计算第i个子分块的权重标量值μGmax_i,最终计算第i个父分块的标量值变化率为:
(2.4)、计算当前父分块在细节层次等级l上所具有的标量值变化率Vl,其中,max_S和min_S表示原始体数据中的标量最大值和最小值;
(2.5)、根 据 用户 指定 的阈 值Tuser计 算获 得当 前 父分 块的 阈值 函 数其中, 表示当前父分块的标量值平均梯度,gi(s)表示当前父分块中第i个体数据具有的梯度值;
(2.6)、根据Vl和Tu的比较结果来确定当前父分块的最终细节层次等级,即满足:(2.7)、将当前父分块进行最终细节层次等级的压缩,形成压缩父分块;
(2.8)、判断当前父分块是否最后一个父分块,若否,则重复执行步骤(2.2)-(2.7);若是,则进入步骤3)。
3.如权利要求2所述的面向医学海量数据的多分辨率体绘制方法,其特征在于:所述的步骤3)包括以下步骤:(3.1)、初始化,将标记压缩父分块的起始坐标PACK_ORIG重置为零;
(3.2)、读取一个压缩父分块作为当前父分块,判断当前压缩父分块是否为有效块,若是,则进入步骤(3.3);若否,则重新获取一个压缩父分块作为当前父分块;
(3.3)、将当前压缩父分块导入到起始坐标为PACK_ORIG的纹理缓存中;
(3.4)、根据当前压缩父分块的细节层次等级l,执行RA[l]+=1;以及利用以下公式修改数组RA[]中的每一个项;
RA[l]=R4[l-1]%8+RA[l];l∈{0:max_l}其中RA[]中存放每个细节层次等级上的压缩父分块数目;
(3.5)、根据数组RA[]的值,计算下一个压缩父分块在纹理缓存中的起始坐标PACK_ORIG;
(3.6)、判断当前压缩父分块是否最后一个压缩父分块,若否,则重复执行步骤(3.2)-(3.5);若是,结束纹理重组过程。
4.如权利要求3所述的面向医学海量数据的多分辨率体绘制方法,其特征在于:步骤
4)包括以下步骤:
(4.1)、将积累不透明度A′i重置为零,并且获得采样点P的三维坐标V0;
(4.2)、计算P点所属的压缩父分块在原始体数据中的坐标VI,其中,Blk_V=(Blk_X,Blk_Y,Blk_Z)表示每一个父分块在各个维度上具有的标量值的个数;Spacing_V=(Spacing_X,Spacing_Y,Spacing_Z)表示每一个父分块在各个维度上相邻体素之间的空间距离;
(4.3)、确定点P在压缩父分块中相对于起始点的偏移量ΔV,l
(4.4)、根据压缩父分块在纹理缓存中的起始点V′,以及压缩父分块的大小S=(2,l l
2,2),得到点P在纹理缓存中的坐标Vp,
Vp=V′+ΔV×S;
(4.5)、获得采样点P处的不透明度Ai,根据公式A′i=A′i-1+(1-A′i-1)×Ai对每一个采样点进行不透明度的融合;
(4.6)、指定积累不透明度阈值A_acc,当A′i≥A_acc时,结束当前的光线的采样。