[发明专利]一种基于CUDA架构加速CT图像重建的方法有效
申请号: | 201310277674.1 | 申请日: | 2013-07-03 |
公开(公告)号: | CN103310484B | 公开(公告)日: | 2017-04-12 |
发明(设计)人: | 朱守平;宋亚鹏;屈晓超;陈多芳;冉超;黄力宇;田捷;梁继民 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06T17/00 | 分类号: | G06T17/00;G06T1/20 |
代理公司: | 北京科亿知识产权代理事务所(普通合伙)11350 | 代理人: | 汤东凤 |
地址: | 710071 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 cuda 架构 加速 ct 图像 重建 方法 | ||
技术领域
本发明涉及医学领域与电子技术领域的交叉,具体涉及X射线CT技术领域中的基于CUDA架构加速CT图像重建的方法。
背景技术
CT(Computed Tomography)重建尤其是三维重建,计算量大、耗时高,计算复杂度与被重建体数据量、投影视图个数的乘积成正比,比如从360个投影视图重建512张512×512大小的图像(即5123volume)的计算复杂度为360×5123。如何提高重建速度受到越来越多的人重视,在2011年召开的第十一届Fully3D(The11th International Meeting on Fully Three-Dimensional Image Reconstruction)会议论文集里有约1/4的文章涉及到三维加速重建,在其他杂志上涉及CT重建加速的文章近年来也很多。
GPU的单指令多数据流(Single Instruction Multiple Data,缩写为SIMD)处理模式为可并行地对大规模数据进行同样的操作。由于计算机游戏和工程设计的巨大市场驱动,GPU的发展速度大大超过了CPU的发展速度,图形流水线的高速度和高带宽极大地提高了图形处理能力,近年来发展起来的可编程功能为图形处理之外的通用计算提供了高性价比的运行平台,使得基于GPU的通用计算成为近年来的研究热点之一。
FDK重建算法于1984年由Fedlkamp等人首先提出,对CT近似重建有着重大意义,目前广泛应用于锥形束投影重建,而且各个角度的反投影无数据交换,具有高度的并行性,因此特别适于GPU这种单指令多数据(SIMD)的流式计算架构。
最早的GPGPU(General Purpose GPU,即通用计算图形处理器)开发直接使用了图形学API编程。这种开发方式要求编程人员将数据打包成纹理,将计算任务映射为对纹理的渲染过程,用汇编或者高级着色器语言(如GLSL、Cg、HLSL)编写shader程序,然后通过图形学API(Direct3D、OpenGL)执行。这种“曲线救国”的方式不仅要求熟悉需要实现的计算和并行算法,还要对图形学硬件和编程接口有深入的了解。由于开发难度大,传统GPGPU没有被广泛应用。
CUDA(Compute Unified Device Architecture,统一计算设备架构)的GPU采用了统一处理架构,可以更加有效地利用过去分布在顶点渲染器和像素渲染器的计算资源;而且引入了片内共享存储器,支持随机写入(scatter)和线程间通信。
发明内容
鉴于现有技术的不足,本发明旨在于提供一种快速的CT图像重建的异步并行处理方法,针对目前锥形束重建时数据输入、数据加权、数据滤波及反投影串行执行的瓶颈问题,提出了基于CUDA架构中GPU异步并行处理的重建方法,从而提高重建速度。
本发明的技术方案具体是:通过使用两个或者两个以上的流,使应用程序实现任务级的并行化,进一步地说,即GPU在执行核函数的同时,还能在主机与设备之间执行复制操作。
为了实现上述目的,本发明采用的技术方案如下:
一种基于CUDA架构加速CT图像重建的方法,包括数据输入模块,基于GPU的CT数据加权滤波模块,基于GPU的CT图像重建反投影模块,以及数据输出模块,其特征在于,所述方法包括以下步骤:
(1)从扫描的X射线强度数据获得投影数据,经过预处理后,由CPU读入到内存中;
(2)应用程序实现任务级的并行化,通过使用两个或两个以上的流,使GPU在执行核函数的同时,能在主机与设备之间执行复制操作。
需要说明的是,所述CT数据加权滤波模块在GPU中执行,为每个待加权滤波元素分配至GPU中的单独线程来执行,其中,所述线程分配过程如下:
根据GPU的特性设置每个线程块的尺寸;
根据补零后投影数据的水平长度和垂直长度设置所述线程块的个数;
按照所述线程块设置执行内核程序。
需要说明的是,所述CT图像重建反投影模块在GPU中执行,为每个待重建像素分配至GPU中的单独线程来执行,重建所需滤波后的数据存储在GPU的纹理内存中,其中线程分配过程如下:
根据GPU的特性设置每个线程块的尺寸;
根据待重建图像的尺寸设置所述线程块的个数;
按照所述线程块设置执行内核程序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310277674.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电量采集数据合并系统
- 下一篇:一种粒子发射方法和装置