医学图像三维重建Splatting体绘制的研究与改进_图文

第 29 卷 第 5 期 2009 年 5 月

北 京 理 工 大 学 学 报 T ransact ions of Beijing Inst itut e o f T echno lo gy

V ol. 29 N o . 5 M ay 2009

医学图像三维重建 Splatting 体绘制的研究与改进
唐晓英 ,

1

应龙 ,

1

刘伟峰 ,

1

范星宇 ,

1

韩潇

2

( 1 . 北京理工大学 生命科学 与技术学院 , 北京

100081 ; 2 . 北京 理工大学 信息科学技术学院电子工程系 , 北京

100081 )

要 : 采用 S p latting( 抛雪球 ) 体绘制 法对 医学图 像进 行三维 重建 . 论 述了体 绘制 和 Sp l atting 算 法的 成像理

论 , 分析了 S p latting 算法 的重建误差 , 并 对 S p latting 算法的 图像合 成进行 了改 进 . 使用 Visual C + + 和 O p en GL , 实现了改进的 Sp latting 体绘制算法 , 消除了 S p latting 体绘制中的条纹现象 , 取得了较好的成像效果 . 关键词 : 医学图像 ; 三维重建 ; 体绘制 ; 抛 雪球法 中图分类号 : R 814 42 ; T P 391 文献标识码 : A 文章编号 : 1001 0645 ( 2009 ) 05 0460 05

Researches and Improvement on Volume Splatting Algorithm for Medical Image Reconstruction
T ANG Xiao ying 1 , YING L ong 1 , L IU Wei f eng 1 , FAN Xing yu1 , H AN Xiao 2
( 1 . Schoo l of L ife Science and T echno log y, Beijing Institute o f T echno log y, Beijing 100081 , China; 2 . Depar tment o f Electro nic Eng ineering, Scho ol of Infor mation Science and T echnolog y, Beijing Institute of T echnolog y, Beijing 100081 , China)

Abstract: Implem ent 3 D reco nstr uction of medical image by vo lum e splatt ing al gorit hm. Discuss im ag ing t heory o f vo lum e r endering and splat ting algo rit hm, analyze erro r of splat t ing algor it hm, and im pr ove imag e synt hesis of splatt ing alg orit hm. Implement t he im pro ved splat t ing algo rithm by using VC and OpenGL. Image st ripes in v olume render ing using splat t ing algo rithm have been eliminat ed and g ood result s have been obtained. Key words: medical image; 3 D r econst ruct ion; v olume rendering ; splat t ing algo rithm 20 世纪 70 年代随着医学影像技术的发展 , 绘 制了大量人体内部器官的二维数字断层图像序列 . 但断层图像的直观性差, 在许多医学运用中, 需要将 二维断层图像序列进行三维重建, 从而提供了用传 统手段无法获得的解剖结构信息. 图像三维重建及 显示的方法大致可 分为面绘 制和体绘 制. 体绘制 ( volume r enderi ng ) 能显示出对像体丰富的内部细 节 , 不依赖边缘检测 , 但是计算量大, 且不能灵活改 变视角 . 近年来 , 随着计算机技术的发展 , 体绘制受 到了人们越来越广泛的关注, 出现了许多算法 . 目前, Sp l at ti ng( 抛雪球 ) 算法研究的热点主要 集中 在 两 个 方 面 : 基 于 小 波 变 换 的 多 分辨 率 Sp latt ing 算法[ 1 ] , 结合图形硬件加速的 S p l at ti ng 算法
[ 2]

, 基于层间相似性加速的 S p l at ti ng 算法;

基于 方向 重建 滤波 核的 Sp l att ing 算法 . 但对 于 Sp latt ing 算法 成像的研究和 误差的改进并 不多. 作者研究了 S p l at ti ng 体 绘制算法, 分析了 该算法 的重建误差, 并对图像合成进行了改进 .

1

体绘制原理
体绘制法是将离散分布的三维数据场 , 按照一

定的规则转换为图形显示设备帧缓存中像素点的颜 色值 . 该算法通过插值进行重采样, 将一个离散化 的三维数据场转换为原始三维数据场的另一组离散

