美章网 资料文库 医学图像体绘制技术的建议范文

医学图像体绘制技术的建议范文

本站小编为你精心准备了医学图像体绘制技术的建议参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

医学图像体绘制技术的建议

1基于GPU的光线投射体绘制

基于GPU光线投射体绘制技术最早出现在Kruger等提出的多过程光线投射算法中,它基于Di-rect3D的PixelShader2.0模型,使用顶点着色程序来计算投射光线参数、利用深度测试与阻塞询问等来模拟循环实现光线积分。Scharsach对其进行了改进,利用GPU的片元着色程序实现循环以执行光线积分,Stegmaier等首先实现了GPU编程的单过程光线投射算法,提出了通过绘制体数据的包围盒表面和编写片元着色程序获取投射光线参数来实现GPU光线投射算法,但是该算法需要绘制6个面,并且使用了动态分支,较为复杂。储憬骏等对文献[7]算法进行了改进,提出一种只绘制一个面获取光线起始点的方法,不但通过计算出光线的离开点来避免动态分支,从而提高了绘制性能;并借助于GPU灵活的可编程管线,实现了半透明等多种绘制效果。但该方法在着色效果及交互功能方面存在不足。文献在基于GPU加速的光线投射算法的基础上,通过判断体绘制数据与切割面在世界坐标系中的位置关系,直接跳过被切割掉的数据场部分,只对其有效部分进行绘制。当修改或者重新进行切割操作时,不必进行数据的恢复、三维对象和切面纹理的构建等操作,从而大大提高了绘制系统的交互与实时性能。张冶等利用Cg语言编写顶点着色程序和片元着色程序来实现GPU光线投射算法,创造了更丰富的绘制效果,其编程难度虽然有所减小,但依然比较繁琐。文献]将传统的光线投射体绘制算法耗时的三线性插值和采样过程放在GPU上进行,利用着色程序的编写将光线进入点、离开点的计算以及图像的合成运算移入GPU中,最后通过调整传递函数来实现不同的绘制效果,通过使用渲染纹理技术,将绘制的中间结果保存到纹理,并以此来避免使用着色器的动态分支功能,与传统的光线投射算法相比,该算法可快速绘制出质量较高的图像。

另外,宋涛等提出八叉树编码体数据快速体绘制算法,Kraus等提出一种自适应采样的算法加速基于GPU的光线投射体绘制等,但这些算法都存在增大体数据容量或需要较长的处理时间等缺点。文献提出一种利用离屏渲染技术,仅通过绘制体数据包围盒表面就能获取投射光线参数的GPU光线投射算法,该算法与层次包围盒技术结合,对体数据进行空间细分,不改变体数据的存储结构,仅增加较小的存储容量,跳过对最终图像无贡献的空体素以减少投射光线的有效采样长度,加快了绘制速度。为了同时保证绘制速度和图像质量,提出了一种基于GPU加速的光线投射算法,该算法利用图形硬件自带的三线性插值功能来完成光线投射算法中耗时的采样、插值过程,在采样过程中进行空间跳跃,且增加存储容量较小,算法不仅保证了高质量的图像绘制效果,绘制速度也提高了95倍左右,可以实现海量体数据基于GPU的实时高质量的绘制,是目前为止在速度和图像质量两方面都达到较为完善的GPU光线投射体绘制方法。

1.1光线跟踪的GPU加速的医学图像体绘制

目前,光线跟踪方法是真实感图形生成的重要方法,体绘制中的光线跟踪与光线投射类似,都是沿光线的路径进行色彩的积累,光线从视点出发,通过屏幕中的每个像素向场景中发出一条光线,若光线与场景中物体相交,则按照光照模型计算光线对该交点的贡献值,根据物体表面交点处的属性是否终止追踪光线还是产生次级光线(例如反射、折射、阴影光线等)继续递归跟踪绘制,若场景中存在体数据,则一般只跟踪初级光线,沿光线积分计算采样点的颜色和不透明度值,再按照一定的图像合成算法绘制最终图像。由于体数据量非常大,光线与体数据的求交运算往往十分庞大,采样点求交需大量使用三维线性插值计算,这严重影响了光线跟踪绘制的实时性。因此,光线跟踪方法存在绘制速度慢、实时交互性差的缺点。但光线跟踪在直接光照和间接光照效果中都具有优势,它是现阶段绘制效果最具真实性的算法之一。

