论文部分内容阅读
医学图像三维可视化重建算法是目前医学影像领域研究的一个热点问题,它横跨计算机图形学、计算机图像处理和生物医学工程等学科,目前在医学辅助诊断、手术仿真、医疗教学等方面都得到了大范围的应用。对医学图像三维可视化算法进行研究,提高成像速度、绘制速度以及交互操作性能,有非常重要的学术意义和应用价值。而可编程图形处理器GPU(Graphics Processing Unit)的出现并不断地发展成熟,为医学图像三维可视化技术开辟了一片新天地:它专门为图形计算而设计,其最主要的突破就是在图形硬件中引入了可编程功能,此功能允许用户编制自定义的着色器程序(Shader Program)来替换原有固定流水线中的某些功能模块,使得GPU在功能上更像一个通用处理器。 结合GPU的发展趋势,本文对医学图像三维可视化算法最重要的表面绘制Marching Cubes算法和光线投射Ray Casting体绘制算法进行深入研究,所做的主要工作以及创新成果包括: 1.提出了一种改进的基于Occlusion查询的快速的表面绘制算法。对于传统的Marching Cubes算法,往往生成海量的三角面片,因此绘制速度受到很大的影响。考虑到由于存在相互遮挡关系的原因,大部分三角面片对观察者是不可见的,因此无须被绘制出来,本文提出了一种改进算法,利用最新GPU硬件所提供的Occlusion查询功能,根据视点(观察者)的位置,剔除存在相互遮挡关系而不可见的大量三角面片,减少被绘制的三角面片数量;并利用顶点缓冲区对象(Vertex Buffer Object)把需要绘制的三角面片数据加载到高性能的显卡内存里进行显示;两种GPU新功能的配合应用,明显提高了表面绘制的速度。 2.充分利用GPU的可编程优势,提出了一种改进的基于面采样的GPU Ray Casting算法。改进的算法通过求交点、排序、附加上正确的颜色属性等操作,可以利用硬件实现的线性插值来加速求采样点坐标,传递给GPU对体数据进行采样、合成计算;改进算法平衡了CPU与GPU的负载,各自利用其优势处理算法的不同部分,实验数据表明改进算法加速了绘制速度,提高了交互操作性能; 3.在GPU上实现了大规模体数据分块绘制的方法。对大规模体数据,因系统资源有限,本文选择了分块算法对大规模体数据进行处理,实现了按顺序分块绘制,并最后合成一个整体,能够在有限的资源下对大规模体数据进行体绘制。 4.将上述改进算法集成进“高级三维PACS工作站”软件,提供直观易用的用户界面,为这些算法从理论研究到实践应用做好准备。