收稿日期 : 2008 10 27 基金项目 : 国家 八六三 计划项目 ( 2006 A A 04 Z216 ) 作者简介 : 唐晓英 ( 1963 ) , 女 , 副教授 , E mail: xiaoying@ bit . edu . cn.

第5 期

唐晓英等 : 医学图像三维 重建 Splatting 体绘制的研究与改进
[ 3]

461

信号, 投影生成最终显示的二维图像 1 1 体绘制方程

.

像为中心的设计法和以数据为中心的设计法. 作者 采用了以数据为中心的梯度幅度设计法 , 突出各组 织的边界轮廓 . 体绘制的主要步骤如图 2 所示 .

体绘制的光照模型定义了数据场投影到二维图 像平面的图像合成过程. 在目前体绘制中 , 多采用 源 衰减模型、 变密度 发射模型和材 料分类及组合 模型. 源 衰减模型依据物 理方程建 立[ 4 ] , 有可靠的 数学基础. 根据该模型三维数据场可以看成由许多 发射并同时吸收光线的微小粒子组成, 数据场发出 的光线沿着观察者的视线方向垂直 投射到成像平 面 . 以成像平面为 x Oy 平面, 视线方向为 z 轴建立 空间坐标系 , 如图 1 所示 . 若该平面上某点 ( x 0 , y 0 ) 对应的数据场的深度 ( z 轴 ) 坐标为 D, 则投射到该 点波长为 的光强 I ( D) 为
D s

F ig . 2

图 2 体绘制的主要步骤 M ai n step s of v ol ume re nder ing

1 3

Splatting 体绘制 Sp latt ing 体绘制以体数据作为出发点, 简化了

重采样的过程 , 在尽量保持数据场信息的前提下 , 计 算出各体素对屏幕上各像素点的贡献. 该算法存储 顺序便捷 , 减少了查询次数[ 5 ] . 如图 1 所示的空间坐标系中 , 设三维离散数据 场的数据点 V p ( ix , iy , iz ) 由连续数据场 V( x , y , z) 采 样得到 V p ( i x , i y , iz ) = V ( x , y , z ) ( x - ix x , y - i y y , z - iz z ) . ( 3) 进行重采样之前 , 要先将离散的数据场与重构 核进行卷积运算, 恢复出初始连续数据 V ( x, y, z) . 重构核函数 h v ( u, v, w ) 相当于一个低通滤波器. V (x , y, z) =
i V

I ( D) = 光强密度;

C ( s) 0

( s) ex p -

0

( t) dt ds.

( 1) 的

式中: C 是三维数据场中某点 s 发出的波长为 是波长为 的衰减系数 ; s, t 为 z 轴方向的积分变量 .

的光在数据场中单位长度

V p ( i x , i y , iz ) ( 4)

hv ( x - ix x , y - iy y, z - i z z ) .

常用的 重构核 函数有 圆锥 函数、 高 斯函数 和
图 1 体绘制空间坐标系 S pace coord i nate syst em in v olume r ende ri ng

Fi g. 1

sinc 函数等. 一般设 x, y , z 为归一化单位长度. 单独考虑 数据场中的一 个数据点 ( i) , 它对空 间点 ( x , y, z) 的贡献值为 ei ( x , y , z ) = V p ( ix , iy , i z ) h v ( ix - x , iy - y , iz - z ) , 作是对式 ( 5 ) 沿 z 轴做积分( i 视为常量 ) 即 :
+

求体绘制方程的解析解很困难 , 在实际应用中 通常将积分方程进行离散化, 近似求解. 离散化体 绘制方程为
D/ s- 1 i

( 5)

则数据点 ( i) 对成像平面上的点 ( x , y) 的贡献可以看

I ( D) =
i= 0

C ( i s) ( i s)
j= 0

[ 1-

( j s) ] . ( 2)

ei ( x , y ) =

-

V p ( ix , i y , i z ) ( 6) ( 7)

式中: ( j s) = ( j s) s 为介质在 s 区域内的不 透明度 ; C ( i s) 为 s 区域内的颜色值 . 根据式 ( 2 ) 可推导出颜色值和不透明度的合成公式. 1 2 体绘制传输函数 体绘制的成像过程需要计算三维数据场的光学 特性. 传输函数为每个体数据赋予贯穿整个体绘制 流程的光学特性, 是体绘制的重要组成部分 [ 3 ] . 传 递函数的定义域包括了体数据和体数据的一阶导数 及二阶导数 , 有时还包括曲面的曲率等. 传递函数的设计方法主要可分为试错法、 以图

