论文部分内容阅读
血管造影图像增强是把图像中血管结构增强出来同时压制背景和非血管结构,并使增强结果尽可能地接近血管真实结构。血管造影图像的处理是医学图像处理和分析领域研究的重要内容之一。造影图像在临床疾病诊断和基于图像引导的计算机辅助手术治疗等领域中都具有重要的作用。利用血管造影技术进行各种针对心脑血管疾病诊断和介入治疗成为目前越来越广泛应用的技术。由于存在造影剂分布不均、衰减以及X射线曝光不均等复杂情况,由相关设备直接获取的造影图像经常不能清晰地显示血管树的局部和全局结构,从而影响了诊断的准确性。为了提高诊断的水平,研究如何从造影图像中将血管结构突出显示出来非常必要,同时血管增强也是血管中心线提取、血管分割、测量和三维可视化的重要前提。因此,血管造影图像的增强一直是医学图像处理和分析的热点研究问题。近几十年来,虽然针对血管造影图像增强领域的相关算法研究种类繁多,但是依然无法完全满足实际需求。其原因相当复杂,比如对背景噪声比较敏感,高斯滤波的引入导致边界萎缩,参数的非自适应性,细小血管增强效果较差,分叉点和节点较难识别,运算速度慢,增强后血管表面粗糙等。这些原因造成了不可能实现一种完美、通用的增强方法。只能针对特定问题和具体的需求给予合理选择,在精度、速度和鲁棒性等关键性指标上做出均衡或侧重。目前,用于血管造影图像增强的最经典的和最新的方法主要有:(1)基于Hcssian矩阵的方法,比如Frangi的方法、Sato (?)的方法、Lorenz (?)的方法等;(2)基于扩散方程的方法,包括正则化P-M的方法、边界增强扩散的方法、相干增强扩散的方法等;(3)基于应变能的方法;(4)基于极坐标下强度剖面的方法。血管增强扩散算法将基于Hessian矩阵的Frangi滤波器和非线性各向异性扩散方程相结合,同时对Frangi血管测量函数进行改造,添加平滑约束项,以便函数具有连续性,能直接用于构造扩散张量。将血管增强算法与其他几类算法进行了二组的实验比较与分析,分别在最大密度投影和体绘制下可视化显示。实验表明血管增强扩散算法能很好的增强血管结构,同时保留了血管边缘信息,对细小血管也能很好的增强出来,血管结构光滑清晰,改善了可视化显示效果。在实际中,由于医学血管图数量大(多为三维),灰度级丰富(16bit),在利用多尺度的方法求解血管函数最大响应和计算非线性各向异性扩散的偏微分方程时,运算量极大,计算时间往往在数小时以上,严重影响了该算法的临床应用。可采取适当减少选择的尺度和迭代次数,但这不仅会影响算法的精确性,同时计算时间提升有限。计算统一设备架构(Compute Unified Device Architecture, CUDA)技术的诞生开创性的改革了GPU的编程及存储模式,使GPU通用计算(GPGPU)从图形硬件流水线和高级绘制语言中解放出来,开发人员无须掌握图形学编程方法即可在单任务多数据模式(SIMD)下完成高性能并行计算。这一GPGPU计算架构中,提供了类似C语言的开发环境,允许设计人员使用C语言和CUDA扩展库的形式编写程序,从而直接利用GPU资源进行计算,降低了开发的复杂度,提高了开发效率。在研究了CUDA的设计思想和编程方式的基础上,利用像素的独立性和偏微分方程求解的并发性并结合CUDA技术实现了血管增强扩散算法的并行化,并结合CUDA全局存储器访问,线程块大小及共享存储器分配对计算性能的影响,在实现时进行了优化,相对于传统的CPU串行算法,在保证增强效果的同时,图像数据处理速度有了明显的提升,提高了运算效率。