生成对抗网络训练方法、装置、计算机设备和存储介质与流程

文档序号:27930733发布日期:2021-12-11 12:12阅读:105来源:国知局
生成对抗网络训练方法、装置、计算机设备和存储介质与流程

1.本技术涉及数据重建技术领域,特别是涉及一种生成对抗网络训练方法、装置、计算机设备和存储介质。


背景技术:

2.ct(computed tomography),即电子计算机断层扫描,它是利用精确准直的x线束等,与灵敏度极高的探测器一同围绕人体的某一部位作一个接一个的断面扫描。由于具有扫描时间快,图像清晰等特点,因此应用于多种疾病的检查。临床上,ct图像通常采用较大层厚(5mm)的数据进行储存以节约存储空间。但是,由于ct图像层厚较大,因此在层厚方向上存在信息丢失,无法应用于某些特定分析任务的问题。
3.目前,为了解决层厚方向信息丢失的问题,常采用的方式包括:先对厚层ct图像进行层间插值,并根据插值得到的图像训练出神经网络模型,然后再使用该神经网络模型进行层厚方向信息的恢复。
4.然而,插值计算可能会出现误差,因此训练出的神经网络模型可能出现恢复准确性低的问题,利用神经网络模型重建出的图像质量不佳,难以满足分析任务的需求。


技术实现要素:

5.基于此,有必要针对上述技术问题,提供一种生成对抗网络训练方法、装置、计算机设备和存储介质,以训练出层厚方向信息恢复准确性较高的循环生成对抗网络,利用该循环生成对抗网络重建出质量较好的图像,从而满足分析任务的需求。
6.第一方面,本公开实施例提供了一种生成对抗网络训练方法,该方法包括:
7.获取训练样本集;训练样本集包括多个第一样本数据和对应的第二样本数据;第二样本数据对应的重建图像的层厚小于第一样本数据对应的重建图像的层厚;
8.基于训练样本集进行神经网络训练,得到循环生成对抗网络。
9.在其中一个实施例中,上述基于训练样本集进行神经网络训练,得到循环生成对抗网络,包括:
10.分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据;
11.基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络;
12.其中,分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据,包括:
13.根据第一预设尺寸分别计算第一样本数据对应的第一层数和第二样本数据对应的第二层数;
14.从第一样本数据中选取出与第一层数对应的第一块数据;
15.从第二样本数据中选取出与第二层数对应的第二块数据。
16.在其中一个实施例中,还包括:
17.根据多个第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络。
18.在其中一个实施例中,循环生成对抗网络包括第一生成器和第二生成器,上述基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络,包括:
19.将第一块数据输入到第一生成器进行重建,得到第一生成结果;
20.将第二块数据输入到第二生成器进行重建,得到第二生成结果;
21.将第一生成结果输入到第二生成器进行重建,得到第三生成结果;
22.将第二生成结果输入到第一生成器进行重建,得到第四生成结果;
23.基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算总损失值,并根据总损失值调整网络参数得到循环生成对抗网络。
24.在其中一个实施例中,循环生成对抗网络还包括第一判别器和第二判别器,总损失值包括第一损失值和第二损失值,上述基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算总损失值,并根据总损失值调整网络参数得到循环生成对抗网络,包括:
25.基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算出第一损失值,基于第一块数据、第二块数据、第一生成结果和第二生成结果计算出第二损失值;
26.利用第一损失值调整第一生成器和第二生成器的网络参数,利用第二损失值调整第一判别器和第二判别器的网络参数,得到循环生成对抗网络。
27.在其中一个实施例中,上述第一损失值的计算过程包括:
28.将第二生成结果输入到第一判别器中,得到第一判别器输出的第一判别结果,计算第一判别结果与相同尺寸的全一数据之间的损失,得到第一生成对抗损失值;第一判别结果用于指示第二生成结果是否为真的第一块数据;
29.将第一生成结果输入到第二判别器中,得到第二判别器输出的第二判别结果,计算第二判别结果与相同尺寸的全一数据之间的损失,得到第二生成对抗损失值;第二判别结果用于指示第一生成结果是否为真的第二块数据;
30.计算第一块数据与第三生成结果之间的损失,得到第一循环对抗损失值,计算第二块数据与第四生成结果之间的损失,得到第二循环对抗损失值;
31.对第一生成对抗损失值、第二生成对抗损失值、第一循环对抗损失值和第二循环对抗损失值进行加权求和计算,得到第一损失值。
32.在其中一个实施例中,上述第二损失值的计算过程包括:
33.计算第一判别结果与相同尺寸的全零数据之间的损失,得到第三生成对抗损失值;
34.将第一块数据输入到第一判别器中,得到第一判别器输出的第三判别结果,计算第三判别结果与相同尺寸的全一数据之间的损失,得到第四生成对抗损失值;
35.计算第二判别结果与相同尺寸的全零数据之间的损失,得到第五生成对抗损失值;
36.将第二块数据输入到第二判别器中,得到第二判别器输出的第四判别结果,计算第四判别结果与相同尺寸的全一数据之间的损失,得到第六生成对抗损失值;
37.对第三生成对抗损失值、第四生成对抗损失值、第五生成对抗损失值和第六生成对抗损失值进行加权求和计算,得到第二损失值。
38.第二方面,本公开实施例提供了一种医疗影像数据生成方法,该方法包括:
39.获取第一医疗影像数据;
40.利用预先训练的影像数据生成模型对第一医疗影像数据进行重建,得到第二医疗影像数据;
41.其中,影像数据生成模型包括第一方面所述的循环生成对抗网络。
42.在其中一个实施例中,上述利用预先训练的影像数据生成模型对第一医疗影像数据进行重建,得到第二医疗影像数据,包括:
43.根据第二预设尺寸和第一医疗影像数据得到多个输入影像数据;
44.将多个输入影像数据依次输入到影像数据生成模型中进行重建,得到影像数据生成模型输出的各输入影像数据对应的输出影像数据;
45.对多个输出影像数据进行合成处理,得到第二医疗影像数据。
46.在其中一个实施例中,上述对多个输出影像数据进行合成处理,得到第二医疗影像数据,包括:
47.对各输出影像数据进行高斯加权计算,得到各输出影像数据对应的加权影像数据;
48.对多个加权影像数据进行平均计算,得到第二医疗影像数据。
49.第三方面,本公开实施例提供了一种生成对抗网络的训练装置,其特征在于,该装置包括:
50.样本获取模块,用于获取训练样本集;所述训练样本集包括多个第一样本数据和对应的第二样本数据;所述第二样本数据对应的重建图像的层厚小于所述第一样本数据对应的重建图像的层厚;
51.训练模块,用于基于所述训练样本集进行神经网络训练,得到循环生成对抗网络。
52.在其中一个实施例中,上述训练模块包括:
53.数据选取子模块,用于分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据;
54.训练子模块,用于基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络;
55.其中,数据选取子模块,具体用于根据第一预设尺寸分别计算第一样本数据对应的第一层数和第二样本数据对应的第二层数;从第一样本数据中选取出与第一层数对应的第一块数据;从第二样本数据中选取出与第二层数对应的第二块数据。
56.在其中一个实施例中,上述训练模块,还用于根据多个第一预设尺寸和/或多个第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络。
57.在其中一个实施例中,循环生成对抗网络包括第一生成器和第二生成器,上述训练子模块,包括:
58.第一重建单元,用于将第一块数据输入到第一生成器进行重建,得到第一生成结果;
59.第二重建单元,用于将第二块数据输入到第二生成器进行重建,得到第二生成结果;
60.第三重建单元,用于将第一生成结果输入到第二生成器进行重建,得到第三生成
结果;
61.第四重建单元,用于将第二生成结果输入到第一生成器进行重建,得到第四生成结果;
62.训练单元,用于基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算总损失值,并根据总损失值调整网络参数得到循环生成对抗网络。
63.在其中一个实施例中,循环生成对抗网络还包括第一判别器和第二判别器,总损失值包括第一损失值和第二损失值,上述训练单元,具体用于基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算出第一损失值,基于第一块数据、第二块数据、第一生成结果和第二生成结果计算出第二损失值;利用第一损失值调整第一生成器和第二生成器的网络参数,利用第二损失值调整第一判别器和第二判别器的网络参数,得到循环生成对抗网络。
64.在其中一个实施例中,上述训练单元,具体用于将第二生成结果输入到第一判别器中,得到第一判别器输出的第一判别结果,计算第一判别结果与相同尺寸的全一数据之间的损失,得到第一生成对抗损失值;第一判别结果用于指示第二生成结果是否为真的第一块数据;将第一生成结果输入到第二判别器中,得到第二判别器输出的第二判别结果,计算第二判别结果与相同尺寸的全一数据之间的损失,得到第二生成对抗损失值;第二判别结果用于指示第一生成结果是否为真的第二块数据;计算第一块数据与第三生成结果之间的损失,得到第一循环对抗损失值,计算第二块数据与第四生成结果之间的损失,得到第二循环对抗损失值;对第一生成对抗损失值、第二生成对抗损失值、第一循环对抗损失值和第二循环对抗损失值进行加权求和计算,得到第一损失值。
65.在其中一个实施例中,上述训练单元,具体用于计算第一判别结果与相同尺寸的全零数据之间的损失,得到第三生成对抗损失值;将第一块数据输入到第一判别器中,得到第一判别器输出的第三判别结果,计算第三判别结果与相同尺寸的全一数据之间的损失,得到第四生成对抗损失值;计算第二判别结果与相同尺寸的全零数据之间的损失,得到第五生成对抗损失值;将第二块数据输入到第二判别器中,得到第二判别器输出的第四判别结果,计算第四判别结果与相同尺寸的全一数据之间的损失,得到第六生成对抗损失值;对第三生成对抗损失值、第四生成对抗损失值、第五生成对抗损失值和第六生成对抗损失值进行加权求和计算,得到第二损失值。
66.第四方面,本公开实施例提供了一种医疗影像数据生成装置,该装置包括:
67.数据获取模块,用于获取第一医疗影像数据;
68.数据生成模块,用于利用预先训练的影像数据生成模型对第一医疗影像数据进行重建,得到第二医疗影像数据;
69.其中,影像数据生成模型包括第一方面所述的循环生成对抗网络。
70.在其中一个实施例中,上述数据生成模块包括:
71.数据获得子模块,用于根据第二预设尺寸和第一医疗影像数据得到多个输入影像数据;
72.重建子模块,用于将多个输入影像数据依次输入到影像数据生成模型中进行重建,得到影像数据生成模型输出的各输入影像数据对应的输出影像数据;
73.合成子模块,用于对多个输出影像数据进行合成处理,得到第二医疗影像数据。
74.在其中一个实施例中,上述合成子模块,具体用于对各输出影像数据进行高斯加权计算,得到各输出影像数据对应的加权影像数据;对多个加权影像数据进行平均计算,得到第二医疗影像数据。
75.第五方面,本公开实施例提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
76.获取训练样本集;训练样本集包括多个第一样本数据和对应的第二样本数据;第二样本数据对应的重建图像的层厚小于第一样本数据对应的重建图像的层厚;
77.基于训练样本集进行神经网络训练,得到循环生成对抗网络。
78.第六方面,本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
79.获取训练样本集;训练样本集包括多个第一样本数据和对应的第二样本数据;第二样本数据对应的重建图像的层厚小于第一样本数据对应的重建图像的层厚;
80.基于训练样本集进行神经网络训练,得到循环生成对抗网络。
81.上述生成对抗网络训练方法、装置、计算机设备和存储介质,终端获取训练样本集;基于训练样本集进行神经网络训练,得到循环生成对抗网络。其中,训练样本集包括多个第一样本数据和对应的第二样本数据,并且第二样本数据对应的重建图像的层厚小于第一样本数据对应的重建图像的层厚,由于与现有技术相比无需进行插值计算,因此训练出的循环生成对抗网络恢复准确性较高,并可以应用于不同层厚分辨率的图像重建,比如将低层厚分辨率图像重建为高层厚分辨率图像,这样,利用循环生成对抗网络就可以解决层厚方向信息丢失问题,重建出质量较好的图像,从而满足分析任务的需求。
附图说明
82.图1为一个实施例中生成对抗网络训练方法的应用环境图;
83.图2为一个实施例中生成对抗网络训练方法的流程示意图;
84.图3为一个实施例中基于训练样本集进行神经网络训练步骤的流程示意图;
85.图4为一个实施例中循环生成对抗网络的结构示意图;
86.图5为一个实施例中基于第一块数据和第二块数据进行神经网络训练步骤的流程示意图;
87.图6为一个实施例中总生成对抗损失值的计算步骤的流程示意图;
88.图7为一个实施例中总循环对抗损失值的计算步骤的流程示意图;
89.图8为一个实施例中医疗影像数据生成方法的流程示意图;
90.图9为一个实施例中利用预先训练的影像数据生成模型对第一医疗影像数据进行重建步骤的流程示意图;
91.图10为一个实施例中矩阵的示意图;
92.图11为一个实施例中生成对抗网络训练装置的结构框图;
93.图12为一个实施例中医疗影像数据生成装置的结构框图;
94.图13为一个实施例中计算机设备的内部结构图。
具体实施方式
95.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
96.本技术提供的生成对抗网络训练方法,可以应用于如图1所示的应用环境中。该应用环境可以包括终端101和图像获取设备。其中,终端101可以通过网络与图像获取设备进行通信。上述终端101可以但不限于是各种个人计算机、笔记本电脑和平板电脑;上述图像获取设备可以是医学扫描设备,可以但不限于是ct(computed tomography,即电子计算机断层扫描)设备、pet(positron emission computed tomography,正电子发射型计算机断层显像)