h v ( i x - x , iy - y , w ) d w . 定义足迹函数为
+

f p (x , y , w) =

-

hv ( x , y , w ) dw ,

式中 ( x , y ) 为足迹函数中的像素点与重构核中心 在屏幕上的投影点之间的距离. 足迹函数只与所选 择的重构核有关.

2

Splatting 体 绘 制 的 误 差 分 析 及 改进
通过定义足迹函数 , Sp latt ing 算法把三维空间

462

北 京 理 工 大 学 学 报

第 29 卷

的坐标变换和重采样转换成体数据的遍历和二维足 迹表的查询 . 当观察角度发生改变时 , 可以通过足 迹表对各相关像素点进行二维插值, 这样就提高了 程序的运行速度 . S p l at ti ng 算法具有上述优点 , 但其成像质量与 光线投射法相比有一定的差距 , 运算速度仍不能令 人满意 . 2 1 Splatting 体绘制误差分析 S p l at ti ng 算法是对标准重建理论的一种近似 .

据进行坐标变换, 并查询足迹表, 得出其对屏幕上重 构核投影区域内的各像素点的贡献 . 再根据深度坐 标 z, 将不同深度区间内数据点的贡献值 , 储存到图 像缓存三维数组的不同层. 水平投影区域坐标保持 不变 , 相同层之间坐标相同的贡献值进行叠加 . 缓 存完成后 , 根据体绘制方程对各层光学特性数据进 行合成并投影到二维屏幕上 . 引入图像缓存三维数组后, 在观察角度改变时, 体数据的遍历方式不改变. 在各层光学特性数据最 后的合成过程中, 可以很方便地指定合成的深度和 范围 , 实 现三 维 物 体的 剖 切、 分 块、 分 层 显 示, 见 图 4.

根据三维重建理论, 空间中的重采样点由各数据点 加权求和得到. 在垂直于视平面的深度方向上 , 重 采样点要按照体绘制方程进行光学合成( 见图 3 ) .

F ig . 3

图 3 体绘制的图像合成 I mage comp ound ing i n v ol ume re nder ing

Fi g . 4

图 4 增加图像缓存的 S p l att in g 算法 Sp l at ti ng al g or it hm w hic h i s add ed i mag e buf f e r

选取 M ax 提出经典的重构核 [ 8] , 其解析式为 g( r ) = 0. 557 526 - 1. 157 743r 2 + 0. 671 033r 3 , 0. 067 599( b- r) + 0. 282 474(b - r) , 0.
2 3

考察离散体绘制方程 ( 2 ) 可得到在深度方向上 各层体素范围内 ( s 微元内 ) 不透明度和颜色值是 距离的线性函数 ; 但在各层体素之间 , 不透明度和颜 色值要进行非线性的光学合成运算 . S p l at ti ng 算法计算出单个数据点对屏幕像素 点的贡献值后, 影响成像质量的关键是如何根据深 度坐标合成图像
[ 6 7]

0 a r

r r b

a b ( 8)

式中 : a, b 为 常 数, 在 这 里 a = 0 889 392, b = 1 556 228; r 为重构核半径, 以数据点之间的间距为 单位 . 2. 2 2 视角旋转时体数据分层

.

由式 ( 6 ) 可知 , 水平方向上, Sp l at ti ng 算法是 按照重建理论进行的. 而在深度方向上 , 用中心数 据点的积分代替了临近数据点值对 重采样点的贡 献 , 即不考虑某一深度前后的体数据对重采样点的 影响, 造成了一定的平滑效应. 因此, 在保证一定的 插值精度的同时 , 所选择的重构核半径应尽量小. 2 2 Splatting 体绘制改进 S p l at ti ng 算法的图像合成必须尽可能地逼近

