第四章三维空间数据场的直接体绘制N#4-1.doc

上传人:本田雅阁 文档编号:2748167 上传时间:2019-05-10 格式:DOC 页数:33 大小:6.07MB
返回 下载 相关 举报
第四章三维空间数据场的直接体绘制N#4-1.doc_第1页
第1页 / 共33页
第四章三维空间数据场的直接体绘制N#4-1.doc_第2页
第2页 / 共33页
第四章三维空间数据场的直接体绘制N#4-1.doc_第3页
第3页 / 共33页
第四章三维空间数据场的直接体绘制N#4-1.doc_第4页
第4页 / 共33页
第四章三维空间数据场的直接体绘制N#4-1.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《第四章三维空间数据场的直接体绘制N#4-1.doc》由会员分享,可在线阅读,更多相关《第四章三维空间数据场的直接体绘制N#4-1.doc(33页珍藏版)》请在三一文库上搜索。

1、第四章 三维空间数据场的直接体绘制第一节 直接体会制的基本原理一 直接体绘制方法产生的背景有关三维可视化的研究始于70年代中期,它是伴随着CT技术的产生和发展而发展起来的。从70年代中期到70年代末,由于受当时CT技术发展水平的限制,切片之间的间距很大,因此早期的研究工作主要集中在轮廓连接(Contour Connection, Contour Tracking)或称为从平面轮廓线重建形体(Shape from Planer Contours,如图1,图2),其中具有代表性的是Keppel在1975年提出的用三角片拟合物体表面的方法。这类重建方法需要解决断层图像上的轮廓抽取、层之间的轮廓对应和

2、物体外表面的拟合等问题。1979年,Herman和Liu提出了立方体方法(Cuberille),他们用物体边界处体素的表面拼接起来去代表物体表面。总的来说,在这个时期,体可视化的基本思想已经初步建立起来,其中图像分割和重建方法对以后的研究都有一定的指导意义。然而,也有许多问题没有解决好,象图像分割、轮廓连接中的对应问题和分叉问题以及显示图像质量低等。当然,造成这种状况的部分原因是影象技术还不成熟,更主要的原因是因为图像分割和轮廓对应的本质决定了它们都是不适定的(Ill-posed, Ill-defined)问题。 图1 由二维轮廓线重建三维形体图2 陈矛,医学图像数据的三维重构及手术模拟的研究

3、, 199880年代是体视化技术迅速发展的年代。在这十年中,各种影象技术不断出现,如磁共振成像(MRI:Magnetic Resonance Imaging)、超声(US:Ultrasonography)、正电子辐射断层摄影(PET:positron Emission Tomography)和单光子辐射断层摄影(SPECT:Single Photon Emission Computed Tomography)等影象技术逐渐成熟。它们能够产生高分辨率低躁声的三维图像,极大地促进了体视化的发展。在这个时期,人们提出了大量算法,并尝试利用硬件实现一些费时的处理过程。在明暗计算上,首先提出了以深度代表

4、明暗的方法,它是最简单的浓度计算方法,但不能清楚地反映出物体的细节。随后又有人提出深度梯度明暗计算方法和文法结构明暗计算方法,一定程度上提高了图像的明暗层次,显示比较粗糙、走样严重。1986年,Hohne和Bernstein提出了一种灰度梯度明暗计算方法,他能够细腻地表现物体微小的结构。这种方法至今仍被广泛采用,因为它利用原始三维灰度图像的梯度估计表面法向量,因此当原始三维图像的分辨率足够高时能够产生高质量的显示图像。在视见变换和可见性优先级的确定上,提出了从前至后投影和从后至前投影等物空间算法和光线投射的象空间算法。在整个80年代的可视化研究中,最引人注目的是基于体素的显示方法。这种方法不构

5、造物体表面,而是直接对体数据进行显示。体视化(Volume Visualization)技术就是研究体数据的可视化。体可视化方法大体可分为两类:基于表面的体可视化方法(Surface-based rendering)和基于体素的体可视化方法(Voxel-based rendering)。由于体数据之中不存在表面的几何信息,基于表面的体可视化方法必须从体数据中构造它所含的物体的表面(见三维表面重建),然后用传统计算机图形学中的显示技术对重建的物体表面进行显示。但是,由于体数据所含有的物体结构一般都是复杂而细腻的,如人体器官和软组织等,很难用几何来准确描述。即使三维重建能够顺利完成,也只能体现物体

