利用强度梯度直方图多级分割的层次化的体数据探索方式(Hierarchical Exploration of Volumes Using Multilevel Segmentation of the Intensity-Gradient Histograms)

科学可视化中体可视化是一个重要的研究方向,传递函数设计作为探索体数据的重要手段,则是体可视化的重点研究话题。传递函数通过将体数据中采样值映射成为颜色和透明度等视觉属性来描绘出图像。比如在医学CT扫描数据中,将肌肉对应的采样值所在的分布范围映射成黄色,骨头所分布的取值范围映射成白色,血液对应红色等等,辅以一定的透明度,我们便可以看到扫描数据的结果。传递函数设计中的映射可以从原始数据如强度出发,也可从数据的衍生属性如梯度出发,通常用户被提供一个描绘变量分布的直方图作为提示界面,在其上划取一段范围并指定它的映射特性,以此完成整个设计流程。

尽管在某些特定的领域如前文提到的医学应用,传递函数的设置存在一些经验性的参数约定,但对于普遍的传递函数设计本身来讲,这并不是一个容易的过程:用户需要在每次尝试过后查看效果,再做相应调整,而且有时,一个极其细微的调整也会对结果带来巨大的变化。所以,传递函数的设计是一个非常耗时且复杂的操作。为了让用户能够更好地探索和分析体数据,来自美国马里兰大学的学者们提出了一种层级化的体数据浏览方式。他们的解决方案针对强度-灰度二维传递函数,实现了一种多层级的半自动体数据划分,从而作为传递函数设计的新颖实现方式和交互手段。

exploration

整个工作的具体流程如上图所示,首先对原始体数据,计算出一个强度-梯度组成的二维直方图。用计算图形学中的分割算法对这个二维直方图进行切割,划分出的部分被作为传递函数的某一个部件,映射成某种颜色和透明度。切割是动态交互的,这个过程被描绘成一棵类似于决策树的层级结构,被记录在一个界面中显示。首先,最左边的是原始的体数据,用户起初并不能从中发现什么。接着,通过对采样值大小和梯度的统计,得到的二位直方图如第二张所示。将这张直方图看作一个图像,作者运用了图形切分算法Normalized-cut算法,每次挑取一个部分将其切割成两份,并将相应的过程记录成一棵二叉树,这两步如第三幅和第四幅所示。

在对二位直方图进行切分的过程中,为了帮助用户能够发现更值得探索的空间,借助信息论的方法,作者对对每一步切分做出一个衡量评估:用户并不能判断该选择哪一部分进行深层探索时,针对每一步候选切割的方案都会被计算出一个信息熵和信息增量值作为参考。作者假设,信息熵大的意味着该部分越复杂越值得继续探索,信息增量大的亦是如此。于是,这个类似决策树的层次探索过程变得更加用户友好。 下图是用这个工组来探索某个牙齿的体数据的过程和渲染结果。首先第一步,系统对统计的二位直方图分割将整个体数据切分成了牙齿部分和除牙齿以外的所有部分。用户将不相关部分映射成不透明度为零(即完全透明)的情况,取出了无关内容。紧接着在第二步,系统又将整个牙齿的数据中分割出了牙齿上半部中间部分,之后的步骤依次类推,一直到按照用户的交互和探索将整个体数据分割成需要的几块为止,整个过程就是右上角的树形结构所记录的,右下角是最后的传递函数所导出的渲染结果。可以看到牙釉质、牙本质和牙冠都很清楚地被展示出来了,而其他无关的内容都被刨空。

tooth

更多用这个工作完成的一些体渲染结果和探索交互的过程(用树来表示交互的历史)如下图所示,左边的是一个脚部的扫描数据,右边是一只西红柿体数据。

ow

总的来说,这个工作是运用了对强度-梯度的二维直方图进行图像切割的方法来实现传递函数,又总结了对实际情况的观察,即模拟用户探索体数据的传递函数的过程,设计出层次化渐进的交互方式,辅助以信息论的方法来帮助用户决策,从而实现了一套半自动的探索体数据的可视化流程,为探索体数据的过程带来很大的便利。

评论关闭。