集合数据的成员之间的比较是一项繁琐而易出错的工作,这由体数据的微妙差别导致。本工作提出了动态体数据线(Dynamic Volume Lines)以实现对一组体数据的交互可视分析。利用希尔伯特(Hilbert)空间填充曲线将三维数组线形化,希尔伯特曲线展开的过程很好地保持了空间局部性。利用此基于强度的变化绘制非线形的线图:在变化幅度的区域,通常是值得关注的区域,而变化幅度较小的区域一般为不重要的区域如背景。通过实验结果,本方法被验证了其可以识别局部的强度变化。

图1 希尔伯特曲线展开和传统按行列展开的示意图。(a) 传统的展开方式。(b)(c)(d)(e)希尔伯特曲线绘制过程。

图2
在三维数据展开成一维的过程中,很重要的一点是保持原有的空间连续性。直观的方法如图1(a)按照x-轴,y-轴,z-轴的顺序,遍历体中的每个切面,面中的每一列,列上的每个体素。这样的方法保证了在一定程度的空间局部性。但是在列、面的切换过程中引入了巨大的不连续性。而希尔伯特曲线的好处在于,保证了填充曲线上前后两个位置的点在空间位置上是相连的。 图一展示了用希尔伯特曲线填充二维空间的示意图。由(b)的基本单元构成了2*2的网格的希尔伯特曲线,在长宽为其2倍的图形中,用基本单元逆时针旋转90度放置在右下角,顺时针旋转90度放在左下角,复制其自身放置在左上右上角,再连起,构成了长宽为2的2次方的希尔伯特曲线。依次为基本单元递归可以得到更大的基本单元。同理,在3维的希尔伯特曲线中,也可以进行这样递归方式的曲线填充,并且在此基础上,Hamilton 和 Rau-Chaplin ( [2] ) 实现了不限定长宽高必定为2的指数的三维希尔伯特曲线填充算法。
基于三维希尔伯特曲线,将其在填充曲线的位置下标映射成为横坐标,对应强度映射成为纵坐标绘制提供全局概览的热力图。对于横坐标中每10个像素组成一个直方图柱。在垂直方向亦是。横纵方向的划分在每个方格中表示了该强度在该希尔伯特该位置下的频率。如图2 (d) 所示。
同样地以希尔伯特曲线的下标为横坐标,强度为纵坐标,可以将每个体数据都映射成一条折线。折线之间对齐,可以很好地观测他们的差异——这在直接对比体数据渲染结果时,由于遮挡等因素难以对比其中的微小差别。
通过一些方法计算的变化幅度可以用来判定出重要区域和不重要的区域,将不重要的区域折叠,可以大大节省空间,并将用户的注意力集中在重要区域之中。
在模拟的XCT和真实世界的XCT数据集中,此工作验证了其对比的有效性。在热力图视图中提供了全局概览,并在线图视图中提供了各个体数据的细节并支持了比较。
[1] Weissenböck, Johannes, et al. “Dynamic Volume Lines: Visual Comparison of 3D Volumes through Space-filling Curves.” IEEE transactions on visualization and computer graphics (2018).
[2] Hamilton, Chris H., and Andrew Rau-Chaplin. “Compact Hilbert indices: Space-filling curves for domains with unequal side lengths.” Information Processing Letters 105.5 (2008): 155-163.
评论关闭。