ct设备和mr(magnetic resonance,磁共振)设备,也可以是其他扫描设备,如地质探测、地理测绘等三维扫描设备,还可以是其他任何获取三维图像的设备,如游戏、电影电视等三维图像显示终端。
97.以图像获取设备是医学扫描设备102为例,该应用环境还可以包括pacs(picture archiving and communication systems,影像归档和通信系统)服务器103,终端101和医学扫描设备102均可以通过网络与pacs服务器103进行通信。上述pacs服务器103可以用独立的服务和器或者是多个服务器组成的服务器集群来实现。
98.在一个实施例中,如图2所示,提供了一种生成对抗网络训练方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
99.步骤201,获取训练样本集。
100.其中,训练样本集包括多个第一样本数据和对应的第二样本数据;第二样本数据对应的重建图像的层厚小于第一样本数据对应的重建图像的层厚。
101.可选地,第一样本数据和第二样本数据可以为不同诊疗对象相同部位的医疗影像数据。例如,第一样本数据为诊疗对象a的胸部ct影像数据,第二样本数据为诊疗对象b的胸部ct影像数据,诊疗对象a的胸部ct影像数据对应的重建图像的层厚为5mm,诊疗对象b的胸部ct影像数据对应的重建图像的层厚为2mm。
102.可选地,第一样本数据和第二样本数据可以为同一诊疗对象不同部位的医疗影像数据。例如,第一样本数据为诊疗对象a的胸部ct影像数据,第二样本数据为诊疗对象a的腹部ct影像数据,胸部ct影像数据对应的重建图像的层厚为5mm,腹部ct影像数据对应的重建图像的层厚为2mm。
103.可选地,第一样本数据和第二样本数据可以为不同诊疗对象不同部位的医疗影像数据。例如,第一样本数据为诊疗对象a的胸部ct影像数据,第二样本数据为诊疗对象b的腹部ct影像数据,胸部ct影像数据对应的重建图像的层厚为5mm,腹部ct影像数据对应的重建图像的层厚为2mm。
104.可选地,多个第二样本数据对应的重建图像的层厚不同。例如,第二样本数据包括诊疗对象a的腹部ct影像数据1和腹部ct影像数据2,腹部ct影像数据1对应的重建图像的层厚为2mm,腹部ct影像数据2对应的重建图像的层厚为3mm。
105.本公开实施例对第一样本数据和第二样本数据不做限定,对第一样本数据对应的重建图像的层厚以及第二样本数据对应的重建图像的层厚也不做限定。
106.终端可以从医疗扫描设备获取多个第一样本数据和对应的第二样本数据,也可以
从pacs服务器获取多个第一样本数据和对应的第二样本数据。然后,终端将获取到的多个第一样本数据和对应的第二样本数据组成训练样本集。
107.步骤202,基于训练样本集进行神经网络训练,得到循环生成对抗网络。
108.终端获取到训练样本集后,根据训练样本集中的第一样本数据和第二样本数据进行神经网络的训练,得到循环生成对抗网络(cycle generative adversarial networks)。
109.在实际应用中,可以利用循环生成对抗网络对第一医疗影像数据进行重建得到第二医疗影像数据,其中,第二医疗影像数据对应的重建图像的层厚小于第一医疗影像数据对应的重建图像的层厚。
110.上述生成对抗网络训练方法中,终端获取训练样本集;基于训练样本集进行神经网络训练,得到循环生成对抗网络。其中,训练样本集包括多个第一样本数据和对应的第二样本数据,并且第二样本数据对应的重建图像的层厚小于第一样本数据对应的重建图像的层厚,由于与现有技术相比无需进行插值计算,因此训练出的循环生成对抗网络恢复准确性较高,并且可以应用于不同层厚分辨率的图像重建,比如将低层厚分辨率图像重建为高层厚分辨率图像,这样,利用循环生成对抗网络就可以解决层厚方向信息丢失问题,重建出质量较好的图像,从而满足分析任务的需求。
111.在一个实施例中,如图3所示,上述基于训练样本集进行神经网络训练,得到循环生成对抗网络的步骤,可以包括:
112.步骤301,分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据。
113.终端从第一样本数据中选取出第一块数据,从第二样本数据中选取出第二块数据,其中,第一块数据与第二块数据尺寸相同,并且需要考虑到终端的硬件条件,第一块数据和第二块数据的尺寸不能过大。上述选取操作可以是随机选取,也可以是按照预设规则进行选取。本公开实施例对选取操作不做限定。
114.在其中一个实施例中,上述分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据的过程,可以包括:根据第一预设尺寸分别计算第一样本数据对应的第一层数和第二样本数据对应的第二层数;从第一样本数据中选取出与第一层数对应的第一块数据;从第二样本数据中选取出与第二层数对应的第二块数据。
115.例如,第一样本数据对应的重建图像的层厚为5mm,且第一样本数据中每个体素的尺寸是1*1*5,第二样本数据对应的重建图像的层厚为2mm,且第二样本数据中每个体素的尺寸是1*1*2。根据预设尺寸为256*256*4,可以计算出第一样本数据对应的第一层数为4层,第二样本数据对应的第二层数为10层。之后,从第一样本数据中选取出与第一层数对应的第一块数据大小为256*256*4,从第二样本数据中选取出与第二层数对应的第二块数据大小为256*256*10。本公开实施例对预设尺寸不做限定。
116.步骤302,基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络。
117.在每一轮训练过程中,均按照上述步骤选取出第一块数据和第二块数据。之后,根据第一块数据和第二块数据进行神经网络训练,若确定训练结果不满足预设收敛条件,则调整神经网络中的网络参数,并进行下一轮第一块数据和第二块数据的选取以及神经网络的训练。直到确定训练结果满足预设收敛条件时结束训练,并将结束训练时的神经网络确
定为循环生成对抗网络。上述网络参数即为循环生成对抗网络的网络参数。
118.在其中一个实施例中,从第二样本数据中选取出第二块数据后,对第二块数据进行插值得到第三块数据;基于第一块数据和第三块数据进行神经网络训练,得到循环生成对抗网络。其中,第二块数据对应的重建图像的层厚小于第三块数据对应的重建图像的层厚。
119.例如,第一样本数据对应的重建图像的层厚为5mm,第二样本数据对应的重建图像的层厚为2mm。对第二块数据进行插值处理得到第三块数据,第三块数据对应的重建图像的层厚为3mm。若基于第一块数据和第二块数据进行神经网络训练得到循环生成对抗网络,该循环生成对抗网络对第一医疗影像数据进行重建得到第二医疗影像数据,第一医疗影像数据对应的重建图像的层厚为5mm,第二医疗影像数据对应的重建图像的层厚为2mm。若基于第一块数据和第三块数据进行神经网络训练得到循环生成对抗网络,该循环生成对抗网络对第一医疗影像数据进行重建得到第二医疗影像数据,第一医疗影像数据对应的重建图像的层厚为5mm,第二医疗影像数据对应的重建图像的层厚为3mm。
120.在其中一个实施例中,根据多个第一预设尺寸和/或多个第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络。
121.例如,根据第一预设尺寸a选取出第一块数据和第二块数据进行第一轮神经网络训练;根据第一预设尺寸b选取出第一块数据和第二块数据进行第二轮神经网络训练;根据第一预设尺寸c选取出第一块数据和第三块数据进行第三轮神经网络训练,以此类推,直到训练出的神经网络满足预设收敛条件,得到循环生成对抗网络。其中,第一预设尺寸a、b、c可以为不同的尺寸。
122.上述基于训练样本集进行神经网络训练,得到循环生成对抗网络的过程中,终端分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据;基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络。
123.在一个实施例中,如图4所示,循环生成对抗网络包括第一生成器、第二生成器、第一判别器和第二判别器,如图5所示,上述基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络的步骤,可以包括:
124.步骤401,将第一块数据输入到第一生成器进行重建,得到第一生成结果。
125.终端将第一块数据输入到第一生成器中,第一生成器根据第一块数据进行数据重建处理得到第一生成结果。
126.其中,第一生成结果与第二块数据对应。例如,第一块数据是从诊疗对象a的胸部ct影像数据中选取出的厚层数据,第二块数据是从诊疗对象b的胸部ct影像数据中选取出的薄层数据,则由第一生成器进行重建得到与第二块数据层厚相同的薄层的第一生成结果,如图4所示。
127.步骤402,将第二块数据输入到第二生成器进行重建,得到第二生成结果。
128.终端将第二块数据输入到第二生成器中,第二生成器根据第二块数据进行数据重建处理得到第二生成结果。
129.其中,第二生成结果与第一块数据对应。例如,第一块数据是从诊疗对象a的胸部ct影像数据中选取出的厚层数据,第二块数据是从诊疗对象b的胸部ct影像数据中选取出的薄层数据,则由第二生成器进行重建得到与第一块数据层厚相同的厚层的第二生成结
果,如图4所示。
130.本公开实施例对重建过程中第一生成器和第二生成器对输入数据的部位、器官不做限定。
131.步骤403,将第一生成结果输入到第二生成器进行重建,得到第三生成结果。
132.终端得到第一生成结果后,将第一生成结果输入到第二生成器,第二生成器根据第一生成结果进行数据重建得到第三生成结果。
133.其中,第三生成结果与第一块数据对应。例如,第一块数据是从诊疗对象a的胸部ct影像数据中选取出的厚层数据,第一生成结果是由诊疗对象a的胸部ct影像厚层数据重建得到的薄层数据,而第三生成结果则是由第二生成器对该重建薄层数据进行重建,得到与第一块数据相似的诊疗对象a的胸部ct影像重建厚层数据,如图4所示。
134.步骤404,将第二生成结果输入到第一生成器进行重建,得到第四生成结果。
135.终端得到第二生成结果后,将第二生成结果输入到第一生成器,第一生成器根据第二生成结果进行数据重建得到第四生成结果。
136.其中,第四生成结果与第二块数据对应。例如,第二块数据是从诊疗对象b的胸部ct影像数据中选取出的薄层数据,第二生成结果是由诊疗对象b的胸部ct影像数据薄层数据重建得到的厚层数据,而第四生成结果则是由第一生成器对该重建厚层数据进行重建,得到与第二块数据相似的诊疗对象b的胸部ct影像重建薄层数据,如图4所示。
137.步骤405,基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算总损失值,并根据总损失值调整网络参数得到循环生成对抗网络。
138.其中,总损失值包括第一损失值和第二损失值。
139.终端得到第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果后,可以基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算出第一损失值,基于第一块数据、第二块数据、第一生成结果和第二生成结果计算出第二损失值;再利用第一损失值调整第一生成器和第二生成器的网络参数,利用第二损失值调整第一判别器和第二判别器的网络参数,得到循环生成对抗网络。
140.具体地,先固定第一判别器和第二判别器的网络参数,根据第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算第一损失值,根据第一损失值调整第一生成器和第二生成器的网络参数。之后,固定第一生成器和第二生成器的网络参数,根据第一块数据、第二块数据、第一生成结果和第二生成结果计算出第二损失值,根据第二损失值调整第一判别器和第二判别器的网络参数。以此类推,直到第一生成器、第二生成器、第一判别器和第二判别器的输出符合预设收敛条件,则结束训练,并将结束训练时得到的神经网络确定为循环生成对抗网络。
141.上述实施例中,终端将第一块数据输入到第一生成器进行重建,得到第一生成结果;将第二块数据输入到第二生成器进行重建,得到第二生成结果;将第一生成结果输入到第二生成器进行重建,得到第三生成结果;将第二生成结果输入到第一生成器进行重建,得到第四生成结果;基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算总损失值,并根据总损失值调整网络参数得到循环生成对抗网络。
在本公开实施例中,第一块数据和第二块数据之间是相对独立的,可以来自不同的诊疗对象的相同部位,也可以来自同一诊疗对象的不同部位,优选的是来自不同诊疗对象的不同部位,不仅可以减低数据获取的难度,而且训练之前无需预先对第一块数据和第二块数据进行配准或者建立对应关系等操作,因此,可以实现神经网络的无监督训练,从而节省训练标签的准备过程,进而提高循环生成对抗网络的训练效率。
142.在一个实施例中,如图6所示,上述第一损失值的计算过程包括:
143.步骤4051,将第二生成结果输入到第一判别器中,得到第一判别器输出的第一判别结果,计算第一判别结果与相同尺寸的全一数据之间的损失,得到第一生成对抗损失值。
144.其中,第一判别结果用于指示第二生成结果是否为真的第一块数据。例如,第一判别结果趋向于1,则表明第一判别器判断第二生成结果为真的第一块数据的概率较大;第一判别结果趋向于0,则表明第一判别器判断第二生成结果为假的第一块数据的概率较大;第一判别结果趋向于0.5,则表明第一判别器较难判别出第二生成结果是否为真的第一块数据。
145.终端将第二生成结果输入到第一判别器中,第一判别器判断第二生成结果是否为真的第一块数据,并输出第一判别结果,如图4所示。然后利用预先设置的损失函数计算第一判别结果与相同尺寸的全一数据之间的损失,得到第一生成对抗损失值。其中,全一数据为每个像素对应的概率均为1的数据。
146.步骤4052,将第一生成结果输入到第二判别器中,得到第二判别器输出的第二判别结果,计算第二判别结果与相同尺寸的全一数据之间的损失,得到第二生成对抗损失值。
147.其中,第二判别结果用于指示第一生成结果是否为真的第二块数据。例如,第二判别结果趋向于1,则表明第二判别器判断第一生成结果为真的第二块数据的概率较大;第二判别结果趋向于0,则表明第二判别器判断第一生成结果为假的第二块数据的概率较大;第二判别结果趋向于0.5,则表明第二判别器较难判别出第一生成结果是否为真的第二块数据。
148.终端将第一生成结果输入到第二判别器中,第二判别器判断第一生成结果是否为真的第二块数据,并输出第二判别结果,如图4所示。利用预先设置的损失函数计算第二判别结果与相同尺寸的全一数据之间的损失,得到第二生成对抗损失值。
149.步骤4053,计算第一块数据与第三生成结果之间的损失,得到第一循环对抗损失值,计算第二块数据与第四生成结果之间的损失,得到第二循环对抗损失值。
150.利用预先设置的损失函数计算第一块数据与第三生成结果之间的损失,得到第一循环对抗损失值。利用预先设置的损失函数计算第二块数据与第四生成结果之间的损失,得到第二循环对抗损失值。
151.上述损失函数可以为mse(均方误差)函数,也可以为其他损失函数。本公开实施例对损失函数不做限定,可以根据实际情况进行选取。
152.步骤4054,对第一生成对抗损失值、第二生成对抗损失值、第一循环对抗损失值和第二循环对抗损失值进行加权求和计算,得到第一损失值。
153.例如,第一生成对抗损失值为l1、第二生成对抗损失值为l2、第一循环对抗损失值为l1’、第二循环对抗损失值为l2’,并且第一生成对抗损失值和第二生成对抗损失值的权重为k1,第一循环对抗损失值和第二循环对抗损失值的权重为k2,则第一损失值为l1=k1*
(l1+l2)+k2*(l1’+l2’)。其中,k1:k2可以为1:10。本公开实施例对权重不做限定,可以根据实际情况进行设置。
154.上述l1可以采用如下公式计算:
155.l1=e
y
[log(1

d1(g
21
(y)))]
[0156]
上述l2可以采用如下公式计算:
[0157]
l2=e
x
[log(1

d2(g
12
(x)))]
[0158]
上述l1’可以采用如下公式计算:
[0159]
l1

