总体
是一种由三维场产生屏幕二维图像的技术,优点是可以探索事物的内部结构。依据所有的三维体数据,将所有的体数据细节同时展现在二维图片上的技术,称之为体绘制技术
体素:用三维数列表示三维数据场的值,比如医学图像切片值,相邻层之间的八个节点包裹起来的小立方体
体绘制:一种基于体素的绘制技术,比面绘制与线绘制更能够描述事物的内部结构
体光照模型:研究光学现象,即光线穿过体素时的光强变化,有三种模型常用
- 源-衰减模型
- 变密度发射模型
- 材料分类及混合模型
体绘制方法:
- 以图像空间为序的方法–光线跟踪
- 光线跟踪是指:屏幕上的每个像素,根据设定的视点方向,发出一条射线,这条线穿过三维数据场的体素矩阵,沿这条射线选择k个等距采样点,每个采样点都选取最近的8个体素的颜色值和不透明度值做三维线性插值,求出该采样点的不透明度及颜色值。所有采样点的数据求出来后,将每一采样点的数据组合,从来计算出该屏幕像素点的颜色值
- 以对象空间为序的体绘制算法–单元投影法
- 根据每个数据点的函数值计算该店的不透明度和颜色值,变换到图像控件后,利用光照模型,计算每点的光照强度,计算三维与二维的映射关系,求出每个像素点的光照强度的贡献,最后将不同的贡献加以合成
将体绘制与透明光照模型区别
- 区别一:透明光照模型常用来描述在光透明光介质中的传输算法,而体绘制是用来描述事物内部结构的技术
- 区别二:透明光照模型常用于艺术化(在社会中),而体绘制强调真实
体绘制
体绘制的数据来源:
一是 有限元计算和流体物理计算
二是 仪器测量的结果
什么是体素?什么是体纹理?
体素
相比于二维图像中的像素(每个像素表示了图像中该点的颜色透明度信息),体素表示了三维图像中每个点(在微观中是一个小立方体)的颜色透明度信息。
显而易见,体素是一个三维的数据。
体纹理
顾名思义,体纹理描述的数据类型是三维的,故,体纹理也可以成为三维纹理。(excuse me?)有的时候一维数组也可以存储三维数据,只要按照一定的规则存放就可以了。故,此时定义,按照一定规则将三维数据存储在XY平面里所形成的纹理称之为体纹理
一些算法
光线投影算法 原理: 图像中的每一个像素,沿固定方向发射一条射线(通常是射线方向),光线穿过层层图像序列。并在这个过程中给,对穿过的图像进行数据采样,同时经过 光线吸收模型 进行累加,直至穿越所有的图形序列,得到的最终图像就是渲染出来的图像
吸收和发散模型原理:每个体素既发出光线,也对光线进行吸收,但不进行漫反射和透射
在进行体渲染的时候,使用三维模型作为体纹理的载体
透明合成公式
如何判断光线穿出立体
穿出立体也可理解为穿出体纹理,渲染一张正面深度图(所有的点是由离视点最近的点组成)和反面深度图(所有的点是由离视点最远的点组成),用反面深度图减去正面深度图就可以得到立体中光线穿越的距离