光线投射算法
c2 = (70,70,70)
α 3 = 0.94
c3 = (78,78,78)
颜色 不透明度
(100,100,100) 0.5
(50,50,50) 0.8
(200,200,200) 0.4
光线投射算法原理
光线投射算法终止计算的条件
的时候。 当 α i > 1.0 的时候。此时表示光线已经无法穿 透数据场。 透数据场。 当光线离开数据场后。 当光线离开数据场后。
光线投射算法原理
简化计算过程: 简化计算过程
α0 = 0 α i = α i −1 + α ( Pi )(1 − α i −1 )
ci = ci −1 + c( Pi )α ( Pi )(1 − α i −1 )
α1 = 0.5
c0 = (0,0,0)
c1 = (50,50,50)
α 2 = 0.9
视点
颜色 不透明度
光照模型
光线投射算法原理
颜色索引表
颜色索引表的作用是将图像中像素的灰度转 换成光学信息中的颜色。 换成光学信息中的颜色。
(0,0,0) (1,1,1) (20,0,2) : : : : (255,255,255)
光线投射算法原理
不透明度索引表
不透明度决定了, 不透明度决定了,那写重建部位可以显示出 那些被隐藏掉。 来,那些被隐藏掉。
光线投射算法原理
光线投射算法结果图
心脏 脚部
光线投射算法原理
光线投射算法的 延伸
将三维扩展到四维,右 图显示的是四维心脏
总结
光线投射算法的难点
难点不是计算,建立三维模型与编程实现。
光线投射算法的优点
成像质量高,在医学领域得到广泛的应用。
光线投射算法的缺点
计算量大,成像速度慢。
致谢
谢谢!
医学可视化软件的开发
∧∧ຫໍສະໝຸດ ∧∧光学知识
可以 颜色
+ 光照模型 =
在等号的上方有可以两个字,那么如何才能得到, 在等号的上方有可以两个字,那么如何才能得到,而不是可 以得到呢?光线投射算法就是将颜色和光照模型进行合成, 以得到呢?光线投射算法就是将颜色和光照模型进行合成, 最终得到三维物体
光线投射算法原理
体数据 成像平面
光线投射算法
贠照强
主要内容
光线投射算法产生的背景 光学知识 光线投射算法原理 总结
光线投射算法产生的背景
科学设备产生数据量增加, 科学设备产生数据量增加,需要 更高的解释工具。 更高的解释工具。 Marc Levoy 于1987年提出光线投 年提出光线投 射算法, 射算法,并在科学可视化领域得 到迅速发展。 到迅速发展。 现有医疗软件公司中西门子和GE 现有医疗软件公司中西门子和 等公司的产品均包含该算法。 等公司的产品均包含该算法
0 0.1 0.2 : : : : 1
光线投射算法原理
合成公式: 合成公式:
α i = α i −1 + α ( Pi )(1 − α i −1 )
ci = ci −1 + c( Pi )α ( Pi )(1 − α i −1 )
不透明度 颜色
c( Pi ) = c( Pi ) • L
a ( Pi )
光线投射算法结果
光线投射算法产生的背景
光线投射算法
将灰度信息 转变为光学 信息
光学知识
预备光学知识
R G B 红 绿 蓝
A 不透明度
?
光学知识
光照模型
g
H
L
漫反射 完全镜面反射
L
非完全镜面反射
V
光线在前进过程中会衰减
L = k a + k d ⋅ || L⋅ g || + k s ⋅ (|| H ⋅ g ||) m