当观察角度发生变化时 , Sp latt ing 算法的误差 问题变得更加复杂. 由 S p l at ti ng 算法的积分近似 可知 , 某个体数据点的加权值代表它对周围 1 个体 素深度( 即相邻数据点间距 ) 范围内光学特 性的贡 献. 虽然同一层图像缓存的相邻数据点可能并不严 格在该平面上 , 但是 0 5 个体素深度误差不会对成 像的准确度产生较大的影响 . 设整个体数据为一规范化的立方体 , 离散的数 据点分布在 空间立方体 网格上 . 建 立空间坐 标系 ( 如图 1 所示) . 若使层间距为 D buf = max z ver - z cen - min z ver - z cen . N ( 9)

体绘制模型 , 若仅将各数据点的贡献值进行简单相 加 , 则忽略了空间深度对立体成像的影响 , 会造成较 大的误差. 作者采用对不同深度的数据点分层合成 的思想 , 逼近理想的三维重建. 2. 2 1 图像缓存引入 为了逼近体绘制模型 , 在投影过程中添加了一 个图像缓存三维数组. 进行体绘制时 , 首先对体数

式中 : z ver 为体数据顶点的深度坐标 ; zce n 为体数据中

第5 期

唐晓英等 : 医学图像三维 重建 Splatting 体绘制的研究与改进

463

心的深度坐标 ; N 为体数 据高度, 以 数据点之间的 间距为单位 . 相邻数据点的深度差小于 0 7 个体素 深度, 基本符合要求. 直接根据深度坐标 z 分层 , 即保持图像缓存各 层与视平面平行 . 同一层中相邻数据点的水平间距 在特定的旋转角度 下, 产生特定的疏密交替排列 , 导致重建点分布不均匀. 而相邻层之间的稀疏区域 与密集区域 , 也是分别相邻并且大部分重合的 , 图像 合成后形成明显的条纹现象, 如图 5 所示 .

2 min zv er - z ce n 时 , 立方体网格对角平面相邻数据 点的间距相等且深度差较小, 宜将对角平面作为图 像缓存平面. 即由同一条对角线及其延长线上的各 数据点, 叠加产生该对角线方向上的重采样值, 见图 6( b) . 该方法相对较复杂, 但可以在任何旋转角度 下取得较好的成像效果 .

3

实验结果
采用 Op enGL 和 V i sual C + + 建立基于 Wi n

dow s 的图像处理平台 , 实现 Sp l att i ng 体绘制 . 原 始数据是 512 512 174 个数据点, 没有经过增强 的人体腹部 CT 扫描 8 位灰度图像组, 从胸腔下部 到大腿上部. 经过线性插值后成为 256 256 256 个数据点的体数据 . 体数据的深度修正算法的成像 结果见图 7 ( 为视线方向与体数据棱的夹角) .
图 5 图像条纹的产生 F ig . 5 Format ion of imag e str ip es

为了消除条纹, 作者对数据点的分层进行修正 . 根据体绘制原理 , 三维数据场某点的成像误差 , 只与 到该点距离小于重构核半径的数据点的误差有关 , 具有局域性 . 因此在保证重构核的投影方向与视线 方向一致的前提下, 叠加生成重采样点的图像缓存 各层数据点 , 可以与视平面存在夹角 , 而不会积累产 生整体上的显著误差 . 通过改变图像缓存与视平面 的夹角 , 使生成重采样点的相邻数据点之间的间距 相等, 即可消除条纹, 同时应尽量减小相邻数据点的 叠加误差. 具体算法如下 : 当 max zver - zcen - min zver - zcen 2 mi n zver - zcen 时, 立方体网格棱平面相邻数据点 的间距相等且深度差较小 , 宜将棱平面作为图像缓 存平面 . 即由同一条棱及其延长线上的各数据点 , 叠加产生该棱方向上的重采样值, 见图 6( a) .

Fi g . 7 图 6 视角旋转时体数据的分层 L ayer s sep arat ing of v ol ume dat a i n roll i ng v i ew ang l e

图 7 深度修正算法的成像结果 Resul t of d ep t h c or rect i on al gori th m, is v i ew angl e

F ig . 6

实验结果表明: 直接按照深度对体数据进行分 层, 在某些角度 ( 如 50 和 75 ) 会产生明显的条纹现 象; 修正后的深度分层 Sp latt ing 体绘制成 像效果

