首页> 中国专利> 一种PET中基于FPGA的能量修正系统及修正方法

一种PET中基于FPGA的能量修正系统及修正方法

摘要

本发明公开了一种PET中基于FPGA的能量修正系统,位于PET探测器的FPGA模块内,包括探测器模块、时间测量电路、能量测量电路、位置测量电路、离线能量拟合和修正模型、在线能量修正模块。本发明对SiPM非线性模型进行优化,将拟合参数减少为2个,减小能量修正复杂度;在LYSO和SiPM 1:1耦合的探测器系统,通过泰勒近似等数学方法,建立多探测器单元击中事件的能量修正的物理模型,提高能量修正精度;基于FPGA器件,建立一个可行的能量修正算法,并分析运算速度和资源消耗量。

著录项

  • 公开/公告号CN113835112A

    专利类型发明专利

  • 公开/公告日2021-12-24

    原文格式PDF

  • 申请/专利权人 明峰医疗系统股份有限公司;

    申请/专利号CN202111114141.2

  • 发明设计人 马聪;吴国城;赵晓坤;

    申请日2021-09-23

  • 分类号G01T1/29(20060101);

  • 代理机构33220 绍兴市越兴专利事务所(普通合伙);

  • 代理人王志杰

  • 地址 310000 浙江省杭州市经济技术开发区益丰路129号5幢1-2层

  • 入库时间 2023-06-19 13:49:36

说明书

技术领域

本发明涉及医学影像设备技术领域,更具体涉及一种PET中基于FPGA的能量修正系统及修正方法。

背景技术

当前,基于LYSO晶体和SiPM(Silicon photomultiplier)的飞行时间(Time ofFlight,TOF)PET(positron emission tomography)探测器是癌症早期检测最主要的设备之一。其原理是利用SiPM将晶体模块捕获的高能伽马(Gamma)光子转化成的低能可见光信号通过光电效应转化为模拟电信号,并利用模拟调理电路将模拟电信号进行放大成形,再利用能量测量装置和时间测量装置得到该模拟电信号的能量和达到时间,进而通过符合判选等方法得到有效数据,通过后端重建系统,得到核素反应位置,进而重建出癌症图像。由于PET探测器中SiPM探测器单元众多,每个探测器单元的增益、非线性等性能均不相同,如果不进行能量修正,那么最终的能谱会由于多个探测器单元能谱的叠加造成分辨率降低。因此,一般的设备都需要对每个探测器单元的能谱进行修正。为了提高时间分辨率,很多系统采用LYSO晶体与SiPM探测器单元1:1耦合读出方式,但是为了减少电子学读出通道成本开销,往往采用多路复用电路,即多个SiPM探测器单元分享同一个读出电路。现有技术中通常用单个放射源,对各个像素点能量峰值进行简单对齐,缺乏对非线性的修正;对于LYSO和SiPM 1:1耦合的探测器系统,利用多个放射源,对各个像素点能量值进行非线性修正,但是对于多探测器单元击中事件,无法处理非线性带来的能量修正误差。

发明内容

针对现有技术的不足,本发明提供了一种PET中基于FPGA的能量修正系统及修正方法,减小能量修正简能量修正复杂度,建立多探测器单元击中事件的能量修正的物理模型,提高能量修正精度。

为实现上述目的,本发明提供了如下技术方案:一种PET中基于FPGA的能量修正系统,位于PET探测器的FPGA模块内,包括探测器模块、时间测量电路、能量测量电路、位置测量电路、离线能量拟合和修正模型、在线能量修正模块;

所述探测器模块由LYSO晶体和SiPM探测器单元阵列通过1:1耦合方式组成,LYSO晶体负责将外部放射源发射的伽马射线转换为可见光,而SiPM探测器单元将该可见光转换为电信号,通过测量该电信号的到达时间和携带的能量,以及受激发SiPM探测器单元的位置,来反推入射伽马射线的种类和入射方向;

所述位置测量电路是将SiPM探测器阵列通过电阻网络行列分别相加,将位置读出电路通道数从n

所述时间测量电路是将SiPM探测器阵列信号加和,然后通过高速比较器和模数变换器测量得到探测器阵列接收到的信号的到达时间;

所述能量测量电路是将SiPM探测器阵列信号加和,然后通过中高速模数变换器将模拟信号转换为数字化信号,然后在FPGA中对数字化信号积分得到表征模拟信号能量的ADC道数;

所述离线能量拟合和修正模型利用所述位置测量电路和能量测量电路,对每一个激发的探测器单元的非线性和增益进行归一化修正,利用外部多个已知能量的放射源,对所述能量测量电路输出的ADC道数和能量进行拟合,计算拟合参数,并将参数存放于FPGA内部存储器之中,用来进行在线能量修正;

所述在线能量修正模块是根据上述拟合得到的参数,以及能量修正公式,设计FPGA代码完成在线能量修正。

一种PET中基于FPGA的能量修正方法,利用位置测量电路和能量测量电路将外部放射源发射的伽马射线进行位置计算和能量计算,对每一个激发的探测器单元的非线性和增益进行归一化修正,利用外部多个已知能量的放射源,对所述能量测量电路输出的ADC道数k和能量进行拟合,计算拟合参数n、b,并将参数存放于FPGA内部存储器之中,利用公式进行在线能量修正,对于单击中事件能量修正公式为E=n·[log(n)-log(n-b·k)],双击中事件能量修正公式为

(1)对于单击中事件,内部由多个microcell组成,每一个microcell测量一个单光子,实际输入光子数的数目和测到的受激发microcell个数有以下关系

其中p是应该收集到的光子数数目,N是SiPM探测器单元microcell的个数,B·k是实际测到的光子数数目,ε是单个光子的能量值;

(2)为了减小拟合参数数目,将上述公式进行如下变换,

E(keV)=ε·N·[log(ε·N)-log(ε·N-ε·b·k)]

=n·[log(n)-log(n-b·k)] (2)。

对于双击中事件由于能量测量电路只能得到两个SiPM探测器单元输出信号叠加后的能量值k(k

1)根据公式(2),两个SiPM探测器单元能量测量电路测得的ADC道数分别为,

对式(3)中的指数部分进行一阶泰勒展开,以简化公式,考虑到一般情况下

(3)对exp(-x)采用函数进行近似,近似函数为,

SiPM探测器单元microcell数目比较接近,并且发生多单元散射时能量基本平分,故作如下近似,

(4)联立以上公式(3)-(6),可以得到两个SiPM探测器单元击中情况下的能量E的修正公式,

根据公式(7),就可以利用修正参数和采集到的ADC道值数k,近似反推两个SiPM探测器单元击中情况下的伽马粒子的能量。

上述步骤(3)中,为了减小为了减小误差,考查以下四个函数,

y

根据这四个函数在(0,1)范围内的图像可知,y3和y4具有更接近exp(-x)的特性,也就是计算误差更小,为了在FPGA中简化运算,节省资源,采用y3函数进行近似。

综上所述,本发明具有以下有益效果:

对SiPM非线性模型进行优化,将拟合参数减少为2个,减小能量修正复杂度;

在LYSO和SiPM 1:1耦合的探测器系统,通过泰勒近似等数学方法,建立多探测器单元击中事件的能量修正的物理模型,提高能量修正精度;

基于FPGA器件,建立一个可行的能量修正算法,并分析运算速度和资源消耗量。

附图说明

图1为本发明系统整体框图;

图2不同函数近似描述exp(-x)函数的误差计算结果;

图3在线修正过程流程图;

图4单击中事件计算过程的FPGA实现;

图5双击中事件计算过程的FPGA实现;

图6为本发明实施例修正前的能谱;

图7为本发明实施例修正后的能谱。

具体实施方式

参照图1至图7对本发明一种PET中基于FPGA的能量修正系统及修正方法的具体实施方式作进一步的说明。

本发明的基于FPGA的能量修正主要分为以下部分:探测器模块、前端复用电路、时间测量电路、能量测量电路、位置测量电路、离线能量拟合和修正模型、在线能量修正模块部分等,其整体框图如图1所示。

(1)所述探测器模块由LYSO晶体和SiPM探测器单元阵列(阵列大小n×n)通过1:1耦合方式组成,LYSO晶体负责将外部放射源发射的伽马射线转换为可见光,而SiPM探测器单元将该可见光转换为电信号,通过测量该电信号的到达时间和携带的能量,以及受激发SiPM探测器单元的位置,来反推入射伽马射线的种类和入射方向;

(2)所述前端复用电路是为了减小读出电子学复杂度,包括位置测量电路、时间测量电路和能量测量电路;

(2.1)所述位置测量电路是将SiPM探测器阵列通过电阻网络行列分别相加,将位置读出电路通道数从n

(2.2)所述时间测量电路是将SiPM探测器阵列信号加和,然后通过高速比较器和模数变换器测量得到探测器阵列接收到的信号的到达时间;

(2.3)所述能量测量电路是将SiPM探测器阵列信号加和,然后通过中高速模数变换器(Analog-digital Converter,ADC)将模拟信号转换为数字化信号,然后在FPGA中对数字化信号积分得到表征模拟信号能量的ADC道数。

