发明内容
本发明所要解决的技术问题是,提供一种处理效果更好的用于去除有限角CT图像中块状伪影的方法。
为解决上述技术问题,本发明采用的技术方案为:
一种基于生成对抗网络的有限角CT重建去伪影的方法,包括以下步骤:
将完全角度CT图像在[45.5°,135.5°]角度范围内进行降采样、滤波反投影处理,得到有限角CT图像,将完全角度CT图像与所述有限角CT图像拼接,将若干拼接图像作为数据样本,分为训练集和测试集;
基于WGAN-GP网络模型,该模型包括生成器和判别器,分别构建所述生成器和所述判别器的深度神经网络结构;
将训练集送入WGAN-GP网络模型中训练,将测试集数据送入训练好的模型中进行测试;
将待处理图像送入训练好的模型中以输出清晰的有限角CT重建图像。
进一步的,所述生成器网络结构依次包括输入层、若干层由卷积层、实例标准化(InstanceNorm)和激励层构成的网络层、若干层由卷积层、实例标准化和激励层构成的残差块(ResBlock)、若干层由反卷积层、实例标准化和激励层构成的网络层、卷积层、激励层以及输出层,其中输入层与输出层之间还增加有直连(shortcut)连接。
进一步的,所述判别器网络结构依次包括输入层、由卷积层、激励层构成的网络层、由卷积层、批归一化(BN)和激励层构成的网络层、若干层由卷积层、激励层和批归一化构成的网络层、全连接层、激励层、全连接层以及输出层。
进一步的,所述生成器输入层与输出层之间的网络结构如下:
第一层为卷积层、实例标准化和线性整流函数(ReLU)构成的网络层,卷积层由64个7*7*1的卷积核组成;
第二层为卷积层、实例标准化和线性整流函数构成的网络层,卷积层由128个3*3*2的卷积核组成;
第三层为卷积层、实例标准化和线性整流函数构成的网络层,卷积层由256个3*3*2的卷积核组成;
第四层至第十二层均为残差块,每层依次包括大小为3*3*1*256的卷积块、实例标准化、线性整流函数、大小为3*3*1*256的卷积块以及实例标准化;
第十三层为反卷积层(ConvTranspose)、实例标准化和线性整流函数构成的网络层,其中反卷积层的卷积核参数为3*3*2,深度为128;
第十四层为反卷积层实例标准化和线性整流函数构成的网络层,其中反卷积层的卷积核参数为3*3*2,深度为64;
第十五层为一个尺寸为7*7*1、深度为64的卷积层;
第十六层为双曲正切(tanh)激励层。
进一步的,所述判别器输入层与输出层之间的网络结构如下:
第一层为卷积层和带泄露线性整流函数(LeakyReLU)构成的网络层,卷积层由64个3*3*1的卷积核组成;
第二层为卷积层、批归一化和带泄露线性整流函数构成的网络层,卷积层由64个3*3*2的卷积核组成;
第三层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由128个3*3*1的卷积核组成;
第四层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由128个3*3*2的卷积核组成;
第五层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由256个3*3*1的卷积核组成;
第六层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由256个3*3*2的卷积核组成;
第七层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由512个3*3*1的卷积核组成;
第八层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由512个3*3*2的卷积核组成;
第九层为全连接层(Dense),维度为1024;
第十层为带泄露线性整流函数激励层;
第十一层为全连接层,维度为1,判断是来自于生成图像还是真实图像。
进一步的,所述网络模型采用的损失函数由内容损失函数和对抗损失函数加权组成,
所述损失函数总和为:ltotal=lcontent+λladv,
其中,φi,j:经过激励函数但是还未经过第i-th max-polling前的第j-th CNN特征图;Wi,jHi,j:特征图的尺寸大小;IB:有限角度CT重建前的图像;IS:有限角度CT重建后的图像;θG:生成器的网络参数;θD:判别器的网络参数;N:实验数据总数,λ为平衡系数。
进一步的,所述WGAN-GP网络模型采用Adam优化算法。
本发明所达到的有益效果:本发明基于WGAN-GP构建的网络模型用于去除有限角CT图像中块状伪影的方法相比现有技术去除效果更好,同时能较好的保留细节以及边缘信息。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
一种基于生成对抗网络的有限角CT重建去伪影的方法,包括以下步骤:
将完全角度CT图像在[45.5°,135.5°]角度范围内进行降采样、滤波反投影处理,得到有限角CT图像,将完全角度CT图像与所述有限角CT图像拼接,将若干拼接图像作为数据样本,分为训练集和测试集;
基于WGAN-GP网络模型,该模型包括生成器和判别器,分别构建所述生成器和所述判别器的深度神经网络结构;
将训练集送入WGAN-GP网络模型中训练,将测试集数据送入训练好的模型中进行测试;
将待处理图像送入训练好的模型中以输出清晰的有限角CT重建图像。
实施例
(1)数据采集与处理
实验的数据由某医学图像公司提供。实验的数据共有1500张,尺寸大小为512x512,如果不是这种尺寸,需将其缩放成此尺寸。其中1200张数据作为训练集,300张作为测试集,我们将这部分图像数据再拷贝一份,并将其在[45.5°,135.5°]角度范围内进行降采样,然后用Matlab进行滤波反投影(FBP),得到的图像数据称为有限角CT图像,这种做法的作用是模拟临床上低剂量X射线对人体的CT检测效果。有限角CT图像带有块状伪影,模糊不清,在临床上不利于医生的诊断。本发明方法是用于将这份图像数据重建为清晰数据(在人类视觉感官上感觉不到原始数据和重建数据有明显的差异,说明重建效果好)。
我们将有限角CT图像和原始清晰数据一对一的拼接起来,即,拼接好的图像左边图像是有限角CT图像,右边是原始清晰图像,尺寸为1024x512。将拼接好的图像作为输入数据。
(2)构建WGAN-GP网络模型
生成器和判别器采用深度神经网络结构,具体说明如下:
GAN的基本公式为:
其中D,G分别为本方法网络架构中的判别器和生成器,Pdata(x)表示真实数据的分布,Pz(Z)噪声分布。这是一个极大极小公式,最终目标使得上式达到纳什平衡,即使判别器判断不出输出的图像是来自真实图像还是生成图像,但是我们发现实验过程中存在训练困难,生成器和判别器的loss无法指示训练进程,生成的样本缺乏多样性等问题。
为了解决上面提出的问题,我们使用了Wasserstein距离,并将以上公式替换为:
这样做的好处是可以用这个收敛且简约的度量公式来指示网络的训练过程,GP(gradient penalty)是在目标损失函数中对每个样本独立地施加梯度惩罚,使得判别器的参数能够在参数的阈值范围内均匀分布,不会出现梯度消失和梯度爆炸的情况。
生成器网络结构如图2所示:
所述生成器输入层与输出层之间的网络结构如下:
第一层为卷积层、实例标准化和线性整流函数(ReLU)构成的网络层,卷积层由64个7*7*1的卷积核组成,用来产生64个特征映射,7*7表示卷积核的大小,1表示步长,以下类似;
第二层为卷积层、实例标准化和线性整流函数构成的网络层,卷积层由128个3*3*2的卷积核组成,用来产生128个特征映射;
第三层为卷积层、实例标准化和线性整流函数构成的网络层,卷积层由256个3*3*2的卷积核组成,用来产生256个特征映射;
第四层至第十二层均为残差块,每层依次包括大小为3*3*1*256的卷积块、实例标准化、线性整流函数、大小为3*3*1*256的卷积块以及实例标准化;
第十三层为反卷积层(ConvTranspose)、实例标准化和线性整流函数构成的网络层,其中反卷积层的卷积核参数为3*3*2,深度为128;
第十四层为反卷积层实例标准化和线性整流函数构成的网络层,其中反卷积层的卷积核参数为3*3*2,深度为64;
第十五层为一个尺寸为7*7*1、深度为64的卷积层;
第十六层为双曲正切(tanh)激励层。
其中输入层与输出层之间还增加有直连(shortcut)连接,目的是实现一个端到端的映射,生成输出结果。
该生成器网络结构中,我们将常用的BatchNorm换成InstanceBorm,BN是作用于一个batch,而IB是作用于单个样本,这样也可以加速网络的训练速度,使用ReLU激活函数也可以有效防止梯度消失。
判别器网络结构如图3所示:
所述判别器输入层与输出层之间的网络结构如下:
第一层为卷积层和带泄露线性整流函数(LeakyReLU)构成的网络层,卷积层由64个3*3*1的卷积核组成,用来产生64个特征映射;
第二层为卷积层、批归一化和带泄露线性整流函数构成的网络层,卷积层由64个3*3*2的卷积核组成;
第三层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由128个3*3*1的卷积核组成;
第四层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由128个3*3*2的卷积核组成;
第五层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由256个3*3*1的卷积核组成;
第六层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由256个3*3*2的卷积核组成;
第七层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由512个3*3*1的卷积核组成;
第八层为卷积层、带泄露线性整流函数和批归一化组成的网络层,卷积层由512个3*3*2的卷积核组成;
第九层为全连接层(Dense),维度为1024;
第十层为带泄露线性整流函数激励层;
第十一层为全连接层,维度为1,判断是来自于生成图像还是真实图像。
该判别器网络结构中,使用了多个3*3的卷积核,可有效减少网络中的参数量。
我们将上述样本数据作为输入数据送入构建的WGAN-GP网络模型中进行训练,使用的优化器为Adam优化算法,Adam参数设置为β1为0.9,β2为0.999,初始学习率为0.0001,ε=10∧-8,训练的epoch为300个,在前150个epoch中使用初始学习率,接下来的150个epoch学习率逐渐衰减为0,本方法在训练过程中运行环境为pycharm专业版,处理器为i7-6850K,内存为64GB,GPU显卡为GeForce GTX 1080Ti,运行时间为32小时。
其中,损失函数由对抗损失函数和内容损失函数加权组成,
所述损失函数总和为:ltotal=lcontent+λladv(λ=100)
其中,φi,j:经过激励函数但是还未经过第i-th max-polling前的第j-th CNN特征图;Wi,jHi,j:特征图的尺寸大小;IB:有限角度CT重建前的图像;IS:有限角度CT重建后的图像;θG:生成器的网络参数;θD:判别器的网络参数;N:实验数据总数,使用反向传播算法更新网络参数。
训练时我们可以通过tenflowboard实时显示重建效果和损失函数曲线,当损失函数不再下降的时候停止训练。
(3)模型测试与评价
在300个epoch训练结束后,我们使用得到的latest_net_G.pth文件对300张有限角CT图像进行测试,测试结束后会显示测试重建结果以及评价结果。
图像评价方法:在评价重建图像质量好坏主要有两个指标:PSNR(Peak Sigal toNoise Ratio,峰值信噪比)和SSIM(Structural Similarity,结构相似性)。
PSNR的计算如下:
MSE表示待重建图像X和通过神经网络学习重建后的图像Y的均方误差(MeanSquare Error),H、W分别为图像的高度和宽度;n为像素的位深,在CT图像中位深为12。
SSIM是一种全参考的图像质量评价指标,它分别从亮度、对比度、结构三方面度量图像相似性。
SSIM(X,Y)=[l(X,Y)]α[c(X,Y)]β[s(X,Y)]γ;
其中l(X,Y)为亮度对比函数,c(X,Y)为对比度对比函数,s(X,Y)为结构对比度函数,X和Y分别表示稀疏重建图像通过神经网络学习恢复的图像Y,α=β=γ=1是三个对比函数加权系数,一般设定α=β=γ=1。
本实例选取PSNR和SSIM作为评价标准,结果如表1所示,可见经过本方法处理后,本发明处理后的有限角CT图像的PSNR、SSIM有显著提高。
表1评价标准对比表
方法 |
SSIM |
PSNR |
FBP |
0.5035 |
16.3798 |
ART |
0.5273 |
17.1681 |
实施例 |
0.6978 |
23.9583 |
图4分别表示了FBP、ART算数迭代法以及本发明提出方法重建后的结果图。实验结果显示本发明能有效的去除有限角度采样带来的块状伪影,同时较好的保留细节以及边缘信息。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。