首页 利用VTK实现DICOM医学图像三维重建

利用VTK实现DICOM医学图像三维重建

举报
开通vip

利用VTK实现DICOM医学图像三维重建 信息技术与信息化 图像处理 2008年第 5期 115   利用 VTK实现 D ICOM医学图像三维重建 3D Reconstruction of D ICOM M edical Images Based on VTK 王树秀 3  雷  声 3 3  常发亮 3 WANG Shu - x iu L EI Sheng CHANG Fa - liang 摘 要  利用医学可视化技术可以将二维断层序列图像重建为三维虚拟实体 ,基于这个模型可以精确地获取病 变区的大小、位置和形状 ,极大地提高了诊断的直观性...

利用VTK实现DICOM医学图像三维重建
信息技术与信息化 图像处理 2008年第 5期 115   利用 VTK实现 D ICOM医学图像三维重建 3D Reconstruction of D ICOM M edical Images Based on VTK 王树秀 3  雷  声 3 3  常发亮 3 WANG Shu - x iu L EI Sheng CHANG Fa - liang 摘 要  利用医学可视化技术可以将二维断层序列图像重建为三维虚拟实体 ,基于这个模型可以精确地获取病 变区的大小、位置和形状 ,极大地提高了诊断的直观性与交互性。VTK是目前国际上通用的科学计算可 视化工具包 , D ICOM文件为医学图像的专用传输和存储格式。在 V isual C + + 6. 0平台下 ,本文借助 VTK类库 ,采用体绘制方法实现了 D ICOM医学序列图像的三维重建 ,并给出了程序运行结果。 关键词  三维重建 D ICOM VTK 体绘制 3 山东大学控制科学与工程学院  济南  2500623 3 浙江大学 生物医学工程与仪器科学学院  杭州  310027 基金项目 :国家自然科学基金 ( No. 60775023 ) ;山东省自然科学 基金 (No. Z2005G03 )。    D ICOM ( digital image and communication on medicine)文件格 式为目前国际通用的医学影像专用的传输和存储格式 ,在 PACS 系统中得到了广泛的应用。D ICOM 图像三维重建是指将二维 D ICOM序列医学图像通过特定的重建算法重建为三维虚拟实体 , 可以较为准确的获得病变区的大小、位置、形状等三维信息 ,为进 一步的病情诊断、虚拟手术等提供了更为丰富直观的信息和交互 手段 ,极大地方便了医生的诊断治疗。 医学图像三维重建方法可以分为面绘制 ( Surface Rendering )和体绘制 ( Volume Rendering )两大类。面绘制算法中具有代表 性的是 MC (Marching Cubes)算法 ,它通过对一系列的二维图像进 行边界识别等分割原理 ,将感兴趣的部分以等值面的方式抽取出 来 ,从而为用户提供较具真实感的三维图像。这种方法的优点是 重建速度较快 ,内存资源需求较小 ,缺点是易丢失纹理细节。体 绘制算法主要包括光线投影算法 ( Ray Casting) , 脚印法 ( Sp lat2 ting ) ,剪切变形法 ( Shear - - W arp ) ,其中 Ray Casting算法是体 绘制中的经典算法 ,它是从投影平面的每一个像素点发射出一条 光线 ,穿过三维体数据场 ,并计算光的传输方程 ,得到最后的图 像 [ 1 ]。这种方法的缺点是内存需求大 ,绘制速度较慢 ,但是它保 存了整体细节 ,绘制效果较好 ,可以很方便地实现一些插值算法。 本文采用 Ray Casting算法作为三维重建方法 ,同时由于传递 函数的设置对体绘制结果有很大影响 ,详细介绍了传递函数的设 置 ,并给出了关键代码。 1 基于 VTK的 D ICOM图像三维重建 1. 1 VTK简介 VTK( The V isualization Toolkit)是美国 Kitware公司推出的一 个开放源码的自由软件系统 ,可以应用于图像处理、计算机图形 学和科学计算可视化 ,最新版本为 5. 0. 4。VTK完全采用面向对 象的设计思想来设计与开发 ,支持 W indows, Unix与 L inux等多种 平台 ,支持 C, C + + , Java, Tcl/Tk以及 Python等编程语言 [ 4 ]。 VTK将众多常用的图形操作、图像处理算法封装成不同的类 ,非 常易于理解和调用。与此同时 VTK具有很好的流 ( stream ing)和 高速缓存 ( catching)能力 ,这些都使得 VTK成为医学图像可视化 开发的一个较好的选择。 1. 2 VTK读取 D ICOM医学图像 现有的 VTK封装了可以直接读取 D ICOM 图像的 C + +类 vtkD ICOM ImageReader,极大地简化了使用 VTK工具包读取 D I2 COM医学图像的过程。以下为读取 D ICOM序列图像的代码 : vtkD ICOM ImageReader 3 reader = vtkD ICOM ImageReader: : New ( ) ; reader - > SetDataByteO rderToL ittleEndian ( ) ; reader - > SetD irectoryName ( filedirectory) ; / / filedirectory为存 放图像的路径 reader - >Update ( ) ; 1. 3 三维重建的实现 本文采用光线跟踪算法 (Ray Casting)作为体绘制的基本算 法。基于 VTK类库的体绘制管道模型如图 1所示。 vtk ImageShiftScale和 vtk ImageCast主要用于数据类型的转换。 在图像处理管道中 , vtk ImageCast主要是转换输入数据类型以匹 配输出数据类型 ,由函数 SetOutputScalarType来实现。在 vtk Im2 ageShiftScale,输入图像被移动和缩放 ,主要由以下两个函数实现 : virtual void SetShift ( double) 和 virtual void SetScale ( double) ,转换 后的像素值 = (原像素值 +平移值 ) ×伸缩值。与此同时 ,这个类 也可以通过函数 SetOutputScalarType转换数据类型。本文采用 vtk ImageShiftScale进行数据转换。 在体绘制中传递函数将体数据转换为光学参数 ,因此体绘制 的效果直接由传递函数决定。传递函数主要有三类 :不透明度传 递函数、颜色传递函数和梯度传递函数。不透明度传递函数主要 是确定各体素的不透明度 ,由 vtkPieceW iseFunction来设置 , vtk2 PieceW iseFunction定义了分段函数映射 ,由 AddPoint( )和 AddSeg2 ment( )实现数值点的添加。关于这两个函数的具体参数如下 : © 1994-2010 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 图像处理 信息技术与信息化 116   2008年第 5期 图 1 体绘制管道模型 int AddPoint( double x, double y) x代表体素的灰度值 , y代表该体素点的透明度 ,其范围为 [ 0, 1 ] , 0代表完全透明 , 1代表完全不透明。 void AddSegment( double x1, double y1, double x2, double y2) 这个函数的功能是添加一条直线段 ,起点坐标 ( x1, y1) ,终点 坐标 ( x2, y2) ,其含义与上述 ( x, y)类似。 针对本文所使用的 D ICOM医学图像 ,不透明度传递函数设 置如下 : vtkPiecewiseFunction 3 opacityTransferFunction = vtkPiece2 wiseFunction: : New ( ) ; opacityTransferFunction - >AddPoint(70. 0, 0. 0) ; opacityTransferFunction - >AddPoint(599. 0, 0) ; opacityTransferFunction - >AddPoint(600. 0, 0) ; opacityTransferFunction - >AddPoint(1195. 0, 0) ; opacityTransferFunction - >AddPoint(1200, . 2) ; opacityTransferFunction - >AddPoint(1300, . 3) ; opacityTransferFunction - >AddPoint(2000, . 3) ; opacityTransferFunction - >AddPoint(4095. 0, 1. 0) ; 颜色传递函数主要是确定体素的颜色值或灰度值 ,由类 vtk2 ColorTransferFunction实现。根据 AddRGBPoint( )设置数值点的颜 色值。函数具体参数如下 : int AddRGBPoint( double x, double r, double g, double b) x代表体素点的灰度值 ,含义与上述相同 , r代表红色分量 , g 代表绿色分量 , b代表蓝色分量 ,他们的范围均为 (0, 1)。 本文颜色传递函数设置如下 : vtkColorTransferFunction 3 colorTransferFunction = vtkColor2 TransferFunction: : New ( ) ; colorTransferFunction - >AddRGBPoint(0. 0, 0. 5, 0. 0, 0. 0) ; colorTransferFunction - >AddRGBPoint(600. 0, 1. 0, 0. 5, 0. 5) ; colorTransferFunction - >AddRGBPoint(1280. 0, 0. 5, 0. 5, 0. 3) ; colorTransferFunction - >AddRGBPoint(1960. 0, 0. 5, 0. 77, 0. 6) ; colorTransferFunction - >AddRGBPoint(4095. 0, 0. 5, 0. 9, 0. 9) ; 最后 ,利用 vtkVolumeProperty类设置体属性 ,同时利用 vt2 kVolumeRayCastMapper类建立光线投射映射对象。用 vtkVolume 类建立体对象 ,利用其函数 SetMapper( )设置光线投射映射对象 , 利用函数 SetProperty ( )设置体的属性。最后通过与 W indows窗 口的绑定 ,完成绘制。 2 重建结果显示 依据上述体绘制模型 ,结合 V isual C + + 6. 0,利用 VTK库进 行了编程试验 ,试验数据为基于 D ICOM 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 的人体 CT图像。其 中头部图像数据为 512 ×512 ×234,足部图像数据为 512 ×512 × 350,重建结果如下图所示。 由图 2,图 3可以看出 ,本文采用 Ray Casting方法可以较为精 确的实现医学图像的三维重建 ,并可进行旋转、缩放、移动等交互 操作 ,为进一步观察提供了保证。 3 结束语 VTK是国际上主流的三维可视化工具包。本文在 V isual C + + 6. 0环境下 ,借助 VTK类库采用 Ray Casting方法对 D ICOM医 学图像进行了体绘制 ,重建结果较好 ,真实地再现了物体的三维 面貌 ,同时可以交互的进行旋转、平移等操作 ,具有较强的实用 性。但是由于体绘制数据量很大 ,绘制速度较慢 ,如何提高重建 速度是下一步研究的重点。 参考文献 : [ 1 ] 田捷 ,赵明昌 , 何晖光. 集成化医学影像算法平台理论与实践 [M ]. 第一版 , 北京 : 清华大学出版社 , 2004: 111 - 113. [ 2 ]  http: / /www. vtk. org. [ 3 ]  W illiam J. Schroeder. The VTK U ser’s Guide. New York, USA: Kitware, Inc. 2001: 1 - 377. [ 4 ] 郭圣文. 利用 VTK与 ITK的集成实现医学图像可视化 [ J ] , 计算机工程与应用 , 2006, 30: 183 - 184. [ 5 ] 周芳芳 ,樊晓平 ,叶榛. 基于多尺度等值面设计传递函数 [ J ] , 小型微型计算机系统 , 2007, 28 (1) : 144 - 147. [作者简介 ] 王树秀 ( 1984~) ,女 ,硕士 ,主研方向 :医学图 像三维重建、医学图像处理 ;雷声 ( 1984~) ,男 ,博士 ,主研方向 : 医学图像处理、生物医学传感器 ;常发亮 ( 1965~ ) ,男 ,教授 ,主 研方向 : 机器视觉与智能控制、医学图像处理。 (收稿日期 : 2008 - 04 - 30) © 1994-2010 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
本文档为【利用VTK实现DICOM医学图像三维重建】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥10.8 已有0 人下载
最新资料
资料动态
专题动态
机构认证用户
壹笑先生
致力于服务广大学子、教师、社考人员等一份学习的资料!
格式:pdf
大小:238KB
软件:PDF阅读器
页数:2
分类:金融/投资/证券
上传时间:2019-05-13
浏览量:114