《医学图像三维重建和可视化--VC++实现实例》从工程应用的角度系统地介绍了医学图像三维重建和可视化的基础理论、算法设计和程序实现技术。《医学图像三维重建和可视化--VC++实现实例》分为五章:及时章概述了医学图像三维重建和可视化的研究内容和目的,并对医学成像方式及三维可视化系统组成进行简要论述;第二章介绍医学图像处理的程序设计基础,包括相关的OpenGL编程技术;第三章和第四章介绍了断层图像数据的三维重建理论和程序设计方法,其中第三章介绍基于表面的重建方法,包括等值面重建的行进立方体方法和基于二维轮廓线的表面重建方法,第四章介绍基于直接体绘制的重建方法;第五章阐述多角度投影数据重建理论和程序设计方法。《医学图像三维重建和可视化--VC++实现实例》理论和实例结合,比较地介绍了如何在VC++的基础上用OpenGL工具实现医学图像三维重建和显示。每章算法均已通过VC编程实现,随书所附光盘提供相关源程序和运行程序所需资源和图像数据。
《医学图像三维重建和可视化——VC++实现实例》可供从事计算机应用、医学影像处理等领域的研究人员和工程技术人员参考,也可作为高等院校生物医学工程等专业的研究生的参考书。
序
前言
第1章 概论
1.1 引言
1.2 医学成像模式
1.2.1 解剖图像
1.2.2 功能图像
1.3 医学图像三维可视化系统的组成
参考文献
第2章 医学图像和OpenGL编程基础
2.1 图像数据格式
2.1.1 BMP格式
2.1.2 载入位图数据
2.1.3 存储位图文件
2.1.4 显示位图
2.1.5 位图读、写和显示的VC++实现实例
2.2 OpenGL基础
2.2.1 OpenGL技术简介
2.2.2 OpenGL函数
2.2.3 OpenGL渲染描述表和像素格式
2.2.4 OpenGL变换
2.2.5 OpenGL绘制图形
2.2.6 OpenGL色彩构成和光照
2.2.7 OpenGL的双缓存技术
2.3 VC++下的OpenGL应用程序开发实例
2.3.1 OpenGL基础设置
2.3.2 VC++下的OpenGL编程
参考文献
第3章 基于表面绘制的三维空间数据场重建和显示
3.1 行进立方体方法
3.1.1 MC方法原理
3.1.2 MC方法的程序实现
3.2 基于二维平行轮廓线的重建方法
3.2.1 平行轮廓线重建方法的基本原理
3.2.2 最短对角线法及其程序实现
3.3 基于表面绘制的断层图像三维可视化Vc++程序实例
3.3.1 基于MC方法的断层图像可视化VC++程序实例
3.3.2 基于平行轮廓线重建的断层图像可视化Vc++程序实例
参考文献
第4章 基于体绘制的三维空间数据场重建和显示
4.1 体绘制原理
4.1.1 光学模型
4.1.2 体绘制原理及其过程
4.2 以图像空间为序的体绘制
4.2.1 光线投射法的基本原理
4.2.2 光线投射法的程序实现
4.3 以物体空间为序的体绘制
4.3.1 抛雪球法
4.3.2 错切变形法
4.3.3 错切变形法的程序实现
4.4 基于体绘制的断层图像三维可视化VC++程序实例
4.4.1 基于光线投射法的断层图像三维可视化Vc++程序实例
4.4.2 基于错切变形法的断层图像三维可视化Vc++程序实例
参考文献
第5章 多角度投影图像的三维重建和显示
5.1 直接线性变换方法
5.1.1 DLT方法原理
5.1.2DLT方法的程序实现
5.2 对极几何方法
5.2.1 对极几何关系
5.2.2 基础矩阵
5.2.3 基于对极几何的投影图像三维重建原理
5.2.4 基于对极几何的投影图像三维重建的程序实现
5.3 多角度投影图像三维可视化的VC++程序实例
5.3.1 建立对话框项目的基本框架
5.3.2 标定
5.3.3 重建特征点三维坐标
5.3.4 显示三维重建模型
参考文献
第 1章概论
1.1 引言
对医学影像的观测分析是医学诊断中最基本的手段之一。自从 1895年德国物理学家伦琴发现 X射线以来,医学诊断方式发生了翻天覆地的变化。各种医学成像技术的临床应用飞速发展,使得影像技术已成为不可或缺的诊断工具。近 40年来,先后出现了超声、计算机断层成像( Computed Tomography,CT)、磁共振成像( Magnetic Resonance Imaging,MRI)、数字式 X射线摄影(Digital Radiography,DR),以及各种功能成像技术,如放射性核素成像、磁共振功能成像等。尤其是 CT、MRI等成像技术,为真正的三维医学诊断提供了数据源。同时,信息处理领域不少新技术获得突破,各种影像后处理系统和应用软件不断被开发并投入应用,使得医学影像分析和处理方式不断改进,有力地促进了医学诊断和治疗技术水平的发展。
传统的医学影像技术能够直接获得的是二维投影图像(如 X射线成像)或断层图像(如 CT或 MRI)。医生通过观察不同成像角度获取的投影图像或者观察一组断层图像,对影像进行定性分析,来发现病变体或评估组织结构的畸形。由于人体的解剖结构是三维的,医生需要具备较强的读片能力,才能从二维影像上作出正确诊断,所以诊断结果依赖于医生的读片经验。要地确定病变体或畸形的空间位置、大小、几何形状以及和周围组织结构的空间关系,仅仅依靠医生的主观分析判断是很困难的。因此,目前的临床诊断应用迫切需要将医学数据直接以三维图像的形式直观地显示给医生,并且让医生能够对三维图像进行任意缩放、对比、旋转,从不同角度进行观察分析或进行相关测量。应用计算机实现三维数据重建和可视化,帮助医生从三维角度进行的观察分析,以设计的治疗方案,进而提高医疗诊治水平,这无疑可大大提高影像数据的医学利用价值。
三维数据重建和可视化的目标就是把科学计算或实验测量中产生的大量非直观的、抽象的或不可见的数据转换成人的视觉可以直接感观的三维图像,使人们能够直接观察数据的全局分布和三维数据间的关联和层次关系[1]。三维数据重建和可视化涉及图像处理、计算机图形学和图形交互技术等相对独立的学科领域。医学图像通常数据量很大,而临床应用方面不少场合需要快速甚至实时显示,多年来不少研究者致力于对医学数据的真实、快速可视化技术的研究,并已取得丰硕的成果,不断提出新的、有针对性的理论和方法。近年来随着计算机的处理速度和内存容量的大幅度提高,以及计算机图形学等领域的蓬勃发展,使得数据量巨大的医学图像的可视化以及交互处理得以快速实现。著名的可视人项目就是其中一个例子,该项目的研究者对人体标本从头到脚进行了全身扫描,获得了 3种数字图像数据:CT、MRI和组织切片照相图像。图像是以分层形式组织的,通过可视化技术,由这些图像数据重建并显现人体各种组织结构,为人们研究人体组织器官提供了重要信息。
三维数据重建和可视化对临床医学发挥着巨大的促进作用,不少研究机构致力于这一领域的研究工作,开发出一些三维可视化系统并已应用于实际临床诊断。医学影像三维可视化也是科学计算可视化快速发展的方向之一,但由于医学对象的复杂性和广泛性,这个领域还有不少方面有待提出新的方法,很多潜在的应用有待进一步深入研究和开发。本书针对医学图像三维重建和可视化的基本方法以及软件设计技术进行介绍,并给出 VC++实现实例。
1.2 医学成像模式
近代医学成像技术被认为起源于伦琴在 1895年发现的 X射线,之后相继出现了 CT、MRI、超声成像、单光子发射计算机断层成像( Single Photon Emission Computed Tomography,SPECT)和正电子发射断层成像(Positron Emission Tomography,PET)等技术。这些成像技术为临床上诊断组织器官形态、结构和功能信息提供了有效手段,成为医学诊断和治疗中不可缺少的重要工具。一般来说,医学图像按其成像方式和功用可以分为解剖图像和功能图像两大类[1]。本节重点介绍解剖图像的基本成像原理。
1.2.1 解剖图像
解剖图像显示人体组织器官的空间形态和组织密度信息,即解剖结构信息,常用的解剖图像成像方式有 X射线成像、计算机断层成像、磁共振成像和超声成像等。
1.X射线成像
X射线也称为伦琴射线,伦琴本人也因为发现 X射线这项伟大贡献获得及时届诺贝尔物理学奖。X射线是肉眼看不见的一种电磁波。 X射线成像是应用 X射线的穿透特性,把穿透人体后的 X射线记录在胶片上成像[2]。由 X射线管产生的射线是一束波长长短不一的混合射线,其中波长较短的穿透力强,波长长的容易被其他物质吸收。由于组成人体不同组织器官的物质密度不同,所以对 X射线的吸收存在差异,把穿透人体后强度不同的 X射线记录在胶片上就可以反映人体内部的组织结构。由于 X射线图像是 X射线通路上人体对 X射线吸收的累积效果,所以 X射线成像会出现影像重叠。也就是说,大小和密度相同的组织不论在人体内前、中或后部,其在 X射线图像上呈现的结果是一样的,如图 1-1所示。因此,X射线成像不能得到人体断层图像,一幅 X射线图像不能反映组织结构的三维空间信息。
2.计算机断层成像
计算机断层成像(CT)成功地解决了 X射线成像的影像重叠问题,能够获得人体断层图像。 CT过程实质是个数学问题 [3]。假设有一个 22矩阵,矩阵中的元素位置如图 1-2所示,元素的数值未知。如果知道矩阵及时行元素的和为 4,第二行元素的和为 3,及时列元素的和为 5,第二列元素的和为 2,则求解
. x1 + x2 = 4 .
x + x = 3
.34
.
x1 + x3 = 5
. .x + x = 2
.24
就可得到矩阵元素为 x1 = 2,x2 = 2,x3 = 3,x4 = 0。
图 1-1 X射线成像图 1-2 22矩阵
矩阵元素的每一行的和、每一列的和的概念可推广为射线的投影数据。X射线管发出 X射线经准直器准直后成为一窄束 X射线,该 X射线对人体的某一特定层面从各个角度进行投射,如图 1-3所示。透过人体的射线由探测器接收后进行适当的光电模/数转换,将模拟信号转换成数字信号后送到计算机进行数据处理。由探测器接收到的强度值即投影数据推算出图像像素对应的密度值,从而实现对人体的断层成像。因此,这种成像方式被称为计算机断层成像。通过逐层对人体某一部位器官扫描获得一系列断层图像,对这些断层图像进行三维重建和可视化即可获得该器官结构的三维图像。美国物理学家 Cormack证明了投影数据获得断层图像的可能性,并提出了相应的实现方法,英国电子工程师 Hounsfield设计出 CT装置,实现了人体断层成像,他们共同获得了 1979年的诺贝尔图 1-3 CT 医学奖。
3.磁共振成像
1946年美国斯坦福大学的 Bloch和哈佛大学的 Purcell发现具有奇数个核子(包括质子和中子)的原子核置于磁场中,再施加特定频率的射频场,就会发生原子核吸收射频场能量而发生能级跃迁的现象,即磁共振现象。两位物理学家因而获得了 1952年的诺贝尔物理学奖。随后经过几十年的研究,到 20世纪 70年代,对人体的磁共振成像 (MRI)获得成功。
磁共振成像需要人为制造一个和空间位置相对应的磁场分布,人体在未进入磁场之前,体内质子的排列方向是任意的,做自旋运动,其磁矩互相抵消,故宏观上人体不显磁性。当人体进入这个外加磁场时,人体内的质子受外加磁场的影响,呈有序化排列。此时质子除了自旋外,还围绕外磁场的磁矩转动,这种运动方式称为进动。这样宏观上将产生一个沿外磁场方向的磁矩,再在与外磁场磁矩垂直的方向上加入射频脉冲,当其频率与质子进动频率一致时,就发生磁共振现象。此时,质子吸收射频脉冲的能量跃迁到较高的能级,磁矩发生偏转,整个自旋系统偏离平衡状态。当射频脉冲去除后,自旋系统逐渐恢复平衡状态,这个过程称为弛豫过程。恢复到平衡状态所需的时间称为弛豫时间,包括纵向弛豫时间 T1(反映自旋核把吸收的能量传给周围晶格所需要的时间)和横向弛豫时间 T2(反映质子磁矩进动的相位由有序恢复至杂乱无章的状态所需要的时间)。恢复过程中质子将所吸收的能量以射频脉冲的方式释放,此射频脉冲就是磁共振信号,该信号的强度跟共振核子密度以及两个弛豫时间有关。而人体不同器官的正常组织与病理组织的弛豫时间是相对固定的,而且有一定的差别,这种组织间弛豫时间上的差别是 MRI诊断的基础。通过线圈接收 MRI信号,获得选定层面中各种组织的 T1和 T2值,进行空间编码,将每个 T值转为模拟灰度,就可以获得该层面中各种组织的影像。相比 CT而言,MRI的突出优势是对人体无电离辐射伤害。MRI同样能够获得断层图像,而且能较容易地对人体的不同组织断面(冠状面、矢状面、横截面)成像。
4.超声成像
频率超过 20 kHz时,人的感觉器官感受不到的声波称为超声波,它可以在固体、液体和气体中传播。与一般声波不同,超声波具有束射性,可集中向一个方向传播。采用超声波对人体扫描,当超声波进入人体后,如果遇到声特性有差异的界面,且界面直径大于超声波波长,则会发生反射形成反射回波。同时,对于直径远小于超声波波长的介质微粒,大部分超声波继续向前传播,小部分超声波能量被微粒向四面八方辐射,即发生散射,形成散射回波。反射回波主要携带的是组织器官的位置信息,而散射回波则携带了被测介质的结构信息。通过换能器将回波接收,被接收的回波经高频放大器、检波器和视频放大器处理后,显示在显示器上。
其中辉度调节( Brightness,B)型超声是目前超声诊断应用最广泛的成像模式。 B超的回波信号对应图像上的一个个光点,光点的亮度由回波幅度线性控制。B超采用多声束连续扫描,故相应图像表现为二维图像,可显示脏器的二维切面图像,并可以进行实时的动态观察。
上述医学成像技术都需要由外部向人体发射某种形式的能量,通过检测能量和人体相互作用释放的信息进行成像。
1.2.2 功能图像
功能图像反映人体组织器官的功能和代谢情况,这类图像的成像方式主要有放射性核素成像、磁共振功能成像等。
放射性核素成像是使用核素示踪技术,有选择地向人体内注入含有放射性核素的示踪药物。示踪剂根据人体的生理代谢规律进入人体的组织或器官,在此过程中核素发生衰变,将辐射 γ射线。通过体外对射线的测量估计核素在人体内的分布,从而实现对人体器官或组织的结构和功能成像。常用技术包括 γ照相机、SPECT和 PET等。
磁共振功能成像是磁共振技术的一项新发展,是目前应用最广泛的一种脑成像技术。磁共振功能成像应用磁振造影对组织活动功能进行成像。其狭义概念主要是指血氧水平依赖性成像,用于进行脑功能的研究。广义概念还包括:灌注加权成像或弥散加权成像,用于测量水分子的随机运动和区域脑血流;磁共振波谱成像用于非侵入地测量一些脑内代谢产物;磁共振弥散张量成像用于对脑内白质包括纤维走行的研究。
相比解剖图像,功能图像既可以表现组织器官的功能信息,又可以表现形态信息,但其图像分辨率比解剖图像分辨率低。本书介绍的三维重建和可视化方法主要用于反映组织器官的形态结构,因此所涉及的图像仅限于解剖图像。
因篇幅限制,医学成像的详细内容这里不再赘述,感兴趣的读者可参考清华大学高上凯[4]的著作。
1.3 医学图像三维可视化系统的组成
医学图像数据三维重建和可视化过程如图 1-4所示,由原始的二维图像数据(如 CT、X射线投影图像)出发,根据不同的应用目的,在对二维图像数据进行预处理后,经过三维重建生成各种方式的数据表达,包括体积表示、表面表示、特征表示等,在屏幕上形象化地显示三维图像。因此,医学数据三维可视化系统主要包括图像数据采集、二维图像处理分析和三维重建显示三部分。
原始数据可由测量仪器或计算机数值模拟获得或产生,例如,对人体脊柱成像可以是由 CT或 MRI扫描获得的二维断层图像,也可以是通过 X射