《三维空间数据场的直接体绘制N#4-1》由会员分享,可在线阅读,更多相关《三维空间数据场的直接体绘制N#4-1(33页珍藏版)》请在金锄头文库上搜索。
1、1第四章第四章 三维空间数据场的直接体绘制三维空间数据场的直接体绘制第一节第一节 直接体会制的基本原理直接体会制的基本原理一一 直接体绘制方法产生的背景直接体绘制方法产生的背景有关三维可视化的研究始于 70 年代中期,它是伴随着 CT 技术的产生和发展而发展起来的。从 70 年代中期到 70 年代末,由于受当时 CT 技术发展水平的限制,切片之间的间距很大,因此早期的研究工作主要集中在轮廓连接(Contour Connection, Contour Tracking)或称为从平面轮廓线重建形体(Shape from Planer Contours,如图 1,图 2),其中具有代表性的是 Kep
2、pel 在 1975 年提出的用三角片拟合物体表面的方法。这类重建方法需要解决断层图像上的轮廓抽取、层之间的轮廓对应和物体外表面的拟合等问题。1979 年,Herman 和 Liu 提出了立方体方法(Cuberille),他们用物体边界处体素的表面拼接起来去代表物体表面。总的来说,在这个时期,体可视化的基本思想已经初步建立起来,其中图像分割和重建方法对以后的研究都有一定的指导意义。然而,也有许多问题没有解决好,象图像分割、轮廓连接中的对应问题和分叉问题以及显示图像质量低等。当然,造成这种状况的部分原因是影象技术还不成熟,更主要的原因是因为图像分割和轮廓对应的本质决定了它们都是不适定的(Ill-
3、posed, Ill-defined)问题。图 1 由二维轮廓线重建三维形体2图 2 陈矛,医学图像数据的三维重构及手术模拟的研究, 199880 年代是体视化技术迅速发展的年代。在这十年中,各种影象技术不断出现,如磁共振成像(MRI:Magnetic Resonance Imaging)、超声(US:Ultrasonography)、正电子辐射断层摄影(PET:positron Emission Tomography)和单光子辐射断层摄影(SPECT:Single Photon Emission Computed Tomography)等影象技术逐渐成熟。它们能够产生高分辨率低躁声的三维图像
4、,极大地促进了体视化的发展。在这个时期,人们提出了大量算法,并尝试利用硬件实现一些费时的处理过程。在明暗计算上,首先提出了以深度代表明暗的方法,它是最简单的浓度计算方法,但不能清楚地反映出物体的细节。随后又有人提出深度梯度明暗计算方法和文法结构明暗计算方法,一定程度上提高了图像的明暗层次,显示比较粗糙、走样严重。1986 年,Hohne 和 Bernstein 提出了一种灰度梯度明暗计算方法,他能够细腻地表现物体微小的结构。这种方法至今仍被广泛采用,因为它利用原始三维灰度图像的梯度估计表面法向量,因此当原始三维图像的分辨率足够高时能够产生高质量的显示图像。在视见变换和可见性优先级的确定上,提出
5、了从前至后投影和从后至前投影等物空间算法和光线投射的象空间算法。在整个 80 年代的可视化研究中,最3引人注目的是基于体素的显示方法。这种方法不构造物体表面,而是直接对体数据进行显示。体视化(Volume Visualization)技术就是研究体数据的可视化。体可视化方法大体可分为两类:基于表面的体可视化方法(Surface-based rendering)和基于体素的体可视化方法(Voxel-based rendering)。由于体数据之中不存在表面的几何信息,基于表面的体可视化方法必须从体数据中构造它所含的物体的表面(见三维表面重建),然后用传统计算机图形学中的显示技术对重建的物体表面进
6、行显示。但是,由于体数据所含有的物体结构一般都是复杂而细腻的,如人体器官和软组织等,很难用几何来准确描述。即使三维重建能够顺利完成,也只能体现物体的表面信息,而物体内部大量的有用信息却在重建的过程中被舍弃掉了。为了克服上述缺陷,人们开始尝试直接体绘制方法(Direct volume rendering),简称体绘制方法(Volume rendering)。它不需要进行三维重建过程来恢复体数据中的物体表面,而是直接对体数据进行显示,如图 3。因为体素是直接体视的基本处理单位,因此有时也把它称为基于体素的体视。4图 3 三维 CT 数据的直接体绘制结果二二 直接体会制算法的思想及基本原理直接体会制
7、算法的思想及基本原理三维数据场可视化就是要将三维数据在二维屏幕上显示出来,这需要采用投影的方法来实现。一般说来,三维空间数据场是连续的,而实际采集到的三维数据场则是离散的。而屏幕上的二维图像也是由一个个离散的象素点组成,每个像素点有各自的颜色(或亮度)值,这也是一个二维的离散数据场。因此,可视化的实质就是将离散的三维空间数据按照一定的投影规则转换为离散的二维数据,即求投影面(观察平面)上各象素点颜色的 R、G、B 值,再由这些像素点组成一幅二维彩色图像和灰度图像,并尽可能准确地重现原始的三维数据场。直接体会制的主要过程见下图。将离散的三维空间数据场转换为离散的二维数据场首先要牵涉到三维空间数据
8、场的重采样问题,此外还要计算三维空间中每一个数据对二维图像的贡献,并且要将全部数据对二维图像的贡献合成起来。尽管有多种不同的直接体绘制算法,但其实质均为重新采样与图像合成。可视化的结果是二维彩色图像和灰度图像,单纯的数据本身并无颜色之分,数据的颜色值是在物质分类的基础上人为地赋予的,因而是伪彩色,数据的颜5色实质上代表它所反映的物质的颜色。体可视化的第一步是要根据各数据点的值赋予其相应的颜色值(用红绿蓝即 RGB 三原色分量表示)和不透明度值(a),只有不透明的物质才是可见的。显然,颜色值及不透明度值的正确设定依赖于对数据的正确分类与理解,关于数据的分类问题是当前科学计算可视化研究中的关键问题
9、之一,这有赖于图像处理与模式识别技术水平的进一步提高。体可视化的第二步是要在重采样的基础上,计算全部采样点对屏幕像素的贡献,也就是要计算每一个像素点的光强度值。为实现这一步需要给出一个光学模型,用它来描述三维数据是如何产生、反射、阻挡以及散射光线的,并据此计算各采样点对屏幕像素的贡献,然后再根据投影到图像平面上同一像素处各数据点的不透明度值将其相应的光照强度叠加起来,形成最终的体绘制图像。因此三维体绘制技术的关键是光学模型及体绘制算法。体绘制方法是可视化技术发展过程中迄今提出的最有意义的绘制技术,它彻底摆脱了传统图形学中需要构造中间曲面的思路,直接从原始三维数据出发,显示三维数据场中各物理量的
10、分布情况,因而该方法又称为直接体绘制算法,简称为体绘制算法。三三 体元的定义体元的定义我们首先讨论规则数据场的直接体绘制算法。所谓的“规则数据杨”指的是由均匀网格或规则网格组成的结构化数据。每个网格是结构化数据的一个元素,称为体元(Voxel)。我们假定数据场的函数值分布在体元的 8 个顶点上,也就是说,位于顶点(xi,yj,zk)处的函数值为 f(xi,yj,zk)(如图 2.1(a)所示)。由 CT 扫描仪或 MRI 扫描仪获得的一系列二维医学图像就属于这一类型(如图 2.1(b)所示)。6第第 2 节节 体绘制中的光学模型体绘制中的光学模型体绘制中光学模型,用它来描述三维数据是如何产生、
11、反射、散射以及遮挡光线的,并据此计算三维空间中的数据对屏幕象素的贡献。由于光学模型是用来描述连续数据场的光学性质的,因此在使用时,需要将三维离散数据场通过插值,转换为连续数据场。插值方法很多,最简单的一种插值方法是让插值点的数值与其最近网格点上的数值相等,因而,以网格点为中心的立方体内具有均匀分布的数据值。这是由离散分布的三维数据场进行重采样时一种最简单的重构方法(其二维示意图如图 2.13 所示)。此外还有四面体中的线性插值和六面体中的三线性插值等方法。Nelson Max 在“直接体绘制中的光学模型”一文中假定连续分布的三维数7据场中充满着小粒子,由于这些小粒子的发光、吸收、反射等功能使得
12、光线通过三维数据场时发生了变化,基于这一假设形成了几种不同的光学模型MAX95。一一 光线吸收模型光线吸收模型如果假定三维空间中的小粒子可完全吸收所射入的光线,而无反射和发光功能,那么就构成了一个光线吸收模型,这是光学模型中最简单的一种。为简单起见,假定所有的粒子均为大小相同的球状体,其半径为 r,投影面积为 A=r2。令为单位体积内的粒子数。现假设有一个圆柱形薄板,其剖面面积为 E,厚度为s,则圆柱形薄板的体积为 Es(如图 2.14)。于是此体积内的粒子总数 N 为Es。设光线以垂直于圆柱形薄板的方向射入,当s 很小时,投射到圆柱形薄板上的粒子之间相互覆盖的概率很小,因而其覆盖的总面积近似
13、为NA = AEs那么,投射到圆柱形薄板上的光线被这些粒子吸收掉的部分占全部光线的分额为:AEs/E = As设射入光线的强度为 I,被吸收掉的部分为I,则sAII当s 趋近于零时,粒子之间相互覆盖的概率也趋近于零,于是有)()()()(sIssIAsdsdI式中,s 为光线投射方向的长度参数,I(s)为距离 s 处的光线强度,是光线强度的衰减系数,它定义了沿光线投射方向 s 处的光线吸Ass)()(收率。此微分方程的解为:s dttIsI00)(exp()(式中,I0时光线进入三维数据场时(s=0)的光线强度。8 s dttsT0)(exp)(表示单位强度的光线经过数据场到达 s 这段距离后
14、的光线强度,也称为透明度。如果定义 a 为这段距离的不透明度,则 s dttsTa0)(exp1)(1在将三维数据场映射为颜色值时,如果将某一数据值的定义为零,则表示光线不被吸收而完全穿过,因而在结果图像中该数据代表的物质将是透明的。与此相反,如果将某一数据值的定义为 ,则表示光线完全被吸收,在结果图像中该数据代表的物质将是完全不透明的,而在它后面的物质将被完全遮挡。这种光学模型很适合于 CT 及 MRI 扫描数据的可视化。二二 光线发射模型光线发射模型一般说来,在三维空间数据场及悬浮状物质的可视化中,三维空间小粒子均具有吸收、反射或发射光线的功能。但是,在火焰、高温气体等的可视化中,我们可以
15、认为小粒子是很小的,而且是透明的,但是发出的光线却很强。这时,可以认为小粒子仅具有发射光线的功能。设图 214 中的小粒子都是透明的发光体。在圆柱形截面的单位投影面积上,小粒子各向均匀地发射出强度为 C 的光线(已知全部投影面积为AEs),故整个圆柱形截面上将发射出光通量为 CAEs 的光。而单位面积的光通量则为 CAs。因此,当光线通过三维数据场时,描述光线变化的微分方程为2.3)()()()()(sgssCAssCdsdI式中,为光源项,与反射光无关,式 2.3 的解为:)(sg2.4s dttgIsI00)()(式中, I0为初始光强值, s为沿光线射入方向的长度参数。由于式(24)中的
16、积分无上限 值,因而其积分结果可能超过输出设备的极限值。这一点需要加以注意。9三三 光线吸收与发射模型光线吸收与发射模型如果将光线吸收模型与发射模型合并在一起,可以更好地反映出光线在充满粒子的三维空间中的变化。这时,我们有)()()(sIssgdsdI令 D 为从三维数据体的边缘(s=0)到观察点的距离,解此方程得:dsdttsgdttIDIDDD 0000)(exp)()(exp)(上式中的第一项代表从背景处射入的光线经过三维数据的吸收以后(即乘以数据场的透明度),到达观察点的光强。第二项表示在各 s 点处的光源对观察点处光强贡献的总和,它是通过乘以由 s 到观察点处的透明度并对 s 作积分)(sT而得到的。这里 DsdttsT)(exp)(于是,上式可简化为2.6D