6、的表面信息,而物体内部大量的有用信息却在重建的过程中被舍弃掉了。为了克服上述缺陷,人们开始尝试直接体绘制方法(Direct volume rendering),简称体绘制方法(Volume rendering)。它不需要进行三维重建过程来恢复体数据中的物体表面,而是直接对体数据进行显示,如图3。因为体素是直接体视的基本处理单位,因此有时也把它称为基于体素的体视。图3 三维CT数据的直接体绘制结果二 直接体会制算法的思想及基本原理三维数据场可视化就是要将三维数据在二维屏幕上显示出来,这需要采用投影的方法来实现。一般说来,三维空间数据场是连续的,而实际采集到的三维数据场则是离散的。而屏幕上的二维图

7、像也是由一个个离散的象素点组成,每个像素点有各自的颜色(或亮度)值,这也是一个二维的离散数据场。因此,可视化的实质就是将离散的三维空间数据按照一定的投影规则转换为离散的二维数据,即求投影面(观察平面)上各象素点颜色的R、G、B值,再由这些像素点组成一幅二维彩色图像和灰度图像,并尽可能准确地重现原始的三维数据场。直接体会制的主要过程见下图。将离散的三维空间数据场转换为离散的二维数据场首先要牵涉到三维空间数据场的重采样问题,此外还要计算三维空间中每一个数据对二维图像的贡献,并且要将全部数据对二维图像的贡献合成起来。尽管有多种不同的直接体绘制算法,但其实质均为重新采样与图像合成。可视化的结果是二维彩

8、色图像和灰度图像,单纯的数据本身并无颜色之分,数据的颜色值是在物质分类的基础上人为地赋予的,因而是伪彩色,数据的颜色实质上代表它所反映的物质的颜色。体可视化的第一步是要根据各数据点的值赋予其相应的颜色值(用红绿蓝即RGB三原色分量表示)和不透明度值(a),只有不透明的物质才是可见的。显然,颜色值及不透明度值的正确设定依赖于对数据的正确分类与理解,关于数据的分类问题是当前科学计算可视化研究中的关键问题之一,这有赖于图像处理与模式识别技术水平的进一步提高。体可视化的第二步是要在重采样的基础上,计算全部采样点对屏幕像素的贡献,也就是要计算每一个像素点的光强度值。为实现这一步需要给出一个光学模型,用它

9、来描述三维数据是如何产生、反射、阻挡以及散射光线的,并据此计算各采样点对屏幕像素的贡献,然后再根据投影到图像平面上同一像素处各数据点的不透明度值将其相应的光照强度叠加起来,形成最终的体绘制图像。因此三维体绘制技术的关键是光学模型及体绘制算法。体绘制方法是可视化技术发展过程中迄今提出的最有意义的绘制技术,它彻底摆脱了传统图形学中需要构造中间曲面的思路,直接从原始三维数据出发,显示三维数据场中各物理量的分布情况,因而该方法又称为直接体绘制算法,简称为体绘制算法。三 体元的定义我们首先讨论规则数据场的直接体绘制算法。所谓的“规则数据杨”指的是由均匀网格或规则网格组成的结构化数据。每个网格是结构化数据

10、的一个元素,称为体元(Voxel)。我们假定数据场的函数值分布在体元的8个顶点上,也就是说,位于顶点(xi,yj,zk)处的函数值为f(xi,yj,zk)(如图2.1(a)所示)。由CT扫描仪或MRI扫描仪获得的一系列二维医学图像就属于这一类型(如图2.1(b)所示)。第2节 体绘制中的光学模型体绘制中光学模型,用它来描述三维数据是如何产生、反射、散射以及遮挡光线的,并据此计算三维空间中的数据对屏幕象素的贡献。由于光学模型是用来描述连续数据场的光学性质的,因此在使用时,需要将三维离散数据场通过插值,转换为连续数据场。插值方法很多,最简单的一种插值方法是让插值点的数值与其最近网格点上的数值相等,

11、因而,以网格点为中心的立方体内具有均匀分布的数据值。这是由离散分布的三维数据场进行重采样时一种最简单的重构方法(其二维示意图如图2.13所示)。此外还有四面体中的线性插值和六面体中的三线性插值等方法。Nelson Max在“直接体绘制中的光学模型”一文中假定连续分布的三维数据场中充满着小粒子,由于这些小粒子的发光、吸收、反射等功能使得光线通过三维数据场时发生了变化,基于这一假设形成了几种不同的光学模型MAX95。一 光线吸收模型如果假定三维空间中的小粒子可完全吸收所射入的光线,而无反射和发光功能,那么就构成了一个光线吸收模型,这是光学模型中最简单的一种。为简单起见,假定所有的粒子均为大小相同的

