Ct装置及ct图像生成方法

文档序号:1242739阅读:309来源:国知局
Ct 装置及ct 图像生成方法
【专利摘要】本发明涉及一种CT装置及CT图像生成方法,在处理对象的图像中按规定方向依次存储该图像的数据,利用多核处理器,以每一个线程在与规定方向正交的方向依次处理的方式,由多线程并行进行反投影/投影处理,从而获得三维CT图像并输出。由此,通过利用GPU等多核处理器,灵活性高,限制少,解决了处理速度受限制于带宽的技术问题。同时,在存储以及反投影/投影处理中利用多核处理器处理数据时,充分考虑了GPU等多核处理器的多线程内存访问的规则,提高缓存命中率,实现合并访问,大大提高内存的访问速度。由此,在CT图像重建中充分发挥了处理器的运算能力,能够大大提高CT图像重建的运算速度。
【专利说明】CT装置及CT图像生成方法
【技术领域】
[0001]本发明涉及一种CT装置及CT图像生成方法,尤其涉及用于CT图像重建特别是并行重建的CT装置及CT图像生成方法。
【背景技术】
[0002]计算机断层成像术(CT)广泛应用于医学影像领域。它是利用计算机技术对被测物体断层扫描图像进行重建获得三维断层图像的扫描方式。该扫描方式是通过单一轴面的射线穿透被测物体,根据被测物体各部分对射线的吸收与透过率不同,由计算机采集透过射线并通过三维重构成像。
[0003]解析重建和迭代重建是CT图像重建的两种基本方法。滤过反投影是解析重建的主要算法,其重建速度快,在目前的CT产品中得到广泛应用。但是它要求每次投影测量数据是精确定量的和完全的,X射线光子统计波动对它有很大影响,它对噪声和伪影都很敏感。当辐射剂量降低或投影数据采集不足时,重建出的图像质量就会很差,因此使用滤过反投影就不能大幅度降低辐射剂量。
[0004]基于对CT福射危害的考虑,多年来众多CT科学家、制造商和临床操作人员为控制和降低CT辐射剂量做出了不懈的努力,低辐射剂量CT是未来的发展方向。目前,多层CT制造商均在加紧迭代重建算法的研究,并预计迭代重建算法在保证图像质量恒定的前提下辐射剂量将会比目前滤过反投影算法的低60 %~80 %。迭代重建需要迭代进行投影和反投影计算,计算量大,速度慢,提高迭代重建的处理速度成为其应用于CT产品急需解决的问题。
[0005]另一方面,图像处理器(GPU)的高性能数值运算能力在近些年发展迅速。NVIDIA公司于 2007 正式发布的 CUDA (Computer Unified Device Architecture 计算统一设备架构),使用一种类C语言(支持现有C语言基础上,进行了部分扩展),使得开发工作更加易于掌握。GPU不再局限于图形处理,也可应用于通用数值计算中,特别适用于并行度高数值运算量大的运算。
[0006]专利文献I公开了一种利用GPU多线程进行CT滤波反投影重建计算的方法。它将需要进行重建的CT图像分成若干Block (块)区域,每个GPU的多个内核的复数线程执行图像不同Block区域的重建,以提高CT图像重建的速度。该技术是基于GPU集群的并行重建系统,中心节点与计算节点需要频繁的数据交换,处理速度受限制于带宽。同时,该技术对重建CT图像划分Block区域有要求,如果不满足该要求,会导致GPU内存地址冲突。
[0007]专利文献1:CN101596113A
[0008]如上所述,在专利文献I等现有技术中,在将GPU等适于并行度高数值运算量大的运算的多核处理器用于CT图像重建时,仍然存在处理速度受限制于带宽和内存地址冲突等技术问题,无法在CT图像重建中充分发挥处理器的运算能力。特别是在作为未来发展趋势的迭代重建中,要求提高迭代中的运算速度尤其是并行运算速度,而现有技术无法充分满足以上要求。
【发明内容】