1.2基于影响因子的GPU医学图像体绘制技术

在三维体绘制中,经常会出现这样的情况,即部分医生感兴趣的器官或组织的结构被其前方的器官或组织遮挡,导致无法达到理想的绘制效果,如图1。为了减少或消除非兴趣区器官或组织对兴趣区器官或组织的遮挡,科研人员提出了一些有效的方法来进行体数据切割,即通过复杂的计算构建新的几何体来表示切割后的3D对象。这些方法虽然简单易行,但存在以下缺点:很难找到一个合适的切割平面,若切割平面穿过感兴趣器官,则会切除部分感兴趣器官,如果切割平面刚好位于感兴趣器官前方,则部分感兴趣器官将被其他器官组织遮挡,为了消除体切割算法的这种缺点,IvanViola等人提出了一种基于影响因子的特征增强可视化体绘制算法。

基于影响因子的体绘制算法主要表现在构造传递函数时,除为体数据分配不同的光学特征外,还为其引入了一个新的特征值,即影响因子。对重要组织、感兴趣器官部分的体数据赋予大的影响因子,相反则为其赋予小的影响因子,通过对体数据影响因子的调节来达到增强重要组织、感兴趣器官抑制次重要组织、非感兴趣器官的的效果。与传统的体绘制流水线相比,IvanViola的方法增加了影响因子合成的过程,这将会增加计算的复杂度,实现起来比较复杂。文献出一种感兴趣区体绘制方法,把影响因子用到感兴趣的组织器官的绘制当中,通过构造基于光照球索引的传递函数,实现感兴趣组织的风格化显示,并可以交互设定感兴趣区域,用灰度和梯度信息生成重要因子来调节体素不透明度,强调感兴趣区域器官。该方法不仅可以在一定程度上消除绘制中非兴趣组织、器官的遮挡,而且通过对由光照小球映射而来的纹理索引进行风格化绘制,增强对重要器官的表现能力,唯一不足的是在绘制速度上比较费时。

2体绘制研究面临的问题

当前基于GPU的医学影像三维可视化体绘制技术大都主要用来解决依赖于大量计算算法的速度慢以及绘制的图像效果差等问题,所面临的共有特点就是,一方面体数据量巨大,另一方面算法本身需要大量的计算时间。当前GPU体绘制技术在如下几个方面仍然存在不足。

2.1基于GPU的多算法整合技术研究不足目前在GPU上实现的体绘制算法都还只是对单个算法的移植实现或改进,研究基于多GPU的并行处理,对多个经典算法进行整合,达到1+1>2的效果,同时可以考虑设计更加先进的GPGPU技术(类似CUDA、OpenCL等),可以充分发挥多GPU以及CPU与GPU混合并行运算优势,考虑更加复杂的负载平衡,更快的加速性能,能做到真正的视觉计算,能准确地将计算机的CUDA与OpenGL可视化进行融合等相关技术的研究不足。

2.2有待研究稳定的、可靠的、可扩展的GPU并行运算与可视化交互平台架构及引擎技术在实现体绘制方案里,一个稳定的、可靠的、可扩展的基于GPU的并行运算与可视化交互平台架构技术,或结合3D游戏可视化引擎的思想与虚拟现实的交互显示技术于一体的医学图像可视化引擎平台目前还是空白。可视化引擎研究上,一方面应该从如何设计“数据容器”,转型为设计能承载大量医学图像渲染器的“功能容器”,系统能够容纳成千上百个独立的图像渲染器,以实现对影像各种各样的数据进行高速还原度的显示,并且能对新型数据和其渲染器提供扩展接口。另一方面,未来的图像可视化引擎研究上应该更接近于虚拟现实系统,通过对各个独立渲染器和特定数据格式以及相应逻辑的研究和开发工作,可视化引擎系统可为医疗诊治提供与现实近似的体验观察,这种体验相比于传统的影像图,更接近于真实,大大提高医疗判断的真实和精确度。

