ct图像去金属伪影以及模型训练的方法和装置
技术领域
1.本技术涉及图像处理技术领域,具体而言,涉及一种ct图像去金属伪影以及模型训练的方法和装置。
背景技术:2.金属伪影广泛出现在ct影像中,是一种由被检者体内或体表的金属异物导致局部磁场的不均匀,在金属体周围出现一圈低信号盲区或影像扭曲、变形或失真。现有技术中,没有一种能够去掉图片中的金属伪影的方法。
技术实现要素:3.本技术的主要目的在于提供一种ct图像去金属伪影以及模型训练的方法和装置,以解决上述问题。
4.为了实现上述目的,根据本技术的一个方面,提供了一种ct图像去金属伪影的模型训练方法,包括:
5.根据关节的位置生成不包含金属伪影的关节假体的ct原图像集;
6.根据所述ct原图像集生成包含金属伪影的关节假体的带伪影ct图像集;
7.利用去伪影算法对所述带伪影ct图像集进行金属伪影去除处理,生成至少两个不包含金属伪影的去伪影ct图像集;
8.将所述带伪影ct图像集以及所述至少两个去伪影ct图像集作为训练样本输入初始神经网络模型,通过调整所述初始神经网络模型中的模型参数,直至所述初始神经网络模型训练成功,得到训练好的神经网络模型。
9.在一种实施方式中,将所述带伪影ct图像集以及所述至少两个去伪影ct图像集作为训练样本输入初始神经网络模型,包括:
10.将所述带伪影ct图像集以及所述至少两个去伪影ct图像集中图像的尺寸设置为预设尺寸,以使所述训练好的神经网络模型按照预设尺寸输出去除金属伪影的图像。
11.在一种实施方式中,还包括:将所述带伪影ct图像集以及所述至少两个去伪影ct图像集中的图像分别按照预设切分规则进行切分,得到若干个图像块;
12.将所述若干个图像块按照对应的图像集进行堆叠,并通过相应的通道输入至所述初始神经网络模型。
13.在一种实施方式中,根据所述ct原图像集生成包含金属伪影的关节假体的带伪影ct图像集,包括:
14.采用fbp滤波反投影算法对所述ct原图像集进行处理,得到带有金属伪影的关节假体的带伪影ct图像集。
15.在一种实施方式中,还包括:将所述带伪影ct图像集以及所述至少两个去伪影ct图像集按照预设比例划分为训练集和验证集;
16.将所述验证集输入到采用训练集在当前训练周期训练得到的当前模型中,计算对
应的损失函数值;
17.如果所述损失函数值与上一个训练周期的神经网络模型对应的损失函数值相比,差值小于预定的阈值,则停止训练并将当前神经网络模型作为训练好的神经网络模型;否则,继续调整模型参数,直至模型训练成功。
18.第二方面,本技术还提出了一种ct图像去金属伪影的方法,包括:将待识别的带有金属伪影的关节假体的ct图像输入利用如上述任一项所述的模型训练方法训练得到的神经网络模型;获得所述神经网络模型输出的去金属伪影的关节假体的ct图像。
19.为了实现上述目的,根据本技术的第三方面,提供了一种ct图像去金属伪影的模型训练装置,包括:
20.第一处理模块,用于根据关节的位置生成不包含金属伪影的关节假体的ct原图像集;
21.第二处理模块,用于根据所述ct原图像集生成包含金属伪影的关节假体的带伪影ct图像集;
22.第三处理模块,用于利用去伪影算法对所述带伪影ct图像集进行金属伪影去除处理,生成至少两个不包含金属伪影的去伪影ct图像集;
23.训练模块,用于将所述带伪影ct图像集以及所述至少两个去伪影ct图像集作为训练样本输入初始神经网络模型,通过调整所述初始神经网络模型中的模型参数,直至所述初始神经网络模型训练成功,得到训练好的神经网络模型。
24.为了实现上述目的,根据本技术的第三方面,提供了一种图像去伪影设备;包括至少一个处理器和至少一个存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行上述任一项所述的步骤。
25.根据本技术的第四方面,提供了一种计算机可读存储介质,计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行上述任意一项所述的步骤。
26.在本技术实施例中,根据关节的位置生成不包含金属伪影的关节假体的ct 原图像集;根据ct原图像集生成包含金属伪影的关节假体的带伪影ct图像集;利用去伪影算法对带伪影ct图像集进行金属伪影去除处理,生成至少两个不包含金属伪影的去伪影ct图像集;将带伪影ct图像集以及至少两个去伪影ct图像集作为训练样本输入初始神经网络模型。本技术对神经网络模型进行训练时,因为采用了有金属伪影和无金属伪影的ct图像进行训练,所以模型的鲁棒性比较高,可以提高模型去伪影的效果。
附图说明
27.构成本技术的一部分的附图用来提供对本技术的进一步理解,使得本技术的其它特征、目的和优点变得更明显。本技术的示意性实施例附图及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
28.图1是根据本技术实施例的一种ct图像去金属伪影的模型训练方法的流程图;
29.图2是根据本技术实施例的去伪影图像模型的结构示意图;
30.图3a是根据本技术实施例的原始图;
31.图3b是根据本技术实施例的不带有伪影的效果图;
32.图3c是根据本技术实施例的利fbp滤波反投影技术生成金属伪影效果图;
33.图3d是根据本技术实施例的利用bhc算法得到的去伪影效果图;
34.图3e是根据本技术实施例的利用li算法得到的去伪影效果图;
35.图4是根据本技术实施例的ct图像去金属伪影的模型训练装置结构示意图;
36.图5是根据本技术实施例的电子设备的结构示意图。
具体实施方式
37.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
38.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
39.在本技术中,术语“上”、“下”、“左”、“右”、“前”、“后”、“顶”、“底”、“内”、“外”、“中”、“竖直”、“水平”、“横向”、“纵向”等指示的方位或位置关系为基于附图所示的方位或位置关系。这些术语主要是为了更好地描述本发明及其实施例,并非用于限定所指示的装置、元件或组成部分必须具有特定方位,或以特定方位进行构造和操作。
40.并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本发明中的具体含义。
41.此外,术语“安装”、“设置”、“设有”、“连接”、“相连”、“套接”应做广义理解。例如,可以是固定连接,可拆卸连接,或整体式构造;可以是机械连接,或电连接;可以是直接相连,或者是通过中间媒介间接相连,又或者是两个装置、元件或组成部分之间内部的连通。对于本领域普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
42.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
43.在医学ct图像中,经常会发现有的医学ct图像上面有金属伪影存在,金属伪影的存在,是困扰医学界的一大难题,因为伪影不仅影响图片质量,还可能与病灶混淆造成误诊。
44.基于此,本技术提出一种ct图像去金属伪影的模型训练方法,参见附图1所示的一种ct图像去金属伪影的模型训练方法的流程图;该方法包括:
45.步骤s102,根据关节的位置生成不包含金属伪影的关节假体的ct原图像集。
46.具体的,可以从预先设定的数据库中获取关节假体的ct图像;ct图像为带有金属伪影的医学图像。数量可以为多个。
47.步骤s104,根据所述ct原图像集生成包含金属伪影的关节假体的带伪影ct 图像集;
48.具体的,可以采用fbp滤波反投影算法对该原ct图像集中的每一个ct图像进行加工处理得到对应的包含金属伪影的关节假体的带伪影ct图像集。
49.其中,带伪影ct图像集中的每一个ct图像与原ct图像集中的每一个ct 图像是对应的关系。
50.当然,也可以采用其他的算法对原ct图像进行处理。
51.步骤s106,利用去伪影算法对所述带伪影ct图像集进行金属伪影去除处理,生成至少两个不包含金属伪影的去伪影ct图像集;
52.具体的,可以采用至少两种去伪影算法对上述带伪影ct图像集中的每一个 ct图像进行处理得到去伪影ct图像集。
53.示例性的,去伪影算法可以采用的是bhc(beam hardening correction,射束硬化校正)去伪影算法;或者,li(linear interpolation,线性插值)去伪影算法。
54.步骤s108,将所述带伪影ct图像集以及所述至少两个去伪影ct图像集作为训练样本输入初始神经网络模型,通过调整所述初始神经网络模型中的模型参数,直至所述初始神经网络模型训练成功,得到训练好的神经网络模型。
55.具体的,将所述带伪影ct图像集以及所述至少两个去伪影ct图像集按照预设比例划分为训练集和验证集;将所述验证集输入到采用训练集在当前训练周期训练得到的当前模型中,计算对应的损失函数值;如果所述损失函数值与上一个训练周期的神经网络模型对应的损失函数值相比,差值小于预定的阈值,则停止训练并将当前神经网络模型作为训练好的神经网络模型;否则,继续调整模型参数,直至模型训练成功。
56.示例性的,本技术建立基于深度学习去伪影技术的数据集。通过分别收集不带金属伪影,带金属伪影的数据,并收集利用bhc和li去除金属伪影的图像。将带金属伪影和两种技术去金属伪影后的图像进行堆叠得到通道数为3的图像,作为神经网络的输入数据集,以对应的通道数为1的原图像作为对应的标签数据集。数据集以6:2:2划分为训练集、验证集、测试集。
57.模型的优化器为adam,每进行一个训练周期后,在验证集上测试一下评估指标,评估指标为ssim;ssim是一种评价图像结构相似性的函数,取值范围为[0, 1],该值越大,说明相似度越高。利用早停法停止模型训练,得到最终模型。损失函数为1-ssim。
[0058]
具体采用早停法时,采用所述验证集对所述模型进行验证时,将所述验证集输入到采用训练集在当前训练周期训练得到的当前模型中,计算对应的损失函数值;如果所述损失函数值与上一个训练周期的神经网络模型对应的损失函数值相比,差值小于预定的阈值,则停止训练;将当前神经网络模型作为最终的神经网络模型。
[0059]
其中,模型可以采用卷积神经网络(convolutional neural network,cnn)实现;作为一个替代的技术方案,也可以采用gan网络(generative adversarialnetworks,生成式对抗网络)来实现。
[0060]
在一种实施方式中,将所述带伪影ct图像集以及所述至少两个去伪影ct图像集作为训练样本输入初始神经网络模型时,将所述带伪影ct图像集以及所述至少两个去伪影ct图像集中图像的尺寸设置为预设尺寸,以使所述训练好的神经网络模型按照预设尺寸输出
去除金属伪影的图像。
[0061]
示例性的,参见附图2所示的去伪影图像的神经网络模型的结构示意图;该神经网络包括4个相同的网络模块;其中,每个网络模块包括卷积层和激活层。该模型输出的图像为1张,尺寸为64
×
64;输入的图像通道数为3,尺寸为64
×
64。
[0062]
实验环境:ubuntu系统,gtx1080ti,ide(pycharm)。
[0063]
首先,收集不带金属伪影的的ct图像,设为原图像orig,参见图3a;在关节和股骨等位置人为生成假体,图像不带有金属伪影,参见图3b;利用fbp滤波反投影技术生成金属伪影,参见图3c;利用bhc(beam hardening correction)和 li(linear interpolation)传统去伪影算法对带有金属伪影效果的图3c进行去伪影计算,生成的去伪影图像分别参见图3d和图3e。设所有图像的尺寸都为h
×
w,将图3c,图3d,图3e进行拼接,得到尺寸为h
×w×
3的图像块1。将图像块1 输入神经网络,考虑到金属伪影分布区域的不确定性,将输入数据切分为数个小的图像块堆叠在一起作为网络的输入,输入形状为h/n
×
w/n
×
3;神经网络输出的图像为h
×
w,其中h和w都为512,n为图像块个数8。输出为h/n
×
w/n
×ꢀ
1,将所有的图像块按原始切分规则拼接到一起得到最终预测结果图。
[0064]
现有技术去金属伪影的缺点主要体现为,需要人工干预调整参数,效果比较差。很难兼容所有的ct图像,鲁棒性差。本技术对神经网络模型进行训练时,因为采用了所有的ct图像进行训练,鲁棒性比较高,可以对各种类型的ct图像进行识别去伪影,提高去伪影的效果。
[0065]
第二方面,本技术还提出了一种ct图像去金属伪影的方法,包括:将待识别的带有金属伪影的关节假体的ct图像输入如上述任一项方法所述的模型训练方法训练得到的神经网络模型;获得所述神经网络模型输出的去金属伪影的关节假体的ct图像。
[0066]
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0067]
第三方面,根据本发明实施例,还提供了一种ct图像去金属伪影的模型训练装置,如图4所示,该装置包括:
[0068]
第一处理模块41,用于根据关节的位置生成不包含金属伪影的关节假体的ct 原图像集;
[0069]
第二处理模块42,用于根据所述ct原图像集生成包含金属伪影的关节假体的带伪影ct图像集;
[0070]
第三处理模块43,用于利用去伪影算法对所述带伪影ct图像集进行金属伪影去除处理,生成至少两个不包含金属伪影的去伪影ct图像集;
[0071]
训练模块44,用于将所述带伪影ct图像集以及所述至少两个去伪影ct图像集作为训练样本输入初始神经网络模型,通过调整所述初始神经网络模型中的模型参数,直至所述初始神经网络模型训练成功,得到训练好的神经网络模型。
[0072]
根据本技术的第四方面,提供了一种电子设备,参见附图5所示的电子设备的结构示意图;包括至少一个处理器51和至少一个存储器52;所述存储器52用于存储一个或多个程序指令;所述处理器51,用于运行一个或多个程序指令,用以执行上述任一项所述的方法。
[0073]
第四方面,本技术还提出了一种计算机可读存储介质,计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行上述任一项的方法。
[0074]
可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。处理器读取存储介质中的信息,结合其硬件完成上述方法的步骤。
[0075]
存储介质可以是存储器,例如可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
[0076]
其中,非易失性存储器可以是只读存储器(read-only memory,简称rom)、可编程只读存储器(programmable rom,简称prom)、可擦除可编程只读存储器(erasable prom,简称eprom)、电可擦除可编程只读存储器(electricallyeprom,简称eeprom)或闪存。
[0077]
易失性存储器可以是随机存取存储器(random access memory,简称ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(static ram,简称sram)、动态随机存取存储器(dynamicram,简称dram)、同步动态随机存取存储器(synchronous dram,简称 sdram)、双倍数据速率同步动态随机存取存储器(double data ratesdram,简称ddrsdram)、增强型同步动态随机存取存储器(enhanced sdram,简称 esdram)、同步连接动态随机存取存储器(synchlink dram,简称sldram) 和直接内存总线随机存取存储器(directrambus ram,简称drram)。
[0078]
本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
[0079]
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件与软件组合来实现。当应用软件时,可以将相应功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
[0080]
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
[0081]
以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。