赵桂宸,陈 平
(中北大学 信息与通信工程学院 信息探测与处理山西省重点实验室,山西 太原 201800)
计算机断层扫描技术(CT)被广泛应用于医疗、 生物学、 机场安防等领域,但过高的辐射剂量可能会给人体造成伤害[1]. 而低剂量CT的应用就大大减少了患者在照射时接受的辐射剂量,但是低剂量CT的成像质量与常规剂量CT相比有明显的下降,导致在诊疗过程中出现误诊漏诊的概率增加,为此就需要利用现代技术来改善低剂量CT的图像质量.
为了解决低剂量CT图像去噪的问题,近年来,研究者们提出了各种低剂量CT图像的去噪算法. 现有的方法主要是分为投影域去噪[2]、 迭代重建[3,4]和图像后处理[5,6],由于投影域去噪需要的投影数据作为CT扫描的中间结果,一般的用户难以直接获取,并且不同厂商还会有不同格式的投影数据,所以,图像后处理的方法就成为了当下的研究热点,本文就是在图像域中进行图像去噪.
图像域中低剂量CT去噪是一种特殊应用场景下的图像处理算法,所以学者们在对低剂量CT图像噪声的特殊性进行分析的基础上,结合图像处理算法的通用性,通过优化算法,形成了很多具有良好去噪效果的后处理算法. 传统上在图像域去噪一般有小波变换[7]、 TV算法[8]、 字典学习[9]、 深度学习[10,11]等方法. 文献[12]通过对常规剂量CT图像进行训练得到学习字典,然后使用学习到的字典对低剂量CT图像进行去噪; 文献[13]提出了一种基于双字典和伪影字典关系的低剂量CT去噪算法,得到了很好的效果.
近些年来,随着深度学习技术的不断发展,在图像处理中深度学习的技术应用也越发的广泛、 深入[14]. 卷积神经网络是目前应用最为广泛的深度学习模型. 卷积神经网络的基础是神经元,通过数量众多的神经元进行卷积操作可以有效地学习特征尤其是细节特征,并建立从含噪声图像到清晰图像的映射. 正因如此,相较于传统的图像域去噪方法,深度学习的方法具有显著的优势. 文献[15]提出了一种具有残差编解码器结构的卷积神经网络RED-CNN,应用较为成熟的深度学习技术,提高了低剂量CT图像的去噪水平; 文献[16]提出了一种模块化网络的去噪方法,利用生成对抗网络扩充数据集,经实验验证,网络显著改善了低剂量CT图像的质量.
上述方法在低剂量CT图像去噪上都取得了较好的结果,但是这些方法存在着对于对应图像过于依赖的问题,在配对图像不足时效果会有衰减. 而在实际情况中,对同一患者进行CT诊疗的时候往往只能在低剂量CT和常规剂量CT之间选择一个,这就导致了很难获得大量的两两对应的图像. CT图像噪声的分布是相对复杂的,并且除了噪点外还有可能伴随着伪影,而上述方法中的卷积均为线性卷积的形式,因此线性卷积在处理过程中必须要增加网络深度,这就带来了网络训练中梯度爆炸等问题. 文献[17]提出了新的二次神经元模型,并应用于低剂量CT去噪,与一次卷积相比提供了更好的拟合能力,取得了一定的效果. 因此,本文从弱监督的角度出发,提出了一种适应于数据不足情况下的低剂量CT去噪方法. 该方法应用模块化子网络,并且引入了二次神经元,利用跨层连接,实现了对低剂量CT图像噪声的降低. 经过实验对比,取得了比现有结果更好的效果.
深度学习的方法在LDCT图像去噪方面取得了良好的效果,目前大多数端到端的深度学习方法是通过定义一个最小化的损失函数来实现LDCT图像去噪的,这其中既有直接学习LDCT图像到NDCT图像的映射,也有通过学习LDCT与NDCT之间的残差来实现图像去噪. 传统上的去噪网络一般是用一个较大型的网络来实现去噪的,这就对网络的设计提出了较高的要求. Shan等[16]将模块化网络首先应用于低剂量CT图像去噪领域. 模块化网络利用多个具有相同结构的子网络串联,来实现对低剂量CT图像的去噪. 由于每一级的子网络都可以看做是传统网络中的一层,运用传统网络中跨层连接的思想,在子网络间也应用跨层连接,使得网络可以在学习深层细节特征的同时不过多地损失浅层信息,从而达到良好的去噪效果. 这使得每一级的子网络都可以在一定程度上提高图像质量. 单一的大型网络在以往的研究中也取得了良好的效果,但是在参数优化等方面存在着效率不高、 优化困难等问题. 而多个小网络串联的形式可以在一定程度上解决这一问题,为网络设计提供更多的变化和思路. 每一级的子网络采用了传统的编码、 解码的结构,运用了线性神经元. 如图1 所示,每一个方块都是一个子网络,运用跨层连接的形式将子网络串联起来,使得每一级子网络都拥有一定的去噪能力,并且在这个过程当中,图像的质量是一个不断提高的过程.
图1 模块化网络结构
神经元作为神经网络的重要组成部分,当前的神经网络中的神经元结构大多为一次型. 神经元的数学模型是向量输入到一个线性函数中产生输出
(1)
式中:xi为第i个输入向量;ωi为第i个输入向量对应的权重;f(x)通过激活函数,构成了一个完整的神经元. 由式(1)易知,单个传统神经元可以分离成两组线性可分的输入. 相比之下,在面对线性不可分的输入组时,单个传统神经元容易出现分类错误. 例如,单个传统的神经元对于模拟异或门的功能就显得比较困难. 虽然在实际应用中可以通过增加网络深度来改善这一问题,但是这同样也带来了运算量的大幅度增加和收敛困难的问题.
受到文献[18]的启发,本文引入了一种新型的二次神经元,其结构如图2 所示.
图2 二次神经元结构示意图Fig.2 Schematic diagram of secondary neuron structure
在二次神经元中,输入向量在输入之后被转化为2个内积和1个范数项进行求和,之后再通过一个非线性激活函数,整个过程构成了一个完整的二次神经元. 输出函数表示为
(2)
式中:xi为第i个输入向量;ωiα,ωiβ为第i个输入向量对应的两个不同权重;ωiγ为范数项的权重.
本文选取的激活函数为线性整流函数. 由于二次神经元是非线性地加入到传统神经元中,所以二次神经元在表示能力上比现有的传统线性神经元具有显著的优势.
在没有填充的情况下,卷积操作会引起图像大小的变化,因此本文选择填充为零的卷积模式. 二次卷积可以提取细节特征,但也会丢失全局信息. 因此,本文增加了跨层连接,有效地保留全局信息. 从卷积核的大小来看,较大的卷积核可以改善卷积的接受域,但会增加一定的计算量. 由于采用的是模块化网络,所以在子网之间增加了跨层连接. 因此,选择3×3的卷积核. 反卷积运算可以看作是卷积运算的逆运算,可以对图像进行上采样. 由于二次卷积具有收敛速度快的特点,本文在子网中只使用了3层卷积层和3层反卷积层. 训练基于二次卷积的模块化网络的总体思路与传统的网络是完全一致的. 换句话说,传统神经网络的损失函数是可以用于二次神经网络的. 如式(3)所示,二次卷积的损失函数是基于链式求导规则来优化参数进而最小化其损失函数的. 改进后的网络结构如图3 所示.
图3 改进后的网络Fig.3 The improved network
(3)
为了验证网络的效果,本文使用配置为Intel Core i7-9770H处理器、 windows10操作系统,利用NVIDIA GeForce RTX 2080的GPU进行计算加速,利用基于tensorflow架构网络结构及python程序进行测试.
数据集1来自于2016年梅奥医学中心进行的低剂量CT大挑战,本文选取了其中4位患者的不同部位图像作为训练集,其中剔除掉大部分的常规剂量CT图像,以保证数据集当中的数据不能一一对应. 之后选择其他4位患者的低剂量CT图像作为测试集进行测试.
数据集2是Mayo中心在TCIA中开源的数据集. 数据集中分为3个不同的系列,本文所采用的是N系列的图像,选取了其中500张低剂量CT图像和不与低剂量CT图像对应的50张常规剂量CT图像作为训练集,之后选择不同患者的低剂量CT图像用做测试.
每个数据集训练一个模型. 将数据集选出的图像制作成h5文件,相较于单张图像输入网络,可以缩短读取图像的时间. 每个图像尺寸为 512像素×512像素. 网络应用WGAN[19]队数据进行扩充,训练时将图像全部输入网络. 网络的损失函数共有3个,分别是对抗性损失、 均方误差和边缘非相干性测量. 其中,对抗性损失是用来优化生成对抗网络的生成成分的,使生成器生成由鉴别器判断的与NDCT图像难以区分的样本图像. 这里对抗性损失是在带有梯度惩罚的Wasserstein生成对抗网络框架内定义的[20],形式如式(4)
LWGAN=-E{D[sN(YLD)]},
(4)
式中: 网络D表示鉴别器,用来区分真实数据与生成器生成的数据;sN表示第N个子网络;YLD表示低剂量CT图像. 均方误差是为了测量输出图像和NDCT图像的差异而采用的,降低了输入图像的噪声,形式上的定义为
(5)
式中:YND表示常规剂量CT图像. 边缘不相干检测是为了测量真实图像与估计图像间的滤波差值而采用的,形式如式(6)
(6)
式中:SF代表着图像中各点梯度向量对应的Sobel滤波,是利用一个小的滤波器对图像进行卷积. 网络最终的目标函数为3个函数的加权之和,形式如式(7)
L=LWGAN+λMLMSE+λeLe,
(7)
利用数据集1中4位不同患者的低剂量CT图像进行测试. 图4 是与目前常用的几种方法做对比的效果,从主观上可以看出,本文所提出的方法明显优于经典BM3D算法; 较之目前较为先进的REDCNN算法和QAE算法,本文的方法显著降低了图像的噪声; 与MAPNN算法相比,本文的方法在大多数图像上都有更少的噪声. 客观上,本文采用目前图像评价体系中常用的峰值信噪比(Peak signal-to-noise ratio,PSNR)和结构相似性(Structural SIMilarity,SSIM)两个指标,对4张图像进行测试,结果详见表 1. 可以看出,本文所提出的网络在客观指标的测试当中大幅度优于BM3D; 在与REDCNN和QAE的对比中也显示出了显著的优势; 在大多数图像上对比MAPNN也有一些优势. 4张测试图像的结果均优于以往的方法,其中PSNR指标高出REDCNN和QAE约0.45 dB左右,SSIM指标提高大约0.01.
表 1 测试图的客观评价指标Tab.1 Objective evaluation indexes of test chart
图4 去噪效果对比Fig.4 Comparison of denoising effects
数据集2中4个不同患者4张低剂量CT图像作为测试图像. 与目前较为常用且较为先进的方法做对比,如图5 所示. 从图像整体上看,本文所采用的方法相较于其他方法,噪点数量明显较小. 从放大的局部区域看,本文的方法在对噪声抑制较好的同时,也较为清晰地保留了组织边缘信息,没有出现边缘信息的丢失或边缘的扩散. 如表 2 所示,在定量分析中,本文的方法展现出了较为良好的效果,PSNR和SSIM的数值较之以往的方法均有了不同程度的提高,显示出了较为明显的性能优势.
表 2 测试图的客观评价指标Tab.2 Objective evaluation indexes of test chart
图5 去噪效果对比Fig.5 Comparison of denoising effects
子网络数量对于网络的训练时间和训练效果都有很大的影响,本文分别测试了不同子网络数量对于网络整体性能的影响. 如图6 所示,经过实验分析,网络去噪效果在子网络数小于5个时,效果的进步速度非常快,从第6个子网络开始,网络的去噪性能虽然有小幅度的改善,但是计算量显著增加,训练时间显著延长. 因此综合考虑网络训练时间和去噪性能,选择采用5个子网络用来实现低剂量CT图像去噪.
图6 不同子网数对去噪效果的影响
用一组不同的参数在数据集1上进行训练,用来分析超参数对网络的影响. 批大小为128,epoch为100,学习率设置为5.0×10-5. 经过实验验证,训练时间由之前的10 h 18 min,增加到了12 h 43 min,最终取得了与第一组参数基本相同的结果.
在第2个数据集中选择40张图像,将测试图像用数据集1中训练出的模型进行测试,以验证网络的稳定性. 最终得出的数据见表 3.
表 3 测试图像在两个模型上的效果对比Tab.3 Test the effect of the image on the two models
在现实条件中,研究人员往往很难获得大量高质量的一一对应的低剂量CT图像和常规剂量CT图像. 本文提出了一种在缺乏对应图像条件下的弱监督网络架构. 一个公开的数据集被用来评价本文所提出的网络. 不同的实验结果表明,本文所描述的网络显著改善了低剂量CT图像的质量.
本文所提出的方法更多的是基于实验而不是基于严谨的数学推导. 由于投影数据本身含有大量噪声,因此,下一步将研究将网络架构移植到投影域进行去噪,以期更好的去噪效果.
在本研究中,还有一些问题需要解决. 由于本文所采用的的数据集是模拟的低剂量CT噪声,因此在实际中的效果可能有所偏差,另外一些噪声与人体组织或是病变较为相似,网络有时不能很好地识别并去除. 这也是下一步研究的重点.