12、球状体,其半径为r,投影面积为A=pr2。令r为单位体积内的粒子数。现假设有一个圆柱形薄板,其剖面面积为E,厚度为s,则圆柱形薄板的体积为 Es(如图 2.14)。于是此体积内的粒子总数N为rEs。设光线以垂直于圆柱形薄板的方向射入,当s很小时,投射到圆柱形薄板上的粒子之间相互覆盖的概率很小,因而其覆盖的总面积近似为NA = rAEs那么,投射到圆柱形薄板上的光线被这些粒子吸收掉的部分占全部光线的分额为:rAEs/E = rAs设射入光线的强度为I,被吸收掉的部分为I,则当s趋近于零时,粒子之间相互覆盖的概率也趋近于零,于是有式中,s为光线投射方向的长度参数,I(s)为距离s处的光线强度,是光

13、线强度的衰减系数,它定义了沿光线投射方向s处的光线吸收率。此微分方程的解为:式中,I0时光线进入三维数据场时(s=0)的光线强度。表示单位强度的光线经过数据场到达s这段距离后的光线强度,也称为透明度。如果定义a为这段距离的不透明度,则在将三维数据场映射为颜色值时,如果将某一数据值的t定义为零,则表示光线不被吸收而完全穿过,因而在结果图像中该数据代表的物质将是透明的。与此相反,如果将某一数据值的t定义为 ,则表示光线完全被吸收,在结果图像中该数据代表的物质将是完全不透明的,而在它后面的物质将被完全遮挡。这种光学模型很适合于CT及MRI扫描数据的可视化。二 光线发射模型一般说来,在三维空间数据场及

14、悬浮状物质的可视化中,三维空间小粒子均具有吸收、反射或发射光线的功能。但是,在火焰、高温气体等的可视化中,我们可以认为小粒子是很小的,而且是透明的,但是发出的光线却很强。这时,可以认为小粒子仅具有发射光线的功能。设图214中的小粒子都是透明的发光体。在圆柱形截面的单位投影面积上,小粒子各向均匀地发射出强度为C的光线(已知全部投影面积为rAEs),故整个圆柱形截面上将发射出光通量为 CrAEs的光。而单位面积的光通量则为 CrAs。因此,当光线通过三维数据场时,描述光线变化的微分方程为 2.3式中,为光源项,与反射光无关,式2.3的解为: 2.4式中,I0为初始光强值,s为沿光线射入方向的长度参

15、数。由于式(24)中的积分无上限值,因而其积分结果可能超过输出设备的极限值。这一点需要加以注意。三 光线吸收与发射模型如果将光线吸收模型与发射模型合并在一起,可以更好地反映出光线在充满粒子的三维空间中的变化。这时,我们有令D为从三维数据体的边缘(s=0)到观察点的距离,解此方程得:上式中的第一项代表从背景处射入的光线经过三维数据的吸收以后(即乘以数据场的透明度),到达观察点的光强。第二项表示在各s点处的光源对观察点处光强贡献的总和,它是通过乘以由s到观察点处的透明度并对s作积分而得到的。这里于是,上式可简化为 2.6一般情况下,很难求出该式的解析解。在特定的条件下,才可以求出解析解。由光线发射

16、模型的公式,有。如果假设沿着光线发射的方向,发光强度C为常数,或者在同类物质区间,所赋予的颜色值C为常数,那么就可以上式的求解变得更为简单。这时,将上式代入2.6式,得 2.10式2.10表达了背景光I0与所赋颜色值为C的场源在透明度T (D)作用下的合成光强度。其中第1项代表从背景处射入的光线经过三维数据场的吸收以后(即乘以数据场的透明度)到达观察点的光强,第2项表示某个三维数据所在位置(即体元或体素)的光源对观察点处光强的贡献。上式中的T (D)可理解为透明度,1 T (D)即为不透明度a,不透明度可理解为阻光度、遮光度。a = 0表示该体元完全透明,对观察点的光强贡献为0,不会在可视化结

17、果图像上留下痕迹,因而它本身是看不见的,但在它后面的物体则是可见的,如空气、洁净的玻璃是透明的,我们就看不见;a = 1表示该体元完全不透明,它本身能在结果图像上留下痕迹,是可见的,但被它遮挡的物体因为发出的光线全部被吸收,因而是完全不可见的。采用光线吸收与发射模型后,由于体素发光,因而能看到全部数据,充分利用了所有信息;又由于存在不透明度,能产生一种距离上的层次感及相互遮挡的效果,能表现数据之间的空间关系,增强可视化图像的真实感,因而能更深入地体现三维数据场的全貌和细节。根据绘制次序的不同,直接体绘制的算法可分为以图像空间为序的体绘制算法和以物体空间为序的体绘制算法。第3节 体绘制中的视见方

