曹凤虎 罗 悦 朱名乾
(1.赤峰学院附属医院信息工程部 赤峰 024050)(2.中北大学信息与通信工程学院 太原 030051)
X 射线断层(X-ray Computed Tomography,CT)成像技术广泛用于现代医学诊断,对医学影像技术的发展存在着重要影响。然而,过量使用X射线会极大提高被照射者患白血病风险,因此降低X射线扫描含量是十分必要的[1~2],目前常采用稀疏采样算法降低射线含量。压缩感知(Compressed Sensing,CS)理论的出现,使得利用稀疏投影数据融合稀疏先验信息获取高质量重建结果成为可能。经典算法FBP利用数学层析成像原理进行重建,该算法重建速度快,但易受噪声干扰,重建图像存在严重伪影[3]。近年来,深度学习逐渐渗透于医学成像领域,其中重要的一个方向就是CT 重建过程。Wolterink 和Yang 提出基于GAN 及Perceptual Loss原理的CT 图像降噪,用全局角度的损失函数评价图像质量[4~5]。为减小噪声和伪影对成像质量的影响,Yang 等学者使用神经网络学习低质量CT 图像与高质量CT 图像之间存在的噪声和伪影[6]。学者He 融合了FBP 和U-Net 算法,设计残差学习网络FBPConvNet和多分辨卷积网络[7],借助U-Net算法降低噪声对FBP 重建结果的影响。尽管提高了重建图像精度,去除了噪声干扰,但是,传统神经网络基于高维图像域与投影域实现图像重建,存在计算量大、效率低下问题,且随着维数的增加,机器学习分类的精度会迅速下降。有研究表明,对降维后的数据进行训练相当于利用提取后的特征训练网络,可以避免过拟合[8]。
综上所述,本文提出基于非线性降维思想的SDAE-CNN重建网络,将自动编码器(Autoencoder,AE)嵌套进卷积神经网络(Convolutional Neural Networks,CNN),在保留全局特征的情况下完成高维空间与低维空间的相互映射,并在低维空间上实现图像重建。同时加入噪声与约束项,在保证重建精度的情况下降低重建复杂度,提高效率与网络泛化能力。
面对高维稀疏CT 数据,重建算法决定最终图像的精度。传统重建算法旨在直接处理高维稀疏数据,然而直接利用高维数据进行重建将不可避免地导致重建效率降低,且随着维数的增加,机器学习分类的精度会迅速下降。有研究表明,在具有相同几何结构的情况下低维空间重建能够减少对数据网络的依赖,提高网络效率与泛化能力。
针对传统算法受维度影响的问题,本文提出利用降维后数据进行重建的SDAE-CNN 网络,采用非线性降维算法,以此扩大网络泛化性。
结合了非线性映射思想,SDAE-CNN的基本流程是:高维投影数据通过非线性降维算子φ-1(x)映射到低维空间数据x 上,再利用重建算子g 将x和重建图像y 非线性联系起来,最后使用非线性升维算子φ(f)将低维数据y 反映射回高维图像域空间,得到重建CT 图像,示意图如图1所示。CNN 是一类可以进行卷积运算并且具有一定深度的前馈型神经网络,收敛速度快,鲁棒性强,容错能力高[9~12],因此选择CNN 扩展AE 的深度。在CNN中,只要训练数据样本量足够多时,重建算子g 可以通过网络神经元的各个权值近似替代,实现算子的隐式学习。
图1 网络学习过程
为保证低维重建效果,降维后的低维数据应与高维数据具有相同的几何结构特征。Isomap 算法是非线性降维的常用算法之一。经过Isomap 算法降维后,低维空间的低维流形可以保持高维空间数据的全局几何特征。然而,Isomap无法给出高维空间到低维空间对应的逆映射,无法满足升维需求。具有双向神经网络的AE,能够实现这一目标。AE是一种通过将输出目标逼近输入数据,进而对数据进行学习的算法,即学习恒等函数g(x)≈x,其网络结构如图2所示。将输入向量x 由映射函数g映射到重建向量y,即:
式中nl为自动编码器的层数;W为权重矩阵;b为偏置向量。
图2 自动编码器网络结构图
AE 训练双向神经网络完成编码(Encoder)和解码(Decoder)操作[13~15]。Encoder部分将高维原始数据非线性降维,Decoder利用Encoder获取的低维特征值非线性升维,得到与输入数据近似的高维重建数据。该网络输出数据与输入数据大小相同,相似度高,解决了同胚映射非线性降维方法存在的无法给出逆映射的缺陷。
传统AE 在训练过程中易出现过拟合现象,存在泛化能力弱,鲁棒性低等问题。本文利用随机失活(Dropout)方法优化AE,形成随机失活自编码器(Dropout Autoencoder,DAE)。通过向训练样本增加噪声,在输入层间进行Dropout处理,在训练阶段减弱神经元的联合适应性,如式(2)所示:
式中Xt为训练样本;为添加噪声后的训练数据;NF为噪声因子;XN为服从正态分布的数据。
由于输入数据为高稀疏度CT数据,因此,不同输入数据节点对于重建结果的重要性不同。为了保证DAE 提取的输入数据特征表示的稀疏性和有效性,要使DAE 网络隐层神经元j 的平均活跃度pj尽可能接近指定稀疏性参数p <<1,其中:
式中β表示约束项的权重,hi表示第i层的节点。
由于SDAE 网络层数少,提取特征较浅,无法对高维数据进行很好的特征提取,降维效果不佳。因此需要增加多个隐藏层以提高特征提取次数与深度,提取高维数据深层抽象特征。
本文提出SDAE-CNN 网络,该网络融合SDAE与CNN,形成卷积稀疏自动编码器,对φ-1(x),φ(f)和g 进行隐形学习,表现在连接网络神经元的权重上,提高了学习能力,更有利于预训练。其中Encoder网络权重执行降维职责,Decoder网络权重执行升维与职责,连接Encoder与Decoder的权重因子连接降维后的低维特征值与升维前的低维重建数据[16~17],实现了低维空间的数据重建。网络大体框架如图3所示。
图3 引入Autoencoder后的网络框架图
常规的卷积网络通常是把图像当作输入,经过多层卷积提取特征,最后通过全连接层进行输出。由于本文网络的输入是数据,输出是图像,与常规卷积网络的结构安排相反,因此,SDAE-CNN 的前端添加完全连接层(FC1 至FC3),在连接数据的同时,对稀疏投影数据进行去噪处理。Encoder、Decoder的卷积和去卷积层则放在了网络的后端用于学习复杂的非线性算子,生成重建图像,示意图如图4所示。
图4 SDAE-CNN详细结构图
本文构建的卷积神经网络SDAE-CNN 由tanh激活函数激活的三个全连接层(FC1 至FC3)、relu激活函数激活的五个卷积层(C1至C5)及五个反卷积层(D1至D5)组成,利用
网络重建CT 图像与数据集里真值高质量CT图像之间的均方根误差(Mean Square Error,MSE)作为损失函数,使网络神经元权值不断更新,如式(5)所示:
式中x 是仿真编码孔径扫描下的稀疏投影数据,fw( x)为重建图像,h为原图,N 为图像点数。
为了最小化批量损失函数L( w),使用随机梯度下降法(Stochastic gradient descent,SGD)优化CNN,并采用自适应矩估计算法(Adaptive moment estimation,Adam)稳定学习速率,控制学习步长,避免SGD因下降梯度大、方向随机引起的迭代不稳定。
在神经网络更新节点权值的过程中,SGD利用反向传播后样本梯度均值更新权重参数,能够有效寻找到最小值,加快收敛速度,从而使整个CT图像重建的卷积网络趋于收敛。SGD 更新权重方式如式(6)所示:
式中W 为权重,η 表示学习率,一般在[0.001,0.01]区间;Nb值指一个batch 的样本数量,取值在[50,200]区间内。
Adam 为动量法与RMSProp 算法的结合,是一种可替代传统梯度下降法的优化算法,能够自适应控制学习速率,防止步长不当影响学习结果。Adam更新权重步骤如下所示。
式中β1为一阶矩估计指数衰减率,β2为二阶矩估计指数衰减率。νt是一阶梯度矩阵,相当于动量法,st是二阶梯度矩阵,相当于RMSProp 法,设初始值ν0=0,s0=0。分别是对原始值的偏差修正。因为采用了移动指数平均方法,而且ν0和s0都为0 向量,所以在开始阶段如果不进行修正,初始梯度权重会很小,无法得到真实值。
SDAE-CNN为数据驱动的卷积神经网络,训练数据集来源于Mayo Clinic官网上的临床CT图像数据集。选取16 个患者、共计2200 幅在正常辐射剂量下进行的肺部与腹部的扫描临床CT 图像,图像大小为512×512。为了获得在平行束扫描角度为0°:2°:358°共180 个角度,投影数据稀疏度为77.5%条件下的仿真投影数据,需计算CT 图像在各个扫描角度下的投影图像。因此利用稀疏度高,随机性强的随机Bernoulli计算随机编码掩膜的值,并通过Logistic 混沌序列将掩膜上[-1,1]区间上的数值转变为0值或1值,将掩膜与投影图像相乘,得到稀疏CT 投影图像。同时,需要建立两个坐标系:一个是以中心点为原点的静止图像坐标系x-y,另一个是与静止坐标系同原点的旋转坐标系xr-yr。旋转坐标系的旋转角度以每次2°的变换角度不断更改,每更改一次,就记录该角度下的图像在旋转坐标系上的投影图形。
从数据集中随机选取80%的CT 图像作为训练集训练SDAE-CNN,向其中加入噪声,其余20%图像作为测试集,测试网络重建质量。在训练过程中,学习率η 逐步增大,由0.001 过渡到0.01,设置β1=0.9,β2=0.999,ε=10-8,Nb=64,权重W 初始值为区间上均匀随机取值,d 为初始层的神经元个数。
本文用腹部CT图像Slice1-Slice3与肺部CT图像Slice4-Slice6 作为测试集测试网络性能,对比不同方法重建效果。同时,为了更加直观观察感兴趣部分的重建情况,放大黄框框选部分,结果如图5所示。为了进一步验证SDAE-CNN 重建性能,通过峰值信噪比(Peak Signal to Noise Ratio,PSNR)和结构相似性(Structural Similarity,SSIM)两种指标对腹部与肺部重建图像精度进行量化,其结果如表1和表2所示。
图5 腹部与肺部CT图像不同算法重建结果对比图
从表1 和表2 重建结果的PSNR 和SSIM 上分析,可以发现RED-CNN 与SDAE-CNN 的PSNR 值与SSIM 值都大于FBP、SART-TV、PYRO-NN,重建效果优于这三种方法,可以重建出更多细节。FBP方法的PSNR和SSIM的值最低,重建图像受噪声干扰,重建效果最差。ART-TV、PYRO-NN 的PSNR和SSIM的值大于FBP,小于RED-CNN与SDAE-CNN方法,细节重建效果较差,会出现模糊现象。通常情况下,病灶并不大,如果细节信息无法保留,会给后续病灶识别造成困扰,这样的重建图像是难以被使用的。而且本文方法的PSNR 和SSIM 值大多数情况下高于RED-CNN,因此SDAE-CNN 方法优于RED-CNN方法。
表1 腹部CT图像在不同算法下的重建结果的定量分析表
表2 肺部CT图像在不同算法下的重建结果的定量分析表
针对稀疏度为77.5%的高稀疏度CT 图像重建问题,本文提出SDAE-CNN 重建算法。该算法通过加入噪声和稀疏约束项,提高网络的泛化能力和稀疏性,利用卷积自动编码器网络层进行非线性降维与升维,可高效实现低维空间与高维空间数据的相互映射,同时借助改进卷积神经网络寻找低维空间非线性对应关系,实现低维空间图像重建。为了观察SDAE-CNN 的重建效果,对比了SDAE-CNN与FBP、ART-TV、PYRO-NN、RED-CNN 等方法的重建结果。经对比,可发现SDAE-CNN 在重建精度上远优于FBP、ART-TV、PYRO-NN算法,稍优于RED-CNN 算法,可以很好地通过稀疏数据重建CT图像。