[发明专利]一种基于CUDA的PET系统矩阵计算方法在审
申请号: | 202010736756.8 | 申请日: | 2020-07-28 |
公开(公告)号: | CN111881412A | 公开(公告)日: | 2020-11-03 |
发明(设计)人: | 吕港;姚敏;赵敏;甄大伟;郭瑞鹏;刘巍 | 申请(专利权)人: | 南京航空航天大学 |
主分类号: | G06F17/16 | 分类号: | G06F17/16;G06T11/00;A61B6/00;A61B6/03;G01T1/29 |
代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 施昊 |
地址: | 210016 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 cuda pet 系统 矩阵 计算方法 | ||
本发明公开了一种基于CUDA的PET系统矩阵计算方法。首先,对探测器系统按固定角度进行划分,得到划分后各子集的响应线方程;然后,在CUDA中给每个角度分配grid,每个角度下的每条子响应线分配block,将重建图像的像素坐标数据传至每个block的共享内存,block中的thread快速并行计算各像素的概率权值;各grid依次串行执行,同一个grid中不同block快速并行执行;最后,将概率权值在角度内拼接得到系统矩阵子集,再将系统矩阵子集拼接得到系统矩阵。本发明在保证系统矩阵元素准确的前提下,提高了创建效率,解决了系统矩阵建立速度慢以及GPU显存资源有限而系统矩阵数据量大所导致的难题。
技术领域
本发明属于射线检测成像领域,特别涉及了一种PET系统矩阵计算方法。
背景技术
正电子发射型计算机断层显像(Posintron Emission Tomography,PET)是临床上应用广泛的一种无创核医学影像诊断技术,它通过对注入活体的放射性示踪剂成像,从而提供活体的新陈代谢等功能信息。目前PET主要应用于医学诊断领域,在工业领域研究较少。而γ光子具有强穿透性和电中性,受材料、结构以及电磁场等因素影响较小,因而将PET技术应用于工业无损检测领域具有重要意义。PET系统的主要工作过程:
(1)探测器得到符合数据:探测器接收湮灭释放的光子对,并判断光子对是否属于同一湮灭事件,从而获得大量符合数据;
(2)数据重组:将符合数据转换成由距离和角度组成的正弦图;
(3)图像重建:根据正弦图和重建算法从而得到切片图。
图像重建过程中,有公式Y=A*I,其中Y为向量化的投影(向量化的正弦图),I为向量化的切片图,A为需要计算的系统矩阵,也可以称为概率矩阵,其在重建图像中属于一个已知量或是一个固定参数。系统矩阵描述了探测器对被检测对象的探测过程,将所有的图像像素和响应线(LOR)连接起来,是迭代图像重建的关键,是正弦图数据通向切片图数据的纽带。虽然系统矩阵在图像重建过程极其重要,但是运算量大导致其生成速度很慢,难以满足工业检测速度快的要求。系统矩阵的大小与PET探测器数量和重建切片图大小有关,由于数据量大,其生成速度一直是一个难点,单纯的在CPU上进行改进很难保证速度有大幅度提升。随着GPU的发展,出现了很多运用GPU对计算密集型任务加速的算法。
2006年,NVIDIA公司发布了CUDA(Compute Unified Devices Architecture,统一计算设备架构)体系架构,该构架是一种新的并行编程模型和指令集的通用计算构架,它是基于高速图像处理单元GPU的,在GPU上高速并发执行,极大的提高了程序算法的运行速度,该体系构架为GPU编程提供了一种全新的软硬件构架。在CUDA架构下GPU中程序执行的最小单元是thread(线程),一个block(线程块)中包含数个thread,同一个block中的thread可进行快速同步,同时还可通过共享内存(share memory)进行数据交换,不同block中的thread之间无法直接进行同步与数据交换。同一个block中thread开辟数量上受限较大,当加速程序需要的thread数量较大时,通常会将block中开辟的thread个数固定,而开辟多个block,多个block的集合称为grid(网格),不同的thread使用thread ID以及block ID加以区分。利用NVIDIA GPU的并行计算引擎,线程、线程块和网格可以比CPU更高效地解决比较复杂的计算难题。
CUDA编程模型是一个异构模型,需要CPU和GPU协同工作。在异构计算架构中,GPU与CPU通过PCIe总线连接在一起来协同工作,CPU及其内存所在位置称为主机端(host),而GPU及其内存所在位置称为设备端(device)。CUDA程序中既包含Host程序,又包含Device程序,它们分别在CPU和GPU上运行,CPU负责对逻辑性事务进行处理,以及对串行化运算的控制,而GPU重点处理数据密集型的并行计算程序。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京航空航天大学,未经南京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010736756.8/2.html,转载请声明来源钻瓜专利网。