18、法直接体绘制实质上是将三维数据从物空间投影到二维象平面上,在进行体数据显示时,首先要将所有体素从物体坐标系变换到观察坐标系中,并确定体素的可见性优先级,消除被遮挡(相对视点是隐藏的)的体素,并消除被遮挡的部分,这个过程称为体视见变换,如果三维物体空间是由离散的体数据来表示,那么对其进行的视见变换就叫做体视见(Volume viewing)。在体视化中,三维物体空间中没有物体的几何描述,只有离散的体数据,一个定义在小立方体子空间的体元(体素)是组成体数据的最基本单位。(Volume Viewing)。由于体素的投影是相互重叠的,必须确定重叠投影的相互遮挡关系,即可见性优先级。(Visibilit

19、y order)。确定可见性优先级的方法有两类:物空间的视见方法和象空间的视见方法。所谓物空间是定义景物的三维空间,如果从物空间出发对各个物体进行遍历,把它们一个接一个地投影到象平面上去,并完成隐藏面消除,那么就称这种视见为物空间的视见,或称为以物体空间为序的体绘制。物空间可见性方法是在物体空间内进行可见性的判断,它把物体作为扫描变换的处理对象,包括从后至前投影与从前至后投影都是物空间视见变换方法。从后至前投影是按距视点从远到近的顺序将体素投影到像平面上,后投影的体素覆盖先投影的体素,从而起到消除隐藏体素的目的(画家算法)。而从前至后扫描则按从近到远的顺序将体素投影到象平面上,它除了要保留颜色

20、缓存之外,还要比前一种方法多保留一个阻光度缓存(深度缓存算法)。所谓象空间是显示物体的二维空间,象空间方法是在象空间内进行可见性的判断,它把象平面上的象素作为扫描变换的处理对象。如果从象空间出发对每个象素进行遍历,对于每个被遍历的象素,从它出发沿视线方向发出一条射线,该射线进入物空间遇到的第一个不透明体的颜色(或者半透明物质的颜色累积值)就成为该象素的颜色,这就是象空间的视见,或称为以象空间为序的体绘制。体素模型有不同的定义,采用不同的体素模型会使体视见方法的实现过程有所不同。例如,按体素的物质占有率可以把体素分成部分占有和二值占有;按体素所含物质的光学性质可以分成不透明和半透明的;按体素所含

21、物质的种类多少可以把体素分成单一物质体素和多物质体素。一般来说,把体素当作多物质共同占有的、半透明的模型,可以产生高质量的显示图像,但是要付出较高的计算代价,这就是显示速度和显示质量之间的矛盾。一 物空间的视见方法物空间的视见也叫做正向视见(Forward viewing),它包括两个问题。第一个是坐标变换问题,即把物体从物体坐标系变换到屏幕坐标系。第二个是可见性问题,也就是确定遮挡关系,解决隐藏体素消除的问题。1 坐标变换:对于物空间中的一个点,需要通过坐标变换确定它在象平面上投影的位置,坐标变换可以由一个变换矩阵唯一确定。投影方式不同,变换矩阵的形式也不同。共有两种投影方式:平行投影和透视

22、投影。(1) 平行投影:在平行投影中,物空间中所有点都沿着同一个方向投影到象平面上。(2) 透视投影:在透视投影中,物空间中所有点都沿着视线方向投影到象平面上。虽然这些投影射线方向各不相同,但是它们最终在三维空间中会聚于一点,这个点就是视点。与平行投影不同,透视投影会产生一种形变,即物空间两个长度相同的平行线段在象平面上的投影线段的长度可能会不相同。离视点较远的线段比离视点较近的线段要短一些,这就产生了透视效果。2可见性判别的几中方法(1) 深度缓存深度缓存算法也叫Z-缓存算法。在视见过程中,不仅有一个存放颜色的刷新缓存器,还有一个同样大小的缓存器,用来存放深度信息,这就是深度缓存器。利用深度

