`

VTK笔记 关于体渲染

VTK 
阅读更多

摘抄自《医学图像编程技术》

5.6 体渲染

体渲染是一个描述3D数据渲染过程的术语。(存疑,与别阳春白雪和下里巴人上面讲的有所区别)。这里的3D数据是指其属性数据遍及3D空间,而不是一个在3D空间的2D曲面。

5.6.1 体渲染的不同在哪里

 

之前遇到的渲染都是对面的渲染,无论是对数据的表面还是一个抽取的轮廓,大部分都是对面上的标量数据进行显示。对于体数据,如果知识使用面渲染技术,显示其表面或者一个抽取的轮廓的话,通常不能满足人们的要求,因为这没有表达出3Dshuju信息的控件特性。于是就有了体渲染的概念,它比面渲染提出了更多的要求。

 

一种常用的体渲染技术是“光线投射(ray cast)”。假设有一道目光射线发射出去,它与一个体数据相交并穿过。如果把这一射线与体数据表面焦点的标量数据映射为颜色,并作为该位置上最终显示的颜色的话,那么该点背后大量的数据信息就没有表示出来。体渲染技术要求最终渲染的结果能在一定程度上反映出背后的信息,也就是对体数据中,位于同一目光射线上的点的标量数据通过共同作用产生最终该位置上的颜色。对这些标量数据的作用方式有三种,其中一种比较复杂的方式就是对位于目光射线上的一系列离散点颜色数据进行加权叠加。其中颜色数据是对这些离散点的标量数据映射来的。而加权系数指的是不透明度,取值范围为0到1.不透明度也可以通过标量映射得到,另外还可以通过梯度映射得到。可见在进行光线投射前,首先要设置这几种映射。

5.6.2 体渲染的前提-------映射出颜色值和不透明读

 

 这里映射的过程和前面介绍的把标量映射为查询表索引的过程蕾丝。具体是通过创建一个映射函数来描述映射关系。对于标量到不透明度以及梯度到不透明度这两种映射。由于他们都术语单值对单值的映射,因此可由vtkpiecewiseFunction实现,而对于把标量映射为彩色则使用vtkColortransferfunction实现。下面分别介绍这两个映射函数。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics