实时图像重建与可视化工作站配置方案2015(2)

时间:2015-01-10   来源:   网友评论:0   人气: 1901 作者:

二.图像重建常规算法与计算架构

2.1 最佳实时图像重建的计算架构

        图像重建最初的数学思想来自上世纪出捷克数学家Radon提出的变换与逆变换,用平直的语言可以简述为,一个在高维空间的物体,如果知道它在低一维空间的投影,那么就能够推算出这个物体在高维空间的内部结构。这里所说的重建是指物体对X-光透射的衰减系数的数字图像表示。

图像重建的算法在数学上可分为代数重建法(ART),迭代重建算法,和解析重建算法。世界上第一台在临床上实用的CT扫描仪是使用代数重建法实现的。迭代算法是用一系列的近似计算以逐渐逼近的方式来获得图像,在图像重建开始以前,假定图像是均匀密度的,图像重建的每一步都是将上一步重建图像的计算投影与实际测量所得的投影进行比较,用实际投影与计算投影之差来修正图像。每一步都使图像更接近原来物体,经若干次修正后可以获得满意的图像。其特点运算工作量极大。今天,无论是工业CT还是医学CT都是以解析算法为主。在以下的讨论中我们仅限于解析算法

ict-pic.png


 早期图像重建的模型和工作是对二维区域进行的,先是对平行投影,继而是对扇形投影,利用探测器得到的投影数据对二维区域做“恢复”,基本原理是将投影数据应用于傅立叶切片原理,再利用傅立叶逆变换。由于傅立叶逆变换的计算复杂性为O(N^2  log⁡N) ,为了提高运算速度,人们采用了反投影滤波方法,使计算复杂降至O(N^2),从量级上而言这是最佳结果了。

反投影滤波法在二维图像重建的成功应用鼓励了科学家将其用于三维的情形。三维图像重建的理论基础是三维空间的Radon变换和逆变换;然而Radon逆变换在三维空间中并没有类似二维空间中的傅立叶切片那样的原理拿来直接应用。感谢数学和医学物理学家们的工作,他们成功地反投影滤波法用于三维空间,发现逆变换可以通过用(加权)的二维探测器数据对扫描轨道的变化关系来表达,解决了理论和应用间的阻隔。

在实际应用中,三维X-光透射有环形和螺旋形扫描两种,后者主要是为解决物体在轴向大尺寸带来的问题,在图像快速甚至实时重建过程中,二者对工作站的要求并不单纯体现在硬件的独立指标上,而是在硬件之间的协调配合与参数优化上。在工业CT应用中,以环形扫描为主;而最新趋势的医学图像重建设备无疑是以螺旋扫描为主,其中的考虑因素包括人体轴向尺寸和射线剂量。

重建计算的复杂性取决于投影探测器的分辨率M×M、体素的分辨率N×N×N,以及放射源沿轨迹的分辨率Λ。如果 max(Λ,〖 M〗^2)<N^3 的话,无论何种算法所能做到的最佳情形是O(N^3)。

在解决了图像重建的理论和算法模型之后,人们面临的问题是如何实现高速,甚至实时的重建系统。下面我们将讨论图形重建对工作站硬件配置的要求。

 

2.2 实时图像重建的硬件配置特点

2.2.1 实时图像重建的最佳计算架构---CPU+GPU混合计算模式

今天,几乎所有的开发商在图像重建的软件开发上无不最大限度地利用现有的硬件特点,最大程度地实现并行化计算。由于并行计算对算法的依赖性,实现高效快速的图像重建在硬件上不能简单地理解为追求高配置;硬件的配置是基于软件算法基础之上的,要兼顾到软件的设计架构是断层重建为主导还是投影平面的计算为主导,在当前以锥形束扫描(CBCT)反投影滤波(FBP)算法为市场主导的现实下尤为重要。
目前计算机发展状况是,基于X86架构的图形工作站硬件,CPU核数数量有限(最大道60个),GPU流处理器提供2000~20000个,CPU其强大的浮点计算处理能力,使得实时图像重建数据处理的不二之选,如果采用CPU+GPU混合模式,利用CPU对复杂逻辑以及大数据量操作运算能力,和GPU对相对简单而“独立”的数据进行浮点并行计算惊人的速度,实时图像重建进入商用成为可能

cpu-gpu-frame.jpg 
 
 
上述问题从探测器所在的透射平面到重建平面的投影变换并可以通过GPU的并行计算实现,如此一来计算复杂性降至O(N^3),要做到实时重建,当然,所有这些软件都是在一般的指导原则下开发的,并不针对某一具体CPUs+GPUs组合,这就为客户在选定应用软件的前提下如何选择图像工作站提出了难题
 

2.2.2 图像重建工作站硬件配置特点
GPU计算卡 通常实时图像重建软件都是基于GPU架构开发的,开发工具通用性强的Open CL,所以才用Nvidia和ATI架构为主高端显卡,以VGStudio MAX为例:推荐型号Nvidia Q6000、GTX680,ATI Radeon HD7970以上,另外涉及到迭代算法,每个GPU计算卡的接口带宽一定保证最大化

CPU: 图像数据生成过程中大量数据转换和压缩和部分算法的多核计算出来,所以图像重建优化很好的应用,需要更多cpu核数和更高频率

内存:容量计算大致依据 基于体素(X*Y*Z)和投影分辨率(x*y)以及投影数量
内存计算公式:size of memory=(volume size*4)+(projetions size* number of projections*4)
例如:
Volume  1024*1024*1024
Size of one projection:1024*1024
Number of projections:720
Size of memory =(1024*1024*1024*4)+(1024*1024*720*4)=7,314,866,176=7.315GB

2.3 图像数据可视化与分析硬件配置特点
以著名的VGStudio /VGStudioMax软件为例,应用软件要求,

内存:创建和装入完整项目需要足够大的内存,保证可视化和分析,通常是最大数据集的2倍以上,
例如1:  1024*1024分辨率的切片1024个,其可视化需要 1024^3=2GB , 由此推断
可视化需要的内容容量2*2GB=4GB
专业数据分析: 8~16GB

例如2:  2048*2048分辨率的切片2048个,其可视化需要 2048^3=16GB , 由此推断
可视化需要的内容容量2*16GB=4GB
专业数据分析: 64~96GB

CPU 切片的装入过程的解压缩、可视化的几何计算、数据分析的图像处理中几个计算,推荐使用频率尽最大可能高的多核处理器,

图卡  承担复杂三维图像数据结构实时可视化和分析,对图像高精度和实时要求,高端CUDA架构为主的显卡

虚拟内存和硬盘  涉及到实时数据显示要求,图像数据读写用SATA的io带宽是不够的,推荐SSD


 

相关文章

文章评论