[0009]本发明的目的在于,针对现有技术中CT图像重建所存在的以上技术问题,提供一种CT装置及CT图像生成方法,通过利用多核处理器,能够提高CT图像重建中的运算速度,特别是在CT图像重建中使用迭代重建的情况下,能够提高迭代重建的运算速度。
[0010]为了解决以上技术问题,本发明涉及一种CT装置,通过X射线对扫描对象进行扫描,输出所述扫描对象的三维CT图像,其特征在于,具有:CT扫描仪,通过X射线对扫描对象进行扫描,获得所述扫描对象的投影图像;存储器,按投影图像中的第一规定方向依次存储该投影图像的数据;反投影单元,利用多核处理器,针对所述存储器中存储的投影图像的数据,以每一个线程按投影图像中与所述第一规定方向正交的方向依次处理的方式,由多线程并行地对投影图像进行反投影,从而获得三维CT图像;以及输出单元,输出由所述反投影单元获得的三维CT图像。
[0011]根据本发明涉及的CT装置,通过利用GPU等多核处理器,灵活性高,限制少,不需要现有技术中的GPU集群就可以实现并行计算,解决了现有技术中处理速度受限制于带宽的技术问题。同时,在存储器存储数据以及反投影单元利用多核处理器处理数据时,充分考虑了 GPU等多核处理器的多线程内存访问的规则,提高缓存命中率,实现合并访问,大大提高内存的访问速度。由此,在CT图像重建中充分发挥了处理器的运算能力,能够大大提高CT图像重建的运算速度。
[0012]在本发明的CT装置中,也可以是,所述存储器将预测三维CT图像存储为多个相互平行的二维的CT图像片,按每个CT图像片中的第二规定方向依次存储该CT图像片的数据;所述CT装置还具备:投影单元,利用多核处理器,针对所述存储器中存储的CT图像片的数据,以每一个线程按CT图像片中与所述第二规定方向正交的方向依次处理的方式,由多线程并行地对该CT图像片进行投影,从而获得该CT图像片的投影图像,通过累加多个CT图像片的投影图像,获得预测三维CT图像的投影图像;以及比较单元:将所述投影单元获得的预测三维CT图像的投影图`像与所述CT扫描仪获得的所述扫描对象的投影图像进行比较,计算投影误差;在所述CT装置中,所述反投影单元将所述投影误差反投影到预测三维CT图像中,并对预测三维CT图像进行修正,用修正后的预测三维CT图像替换原预测三维CT图像,从而完成一次投影一反投影迭代处理,进行至少一次所述投影一反投影迭代处理,直到所述投影误差小于规定阈值;所述输出单元输出所述投影误差小于规定阈值时的修正后的预测三维CT图像。
[0013]根据上述CT装置,将本发明的技术思想适用于CT图像重建领域中作为未来发展趋势的迭代重建。具体而言,迭代重建中的两个核心内容是投影处理和反投影处理,投影处理和反投影处理占用了迭代重建的大部分处理时间。根据上述CT装置,通过在投影处理和反投影处理中分别考虑GPU等多核处理器的多线程内存访问的规则,利用多核处理器实现并行处理,大大提高了迭代重建的运算速度,使得迭代重建用于低剂量CT产品成为可能。
[0014]在本发明的CT装置中,也可以是,所述存储器还按所述CT图像片的投影图像中的第三规定方向依次存储该CT图像片的投影图像的数据;所述投影单元在累加多个CT图像片的投影图像时,利用多核处理器,针对所述存储器中存储的CT图像片的投影图像的数据,以每一个线程累加所述多个CT图像片的投影图像中每个相应位置的投影值的方式,由多线程并行地累加多个CT图像片的投影图像,在该多线程之中,对所述第三规定方向上相邻的位置的投影值进行累加的线程彼此相邻。
[0015]根据上述CT装置,通过在投影处理中累加多个CT图像片的投影图像时,利用多核处理器,每个线程计算接收器中一个投影点的投影累加值,计算简单仅为求和运算,各个线程之间的计算相互独立,并行规模为接收器的点数(即投影图像的大小)。由于处理同一列投影数据的线程相邻,同样满足多个线程合并访问内存的条件,能够进一步提高内存访问速度,提高投影处理以及迭代重建的运算速度。
[0016]在本发明的CT装置中,也可以是,所述存储器以多种存储方式存储预测三维CT图像,在各种存储方式之间,所述CT图像片所在的平面的方向彼此不同;所述投影单元根据所述CT扫描仪的扫描方向,对所述存储器中以多种存储方式存储的预测三维CT图像进行选择,以使选择出的存储方式下的预测三维CT图像中的CT图像片所在的平面与所述扫描方向最接近于垂直。
[0017]根据上述CT装置,对于数据存储,将三维CT数据存储成一系列(N个)平行的二维CT图像片,通过根据不同的投影方向选择相应的CT数据存储方式,从而使所选择的CT图像片的方向尽可能垂直于X光射线的投影方向。由此,每个CT图像片上的各点在运算方向上投影插值参数相同或相关,能够减少投影处理的计算量,进一步提高迭代重建的运算速度。
[0018]在本发明的CT装置中,也可以是,所述反投影单元使用距离驱动方式,分别沿第一规定方向和与该第一规定方向正交的方向进行反投影;及/或所述投影单元使用距离驱动方式,分别沿第二规定方向和与该第二规定方向正交的方向进行投影。
[0019]根据上述CT装置,将本发明的技术思想具体适用于作为迭代重建的主要实现方式之一的距离驱动方式。由此,进一步提高了本发明的CT装置进行迭代重建的实用性。
[0020]在本发明的 CT装置中,也可以是,所述多核处理器访问存储器时,所述多核处理器的相近的线程能够合并访问所述存储器中存储位置相近的数据。
[0021]根据上述CT装置,所利用的多核处理器的存储器(内存)访问规则为:多核处理器的相近的线程能够合并访问存储器中存储位置相近的数据。因此,通过采用本发明的存储器的数据存储方式和处理器的并行处理方式,能够提高缓存命中率,实现合并访问,大大提高内存的访问速度。由此,在CT图像重建中充分发挥了处理器的运算能力,能够大大提高CT图像重建的运算速度。
[0022]在本发明的CT装置中,也可以是,所述多核处理器为GPU即图像处理器。
[0023]根据上述CT装置,采用GPU即图像处理器作为多核处理器。由于GPU相对于其他处理器而言核(core)的数量多,能够同时处理的线程数量多,更能够发挥本发明的上述优点。
[0024]为了解决以上技术问题,本发明还涉及一种CT图像生成方法,通过X射线对扫描对象进行扫描,生成所述扫描对象的三维CT图像,其特征在于,包括以下步骤:通过X射线对扫描对象进行扫描,获得所述扫描对象的投影图像;将预测三维CT图像存储为多个相互平行的二维的CT图像片,按每个CT图像片中的规定方向依次存储该CT图像片的数据;利用多核处理器,针对存储的CT图像片的数据,以每一个线程按CT图像片中与所述规定方向正交的方向依次处理的方式,由多线程并行地对该CT图像片进行投影,从而获得该CT图像片的投影图像,通过累加多个CT图像片的投影图像,获得预测三维CT图像的投影图像;将预测三维CT图像的投影图像与所述扫描对象的投影图像进行比较,计算投影误差;利用多核处理器,以每一个线程按CT图像片中与所述规定方向正交的方向依次处理的方式,由多线程并行地将所述投影误差反投影到预测三维CT图像中,并对预测三维CT图像进行修正,用修正后的预测三维CT图像替换原预测三维CT图像,从而完成一次投影一反投影迭代处理,进行至少一次所述投影一反投影迭代处理,直到所述投影误差小于规定阈值;输出所述投影误差小于规定阈值时的修正后的预测三维CT图像。
[0025]根据本发明涉及的CT图像生成方法,通过利用GPU等多核处理器,灵活性高,限制少,不需要现有技术中的GPU集群就可以实现并行计算,解决了现有技术中处理速度受限制于带宽的技术问题。同时,在存储器存储数据以及反投影单元利用多核处理器处理数据时,充分考虑了 GPU等多核处理器的多线程内存访问的规则,提高缓存命中率,实现合并访问,大大提高内存的访问速度。由此,在CT图像重建中充分发挥了处理器的运算能力,能够大大提高CT图像重建的运算速度。特别是,通过适用于CT图像重建领域中作为未来发展趋势的迭代重建,通过在投影处理和反投影处理中分别考虑GPU等多核处理器的多线程内存访问的规则,利用多核处理器实现并行处理,大大提高了迭代重建的运算速度,使得迭代重建用于低剂量CT产品成为可能。
【专利附图】

【附图说明】
[0026]图1是表示本发明的第一实施方式的CT装置的概略结构的框图。
[0027]图2是表示本发明的第一实施方式的反投影处理的示意图。
[0028]图3是表示本发明的第一实施方式的反投影处理中每一个线程的运算过程的示意图。
`[0029]图4是表示本发明的第二实施方式的CT装置的概略结构的框图。
[0030]图5是表示本发明的第二实施方式的CT图像生成方法的流程图。
[0031]图6是表示本发明的第二实施方式的投影处理的示意图。
[0032]图7是表示本发明的第二实施方式的投影处理中每一个线程的运算过程的示意图。
[0033]图8是表示本发明的第三实施方式中CT数据的存储方式的示意图。
[0034]图9是表示本发明的第三实施方式中X射线扫描方向与CT数据存储方式之间的关系的不意图。
【具体实施方式】
[0035]以下结合【专利附图】