(3)所述离线能量拟合和修正模型部分利用所述位置测量电路和能量测量电路,对每一个激发的探测器单元的非线性和增益进行归一化修正,一般来讲,利用外部多个已知能量的放射源(大于等于2个),对所述能量测量电路输出的ADC道数和能量进行拟合,计算拟合参数,并将参数存放于FPGA内部存储器之中,用来进行在线能量修正,具体的步骤分为:

(3.1)对于单个SiPM探测器单元被击中的情况(单击中事件),内部由多个microcell组成,每一个microcell测量一个单光子,实际输入光子数的数目和测到的受激发microcell个数有以下关系:

E(keV)=p·ε

其中p是应该收集到的光子数数目(修正后理想线性情况时的光子数数目),N是SiPM探测器单元microcell的个数,k是能量测量电路测得的ADC道数,E(keV)是修正后的能量,单位是keV,B·k是实际测到的光子数数目,ε是单个光子的能量值。

可见,为了得到修正后的能量E(keV),需要利用不同放射源得到所测的不同k值对方程(1)进行拟合,得到参数(ε,N,B),然后将带入方程(1)中,对任意k值进行修正,其中,拟合部分在计算机上离线处理,修正计算部分在FPGA中在线实时处理。

为了减小拟合参数数目,将公式(1)进行如下变换:

E(keV)=ε·N·[log(ε·N)-log(ε·N-ε·b·k)]

=n·[log(n)-log(n-b·k)] (2)

通过上面的变换,将拟合参数减少为2个(n,b)。

(3.2)对于两个SiPM探测器单元同时被击中的情况(记作双击中事件,超过两个的情况几率较小,可以忽略),由于能量测量电路只能得到两个SiPM探测器单元输出信号叠加后的能量值k(k

(3.2.1)根据公式2,两个SiPM探测器单元能量测量电路测得的ADC道数分别为:

可以对式(3)中的指数部分进行一阶泰勒展开,以简化公式,考虑到一般情况下

为了减小误差,考查以下四个函数:

y

根据这四个函数在(0,1)范围内的图像(如图2所示)可知,y3和y4具有更接近exp(-x)的特性,也就是计算误差更小,为了在FPGA中简化运算,节省资源,本发明采用y3函数进行近似。

另外,根据实验经验,SiPM探测器单元microcell数目比较接近,并且发生多单元散射时能量基本平分,故作如下近似:

(3.2.2)联立以上公式(3)-(6),可以得到两个SiPM探测器单元击中情况下的能量E的修正公式:

根据公式(7),我们就可以利用修正参数和采集到的ADC道值数k,近似反推两个SiPM探测器单元击中情况下的伽马粒子的能量。

综上所述,最终本发明采用的能量修正公式如下:

根据击中事件的类型,我们可以选择一种模型进行修正计算,工作流程图如图3所示。

(4)所述在线能量修正模块计算部分是根据步骤(3)中的拟合得到的参数(n和b),以及能量修正公式(8),设计FPGA代码完成在线能量修正,具体的设计如下:

(4.1)FPGA之内实现log(x)计算,可以使用数字信号处理(DSP)方式或者查找表(LUT)方式,由于LUT方式简易快速,本发明采用LUT方式。例化一个只读存储器ROM1,地址作为输入变量,内容作为输出变量。为了减小资源开销以及提高计算精度,ROM1的地址设置为12位,并且内容乘以2

其中,λ=1,2,4,8…

其实施功能框图如图4所示。

因此,计算(9)所需要的FPGA的存储器大小约为64Kb。

(4.2)类似(4.1),例化ROM2,来计算1/x函数,设置ROM2地址12位,内容乘以2

其中,λ

其实施功能框图如图5所示。

因此,计算(10)所需要的FPGA的存储器大小约为96Kb。

(4.3)根据(4.1)和(4.2),我们可以得到理论上本发明所需要的FPGA资源数目(单通道)和计算时间如下表所示。

实施例:利用本发明方案,我们对一个LYSO-SiPM探测器单元和它周围相邻的探测器单元进行了初步修正验证。将Na22点源放置于探测器前方,采集探测器单元输出信号的能谱,修正前的能谱如图6所示。由于SiPM非线性的影响,导致多击中事件和单击中事件的能峰位置不同。对于单击中事件,能峰大概在173道数左右,对于双击中事件,能峰大概在207道数左右。经过本发明的在线能量修正方案处理后,得到修正后的能谱如图7所示。对于单击中事件,能峰大概在256道数左右,对于双击中事件,能峰大概在253道数左右。

以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号