论文部分内容阅读
自19世纪末德国科学家伦琴发现X射线并将其用于医学检查以来,CT、PET、MRI等新的成像技术和设备的不断涌现,促进了医学影像学的飞速发展,同时给传统的医疗诊断带来了巨大的变革,使得能够采用无创的方式得到人体内部结构和器官的影像,从而能更真实客观地了解人体解剖与生理功能状况以及病理变化,最终达到诊断和治疗的目的。而近20年来计算机技术日新月异的发展给医学影像学注入了新的活力,不仅使医学影像逐渐由胶片向数字化方向发展,而且更重要的是能够采用各种各样的计算机算法对数字化的医学影像进行处理和分析,得到更准确、更清晰的图像以及更多有用的尤其是量化的信息。而在医学影像处理与分析领域,三维可视化是非常重要的分支之一。通过三维可视化技术,可以从二维的医学影像得到三维的真实感图形,建立起人体组织器官和病变区域的三维立体模型,从而提供比二维图像丰富得多的观察角度,并可对病变体或感兴趣的区域进行定量的分析,从而大大提高了医疗诊断的效率和准确性。
新的进展同时也带来新的问题,随着医学影像设备成像手段和硬件技术的不断进步,医学影像的空间分辨率越来越高,随之而来的是采集影像的数据量急速上升,这给已有的医学影像处理算法带来了严峻的挑战。特别是自从美国的可视人体项目(VisibleHumanProject)实施以来,虚拟人体采集的影像数据量已经达到43GB,而国内研究机构于2003年完成的中国男性和女性数字化可视人体的影像数据量也已分别达到90.65GB和131.04GB。如此海量的数据使得三维实时处理和显示变得更为困难,尤其对于可视化算法来说,很多传统算法都需要对原始数据(体数据或三角面片网格数据)进行随机的存取访问,这就要求在处理之前将整个数据集装入内存,显然以目前主流计算机硬件的发展水平,内存容量甚至是操作系统提供的对内存的可寻址空间还不能满足海量数据处理的需求,这就使得研究新的能够在有限内存条件下高效处理海量医学影像数据集的方法变得尤为迫切。
此外,从算法研发的基础平台来看,目前国际上主流的算法平台(如VTK、ITK等)并没有在基础层面建立相应的算法框架提供对海量数据处理的支持,这就使得在可视化领域,一些经典算法(如基于光线投射的体绘制算法)由于需要对原始体数据做随机访问而无法直接应用于海量数据,而即使对于普通的图像处理算法,研究人员也不得不关注底层数据存储的细节,或多或少地对其做一些改动才能适应海量数据处理的需求,而这些额外的工作无疑分散了研究人员的精力,对算法研究是不利的,同时也使得这些算法平台在面对海量数据时失去了其作为算法研发支撑平台所应起到的作用。
本文的工作即针对上述问题而展开,其中包含两个方面:一是针对海量(Out-of-Core)医学影像数据处理和可视化的基础算法平台的研究和实现;二是对海量医学影像数据可视化算法的研究。具体来说包括下面四个部分:
1.提出了一套面向海量医学影像数据处理及可视化的统一算法框架设计,包括整体框架、访问接口和底层数据结构的设计,并将其在已有的算法平台基础上予以实现,完成了海量医学影像数据处理与分析算法平台MITK(MedicalImagingToolKit)2.0的设计和实现。在新的算法平台基础上,大部分现有算法不加改变即可支持海量医学影像数据的处理,而在一个统一的框架下设计和实现新的专门针对海量医学影像数据处理的算法也变得更为简单,从而真正建立起一个海量医学影像数据处理和分析的算法研发平台。
2.提出了一种基于3DWidgets,面向海量医学影像可视化的三维交互框架设计,并在海量医学影像数据处理与分析算法平台中予以实现,一方面为海量医学影像数据的可视化算法提供了一个相对独立、简单易用并且便于扩展的三维交互支持框架,另一方面在可视化算法的定性显示与实际应用中所需要的定量分析之间建立起了沟通的桥梁。同时,在一致的框架下实现了一组具体的三维交互工具(3DWidgets),为海量医学影像数据三维可视化提供了实用的测量和辅助显示等功能,从而提高了整个算法平台的实际应用价值。
3.提出了一种基于半自适应分块和硬件加速的海量医学影像数据光线投射(VolumeRayCasting)直接体绘制算法。传统光线投射体绘制方法是从某一特定视点经过成像平面发射光线穿过体数据场,沿着这些光线在体数据场中采样计算,并按从前往后的顺序合成最终投影图像。这种方法在计算采样点的光属性时,不管采用何种插值方式,都需要对原始体数据做随机访问,这样在处理海量数据时必然带来过多的内外存数据交换而导致严重的系统颠簸,从而使绘制效率大大降低。而本文提出的算法采用一种半自适应分块的策略对原始数据进行合理的分块,尽量分离不需绘制的背景部分,用BSP树来组织所有子数据块,从而能够保证按正确的顺序从前往后绘制所有子数据块,并且所有数据只导入内存一遍,避免了对原始数据的随机访问,同时,通过在绘制时忽略完全是背景的子数据块以及用GPU来加速每个子数据块的光线投射计算,进一步提高了海量数据光线投射体绘制的效率。
4.提出了一种基于三维纹理加速的海量医学影像数据直接体绘制算法。由于显卡纹理缓存大小有限,并且比内存容量要小得多,无法直接用于加速海量医学影像数据的体绘制。本算法通过对海量原始数据进行合理分块,使每块数据能够被装入内存和显卡显存单独处理,从而能够对海量医学影像数据进行体绘制。同时,通过使用三维纹理硬件和改进纹理多边形生成方法等措施优化分块绘制流程,从而加速整个绘制过程,实现了海量医学影像数据的快速可视化。
全文共分六章。第一章对海量医学影像数据可视化算法和算法研发平台的研究背景、意义及国际上的研究现状进行了介绍;第二章介绍了海量医学影像数据处理集成化算法平台的研究及其基础框架的设计和实现;第三章介绍基于3DWidgets、面向海量医学影像可视化的三维交互框架的设计和实现;第四章介绍基于光线投射的海量医学影像数据直接体绘制算法;第五章介绍基于三维纹理加速的海量医学影像数据直接体绘制算法;最后,第六章对全文工作进行了总结回顾,并对未来的发展方向进行了展望。