论文部分内容阅读
医学数据的三维可视化是在计算机上对离散的三维数据进行插值重构,将其转变成为具有直观立体效果的图像。可视化技术能够辅助医生进行手术规划,实现手术的计算机模拟,从而极大的提高医疗诊断的准确性和科学性。体绘制是目前三维可视化中广泛采用的技术,但是由于运算量较大,往往需要专业硬件的支持。为此学者们提出了许多改进方案,其中大多数集中在设计层次的优化。论文从实现层次的优化出发,在比较各类常用的体绘制算法的基础上,着重研究了基于光线投射的体绘制算法。在Visualization Toolkit(VTK)提供的体绘制实现的基础上,通过系统的分析研究,准确定位到导致性能瓶颈的关键代码,充分挖掘现有PC机的性能,从细粒度和粗粒度等多方面进行了细致的优化。优化过程中着重从处理器的体系结构入手,通过对单指令多数据(SIMD)指令、缓存使用等的分析制定相应的优化策略,减少运算量,提高算法的效率。论文分别对光线投射算法中的两处性能瓶颈,光线生成和重采样进行了分析和优化实现。针对前者,利用单指令多数据扩展(SSE)指令集优化其中的浮点运算,并降低分支预测对性能的影响。对于后者,利用SSE2指令集优化三线性插值运算,并利用数据分块减少缓存访问缺失现象导致的性能损失。论文针对不同特性的数据集设计了若干组测试。测试结果表明,在无需升级硬件的情况下,优化之后算法的整体效率提升了30%~50%,使得在普通PC机上也能获得体绘制算法带来的良好可视化效果。