当 max

zver - zcen - min

zver - zcen >

464

北 京 理 工 大 学 学 报

第 29 卷

好 , 基本消除了条纹现象. 体数据的直接深度分层 算法的成像结果见图 8.

[ 2] 秦红星 , 杨杰 , 郭律 . 基 于图 像处理 器的 EWA Splatting 体绘制加速算法 [ J] . 上 海交通 大学学 报 , 2008, 42( 12) : 1943 1946. Q in H ongx ing, Yang Jie, G uo L . A hard acceler ated algo rithm fo r EWA splatting based on modern G PU [ J] . Journal of Shang ha i Jiaoto ng U niv ersity , 2008, 42( 12) : 1943 1946. ( in Chinese) [ 3] 张加万 . 光互体绘 制关键技 术及其 应用研 究 [ D] . 天 津 : 天津大学电子信息工程学院 , 2004. Zhang Jiaw an. Resear ches on key technolog ies o f optical inter act ive vo lume render ing and their application [ D] . T ianjin: Schoo l of Electro nic and Infor matio n Eng ineer

图 8 直接深度分层算法的条纹现象 Fi g. 8 I mage str ipes of di rectl y sep ar at ed by dep th,

i s vi ew ang le

ing, T ianjin U niversity, 2004. ( in Chinese) [ 4] 孙志刚 . 基于物序 体绘制的 算法和 应用研 究 [ D] . 天 津 : 天津大学电子信息工程学院 , 2003. Sun Z higang. Resear ches on volume r endering algo rithm based on method o f space sequence of o bject s and it s ap plication[ D] . T ianjin: Scho ol of Electr onic and Infor ma tio n Engineering , T ianjin U niv ersity , 2003. ( in Chinese) [ 5] W esto ver L . F ootpr int ev aluation for v olume render ing [ J] . Co mputer Gra phics, 1990, 24( 4) : 367 376. [ 6] M ueller K, Craw fis R . Eliminating popping a rtifacts in sheet buffer based Splatting [ C] 245. [ 7] M ueller K , M oller T , Sw an J E, et al. Splatt ing err or s and ant ialiasing [ J] . V isualization and Com puter Graph ics, 1998, 4( 2) : 178 191. [ 8] M ax N . An o pt imal filter for imag e reconst ruct ion, Gr aphics G emm [ M ] . N ew Y or k: A cademic Press, 1996: 101 104. Pr oceeding s o f the IEEE V isualizatio n 98. [ S. l. ] : [ s. n. ] , 1998: 239

4





不同角度下 , 同一缓存层的相邻数据点沿缓存 平面的间距不同 . 因此体数据的深度修正算法在接 近 0 和 90 时成像较亮较清晰; 而接近 45 时成像较 暗 , 像质也较差 . 0 时相邻数据点沿缓存平面的间 距为体素棱长, 45 时该间距变为体素对角线长 , 增 加到 1 4 倍 . 进一步的改进需要对体数据的视平面 坐标进行修正, 从而提高成像质量. 作者提出的改进 Sp l att i ng 算 法, 表现出良好 的立体成像效果 , 最大限度地减少了成像误差 , 并消 除了传统分层法所导致的条纹现象. 算法未增加计 算的复杂度 , 但增大了数学建模和程序设计的复杂 度 , 因此对程序的编写和优化都提出了更高的要求 .
参考文献 : [ 1] P iccand S, N oumeir R, P aquette E. Reg ion of interest and mult ireso lution for vo lume r endering [ J] . Info rma tio n T echno lo gy in Biomedicine, 2008, 12( 5) : 561 568.

( 责任编辑: 赵业玲)


相关文档

医学图像三维重建的体绘制技术综述
医学体数据三维重建体绘制技术研究
医学图像三维可视化体绘制技术研究
基于Ray-Casting算法对医学图像进行三维体绘制重建
基于2D多纹理映射的三维医学图像体绘制技术的改进
三维医学图像的体绘制技术综述
基于表面与基于体素的医学图像三维重建方法研究
在Matlab环境下实现体绘制法的生物切片图象的三维重建
基于VTK的医学图像三维重建
基于小波变换的医学图像融合及基于体数据遍历算法的三维重建
电脑版