23、缓存器,可以进行可见性的判断,消除隐藏对象。具体做法是,首先对深度缓存器和颜色缓存器进行初始化,把深度缓存器置成一个最大可能的深度值,把颜色缓存器置成一个背景颜色值。然后将景物中的物体不分次序地投影到象平面上去。对于每个投影点(象素),把投影物体在该点处的深度与深度缓存器中相应位置上的深度做一比较。如果前者小于后者,那么就把当前被投影的物体颜色写到颜色缓存器中去,同时用当前投影物体的深度去更新深度缓存器中相应象素的深度;否则不做任何操作。当然,如果是对规则体数据使用深度缓存算法,上面的坐标变换可以用递推运算。深度缓存只适用于二值体数据。(2) 从前至后投影在Z-缓存算法中,物体投影到象平面上的

24、次序是任意的,物体之间的遮挡关系是通过深度缓存器进行深度比较加以确定的。所以说,Z-缓存算法是象空间的可见性判定法。如果能够在物空间中确定物体的可见性优先级,那么就可以根据可见性优先级的高低次序对各个物体进行投影。从前至后投影就是一种在物空间中确定可见性的方法,它除了用一个颜色缓存器存放颜色之外,还需要一个缓存器来存储阻光度(不透明度)。初始时,把颜色缓存器置成背景颜色,把阻光度缓存器置成0(0表示完全透明)。在执行过程中,物体按距视点由近到远的次序投影到象平面上。当把某个物体投影到象平面上时,对于它覆盖的每一个象素,检查在阻光度缓存器中该象素已经积累的阻光度。如果该象素的阻光度小于1,说明它

25、还能够透过一些光线。这就需要累积当前像素的阻光度,并更新阻光度缓存器,同时还要把物体颜色与颜色缓存器中的颜色合成起来,并用合成的颜色更新颜色缓存器中的值。如果阻光度等于1,则说明至当前投影的物体为止这部分物体能全部吸收所射入的光,在它后面的物体是完全不透明的,不可见的,此时就不再需要进行阻光度累积和颜色合成。(3) 从后至前投影从后至前投影是另一种在物空间中确定可见性的方法,它与从前至后投影次序正好相反。它不需要阻光度缓存器,只需要一个颜色缓存器存放颜色。初始时,把颜色缓存器置成背景颜色,在执行过程中,物体按距视点由远到近的次序投影到象平面上。由于后投影的物体在空间中遮挡先投影的物体,所以后投

26、影到象平面上的物体将覆盖颜色缓存器中的显示内容。如果当前投影的物体是不透明的,那么它将完全覆盖它的投影象素,于是颜色缓存器中的该象素写入这个物体的颜色。如果它是半透明物体,那么将部分覆盖它的投影象素,这是需要把该物体颜色和颜色缓存器中的颜色合成起来,并用合成的颜色更新颜色缓存器中的颜色值。从后至前投影实际上就是计算机图形学中的画家算法。从前至后投影比从后至前投影需要多用一个阻光度缓存器,但是它的执行效率却要比从后至前投影要高。原因是,在从前至后投影中,一旦某个象素积累了足够的阻光度之后,就不再需要对该象素进行颜色与阻光度的累积运算。而从后至前投影却不然,对于每一个被当前投影所覆盖的象素,都需要

27、进行颜色计算。虽然从后至前投影在速度上稍微慢一些,但是显示过程可以一层一层地展示体数据的内部结构。也就是说,操作者在等待最终的显示结果出来之前,可以在中间显示过程中获得对体数据内部结构的全面了解。体会制中的足迹法、基于错切-变形的算法等就是一种以物体空间为序的绘制方法。二 象空间的视见方法象空间的视见方法也叫做逆向视见(Backward viewing)。光线投射法和光线跟踪法是两种基本的象空间视见方法。这两种方法都是非常费时的,因此在具体应用象空间视见方法时,必须利用各种相关性来减少计算量。综合有关文献,用来加速视见过程的相关性主要有以下几种:(1) 象空间的相关性:相邻象素一般具有相似的颜

28、色,因此可以减少对相似象素的重复采样计算。象空间自适应采样就是基于这种相关性而设计出来的;(2) 物空间的相关性:相邻体素一般具有相似的属性,因此可以减少对相对均匀的空间区域的采样次数。物空间自适应采样就是基于这种相关性而设计的。(3) 射线之间的相关性:在平行投影中,尽管射线进入体素空间的入点各不相同,但是它们的方向是一致的,所穿过的体素形成相似的模式,因此可以把这种模式记录下来,避免重复使用三维直线离散化过程。基于模板的视见方法就是采用这种射线之间的相关性。(4) 空间跳跃采样:跟踪射线是为了进行颜色和阻光度的累积与合成,但是空体素对颜色和阻光度的累积不做任何贡献,空间跳跃采样利用了空体素