【附图说明】本发明的各实施方式。其中,各实施方式仅用于说明实现本发明的优选形态,而不作为对本发明的限定。
[0036](第一实施方式)
[0037]首先,说明本发明的第一实施方式。图1是表示本发明的第一实施方式的CT装置的概略结构的框图。如图1所示,第一实施方式的CT装置通过X射线对扫描对象进行扫描,输出扫描对象的三维CT图像,具有CT扫描仪、存储器、反投影单元和输出单元。其中,存储器和反投影单元构成CT图像生成装置。以下详细说明CT装置的各个结构。
[0038]CT扫描仪通过X射线对扫描对象进行扫描,获得扫描对象的投影图像。具体而言,通过单一轴面的射线穿透扫描对象,根据扫描对象各部分对X射线的吸收与透过率不同,获得扫描对象的投影图像。
[0039]存储器按投影图像中的第一规定方向依次存储该投影图像的数据。该存储器例如由内存等存储器实现。投影图像例如为二维图像,其中的数据按第一规定方向(例如列方向)依次存储在存储器中,即先存储第一列然后存储第二列,以此类推。
[0040]反投影单元利用多核处理器,针对存储器中存储的投影图像的数据,以每一个线程按投影图像中与第一规定方向正交的方向依次处理的方式,由多线程并行地对投影图像进行反投影,从而获得三维CT图像。多核处理器例如为GPU (图像处理器),作为现在常用的GPU,例如具有几百个核(core),由多个核实现多线程并行处理。在此,多核处理器由多线程并行地对投影图像进行反投影。其中,多线程中的每一个线程分别按投影图像中与第一规定方向(例如列方向)正交的方向(例如行方向)依次处理。反投影单元所进行的反投影处理的详情留待后述。 [0041]输出单元,输出由反投影单元获得的三维CT图像。在此,输出单元例如是CT图像显示装置,由液晶显示器或触摸屏等显示设备实现,显示所生成的三维CT图像。另外,输出单元也可以是打印设备等,打印所生成的三维CT图像。当然,输出单元只要能够输出所生成的三维CT图像即可,也可以是通用的I/O接口。
[0042]接着,详细说明本发明的第一实施方式的反投影处理。图2是表示本发明的第一实施方式的反投影处理的示意图。如图2所示,具体的反投影处理例如如下所述。
[0043]反投影单元启动GPU内核(kernel),计算由存储器存储的投影图像在CT片(SI,S2,…,Sn)上的反投影结果。在存储器中,由CT扫描仪获得的投影图像数据例如沿图中的列方向存储。在作为反投影结果的三维CT数据中,CT数据Si同样沿图中的列方向存储。在反投影过程中生成的投影图像Pi中,数据同样沿图中的列方向存储。GPU线程的并行方式为每一个GPU线程计算CT片Si中的I行数据,该行垂直于CT数据的存储方向列。此GPU内核的并行规模(即并行线程数)为:CT片行数*CT片数η。
[0044]以下结合图3说明每一个线程的运算过程。图3是表示本发明的第一实施方式的反投影处理中每一个线程的运算过程的示意图。
[0045]如图3所示,首先,使用距离驱动(Distance-Driven)的方法沿列方向反投影。由于每一个GPU线程计算I行数据,相邻线程同时访问的数据处于一列中而在存储上相邻,因此一个warp (GPU线程并行的最小单元)内的线程访问的数据可以实现合并访问。对于图像一列上的每个点,由于对应于接收器上等间隔的点,因此投影插值参数相同,计算量减少。
[0046]然后,使用距离驱动(Distance-Driven)的方法沿行方向反投影。由于每一个GPU线程计算I行数据,相邻线程同时访问的数据处于一列中而在存储上相邻,因此一个warp(GPU线程并行的最小单元)内的线程访问的数据可以实现合并访问。对于图像一行上的相邻点,虽然对应于接收器间隔不相等的点,但投影插值参数相关,可类推计算,计算量减少。
[0047]根据本发明的第一实施方式的CT装置,通过利用GPU等多核处理器,灵活性高,限制少,不需要现有技术中的GPU集群就可以实现并行计算,解决了现有技术中处理速度受限制于带宽的技术问题。同时,在存储器存储数据以及反投影单元利用多核处理器处理数据时,充分考虑了 GPU等多核处理器的多线程内存访问的规则,提高缓存命中率,实现合并访问,大大提高内存的访问速度。由此,在CT图像重建中充分发挥了处理器的运算能力,能够大大提高CT图像重建的运算速度。
[0048](第二实施方式)
[0049]接下来,说明本发明的第二实施方式。第二实施方式与第一实施方式的不同点在于,将本发明的技术思想适用于CT图像重建领域中的迭代重建。下面以第二实施方式与第一实施方式的不同点为中心进行说明。
[0050]图4是表示本发明的第二实施方式的CT装置的概略结构的框图。如图4所示,本发明的第二实施方式的CT装置在第一实施方式的CT装置的基础上,还具备投影单元和比较单元。其中,比较单元、投影单元、存储器和反投影单元构成CT图像生成装置。
[0051]具体而言,在第二实施方式的CT装置中,存储器将预测的三维CT图像存储为多个相互平行的二维的CT图像片,按每个CT图像片中的第二规定方向(例如列方向)依次存储该CT图像片的数据。
[0052]投影单元利用多核处理器,针对存储器中存储的CT图像片的数据,以每一个线程按CT图像片中与第二规定方向(例如列方向)正交的方向(例如行方向)依次处理的方式,由多线程并行地对该CT图像片进行投影,从而获得该CT图像片的投影图像,通过累加多个CT图像片的投影图像,获得预测三维CT图像的投影图像。投影单元所进行的投影处理的详情留待后述。
[0053]比较单元将投影单元获得的预测三维CT图像的投影图像与CT扫描仪获得的扫描对象的投影图像进行比较,计算投影误差。
[0054]之后,CT装置的反投影单元将比较单元计算的投影误差反投影到预测三维CT图像中,并对预测三维CT图像·进行修正,在存储器中用修正后的预测三维CT图像替换原预测三维CT图像,从而完成一次投影一反投影迭代处理。
[0055]之后,在投影误差不符合要求的情况下,投影单元对存储器中存储的修正后的预测三维CT图像继续进行上述处理,比较单元和反投影单元也进行上述处理,由此再进行一次投影一反投影迭代处理。直到投影误差符合要求(例如小于规定阈值)时,停止投影一反投影迭代处理,由输出单元输出此时的修正后的预测三维CT图像。
[0056]以下说明本发明的第二实施方式的CT图像生成方法。图5是表示本发明的第二实施方式的CT图像生成方法的流程图。
[0057]如图5所示,在步骤SI中,CT扫描仪通过X射线对扫描对象进行扫描,获得所述扫描对象的投影图像。即,获得实际CT机实测投影值PM。
[0058]在步骤S2中,存储器将预测三维CT图像存储为多个相互平行的二维的CT图像片,按每个CT图像片中的规定方向(例如列方向)依次存储该CT图像片的数据。具体而言,初始化三维CT图像的预估值f,将该CT数据存储成一系列(N个)平行的二维CT片(SI, S2,…,Sn)。其中,CT片的方向尽可能选择为垂直于X光射线的投影方向。其中每一CT片的存储方式为按列存储,即先存储第一列然后存储第二列,以此类推。
[0059]在步骤S3中,投影单元利用多核处理器,针对存储的CT图像片的数据,以每一个线程按CT图像片中与所述规定方向正交的方向依次处理的方式,由多线程并行地对该CT图像片进行投影,从而获得该CT图像片的投影图像,通过累加多个CT图像片的投影图像,获得预测三维CT图像的投影图像。[0060]具体而言,投影单元对CT图像的预估值f进行理论投影计算,得到理论投影值Pa。图6是表示本发明的第二实施方式的投影处理的示意图。如图6所示,投影单元的具体实施步骤为:
[0061](I)投影单元启动GPU内核1,计算所有CT片(SI,S2,…,Sn)的投影图像(P1,P2,…,Pn)。CT数据Si沿列方向存储,投影图像Pi沿列方向存储。GPU线程的并行方式为每一个GPU线程计算投影图像Pi上一行的投影值,该行垂直于CT数据的存储方向列。此GPU内核的并行规模(即并行线程数)为:投影图像行数*CT片数η。
[0062]以下结合图7说明每一个线程的运算过程。图7是表示本发明的第二实施方式的投影处理中每一个线程的运算过程的示意图。
[0063]如图7所示,首先,使用距离驱动(Distance-Driven)的方法沿列方向投影。与反投影处理类似,由于相邻线程同时访问的CT数据在存储上相邻,一个warp (GPU线程并行的最小单元)内的线程访问的数据,可以实现合并访问。对于图像一列上的每个点,投影插值参数相同,计算量减少。
[0064]然后,使用距离驱动(Distance-Driven)的方法沿行方向投影。与反投影处理类似,由于相邻线程同时访问的CT数据在存储上相邻,一个warp (GPU线程并行的最小单元)内的线程访问的数据,可以实现合并访问。对于图像一行上的相邻点,投影插值参数相关,可类推计算,计算量减少。
[0065](2)返回图6,投影单元启动GPU内核2,计算投影图像(P1,P2,…,Pn)的累加值,得到最终的投影结果图像Pa。。此时,存储器按投影图像中的第三规定方向(例如列方向)依次存储该投影图像的数据。投影单元在累加多个投影图像时,利用多核处理器,针对存储器中存储的投影图像的数据,以每一个线程累加多个投影图像中每个相应位置的投影值的方式,由多 线程并行地累加多个投影图像,在该多线程之中,对第三规定方向上相邻的位置的投影值进行累加的线程彼此相邻。
[0066]具体而言,GPU线程的并行方式为每一个GPU线程计算投影图像Pa上每个点的投影值,处理同一列投影数据的线程相邻。此GPU内核的并行规模(即并行线程数)为:投影图像大小=列数*行数。对于每一个线程读取每片Pi图像相应位置的值并求和。由于相邻线程同时访问的投影图像Pi上的数据在存储上相邻,一个warp (GPU线程并行的最小单元)内的线程访问的数据,可以实现合并访问。
[0067]返回图5继续说明。在步骤S4中,将预测三维CT图像的投影图像与扫描对象的投影图像进行比较,计算投影误差。即,将理论投影值Pa和实测投影值P?相比较,得到投影误差值Λ P。
[0068]在步骤S5中,判断投影误差是否符合要求,即投影误差是否小于规定阈值。在符合要求即投影误差小于规定阈值的情况下,执行步骤S6。在不符合要求即投影误差为规定阈值以上的情况下,执行步骤S7。
[0069]在步骤S6中,输出单元输出此时的预测三维CT图像。即,将此时的预估值f即为最终的CT图像迭代重建结果输出。
[0070]在步骤S7中,反投影单元利用多核处理器,以每一个线程按CT图像片中与规定方向(例如列方向)正交的方向依次处理的方式,由多线程并行地将投影误差反投影到预测三维CT图像中,并对预测三维CT图像进行修正,用修正后的预测三维CT图像替换原预测三维CT图像。具体而言,反投影单元将投影误差值Λ P反投影到CT图像中,并进行根据一定的原则对原预估值f进行修正,得到修正后的CT图像的预估值f。
[0071]其中,反投影单元的具体实施步骤与第一实施方式中反投影处理类似,利用图2、图3进行说明。
[0072]首先,反投影单元启动GPU内核,计算投影误差值Λ P对所有CT片(SI,S2,…,Sn)的反投影结果。CT数据Si沿列方向存储,投影图像Pi沿列方向存储。GPU线程的并行方式为每一个GPU线程计算CT片Si中的I行数据,该行垂直于CT数据的存储方向列。此GPU内核的并行规模(即并行线程数)为:CT片行数*CT片数η。对于每一个线程,如图3所示:
[0073]首先,使用距离驱动(Distance-Driven)的方法沿列方向反投影。与第一实施方式相同,由于相邻线程同时访问的CT数据在存储上相邻,一个warp (GPU线程并行的最小单元)内的线程访问的数据,可以实现合并访问。对于图像一列上的每个点,投影插值参数相同,计算量减少。
[0074]然后,使用距离驱动(Distance-Driven)的方法沿行方向反投影。与第一实施方式相同,由于相邻线程同时访问的CT数据在存储上相邻,一个warp (GPU线程并行的最小单元)内的线程访问的数据,可以实现合并访问。对于图像一行上的相邻点,投影插值参数相关,可类推计算,计算量减少。
[0075]通过步骤S2~S4、S7,完成一次投影一反投影迭代处理。通过图5所示的流程,重复进行迭代处理,直到在步骤S5中投影误差Λ P满足迭代中止条件(例如小于规定阈值)时,迭代中止。最后一次迭代使用的图像的预估值f即为最终的CT图像迭代重建结果。
[0076]在第二实施方式中,对迭代重建中的两个核心步骤,即投影处理和反投影处理,给出了 GPU上的并行处理方法。迭代重建的过程为:迭代开始时,首先假设一个初始三维CT图像,对其进行投影运算,然后·将投影结果与实际CT机扫描结果进行比较;然后将比较差异反投影到CT图像空间中,对初始CT图像进行修正更新;如此便完成一次迭代。当计算值和实际测量值差值小于某阈值时迭代中止。CT图像的迭代重建,是通过迭代进行投影和反投影计算实现的,因此投影和反投影计算占用了迭代重建的大部分处理时间。分别对投影过程和反投影过程完成并行计算实现,也就实现了迭代重建的并行计算。
[0077]而且,在以上投影处理和反投影处理中,每个线程处理规定方向(例如一行)的数据,该行内数据将被该线程一个数据点一个数据点依次进行处理,这样处理有两个好处。
[0078]优点一是,位于同一行的数据点,投影/反投影变换中有些计算是相同的,计算下一个点的参数时可以利用上一个点的计算结果,因此一个线程处理一行与一个线程只处理一个点相比,可以节省处理同一行的数据点时的重复计算,从而提高计算速度。
[0079]优点二是,本发明中数据存储与访问相配合,使得相邻内存同时被相邻线程访问,可以实现多个线程合并访问内存,提高内存访问速度。具体为,由于本发明中CT片按某方向(例如列)存储,因此CT片数据将按列从内存读入缓存中;而在投影和反投影处理中,每个线程处理I行,该行数据将被该线程一点一点进行处理,一列中的相邻数据将同时被相邻线程访问。例如线程I负责处理第一行数据,线程2负责处理第二行数据,线程I将首先读取第一行第一列的点进行处理,与此同时线程2读取第二行第一列的点进行处理,当属于最小并行单元的所有线程都处理完第一列的点后,线程I将读取第一行第二列的点进行处理,与此同时线程2读取第二行第二列的点进行处理,以此类推。因此属于最小并行单元的相邻线程将同时读取位于同一列的数据,线程I处理时使用数据之外的位于同一列的数据也在缓存中,线程2可以直接从缓存中调用该列数据,无需进行频繁的内存访问,实现了多个线程合并访问内存,提高内存访问速度。
[0080]根据本发明的第二实施方式,将本发明的技术思想适用于CT图像重建领域中作为未来发展趋势的迭代重建。通过在投影处理和反投影处理中分别考虑GPU等多核处理器的多线程内存访问的规则,利用多核处理器实现并行处理,大大提高了迭代重建的运算速度,使得迭代重建用于低剂量CT产品成为可能。
[0081]而且,在第二实施方式中,在投影处理的累加运算中,每个线程计算接收器中一个投影点的投影累加值,计算简单仅为求和运算,各个线程之间的计算相互独立,并行规模为接收器的点数(即投影图像的大小)。由于处理同一列投影数据的线程相邻,同样满足多个线程合并访问内存的条件,可以提高内存访问速度。
[0082](第三实施方式)
[0083]接下来,说明本发明的第三实施方式。第三实施方式在第一实施方式和第二实施方式的基础上进行了改进,提供了一种CT图像片的具体存储方式。下面以第三实施方式与第一实施方式和第二实施方式的不同点为中心进行说明。
[0084]在本发明的第三实施方式中,存储器以多种存储方式存储预测三维CT图像,在各种存储方式之间,CT图像片所在的平面的方向彼此不同;投影单元根据CT扫描仪的扫描方向,对存储器中以多种存储方式存储的预测三维CT图像进行选择,以使选择出的存储方式下的预测三维CT图像中的CT图像片所在的平面与扫描方向最接近于垂直。
[0085]以下,具体说明在第二实施方式的基础上采用本实施方式的多种存储方式的例子。在此,参照图5进行说明。第三实施方式与第二实施方式的不同点在于图5的流程中的步骤S2、S3。
[0086]在第三实施方式的对应于图5的步骤S2的步骤中,初始化三维CT图像的预估值f,将CT数据按两种方式存储。图8是表示本发明的第三实施方式中CT数据的存储方式的示意图。如图8所示:
[0087]方式1:CT数据沿X方向存储,第一维为X,第二维为z,第三维为I。CT数据可以看作由平行于XZ平面的一系列CT片(SI,S2,…,Sn)组成,CT片的数量η为第三维度y的大小。我们称之为CT_x数据,称CT片的X方向为列,z方向为行,CT片沿列方向存储。
[0088]方式2:CT数据沿y方向存储,第一维为y,第二维为z,第三维为x。CT数据可以看作由平行于yz平面的一系列CT片(SI,S2,…,Sn)组成,CT片的数量η为第三维度x的大小。我们称之为CT_y数据,称CT片的y方向为列,z方向为行,CT片沿列方向存储。
[0089]在第三实施方式的对应于图5的步骤S3的步骤中,X射线源环绕CT数据(实际CT扫描时为患者)在每一个角度进行投影,计算投影结果。对于X射线源所在的每一个角度,通过X射线源所在角度决定读取哪一种存储的CT数据。图9是表示本发明的第三实施方式中X射线扫描方向与CT数据存储方式之间的关系的示意图。如图9所示:
[0090]当射线源位于315度至45度之间,或135度至225度之间时,读取CT_x数据。
[0091]当射线源位于45度至135度之间,或225度至315度之间时,读取CT_y数据。
[0092]这样可以保证,CT片的方向尽可能选择为垂直于X光射线的投影方向。
[0093]另外,其他处理与第二实施方式相同,在此不做赘述。[0094]以上说明了采取两种存储方式的例子,但不限于此,也可以采取多种存储方式。存储方式越多,能够选择出方向越垂直于X光射线的CT片,但同时也需要更大的存储空间。因此,可以根据CT图像重建的要求和CT装置的性能选择适当的存储方式的数量。
[0095]以上说明了将本实施方式的多种存储方式适用于第二实施方式的例子,但显然也可以将本实施方式的多种存储方式适用于第一实施方式。
[0096]根据本发明的第三实施方式,对于数据存储,将三维CT数据存储成一系列(N个)平行的二维CT图像片,通过根据不同的投影方向选择相应的CT数据存储方式,从而使所选择的CT图像片的方向尽可能垂直于X光射线的投影方向。由此,每个CT图像片上的各点在运算方向上投影插值参数相同或相关,能够减少投影处理的计算量,进一步提高迭代重建的运算速度。
[0097]以上对本发明的一些【具体实施方式】进行了说明。但本发明不限于上述【具体实施方式】,也可以在不脱离本发明的主旨和范围的条件下进行各种变形,或对实施方式进行组合。
[0098]例如,在第二实施方式中作为具体的迭代重建算法采用了距离驱动方式。但本发明不限于此,本发明的投影单元和反投影单元可适用于任何的迭代重建算法中。本发明的投影单元与反投影单元的并行方案也不受限制于具体的投影算法和反投影算法,除本发明实施中所述的距离驱动(Distance-Driven)投影算法外,也可使用于分离足迹投影(Separable-Footprint)等其他投影算法。
[0099]例如,在以上各实施方式中,说明了以CT装置实现本发明。但是,本发明也可以通过以上各实施方式中说明的CT图像生成装置来实现。同时,通过将上述CT装置中的CT扫描仪替换为CT扫描投影数据接收装置,还能够作为接收CT扫描投影数据并进行处理的CT扫描投影数据处理装置实现。
[0100]例如,在以上各实施方式中,存储、投影和反投影中所涉及的各规定方向都设为列方向。但不限于此,以上各规定方向可以任意选取,彼此既可以相同,也可以不同。
[0101]例如,在以上各实施方式中,利用GPU处理器。但不限于此,只要是能够并行多线程处理的多核处理器,都能够用于实现本发明。
【权利要求】
1.一种CT装置,通过X射线对扫描对象进行扫描,输出所述扫描对象的三维CT图像,其特征在于,具有: CT扫描仪,通过X射线对扫描对象进行扫描,获得所述扫描对象的投影图像; 存储器,按投影图像中的第一规定方向依次存储该投影图像的数据; 反投影单元,利用多核处理器,针对所述存储器中存储的投影图像的数据,以每一个线程按投影图像中与所述第一规定方向正交的方向依次处理的方式,由多线程并行地对投影图像进行反投影,从而获得三维CT图像;以及 输出单元,输出由所述反投影单元获得的三维CT图像。
2.如权利要求1所述的CT装置,其特征在于, 所述存储器将预测三维CT图像存储为多个相互平行的二维的CT图像片,按每个CT图像片中的第二规定方向依次存储该CT图像片的数据; 所述CT装置还具备: 投影单元,利用多核处理器,针对所述存储器中存储的CT图像片的数据,以每一个线程按CT图像片中与所述第二规定方向正交的方向依次处理的方式,由多线程并行地对该CT图像片进行投影,从而获得该CT图像片的投影图像,通过累加多个CT图像片的投影图像,获得预测三维CT图像的投影图像;以及 比较单元:将所述投影单元获得的预测三维CT图像的投影图像与所述CT扫描仪获得的所述扫描对象的投影图像进行比较,计算投影误差; 在所述CT装置中,所述反投影单元将`所述投影误差反投影到预测三维CT图像中,并对预测三维CT图像进行修正,用修正后的预测三维CT图像替换原预测三维CT图像,从而完成一次投影一反投影迭代处理,进行至少一次所述投影一反投影迭代处理,直到所述投影误差小于规定阈值; 所述输出单元输出所述投影误差小于规定阈值时的修正后的预测三维CT图像。
3.如权利要求2所述的CT装置,其特征在于, 所述存储器还按所述CT图像片的投影图像中的第三规定方向依次存储该CT图像片的投影图像的数据; 所述投影单元在累加多个CT图像片的投影图像时,利用多核处理器,针对所述存储器中存储的CT图像片的投影图像的数据,以每一个线程累加所述多个CT图像片的投影图像中每个相应位置的投影值的方式,由多线程并行地累加多个CT图像片的投影图像,在该多线程之中,对所述第三规定方向上相邻的位置的投影值进行累加的线程彼此相邻。
4.如权利要求2所述的CT装置,其特征在于, 所述存储器以多种存储方式存储预测三维CT图像,在各种存储方式之间,所述CT图像片所在的平面的方向彼此不同; 所述投影单元根据所述CT扫描仪的扫描方向,对所述存储器中以多种存储方式存储的预测三维CT图像进行选择,以使选择出的存储方式下的预测三维CT图像中的CT图像片所在的平面与所述扫描方向最接近于垂直。
5.如权利要求2所述的CT装置,其特征在于, 所述反投影单元使用距离驱动方式,分别沿第一规定方向和与该第一规定方向正交的方向进行反投影;及/或所述投影单元使用距离驱动方式,分别沿第二规定方向和与该第二规定方向正交的方向进行投影。
6.如权利要求1~5中任一项所述的CT装置,其特征在于, 所述多核处理器访问存储器时,所述多核处理器的相近的线程能够合并访问所述存储器中存储位置相近的数据。
7.如权利要求1~5中任一项所述的CT装置,其特征在于, 所述多核处理器为GPU即图像处理器。
8.—种CT图像生成方法,通过X射线对扫描对象进行扫描,生成所述扫描对象的三维CT图像,其特征在于,包括以下步骤: 通过X射线对扫描对象进行扫描,获得所述扫描对象的投影图像; 将预测三维CT图像存储为多个相互平行的二维的CT图像片,按每个CT图像片中的规定方向依次存储该CT图像片的数据; 利用多核处理器,针对存储的CT图像片的数据,以每一个线程按CT图像片中与所述规定方向正交的方向依次处理的方式,由多线程并行地对该CT图像片进行投影,从而获得该CT图像片的投影图像,通过累加多个CT图像片的投影图像,获得预测三维CT图像的投影图像; 将预测三维CT图像的投影图像与所述扫描对象的投影图像进行比较,计算投影误差; 利用多核处理器,以每一个线程按CT图像片中与所述规定方向正交的方向依次处理的方式,由多线程并行地将所述投影误差反投影到预测三维CT图像中,并对预测三维CT图像进行修正,用修正后的预测三维CT图像替换原预测三维CT图像,从而完成一次投影一反投影迭代处理,进行至少一次所述投影一反投影迭代处理,直到所述投影误差小于规定阈值; 输出所述投影误差小于规定阈值时的修正后的预测三维CT图像。
【文档编号】A61B6/03GK103784158SQ201210422016
【公开日】2014年5月14日 申请日期:2012年10月29日 优先权日:2012年10月29日
【发明者】韩颖婕, 盛兴东 申请人:株式会社日立医疗器械
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1