=e
x
[||x

g
21
(g
12
(x))||1]
[0160]
上述l2’可以采用如下公式计算:
[0161]
l2

=e
y
[||y

g
12
(g
21
(y))||1]
[0162]
其中,x为第一块数据,y为第二块数据,g
12
(x)为第一生成结果,g
21
(y)为第二生成结果,g
21
(g
12
(x))为第三生成结果,g
12
(g
21
(y))为第四生成结果,d1(g
21
(y))为第一判别结果,d2(g
12
(x))为第二判别结果。
[0163]
上述实施例中,终端基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算第一失值。在这个过程中,利用生成器的生成结果和判别器的判别结果得到第一损失值,可以更好地调节神经网络中第一生成器和第二生成器的网络参数,进而提高生成器生成的准确度。
[0164]
在一个实施例中,如图7所示,上述第二损失值的计算过程,可以包括:
[0165]
步骤4055,计算第一判别结果与相同尺寸的全零数据之间的损失,得到第三生成对抗损失值。
[0166]
终端利用预先设置的损失函数计算第一判别结果与相同尺寸的全零数据之间的损失,得到第三生成对抗损失值。其中,全零数据为每个像素对应的概率均为0的数据。
[0167]
步骤4056,将第一块数据输入到第一判别器中,得到第一判别器输出的第三判别结果,计算第三判别结果与相同尺寸的全一数据之间的损失,得到第四生成对抗损失值。
[0168]
其中,第三判别结果用于指示输入的第一块数据是否为真的第一块数据。例如,第三判别结果趋向于1,则表明第一判别器判断输入的第一块数据为真的第一块数据的概率较大;第三判别结果趋向于0,则表明第一判别器判断输入的第一块数据为假的第一块数据的概率较大;第三判别结果趋向于0.5,则表明第一判别器较难判别出输入的第一块数据是否为真的第一块数据。
[0169]
终端将第一块数据输入到第一判别器中,得到第一判别器输出的第三判别结果,之后,利用预先设置的损失函数计算第三判别结果与相同尺寸的全一数据之间的损失,得到第四生成对抗损失值。
[0170]
步骤4057,计算第二判别结果与相同尺寸的全零数据之间的损失,得到第五生成对抗损失值。
[0171]
终端利用预先设置的损失函数计算第二判别结果与相同尺寸的全零数据之间的损失,得到第五生成对抗损失值。
[0172]
步骤4058,将第二块数据输入到第二判别器中,得到第二判别器输出的第四判别结果,计算第四判别结果与相同尺寸的全一数据之间的损失,得到第六生成对抗损失值。
[0173]
其中,第四判别结果用于指示输入的第二块数据是否为真的第二块数据。例如,第
四判别结果趋向于1,则表明第二判别器判断输入的第二块数据为真的第二块数据的概率较大;第四判别结果趋向于0,则表明第二判别器判断输入的第二块数据为假的第二块数据的概率较大;第四判别结果趋向于0.5,则表明第二判别器较难判别出输入的第二块数据是否为真的第二块数据。
[0174]
终端将第二块数据输入到第二判别器中,得到第二判别器输出的第四判别结果,之后,利用预先设置的损失函数计算第四判别结果与相同尺寸的全一数据之间的损失,得到第六生成对抗损失值。
[0175]
步骤4059,对第三生成对抗损失值、第四生成对抗损失值、第五生成对抗损失值和第六生成对抗损失值进行加权求和计算,得到第二损失值。
[0176]
例如,第三年生成对抗损失值为l3、第四生成对抗损失值为l4、第五生成对抗损失值为l5、第六生成对抗损失值为l6,并且第三生成对抗损失值、第四生成对抗损失值的权重值为k3、第五生成对抗损失值和第六生成对抗损失值的权重值为k4,则第二损失值为l2=k3*(l3+l4)+k4*(l5+l6)。其中,k3和k4可以为0.5。本公开实施例对权重不做限定,可以根据实际情况进行设置。
[0177]
上述l3可以采用如下公式计算:
[0178]
l3=e
y
[log(0

d1(g
21
(y)))]
[0179]
上述l4可以采用如下公式计算:
[0180]
l4=e
x
[log(1

d1(x))]
[0181]
上述l5可以采用如下公式计算:
[0182]
l5=e
x
[log(0

d2(g
12
(x)))]
[0183]
上述l6可以采用如下公式计算:
[0184]
l6=e
y
[log(1

d2(y))]
[0185]
其中,,x为第一块数据,y为第二块数据,g
12
(x)为第一生成结果,g
21
(y)为第二生成结果,g
21
(g
12
(x))为第三生成结果,g
12
(g
21
(y))为第四生成结果,d1(g
21
(y))为第一判别结果,d2(g
12
(x))为第二判别结果,d1(x)为第三判别结果,d2(y)为第四判别结果。
[0186]
上述实施例中,终端根据第一块数据、第二块数据、第一生成结果和第二生成结果计算出第二损失值。在这个过程中,利用生成器的生成结果和判别器的判别结果得到损失值,从而可以更好地调节神经网络中的第一判别器和第二判别器的网络参数,进而提高判别器判断的准确度。
[0187]
在一个实施例中,如图8所示,提供了一种医疗影像数据生成方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
[0188]
步骤501,获取第一医疗影像数据。
[0189]
终端可以从医学扫描设备获取第一医疗影像,也可以从pacs服务器获取第一医疗影像数据。本公开实施例对此不做限定。
[0190]
步骤502,利用预先训练的影像数据生成模型对第一医疗影像数据进行重建,得到第二医疗影像数据。
[0191]
其中,影像数据生成模型包括循环生成对抗网络。
[0192]
在实际使用中,可以根据实际情况利用循环生成对抗网络中的不同部分。例如,期望对低分辨率的医疗影像数据进行重建,得到高分辨率的医疗影像数据,则可以将第一医
疗影像数据输入到循环生成对抗网络中的第一生成器,由第一生成器根据第一医疗影像数据进行重建并输出第二医疗影像数据。第二医疗影像数据的层厚分辨率高于第一医疗影像数据的层厚分辨率,即第二医疗影像数据对应的重建图像的层厚小于第一医疗影像数据对应的重建图像的层厚。
[0193]
或者,期望对高分辨率的医疗影像数据进行重建,得到低分辨率的医疗影像数据,则可以将第一医疗影像数据输入到循环生成对抗网络中的第二生成器,由第二生成器根据第一医疗影像数据进行重建并输出第二医疗影像数据。第二医疗影像数据的分辨率低于第一医疗影像数据的分辨率,即第二医疗影像数据对应的重建图像的层厚大于第一医疗影像数据对应的重建图像的层厚。
[0194]
其中,循环生成对抗网络的训练过程,可以包括:获取训练样本集;训练样本集包括多个第一样本数据和对应的第二样本数据;基于训练样本集进行神经网络训练,得到循环生成对抗网络。上述第二样本数据对应的重建图像的层厚小于上述第一样本数据对应的重建图像的层厚。
[0195]
在其中一个实施例中,上述基于训练样本集进行神经网络训练,得到循环生成对抗网络的过程,可以包括:分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据;基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络。
[0196]
在其中一个实施例中,上述分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据的过程,可以包括:根据第一预设尺寸分别计算第一样本数据对应的第一层数和第二样本数据对应的第二层数;从第一样本数据中选取出与第一层数对应的第一块数据;从第二样本数据中选取出与第二层数对应的第二块数据。
[0197]
在其中一个实施例中,还可以包括:根据多个第一预设尺寸和/或多个第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络。
[0198]
在其中一个实施例中,循环生成对抗网络包括第一生成器和第二生成器,上述基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络的过程,可以包括:将第一块数据输入到第一生成器进行重建,得到第一生成结果;将第二块数据输入到第二生成器进行重建,得到第二生成结果;将第一生成结果输入到第二生成器进行重建,得到第三生成结果;将第二生成结果输入到第一生成器进行重建,得到第四生成结果;基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算总损失值,并根据总损失值调整网络参数得到循环生成对抗网络。
[0199]
在其中一个实施例中,循环生成对抗网络还包括第一判别器和第二判别器,总损失值包括第一损失值和第二损失值,上述基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算总损失值,并根据总损失值调整网络参数得到循环生成对抗网络的过程,可以包括:基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算出第一损失值,基于第一块数据、第二块数据、第一生成结果和第二生成结果计算出第二损失值;利用第一损失值调整第一生成器和第二生成器的网络参数,利用第二损失值调整第一判别器和第二判别器的网络参数,得到循环生成对抗网络。
[0200]
在其中一个实施例中,第一损失值的计算过程包括:将第二生成结果输入到第一判别器中,得到第一判别器输出的第一判别结果,计算第一判别结果与相同尺寸的全一数
据之间的损失,得到第一生成对抗损失值;第一判别结果用于指示第二生成结果是否为真的第一块数据;将第一生成结果输入到第二判别器中,得到第二判别器输出的第二判别结果,计算第二判别结果与相同尺寸的全一数据之间的损失,得到第二生成对抗损失值;第二判别结果用于指示第一生成结果是否为真的第二块数据;计算第一块数据与第三生成结果之间的损失,得到第一循环对抗损失值,计算第二块数据与第四生成结果之间的损失,得到第二循环对抗损失值;对第一生成对抗损失值、第二生成对抗损失值、第一循环对抗损失值和第二循环对抗损失值进行加权求和计算,得到第一损失值。
[0201]
在其中一个实施例中,第二损失值的计算过程包括:计算第一判别结果与相同尺寸的全零数据之间的损失,得到第三生成对抗损失值;将第一块数据输入到第一判别器中,得到第一判别器输出的第三判别结果,计算第三判别结果与相同尺寸的全一数据之间的损失,得到第四生成对抗损失值;计算第二判别结果与相同尺寸的全零数据之间的损失,得到第五生成对抗损失值;将第二块数据输入到第二判别器中,得到第二判别器输出的第四判别结果,计算第四判别结果与相同尺寸的全一数据之间的损失,得到第六生成对抗损失值;对第三生成对抗损失值、第四生成对抗损失值、第五生成对抗损失值和第六生成对抗损失值进行加权求和计算,得到第二损失值。
[0202]
上述医疗影像数据生成方法中,终端获取第一医疗影像数据;利用预先训练的影像数据生成模型对第一医疗影像数据进行重建,得到第二医疗影像数据。与现有技术中的插值方式相比,本公开实施例利用预先训练的影像数据生成模型可以生成分辨率满足用户需求的图像,不仅可以得到质量较佳的图像,而且可以满足分析任务的需求。
[0203]
在一个实施例中,如图9所示,上述利用预先训练的影像数据生成模型对第一医疗影像数据进行重建,得到第二医疗影像数据的步骤,可以包括:
[0204]
步骤5021,根据第二预设尺寸和第一医疗影像数据得到多个输入影像数据。
[0205]
终端获取到第一医疗影像数据后,根据第二预设尺寸从第一医疗影像数据中选取出多个输入影像数据。其中,每相邻两个输入影像数据之间可以重叠,也可以不重叠。
[0206]
例如,输入影像数据1与输入影像数据2之间存在50%重叠部分;输入影像数据2与输入影像数据3之间存在50%重叠部分。本公开实施例对重叠部分的大小不做限定。
[0207]
其中,第二预设尺寸可以是上述实施例中多个第一预设尺寸中的任意一个。
[0208]
步骤5022,将多个输入影像数据依次输入到影像数据生成模型中进行重建,得到影像数据生成模型输出的各输入影像数据对应的输出影像数据。
[0209]
在获得多个输入影像数据之后,如果要对低分辨率的医疗影像数据进行重建得到高分辨率的医疗影像数据,则将多个输入影像数据依次输入到影像数据生成模型的第一生成器中,得到第一生成器输出的各输入影像数据对应的输出影像数据。
[0210]
如果要对高分辨率的医疗影像数据进行重建得到低分辨率的医疗影像数据,则将多个输入影像数据依次输入到影像数据生成模型的第二生成器中,得到第二生成器输出的各输入影像数据对应的输出影像数据。
[0211]
步骤5023,对多个输出影像数据进行合成处理,得到第二医疗影像数据。
[0212]
如果多个输入影像数据之间不存在重叠部分,在得到多个输出影像数据后,可以将多个输出影像数据按照输入影像数据的位置进行拼接处理,得到第二医疗影像数据。
[0213]
如果多个输入影像数据之间存在重叠部分,在得到多个输出影像数据后,可以对
各输出影像数据进行高斯加权计算,得到各输出影像数据对应的加权影像数据;然后,对多个加权影像数据进行平均计算,得到第二医疗影像数据。
[0214]
如图10所示,首先构建两个第一医疗影像数据尺寸维度的矩阵,一个矩阵放置网络输出的结果,称为结果矩阵,一个矩阵放置权重,称为权重矩阵。例如在第一医疗影像数据左上角开始提取两个重叠块,如第一色块和第二色块经网络处理。假定输出的尺寸是256*256*10。那么构建同样256*256*10大小的,归一化到0到1之间的两个高斯矩阵。拼接回去的时候,在结果矩阵中第一色块和第二色块的位置放置网络对应的输出结果,在权重矩阵同样位置放置高斯矩阵结果。两个块的输出在结果矩阵和权重矩阵重叠部位直接相加。重复上述过程直到遍历完整个第一医疗影像数据后,直接将结果矩阵对应位置的值除以权重矩阵,就得到加权平均后的第二医疗影像数据。
[0215]
在实际应用中,还可以采用其他合成处理方式,本公开实施例对此不做限定。
[0216]
上述实施例中,根据第二预设尺寸从第一医疗影像数据中选取出输入影像数据,利用影像数据生成模型生成输出影像数据,进而根据多个输出影像得到分辨率满足用户需求的第二医疗影像数据。这样,不仅可以得到质量较佳的图像,还可以满足分析任务的需求。
[0217]
应该理解的是,虽然图2至图9的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至图9中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0218]
在一个实施例中,如图11所示,提供了一种生成对抗网络训练装置,包括:
[0219]
样本获取模块601,用于获取训练样本集;所述训练样本集包括多个第一样本数据和对应的第二样本数据;所述第二样本数据对应的重建图像的层厚小于所述第一样本数据对应的重建图像的层厚;
[0220]
训练模块602,用于基于所述训练样本集进行神经网络训练,得到循环生成对抗网络。
[0221]
在其中一个实施例中,上述训练模块602包括:
[0222]
数据选取子模块,用于分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据;
[0223]
训练子模块,用于基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络;
[0224]
其中,数据选取子模块,具体用于根据第一预设尺寸分别计算第一样本数据对应的第一层数和第二样本数据对应的第二层数;从第一样本数据中选取出与第一层数对应的第一块数据;从第二样本数据中选取出与第二层数对应的第二块数据。
[0225]
在其中一个实施例中,上述训练模块,还用于根据多个第一预设尺寸和/或多个第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络。
[0226]
在其中一个实施例中,循环生成对抗网络包括第一生成器和第二生成器,上述训
练子模块,包括:
[0227]
第一重建单元,用于将第一块数据输入到第一生成器进行重建,得到第一生成结果;
[0228]
第二重建单元,用于将第二块数据输入到第二生成器进行重建,得到第二生成结果;
[0229]
第三重建单元,用于将第一生成结果输入到第二生成器进行重建,得到第三生成结果;
[0230]
第四重建单元,用于将第二生成结果输入到第一生成器进行重建,得到第四生成结果;
[0231]
训练单元,用于基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算总损失值,并根据总损失值调整网络参数得到循环生成对抗网络。
[0232]
在其中一个实施例中,循环生成对抗网络还包括第一判别器和第二判别器,总损失值包括第一损失值和第二损失值,上述训练单元,基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算出第一损失值,基于第一块数据、第二块数据、第一生成结果和第二生成结果计算出第二损失值;利用第一损失值调整第一生成器和第二生成器的网络参数,利用第二损失值调整第一判别器和第二判别器的网络参数,得到循环生成对抗网络。
[0233]
在其中一个实施例中,上述训练单元,具体用于将第二生成结果输入到第一判别器中,得到第一判别器输出的第一判别结果,计算第一判别结果与相同尺寸的全一数据之间的损失,得到第一生成对抗损失值;第一判别结果用于指示第二生成结果是否为真的第一块数据;将第一生成结果输入到第二判别器中,得到第二判别器输出的第二判别结果,计算第二判别结果与相同尺寸的全一数据之间的损失,得到第二生成对抗损失值;第二判别结果用于指示第一生成结果是否为真的第二块数据;计算第一块数据与第三生成结果之间的损失,得到第一循环对抗损失值,计算第二块数据与第四生成结果之间的损失,得到第二循环对抗损失值;对第一生成对抗损失值、第二生成对抗损失值、第一循环对抗损失值和第二循环对抗损失值进行加权求和计算,得到第一损失值。
[0234]
在其中一个实施例中,上述训练单元,具体用于计算第一判别结果与相同尺寸的全零数据之间的损失,得到第三生成对抗损失值;将第一块数据输入到第一判别器中,得到第一判别器输出的第三判别结果,计算第三判别结果与相同尺寸的全一数据之间的损失,得到第四生成对抗损失值;计算第二判别结果与相同尺寸的全零数据之间的损失,得到第五生成对抗损失值;将第二块数据输入到第二判别器中,得到第二判别器输出的第四判别结果,计算第四判别结果与相同尺寸的全一数据之间的损失,得到第六生成对抗损失值;对第三生成对抗损失值、第四生成对抗损失值、第五生成对抗损失值和第六生成对抗损失值进行加权求和计算,得到第二损失值。
[0235]
关于生成对抗网络训练装置的具体限定可以参见上文中对于生成对抗网络训练方法的限定,在此不再赘述。上述生成对抗网络训练装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上
各个模块对应的操作。
[0236]
在一个实施例中,如图12所示,一种医疗影像数据生成装置,该装置包括:
[0237]
数据获取模块701,用于获取第一医疗影像数据;
[0238]
数据生成模块702,用于利用预先训练的影像数据生成模型对第一医疗影像数据进行重建,得到第二医疗影像数据;
[0239]
其中,影像数据生成模型包括上述实施例的循环生成对抗网络。
[0240]
在其中一个实施例中,上述数据生成模块702包括:
[0241]
数据获得子模块,用于根据第二预设尺寸和第一医疗影像数据得到多个输入影像数据;
[0242]
重建子模块,用于将多个输入影像数据依次输入到影像数据生成模型中进行重建,得到影像数据生成模型输出的各输入影像数据对应的输出影像数据;
[0243]
合成子模块,用于对多个输出影像数据进行合成处理,得到第二医疗影像数据。
[0244]
在其中一个实施例中,上述合成子模块,具体用于对各输出影像数据进行高斯加权计算,得到各输出影像数据对应的加权影像数据;对多个加权影像数据进行平均计算,得到第二医疗影像数据。
[0245]
关于医疗影像数据生成装置的具体限定可以参见上文中对于医疗影像数据生成方法的限定,在此不再赘述。上述医疗影像数据生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0246]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图13所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种生成对抗网络训练方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0247]
本领域技术人员可以理解,图13中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0248]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0249]
获取训练样本集;训练样本集包括多个第一样本数据和对应的第二样本数据;第二样本数据对应的重建图像的层厚小于第一样本数据对应的重建图像的层厚;
[0250]
基于训练样本集进行神经网络训练,得到循环生成对抗网络。
[0251]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
[0252]
分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据;
[0253]
基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络;
[0254]
其中,分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据,包括:
[0255]
根据第一预设尺寸分别计算第一样本数据对应的第一层数和第二样本数据对应的第二层数;
[0256]
从第一样本数据中选取出与第一层数对应的第一块数据;
[0257]
从第二样本数据中选取出与第二层数对应的第二块数据。
[0258]
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:
[0259]
根据多个第一预设尺寸和/或多个第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络。
[0260]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
[0261]
将第一块数据输入到第一生成器进行重建,得到第一生成结果;
[0262]
将第二块数据输入到第二生成器进行重建,得到第二生成结果;
[0263]
将第一生成结果输入到第二生成器进行重建,得到第三生成结果;
[0264]
将第二生成结果输入到第一生成器进行重建,得到第四生成结果;
[0265]
基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算总损失值,并根据总损失值调整网络参数得到循环生成对抗网络。
[0266]
在一个实施例中,总损失值包括第一损失值和第二损失值,处理器执行计算机程序时还实现以下步骤:
[0267]
基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算出第一损失值,基于第一块数据、第二块数据、第一生成结果和第二生成结果计算出第二损失值;
[0268]
利用第一损失值调整第一生成器和第二生成器的网络参数,利用第二损失值调整第一判别器和第二判别器的网络参数,得到循环生成对抗网络。
[0269]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
[0270]
将第二生成结果输入到第一判别器中,得到第一判别器输出的第一判别结果,计算第一判别结果与相同尺寸的全一数据之间的损失,得到第一生成对抗损失值;第一判别结果用于指示第二生成结果是否为真的第一块数据;
[0271]
将第一生成结果输入到第二判别器中,得到第二判别器输出的第二判别结果,计算第二判别结果与相同尺寸的全一数据之间的损失,得到第二生成对抗损失值;第二判别结果用于指示第一生成结果是否为真的第二块数据;
[0272]
计算第一块数据与第三生成结果之间的损失,得到第一循环对抗损失值,计算第二块数据与第四生成结果之间的损失,得到第二循环对抗损失值;
[0273]
对第一生成对抗损失值、第二生成对抗损失值、第一循环对抗损失值和第二循环对抗损失值进行加权求和计算,得到第一损失。
[0274]
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
[0275]
计算第一判别结果与相同尺寸的全零数据之间的损失,得到第三生成对抗损失值;
[0276]
将第一块数据输入到第一判别器中,得到第一判别器输出的第三判别结果,计算第三判别结果与相同尺寸的全一数据之间的损失,得到第四生成对抗损失值;
[0277]
计算第二判别结果与相同尺寸的全零数据之间的损失,得到第五生成对抗损失值;
[0278]
将第二块数据输入到第二判别器中,得到第二判别器输出的第四判别结果,计算第四判别结果与相同尺寸的全一数据之间的损失,得到第六生成对抗损失值;
[0279]
对第三生成对抗损失值、第四生成对抗损失值、第五生成对抗损失值和第六生成对抗损失值进行加权求和计算,得到第二损失值。
[0280]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0281]
获取训练样本集;训练样本集包括多个第一样本数据和对应的第二样本数据;第二样本数据对应的重建图像的层厚小于第一样本数据对应的重建图像的层厚;
[0282]
基于训练样本集进行神经网络训练,得到循环生成对抗网络。
[0283]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0284]
分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据;
[0285]
基于第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络;
[0286]
其中,分别从第一样本数据和第二样本数据中选取出第一块数据和第二块数据,包括:
[0287]
根据第一预设尺寸分别计算第一样本数据对应的第一层数和第二样本数据对应的第二层数;
[0288]
从第一样本数据中选取出与第一层数对应的第一块数据;
[0289]
从第二样本数据中选取出与第二层数对应的第二块数据。
[0290]
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:
[0291]
根据多个第一预设尺寸和/或多个第一块数据和第二块数据进行神经网络训练,得到循环生成对抗网络。
[0292]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0293]
将第一块数据输入到第一生成器进行重建,得到第一生成结果;
[0294]
将第二块数据输入到第二生成器进行重建,得到第二生成结果;
[0295]
将第一生成结果输入到第二生成器进行重建,得到第三生成结果;
[0296]
将第二生成结果输入到第一生成器进行重建,得到第四生成结果;
[0297]
基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算总损失值,并根据总损失值调整网络参数得到循环生成对抗网络。
[0298]
在一个实施例中,总损失值包括第一损失值和第二损失值,计算机程序被处理器执行时还实现以下步骤:
[0299]
基于第一块数据、第二块数据、第一生成结果、第二生成结果、第三生成结果和第四生成结果计算出第一损失值,基于第一块数据、第二块数据、第一生成结果和第二生成结果计算出第二损失值;
[0300]
利用第一损失值调整第一生成器和第二生成器的网络参数,利用第二损失值调整第一判别器和第二判别器的网络参数,得到循环生成对抗网络。
[0301]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0302]
将第二生成结果输入到第一判别器中,得到第一判别器输出的第一判别结果,计算第一判别结果与相同尺寸的全一数据之间的损失,得到第一生成对抗损失值;第一判别结果用于指示第二生成结果是否为真的第一块数据;
[0303]
将第一生成结果输入到第二判别器中,得到第二判别器输出的第二判别结果,计算第二判别结果与相同尺寸的全一数据之间的损失,得到第二生成对抗损失值;第二判别结果用于指示第一生成结果是否为真的第二块数据;
[0304]
计算第一块数据与第三生成结果之间的损失,得到第一循环对抗损失值,计算第二块数据与第四生成结果之间的损失,得到第二循环对抗损失值;
[0305]
对第一生成对抗损失值、第二生成对抗损失值、第一循环对抗损失值和第二循环对抗损失值进行加权求和计算,得到第一损失。
[0306]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0307]
计算第一判别结果与相同尺寸的全零数据之间的损失,得到第三生成对抗损失值;
[0308]
将第一块数据输入到第一判别器中,得到第一判别器输出的第三判别结果,计算第三判别结果与相同尺寸的全一数据之间的损失,得到第四生成对抗损失值;
[0309]
计算第二判别结果与相同尺寸的全零数据之间的损失,得到第五生成对抗损失值;
[0310]
将第二块数据输入到第二判别器中,得到第二判别器输出的第四判别结果,计算第四判别结果与相同尺寸的全一数据之间的损失,得到第六生成对抗损失值;
[0311]
对第三生成对抗损失值、第四生成对抗损失值、第五生成对抗损失值和第六生成对抗损失值进行加权求和计算,得到第二损失值。
[0312]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read

only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。
[0313]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0314]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1