29、一般可以组合起来的特点,跳过空体素区域,而只对有内容的区域进行采样。第4节 体绘制的光线投射算法前面已经讲过,体绘制技术的实质是将一个三维离散数据场通过投影转换转换为二维离散图像的过程。M. LevoyLEVO88提出的光线投射(raycasting)算法就是一种以图像空间为序的体绘制算法。一 光线投射算法的基本原理该算法假定三维空间数据f(xi,yj,zk)分布在均匀网格或规则网格的网格点上(为简化起见,在插图中三维空间数据用f(i,j,k)表示。光线投射算法的流程图如图2.15所示。三维空间数据场f ( i, j, k)数据预处理及数据分类给数据点赋不透明度值a (i, j, k)给数据点

30、赋颜色值C (i, j, k)光照效应计算发出射线/再采样发出射线/再采样采样点不透明度值a (u, v, w)采样点光亮度值C (u, v, w)图像合成最终图像图4-1 光线投射算法流程图主要步骤如下:(1) 首先进行数据预处理和分类,数据预处理包括原始数据的格式转换、剔除冗余数据、导出所需的数据等。然后进行数据分类,根据三维数据场的值正确地将其分为若干类,并给每类数据赋予不同的颜色值和不透明度值,以求正确地表示多种物质的不同分布或单一物质的不同属性。可视化的结果是二维彩色图像和灰度图像,单纯的数据本身并无颜色之分,数据的颜色值是在物质分类的基础上人为地赋予的,因而是伪彩色,数据的颜色实质

31、上代表它所反映的物质的颜色。体可视化的第一步是要根据各数据点的值赋予其相应的颜色值(用红绿蓝即RGB三原色分量表示)和不透明度值(a)。对于不同类别的物质赋予什么颜色应遵循人们的习惯或用户的要求,使最终获得的图像看起来合理、自然。当一个体元中包含多种物质时,设pi为第i种物质所占的百分比,Ci(aiRi, aiGi,aiBi,ai)为第i种物质的颜色值,则该体元的颜色值为给数据赋予不透明度,能产生一种距离上的层次感及相互遮挡的效果,能表现数据之间的空间关系,增强可视化图像的真实感,因而能更深入地体现三维数据场的全貌和细节。如果a = 0表示该体元完全透明,对像素点的光强贡献为0,不会在可视化结

32、果图像上留下痕迹,因而它本身是看不见的,但在它后面的物体则是可见的;a = 1表示该体元完全不透明,它本身能在结果图像上留下痕迹,是可见的,但被它遮挡的物体因为发出的光线全部被吸收,因而是完全不可见的。显然,颜色值及不透明度值的正确设定依赖于对数据的正确分类与理解,关于数据的分类问题是当前科学计算可视化研究中的关键问题之一,这有赖于图像处理与模式识别技术水平的进一步提高。(2) 光线跟踪及数据重采样。第二步是从观察屏幕的每一个像素点出发,根据设定的观察方向发出一条射线,这条射线穿过三维数据场,见图2.16(a)和(b)。沿着这条射线按一定间隔设定一系列等间距的采样点,这些新的数据采样点一般不在

33、原始的三维网格结点(即原始数据采样点)上,见下图。这需要根据原始三维数据场的离散值进行插值后才能得到新的样点数据,这可以由距离某一新采样点最近的8个原始采样点上的颜色值和不透明度值作三线性插值,求出该新采样点的颜色值和不透明度值。显而易见,在做重新采样前,需要将具有颜色值及不透明度值的三维数据场由物体空间坐标转换为相应的图像空间坐标。而体元定义为由相邻两层的八个顶点组成的立方体单元,如图2所示。体元内的数据属性是不均匀的,体元内任一点的值可由八个顶点的值通过三线性内插得到。三线性插值的示意图见下图。图2 体元示意图 图3 三线性插值示意图图中,P为重采样点,P所在体元的八个顶点分别为a1a8,

34、P点在其中两个面上的垂直投影点为C1、C2,C1、C2在边线上的垂直投影点分别为b1、b2、b3、b4,P点的坐标为(x,y,z),其中x,y,z都是0到1之间的数。设坐标系如图3右上角所示,d为颜色值或不透明度值,则三线性插值的计算公式如下:d(b1) = d(a1) + xd(a2)-d(a1)d(b2) = d(a4) + xd(a3)-d(a4)d(b3) = d(a5) + xd(a6)-d(a5)d(b3) = d(a8) + xd(a7)-d(a8)d(c1) = d(b1) + yd(b2)-d(b1)d(c2) = d(b3) + yd(b4)-d(b3)d(p) = d(c

35、1) + zd(c2)-d(c1) (3) 图像合成。最后根据每条射线上各采样点的颜色值及不透明度值由前向后或由后向前(因为投影时可以采用由前向后,也可以采用由后向前投影)进行光强度的合成,即可得到发出该射线的像素点处的颜色值,再将各像素点的颜色值合并起来就组成了一幅完整的三维数据场体可视化图像。由于光线投射算法在数据重采样及图像合成的过程中,计算的顺序是按照屏幕上每条扫描线的每个象素逐个进行的,因而这一算法又称为以图像空间为序的体绘制算法。下面对这一算法中的数据分类、图像合成以及明暗计算等几个问题作进一步讨论。二 三维数据场的分类问题三维数据场中的数据是三维空间中多种不同物质的测量结果或计算

36、机数值计算的结果。例如,在人体或动物的CT扫描图像中,对应于骨骼、肌肉和皮肤等不同密度的物质,就有不同的CT值,在CT图像中表现为具有不同的灰度值。又如,在铸件冷却过程模拟计算的结果中,不同数据表示不同的温度。为了在最终的可视化图像中以不同颜色正确地表示出共存的多种物质的分布,就需要对数据进行分类,找出数据与不同物质之间的对应关系;为了在最终图像中以不同颜色表示单一物质的不同属性,如温度、密度等,也需要对数据进行分类。如果用集合D表示数据场的取值范围,数据场的分类就是将集合D划分为若干个互不重叠的子集D0,D1,Dn-1,满足三维数据值的分类是整个可视化算法中非常重要的一步。只有对三维数据值进

37、行准确的分类,才能经过后续处理得出合理的图像。但是三维数据值的分类往往又是非常困难的。在多种不同物质共存时,其组织结构往往相当复杂。例如,人的脑部就是如此,因而在人脑的CT或MRI图像中,同一组织结构往往具有不同的灰度值,而同一灰度值的象素又可能属于不同的组织结构。因此,尽管人们运用图像处理和模式识别技术对物质分类问题进行了多年研究,但仍然只能对简单的或特定的三维数据场进行自动分类,而在大多数情况下,需要用户介入,通过交互方式实现三维数据场的半自动分类,也就是实现知识或模型引导的物质分类。当前,对复杂物体的图像,例如,任意的医学图像进行自动分类仍然是人们追求的目标。1994年,美国 ONR(U

38、S Office of Naval Research)研究机构发表的论文中,就将物质分类问题列为当前科学计算可视化的8个研究问题之一ROSE94。对于物质构成比较简单的三维数据杨来说,目前常用的分类方法有两种。1 阈值法根据数据场所在应用领域的背景知识,或对全部采样点的取值进行统计后,设定若干阈值di(i=1,2,n)。如果各采样点的数值以f(xi,yi,zk)表示,则将满足下列条件的采样点归入同一类中,即图 2.17为树獭 CT图像灰度值的分布图,图中曲线有几个比较明显的谷点,表明该组图像的灰度值集中在几个区域内,从而为阈值的设置提供了方便。在这个例子中,我们将阈值定为60,90和150。灰

39、度值低于60的区域不存在任何物质。而灰度在6090,90150及150以上的区域分别表示皮肤、软组织和骨骼。实验表明,按以上阈值分类并赋予颜色及不透明度后,生成的图像质量良好。2 概率法在多种物质共存的物体中,每一个体元往往不是由单一物质构成的,如果我们能够估算出每一个体元中不同物质所占的百分比,那么可以得到更精确的分类。据此,也可以更准确地为每个体元赋以颜色值及不透明度值。要准确地求出每一个体元中不同物质所占的百分比是不可能的。但是,求出每一个体元中不同物质的概率分布则是可能的。概率分类法正是为这一目的而提出的DREB88。以医学图像为例,一组医学 CT图像灰度值分布的统计图形可以看成是由不

40、同物质的CT图像灰度值分布组合而成(如图2.18所示)。灰度值由低到高分别表示空气、脂肪、软组织和骨骼。这时,任何一个体元图像具有灰度值I的概率可由下式表示式中,n表示该体元中所存在的物质种类的数目,pi是该体元中第i类物质所占的百分比,P( I | i )是第i类物质CT图像具有灰度值I的条件概率。在人体CT图像中,每一种物质所对应的灰度值概率密度分布函数是已知的,于是我们可以根据贝叶斯(Bayes)公式估算出灰度值为I的体元中所含有的第i类物质的概率,即可能的百分比为 2.11如果(2.11)式右端各类物质灰度值的条件概率密度分布函数是未知的,那么,首先必须从输入信息中将其估算出来,才能求

41、出式(2.11)左端灰度值为I的体元中各类物质的概率,详见文献MA98。如果在灰度值分布图中,灰度值相同区域的物质不超过两种,那么,各种物质的百分比在该区域内呈线性变化,这符合医学CT图像的一般情况(如图2.18所示)。一旦得到了各体元中不同物质的百分比,则对其颜色的赋值也就不困难了。三 图像合成在图2.15的光线投射算法流程图中,其中的最后一步是图像合成,其目的是沿着某一象素点所发出的射线,计算该射线上各采样的颜色值及不透明度值,并按照一定的规则合成,以形成该象素点的最终颜色值。将屏幕上各象素点的颜色值都计算出来后,就形成了一幅图像。在图像空间扫描的体绘制中,有两种不同的图像合成算法,即由后

42、向前的合成方法和由前向后的合成方法。1 由后向前的图像合成LEVO88aDREB88这种合成算法类似于由后向前的投影过程,沿射线由后往前将各采样点的颜色值及不透明度值合成在一起,以得到最终图像。C0CnowCinCoutCCnainaout视点anowan(a)CinCnowCoutCainaoutanow视点BA (b)图4-2 图像合成算法示意图如图4-2a所示,设第i个体元的颜色值为Cnow,不透明度值为anow,进入第i个体元的颜色值为Cin,不透明度值为ain,经过第i个体元后的颜色值为Cout,不透明度值为aout,根据2.10式可得:Cout = Cin (1-anow) + C

43、nowanow 2.13该公式的物理含义可解释如下:第i个体元的发光强度为Cnow,它既发射光线又吸收光线,表现为具有一定的不透明度,只有不透明的部分才能在投影面上留下痕迹,对可视化图像相应像素点的光强有所贡献,因而是可见的,故该体元发出的光线中射出该体元时的可见光能为Cnowanow。而原先射入该体元的光线要穿过透明度为(1-anow)的空间,经吸收后射出该体元时的可见光能为Cin (1-anow)。射出该体元的所有光线的可见能量是这两部分的和,这就是2.13式所表达的物理含义。设初始的颜色值为C0,最终的颜色值为C,第i个体元的颜色值为Ci,不透明度值为ai 。另设第i个体元的透明度值为b

44、 i,则b i =1-a i。如射线上只有一个体元,则Cout1 = C0 (1-a1) + C1a1 = C0 b 1+ C1a1如射线上有两个体元,则Cout2 = Cout1b 2 + C2a2 = C 0b 1+ C 1a 1 b 2 + C2a2 = C0b 1b 2 + C1a1b 2 + C2a2如射线上有三个体元,则Cout3 = Cout2b 3 + C3a3= C0b 1b 2 + C1a1b 2 + C2a2 b 3 + C3a3 = C0b 1b 2b 3 + C1a1b 2b 3 + C2a2b 3 + C3a3 = 依此类推,当射线上有n个体元时,将各体元的颜色值累

45、加后可得: 2.14这就是由后往前的图像合成计算公式,它是基于光线吸收与发射模型的。2 由前向后的图像合成计算公式PORT84LEVO90CinCnowCoutCainaoutanow视点BA 图2.19(b)这种合成算法类似于由前向后的投影过程,沿射线由前往后将各采样点的颜色值及不透明度值合成在一起,以得到最终图像。如图2.19(b)所示,实际光线仍然从右边射入,视点在左边,现在逆着光线传播的方向考虑成像屏幕上光强的合成过程。设A点以左的所有体元发出的光线的累加效应颜色为Cin,从A点到观察点这段路径的不透明度的累加效应为ain,则屏幕上得到的光强为Cinain (只有不透明的部分才是可见的)。第i个体元发出的可见光能为Cnowanow,它要经过从A点到观察点这段路径后才能到达观察点,而这段路径的透明度为(1-ain),故第i个体元发出的光线对屏幕上光强的贡献为Cnowanow(1-ain)。设B点以左的所有体元发出的光线的累加效应颜色为Cout,从B点到观察点这段路径的不透明度的累加效应为aout,则屏幕上得到的光强为Coutaout。它应该等于A点以左的所有体元发出的光线与第i个体元发出的光线对屏

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1