3GPU通用加速绘制平台设计方案

本文研究并提出一种基于GPU通用加速绘制平台的设计方案,它提供了一种交互式的GPU加速绘制环境,可以让用户快速地进行系统可视化设计,方案整体主要包含下列模块:“源算法模块”、“过滤器算法模块”、“目的算法模块”、“GPU加速模块”、“呈现界面模块”、“原型界面模块”、“模块属性模块”、“输入输出模块”,方案系统架构图如下。其中各个模块在整体方案设计中的功能和作用:

(1)输入输出模块:负责加载和保存用户已经建立的模块连接原型,并保存用户对模块设置的连接属性,把已经连接好的各算法模块以可视化的形式加载到原型界面模块,用户可以通过此模块打开原来以前保存过的模块连接原型或保存正在编辑的模块连接原型。

(2)源算法模块库:此模块库保存源算法模块,分为三大类,第一类为图像数据流模块类,为过滤器模块提供图像数据流,包括文件数据源和用户生成数据源,第二类为文本数据流模块类,为中间过滤器提供文本、标签之类的数据。第三大类为几何数据模块类,在可视化平台中,经常为体数据提供几何范围,这个模块就是生成相应的点、线、圆、锥、立方体等空间几何体。第四大类为体数据模块类、DICOM数据等

(3)过滤器算法模块库:此模块库保存一系列的过滤器算法模块,第一类为几何数据处理过滤器,对几何数据进行各种加工,例如进行标注面积、周长、体积等等,第二类图像数据处理过滤器,主要对图像进行各种操作,例如模糊、锐化、分割等。第三类体投射处理过滤器,主要是对体数据进行如镜像、切割、求梯度等操作。

(4)目的算法模块库:此模块库保存目的算法模块,第一类为光线投射绘制器,主要功能是把过滤器过滤的中间数据以投射的方式进行体绘制,第二类为面绘制,主要功能是把过滤器过滤的中间数据以面绘制的方式进行绘制。第三类为OpenGL绘制,直接以OpenGL在空间进行绘制图像,产生三维立体影像。

(5)原型界面:在此界面内用户可以把算法模块库中的模块拖入到原型界面进行组合连接,并且对模块进行编辑操作,包括剪切、复制、粘贴等操作。

(6)GPU加速模块库:GPU加速模块把原型界面的数据连接进行实例化,底层的加速硬件进行交互,把各算法模块库的算法进行硬件加速,然后将计算出来的数据结果发送的呈现界面。

(7)模块属性:在模块内用户可以对模块的各属性进行设置,例如如果是源模块,则编辑源模块的数据文件路径,高斯过滤器模块中的高斯半径等,且模块属性中的属性是立刻生效的,即只要编辑属性后,会对渲染结果立刻产生影响。

(8)呈现界面:此模块主要是对原型界面的模块连接进行呈现,等用户按下运行按钮后,系统立刻对原型界面的数据进行检查,并从源模块加载数据,输入到过滤器中进行处理,把中间结果输入到目的模块进行处理,处理的结果将出现在呈现界面中。

4结语

本文分析并介绍了当前基于GPU硬件加速的三维医学图像可视化体绘制技术的研究现状,提出了基于GPU引擎框架可视化技术的思想,同时研究并实现一种基于GPU通用加速绘制平台的设计方案,平台方案采取面向对象思想设计,各个模块协同工作,可以有效的集成多种绘制算法,依据可视化体绘制的实际情况,用户可以自由增减算法以及定制算法,充分利用各个不同算法的优势,并可以很好地满足的可视化的交互性需要,从而获得较好的三维医学图像可视化效果。在将来,还需要进一步扩大平台的操作能力,使可视化的效果更接近真实内容。可以考虑采取一套专用处理器,通过着色器程序完全配置,这样可以在可视化当中随时修改运行情况,这将作为我们下一步的研究工作。

作者:曾文权何拥军余爱民林敏单位:广东科学技术职业学院计算机工程技术学院珠海市司迈科技有限公司