0引言青光眼是可以致盲的主要眼科疾病之一,往往在早期阶段没有关注,发现时已经对眼睛造成永久性损伤。视盘(optic disc,OD)是眼底图像中较为明亮的一块区域,近似椭圆。视杯(optic cup,OC)在视盘区域内部。临床阶段通常根据视杯盘比(cup to disc radio,CDR)诊断青光眼,先前研究(Fu等,2018)表明,CDR越大,患青光眼的概率也就越高。CDR超过0.65时(Wang等,2019b)一般就可以认为是青光眼。CDR的计算需要精确地分割出OD和OC,面对每天产生的大量眼底图像,手动计算CDR,不仅耗时耗力,而且主观性较大,效率较低。因此利用计算机自动、精确地分割出视盘和视杯区域,对青光眼的早期诊断和及时治疗具有重要意义。视盘区域与周边区域对比度较高,已有的方法在视盘分割任务中往往能达到较高精度。而视杯区域在视盘区域内部,并且二者之间的界限很不明显,精确地分割视杯区域是一项挑战性的工作。传统分割视盘、视杯的方法主要是基于形变模型、图割算法、边缘检测和超像素分类等。传统方法需要手工提取图像特征,容易受光照和对比度等因素的影响,分割精度往往不高,而且这些方法需要精心调整模型参数来获取性能提升,不适合大范围推广。随着深度学习的发展,以自动提取图像特征的卷积神经网络为基础的视盘、视杯分割方法成为主要研究方向,并取得了优于传统方法的分割效果。基于深度学习的方法大多以全卷积神经网络(fully convolutional networks,FCN)(Long等,2015)和U-Net(Ronneberger等,2015)为基础进行改进,主要分为联合分割和二阶段分割两类。联合分割即训练一个深度神经网络同时分割出OD和OC(Fu等,2018;Wang等,2019a;Al-Bander等,2018;Yu等,2019;Zhang等,2019;Jiang等,2019a;Wang等,2019b),同时能够建立视盘和视杯位置之间的某种内在联系,但精度往往不如二阶段分割,因为联合分割网络不好训练,且容易倾向于分割其中某一类(OD或OC),无法保证二者均能取得各自最优结果(Kim等,2019;Xu等,2019;Biswal等,2020)。二阶段分割即训练两个网络分别分割出OD和OC(Sevastopolsky,2017;Kim等,2019;Joshua等,2019;Jiang等,2018, 2019b;Xu等,2019),但会忽略OD和OC的位置联系。为此,本文在使用二阶段分割保证OD和OC均能取得各自最优分割结果的同时,将OC在OD内部这一先验知识引入OC分割网络,通过建立OD和OC的位置关系来约束较为困难的OC分割。视杯在视盘内部这一特点意味着属于视杯的像素点也属于视盘区域,故先分割出视盘,然后再分割视杯。本文分别训练具有相同网络结构和不同网络参数的分割网络CA-Net(context attention U-Net)进行分割。如图 1所示,本文提出的视盘和视杯分割算法步骤如下:1)将视盘感兴趣区域(region of interest,ROI)部分从原图中裁剪出来;2)将裁剪的ROI区域从笛卡儿坐标系转换到极坐标系;3)将经过极坐标转换后的ROI图像送入视盘分割网络CA-Net进行视盘分割,输出分割图,然后从极坐标系图像逆转换为笛卡儿坐标系图像;4)将步骤3)得到的视盘分割二值图与步骤1)裁剪得到的ROI区域进行逐像素“与”操作,得到mask ROI(ROI masked by optic disc)区域,这为后续OC分割提供了“OC在OD内部区域”这一先验知识,建立了二者之间的距离关系,约束了对OC的分割;5)将上一步得到的mask ROI图像转换为极坐标系下图像;6)将极坐标系下mask ROI图像送入视杯分割网络进行视杯分割,然后逆转换为笛卡儿坐标系图像;7)将分割得到的视盘和视杯区域合并为单幅图像,完成视盘和视杯分割任务。 图1 视盘和视杯分割流程图 The pipeline of our method for optic disc and optic cup segmentationFig 1本文主要有以下贡献:1)采用在极坐标系下进行的二阶段OD和OC分割方法,分别训练两个具有相同网络结构的分割网络CA-Net用来分割OD和OC,其中CA-Net以修改的ResNet34为特征提取网络,可以提取更加有效的图像特征;2)使用上下文聚合模块(context aggregation module,CAM)多层次地提取图像特征;3)在编、解码器特征融合阶段使用注意力指导模块(attention guidance module,AGM)增强有效特征,抑制无效特征;4)使用深度监督思想监督解码器每个层次的特征图,使浅层网络参数也能得到充分训练;5)将先验知识引入OC分割网络,提高了OC分割精度;6)分别在Drishti-GS1(Sivaswamy等,2015)、RIM-ONE(retinal image database for optic nerve evaluation)-v3(Fumero等,2011)两个常用的视盘、视杯分割数据集和Refuge(retinal fundus glaucoma challenge)(Orlando等,2020)青光眼挑战赛数据集上进行测试,并进行了跨数据集实验,验证了CA-Net的有效性和泛化性。1相关工作传统分割视盘和视杯的方法主要基于手工提取特征。Lowell等人(2004)采用活动轮廓模型检测视盘边界,Aquino等人(2010)和Lu(2011)采用基于圆形变换的方法分割视盘,Cheng等人(2013)采用超像素点分类方式分割视盘和视杯,将边缘检测问题转化为逐像素分类问题。鲁正等人(2019)尝试采用弱监督方法分割视盘。相比于视盘分割,低对比度导致视杯分割更加困难。Wong等人(2008)采用水平集的方法分割视杯,并基于血管在穿过视杯边界时会发生弯曲这一经验完成了对视杯边界的分割(Wong等,2009),但是在自然条件下,血管在不穿过视杯边界时也可能发生弯曲,故此方法会受到影响。传统方法的分割精度主要依赖手工提取图像特征的好坏,无法提取有效特征时,分割精度会大幅降低。因为卷积神经网络可以自动提取图像特征,许多基于深度学习的视盘和视杯分割网络相继提出。Mohan等人(2019)采用级联神经网络分割视盘。Gu等人(2019)提出CE-Net(context encoder network),基于空洞卷积(Yu和Koltun,2016)和空间金字塔池化构建了一个上下文编码模块。Sevastopolsky(2017)提出了一个精简的U-Net,同时使用Dropout防止过拟合。Maninis等人(2016)提出DRIU(deep retinal image understanding),使用预训练的VGG-Net(visual geometry group network)作为特征提取层,分别进行视盘和血管分割。Al-Bander等人(2018)利用全卷积DenseNet(dense network)进行视盘和视杯的联合分割。Shankaranarayana等人(2017)和Jiang等人(2019a)均使用生成对抗网络思想分割视盘/视杯。Yu等人(2019)使用预训练的ResNet34(residual network)提取图像特征,并且利用特殊的训练方法充分发挥预训练参数的作用,但是进行了5次下采样,导致在上采样阶段很难完全恢复图像信息。Zhang等人(2019)引入边缘担保模块重点学习浅层特征图的边缘特征信息,并用学习的边缘信息指导深层网络进行分割。Xu等人(2019)提出一个结合图像金字塔的U型分割网络,并使用新型训练方法重点训练困难样本。Wang等人(2019b)将分割问题视为回归问题,直接用椭圆拟合出视盘和视杯的位置。因为OD和OC形状近似椭圆,Jiang等人(2018)将分割问题视为目标检测问题,并且在分割前首先消除了血管对结果的影响。Jiang等人(2019b)将视杯在视盘内部区域这一先验知识加入网络约束视杯的分割结果。Murugesan等人(2019)设计了一个多任务网络,分别输出视盘和视杯分割图、轮廓图和距离图,使用轮廓图和距离图约束分割结果。上述方法均是在笛卡儿坐标系下进行分割,也有一些研究(Fu等,2018;Zahoor和Fraz,2017;Liu等,2019;Biswal等,2020)是在极坐标系下进行视盘、视杯分割。M-Net(Fu等,2018)在U-Net基础上引入了多尺度输入和多边缘输出。Shankaranarayana等人(2019)提出利用深度图指导分割视盘和视杯。2改进的网络模型2.1数据预处理彩色眼底图像分辨率较大,首先从原图中裁剪出ROI区域,不仅可以节省计算机内存,而且可以防止大量的无关背景区域对结果的影响。本文首先定位视盘中心,然后以其为中心点裁剪出512 × 512像素大小的视盘区域,裁剪出的区域可以完整包含视盘和视杯。很多视盘定位方法可以准确定位视盘区域,本文采用Wang等人(2019a)提出的视盘定位方法裁剪ROI区域,并将裁剪出的ROI区域从笛卡儿坐标系图像转换为极坐标系图像(如图 2所示)。 图2 极坐标转换 Polar transformation ((a)Cartesian coordinate system; (b)polar coordinates system)Fig 2以ROI区域的中心$O$为原点,$R$为转换半径,$r$为某点到原点的距离,$θ$为角度。那么任意一点$p(u, v)$均可以转换为极坐标系中的某一点$p′(θ, r)$。笛卡儿坐标系到极坐标系的转换关系为 1 $\left\{\begin{array} { l } { u = r \operatorname { cos } \theta } \\{ v = r \operatorname { sin } \theta }\end{array} \Leftrightarrow \left\{\begin{array}{l}r=\sqrt{u^{2}+v^{2}} \\\theta=\arctan \frac{v}{u}\end{array}\right.\right.$ 进行极坐标转换的目的是平衡视盘与视杯的分布(Fu等,2018;Xie等,2020),因为视杯区域即使在裁剪后的图像中也只占很小一部分,而视杯和背景区域分布严重不平衡容易导致训练视杯分割网络过程中出现过拟合问题。2.2CA-Net分割网络本文训练了两个分割网络分别用于分割视盘和视杯,两个分割网络的结构相同,只是网络参数不同。分割网络CA-Net(context attention network)主要由编码器、上下文聚合模块、解码器和深度监督构成(如图 3所示),能够实现端到端的训练。 图3 CA-Net CA-NetFig 32.2.1编码器编码器的作用主要是提取具有高水平语义信息的图像特征。原始U-Net网络通过级联的3 × 3卷积和2 × 2最大池化提取图像深层次特征。一般网络的深度越深,提取特征的能力就越强。但是当网络增加到一定深度时,会出现梯度消失问题,导致网络性能退化。如图 4所示,ResNet(He等,2016)通过残差连接解决这一问题,可以使网络变得更深,提取特征能力也更强大($\mathit{\boldsymbol{X}}$表示输入特征图)。 图4 残差连接单元 Residual blockFig 4如图 5所示,编码器选取修改的34层ResNet(ResNet34)作为特征提取网络提取图像的分层特征,移除了原始ResNet34中第1个最大池化层、最后的平均池化层和全连接层,只保留了第1个7×7卷积层,以及个数分别为3、4、6、3的残差模块,下采样率为16,共进行4次下采样。图 5中“/2”表示下采样,即特征图的宽度和高度变为原来的二分之一。下采样率指图像经过特征提取网络后分辨率相比于原始尺寸的大小。由于医学图像领域训练数据集匮乏,故首先加载在ImageNet(imageNet large-scale visual recognition challenge)数据集上预训练好的权重参数进行参数初始化,辅助网络模型训练。 图5 编码器结构 The structure of the encoderFig 52.2.2上下文聚合模块深层特征具有高水平语义信息,但是损失了分辨率;浅层特征具有高分辨率,但是语义水平较低。空洞卷积可以在不降低分辨率的前提下扩大网络的感受野。在2维情况下,空洞卷积可以表示为 2 $\boldsymbol{y}_{[i]}=\sum\limits_{k=1}^{K} \boldsymbol{x}_{[i+d \cdot k]} \cdot w_{[k]}$ 式中,${\mathit{\boldsymbol{y}}_{[i]}}$表示输出特征图,${\mathit{\boldsymbol{x}}_{[i]}}$表示输入特征图,$d$表示空洞率,${w_{[k]}}$表示卷积核的第$k$个参数,$K$表示卷积核大小。如图 6所示,空洞卷积等价于在相邻的卷积核参数之间填充$d$-1个空洞。当空洞率$d$=1时空洞卷积退化为标准卷积,其中$d$越大,意味着卷积核的感受野越大。 图6 空洞卷积 Atrous convolutionFig 6为了提取图像的高水平语义信息,编码器需要采用池化层或者步长大于1的卷积层降低图像分辨率。但是,丢失的分辨率信息在解码器中很难完全恢复。如图 7所示,本文提出的上下文聚合模块(CAM)分别采用1 × 1标准卷积、空洞率$d$=2的3 × 3空洞卷积、空洞率$d$=3的3 × 3空洞卷积、空洞率$d$=5的3 × 3空洞卷积和全局平均池化提取特征,共提取了5个层次的图像信息。其中,使用全局平均池化提取特征的具体过程为先用自适应平均池化层生成一个1 × 1 × 512维度的特征图,再用1 × 1卷积将通道数改变为256,接着使用双线性插值算法将其尺寸扩大为14 × 14。 图7 上下文聚合模块 Context aggregation moduleFig 7最后,将提取到的5个层次的特征图和原特征图进行拼接,得到一个14 × 14 × 1 792维度的特征图,再使用1 × 1卷积将其通道数改为512。每个卷积操作后均有批标准化层(batch normalization,BN)和ReLU激活函数,在每个空洞卷积提取特征前,先对特征图进行padding操作,以保证前后特征图分辨率不发生变化。2.2.3解码器从上下文聚合模块输出的特征图包含了高水平、多层次的图像特征,依次经过4次上采样操作直至恢复为原图分辨率大小。常用的上采样方式主要有转置卷积(反卷积)和双线性插值,本文选取步长为2的2 × 2反卷积扩大图像分辨率,每次(不包括最后1次)上采样的输出特征图为128。虽然深层网络具有丰富的语义信息,但是丢失了图像的位置信息。为了更好地恢复图像,本文采用跳跃连接(长连接)。跳跃连接通过在通道维度上拼接相对应的编、解码器特征图,可以用浅层特征图辅助解码器更好地恢复图像位置信息。如图 8所示,编码器特征图首先经过1 × 1卷积,使特征图通道数变为128,然后再与解码器特征图进行拼接操作,拼接后的特征图再经过批标准化和Leaky-ReLU激活函数。 图8 浅层和深层信息融合 The combination of shallow and deep informationFig 8浅、深层信息融合后的信息比较杂乱、冗余,本文提出的注意力指导模块(AGM)可以抑制背景信息,突出重要信息,有助于上采样层逐渐恢复图像信息。如图 9所示,AGM模块由自适应平均池化层、两个带不同激活函数的1×1卷积层构成。具体操作如下:首先,输入特征图经过一个自适应平均池化层,输出特征图维度为${{\bf{R}}^{1 \times 1 \times C}}$;接着,经过一个带ReLU激活函数的1 × 1卷积层,输出特征图维度为${{\bf{R}}^{1 \times 1 \times C/r}}$,将通道数由$C$缩小为$C/r$;然后,经过一个带Sigmoid激活函数的1 × 1卷积层,将通道数由$C/r$扩大为$C$,得到一个维度为${{\bf{R}}^{1 \times 1 \times C}}$的通道描述符用来重标定原特征图。其中,超参数$r$可以控制AGM模块的计算量,实验中将其设置为16。最后,将得到的通道描述符和输入特征图进行逐通相乘,就可以完成对特征图的重标定,通过融入全局信息来重标定每个通道的重要性。不同通道的重要性不同,从而突出了重要信息,抑制了背景信息。 图9 注意力指导模块 Attention guided moduleFig 9网络最后一个2 × 2转置卷积的输出特征图包含两个通道(视盘和背景;或视杯和背景),再经过softmax函数激活后,输出2通道的概率图,每个图像位置都有对应于每个种类的概率值。通过取出每个图像位置中最大概率值的索引值就能得到网络的视盘/杯分割图。2.2.4深度监督常见的分割网络一般只是在网络最后一层添加损失函数,而深度监督模块是在上采样的每个阶段均添加额外的损失函数,这样可以促进梯度回传,使网络的中间层也能够得到充分训练,有助于加快网络收敛速度和提升分割效果。如图 3所示,在每个阶段的解码器后(除了最后一个上采样阶段)各自引入一个分支,这个分支由1 × 1卷积层、上采样模块和softmax函数组成。步骤如下:先通过1 × 1卷积层将特征图通道数降低为2通道,然后采用双线性插值算法将特征图上采样到224 × 224像素大小,再进行softmax函数激活,与ground truth计算损失,然后进行反向传播。网络中共有4个边缘输出层和1个混合平均输出层$L″$,总的损失函数为 3 $L^{\prime}=\sum\limits_{m=1}^{M} \alpha_{m} L_{m}+L^{\prime \prime}$ 式中,${{\alpha _m}}$表示每一层的混合权重(实验中设置为1),$L$表示损失函数,$M$表示有几个边缘输出层(实验中$M$ = 4),$L″$表示将4个边缘输出层的结果相加再平均,然后计算与ground truth的损失。使用5个损失函数共同帮助网络参数训练,能够有效提升性能。基于深度学习的语义分割问题实际是逐像素点的分类问题,较为常用的是交叉熵损失,但是在医学图像分割领域,目标区域往往只占小部分区域,故存在正负样本分布不平衡问题。本文选取DiceLoss函数作为损失函数来解决这一问题(Milletari等,2016),具体为 4 $L=1-\sum\limits_{k=1}^{K} \frac{2 w_{k} \sum\limits_{i=1}^{N} p_{(k, i)} g_{(k, i)}}{\sum\limits_{i=1}^{N} p_{(k, i)}+\sum\limits_{i=1}^{N} g_{(k, i)}}$ 式中,$N$表示有多少个像素点,$K$表示有几个分类,实验中$K$设置为2(视盘和背景,或视杯和背景)。${{p_{(k, i)}}}$∈[0, 1],概率范围是0~1,表示网络最后的softmax层输出概率值。${{g_{(k, i)}}}$∈{0, 1},表示ground truth,值为0或1。实验中设置$w_{k}=\frac{1}{K}$。3实验结果与分析3.1数据集本文分别在Drishti-GS1和RIM-ONE-v3数据集上对视盘和视杯分割进行对比实验,同时为了进一步验证CA-Net的有效性,在Refuge青光眼挑战赛数据集上进行对比实验。Drishti-GS1数据集共101幅图像,分为训练集50幅和测试集51幅。RIM-ONE-v3数据集共159幅图像,未划分训练集和测试集,本文采用Wang等人(2019a)的划分方法,随机选取99幅作为训练集,60幅作为测试集。Refuge青光眼竞赛数据集共1 200幅图像,分为训练集、验证集和测试集3部分,每部分各400幅,包含40幅青光眼图像和360幅正常图像,训练集图像尺寸为2 124 × 2 056像素,由Zeiss Visucam 500相机拍摄,验证集和测试集图像尺寸为1 634 × 1 634像素,由Canon CR-2相机拍摄。由于拍摄相机不同,训练集与验证集、测试集图像的颜色、纹理、对比度等存在较大差异,这就涉及到域适应问题,所以本文将400幅训练集图像按8 ∶2的比例随机划分为训练集320幅和测试集80幅来验证CA-Net的有效性。各数据集的组成如表 1所示。 表1 不同数据集的组成对比 数据集 发表年份 青光眼 正常 总数 训练集 测试集 Drishti_GS1 2014年 70 31 101 50 51 RIM-ONE-v3 2015年 74 85 159 99 60 Refuge 2018年 40 360 400 320 80 Comparison of contents among different datasets  /幅Table 13.2实验细节实验使用PyTorch深度学习框架和OpenCV图像处理库,Ubuntu 16.04操作系统,GeForce GTX 1080Ti显卡,Adam优化器,初始学习率为0.001,batchsize训练阶段设置为8,测试阶段设置为1,共训练150 epoch。在训练集上进行模型训练,在测试集上进行测试,分别训练两个分割网络来分割OD和OC。如图 10所示,从左至右依次为裁剪的ROI、视盘、视杯和mask ROI图像,其中mask ROI图像是由视盘图像和ROI图像进行逐像素“与”操作得到的。在训练阶段,使用图 10(a)(b)训练视盘分割网络,使用图 10(c)(d)训练视杯分割网络。在测试阶段,将ROI图像输入到视盘分割网络中,即可得到OD分割图;因为得到了OD分割图,所以利用OD分割图和ROI图像得到mask ROI图像,然后输入到视杯分割网络中,得到OC分割图。 图10 ROI和对应的OD、OC和mask ROI图像 Images of ROI and corresponding OD, OC and mask ROI ((a) ROI; (b) OD; (c) OC; (d) mask ROI)Fig 10为了减小数据集不同图像之间的差异,在将图像送入网络进行训练之前首先对每幅图像进行标准化处理,具体为 5 $\boldsymbol{I}_{(i, j, k)}^{\prime}=\frac{\boldsymbol{I}_{(i, j, k)}-m_{k}}{\sigma_{k}}$ 式中,${{\mathit{\boldsymbol{I}}_{(i, j, k)}}}$为输入图像,$\mathit{\boldsymbol{I}}_{(i, j, k)}^\prime $为标准化后的图像,$i$和$j$表示像素点的坐标,$k$表示图像三通道(蓝、绿和红),${{m_k}}$表示第$k$个通道像素值的平均值,${{\sigma _k}}$表示第$k$个通道像素值的标准差。由于训练数据集较小,所以采用数据增强方式对数据集进行扩充,实验中对每幅图像分别进行随机垂直翻转、随机水平翻转以及随机对角翻转。通过数据增强,1幅图像扩充为2 × 2 × 2 = 8幅图像。此外,由于计算机性能有限,故先将图像缩放为224 × 224像素大小,再送入网络进行训练和测试。由于从网络输出的分割图中可能会存在一些边缘噪声点,实验中仅选取其中最大的一块连通区域作为网络分割结果。同时,只在训练阶段采用深度监督模块,在测试阶段不添加深度监督模块,这有助于网络模型的大规模部署使用。CA-Net输出的OD/OC预测图可能会有多个连通区域,选取最大的一块连通区域作为最终分割图,同时填充最大连通区域内部的孔洞,这可以移除无关区域的影响,提升分割结果。3.3评价指标在视盘/视杯分割实验中较为常用的评价指标主要包括交并比(intersection-over-union,IOU)和Dice系数(dice coefficient),具体为 6 $\begin{aligned}I O U &=\frac{|\boldsymbol{X} \cap \boldsymbol{Y}|}{|\boldsymbol{X} \cup \boldsymbol{Y}|} \\\end{aligned}$ 7 $\begin{aligned} { Dice } &=\frac{2|\boldsymbol{X} \cap \boldsymbol{Y}|}{|\boldsymbol{X}|+|\boldsymbol{Y}|}\end{aligned}$ 式中,$\boldsymbol{X}$表示ground truth,$\boldsymbol{Y}$表示网络预测的视盘或视杯区域。$IOU$的值在0~1之间,值越大,表示预测为视盘或视杯的区域与ground truth重叠越多,分割结果也越好。$Dice$的值也在0~1之间,越接近于1,表示结果越好。3.4实验结果与分析3.4.1各模块之间的消融实验首先在Drishti_GS1数据集中验证本文提出的CA-Net算法中的4个模块(极坐标转换、深度监督、注意力指导模块(AGM)和上下文聚合模块(CAM))的有效性。选取的基础网络(baseline)不添加上述模块,只以修改的ResNet34为下采样层(加载了预训练权重)的编码器—解码器网络结构。实验结果如表 2所示,可以看出,使用baseline分割视盘的$Dic$e和$IOU$分别为0.971 8和0.945 1,分别在baseline基础上添加4个模块中的任一模块,均获得了性能提升。其中,极坐标转换对视盘分割性能提升最大,$Dice$和$IOU$分别为0.977 0和0.955 0。4个模块全部添加后,分割视盘性能最好,$Dice$和$IOU$分别为0.981 4和0.963 5,分别比baseline提高了0.96%和1.84%。使用baseline分割视杯的$Dice$和$IOU$分别为0.908 5和0.832 3,添加4个模块中任意一个模块均有助于提升视杯分割精度,添加全部4个模块时达到最优,$Dice$和$IOU$分别为0.926 6和0.863 3,分别比baseline提高了1.81%和3.1%。 表2 本文算法各模块在Drishti_GS1数据集中的消融实验对比 极坐标转换 深度监督 AGM CAM OD OC $Dice$ $IOU$ $Dice$ $IOU$ - - - - 0.971 8 0.945 1 0.908 5 0.832 3 √ - - - 0.977 0 0.955 0 0.910 0 0.834 9 - √ - - 0.974 6 0.950 4 0.910 2 0.835 3 - - √ - 0.975 7 0.952 5 0.914 8 0.843 1 - - - √ 0.976 2 0.953 5 0.912 7 0.839 4 √ √ - - 0.977 2 0.955 4 0.914 1 0.841 8 √ √ √ - 0.977 8 0.956 6 0.915 4 0.844 1 √ √ √ √ 0.981 4 0.963 5 0.926 6 0.863 3 Comparison of ablation experimental results of each module from our algorithm on Drishti_GS1 datasetTable 2 加粗字体表示各列最优结果,“-”表示不添加模块,“√”表示添加对应模块。为验证输入图像对视杯分割的影响,分别输入ROI和mask ROI图像(ROI图像和视盘分割阶段预测的视盘二值图像进行了“与”运算)进行测试,然后在3个数据集上进行对比实验,结果如表 3所示。可以看出,使用mask ROI图像进行OC分割网络训练和测试能够得到更优的OC分割结果。这是因为mask ROI可以给OC分割网络添加先验知识,有助于建立OD和OC的距离联系,进而约束对OC的分割,可以防止分割出的OC部分区域不在OD内部。 表3 输入图像对视杯分割的影响 输入图像 Drishti_GS1数据集 RIM-ONE-v3数据集 Refuge竞赛数据集 $Dice$ $IOU$ $Dice$ $IOU$ $Dice$ $IOU$ ROI 0.917 2 0.847 1 0.849 4 0.738 2 0.885 1 0.793 9 mask ROI 0.926 6 0.863 3 0.864 2 0.760 9 0.887 1 0.797 2 Influence of input images on optic cup segmentationTable 3 加粗字体为各列最优结果。为验证特征提取网络、加载预训练权重、进行极坐标转换等因素对分割结果的影响,分别在Drishti_GS1、RIM-ONE-v3数据集和Refuge竞赛数据集中进行对比实验,结果如表 4所示。通过对比可知,使用修改的ResNet34作为特征提取网络要优于ResNet18;加载预训练权重有助于提升分割结果,防止过拟合;使用极坐标转换对OD和OC分割均有提升效果。 表4 不同因素对分割结果的影响 算法 Drishti_GS1数据集 RIM-ONE-v3数据集 Refuge竞赛数据集 OD OC OD OC OD OC $Dice$ $IOU$ $Dice$ $IOU$ $Dice$ $IOU$ $Dice$ $IOU$ $Dice$ $IOU$ $Dice$ $IOU$ ResNet18 0.981 3 0.963 3 0.917 1 0.847 0 0.975 4 0.95 2 0.861 1 0.756 0 0.974 3 0.949 8 0.886 2 0.795 7 无预训练 0.977 2 0.955 5 0.879 6 0.785 1 0.972 3 0.946 1 0.835 4 0.717 3 0.970 7 0.943 1 0.885 8 0.795 0 无极坐标转换 0.975 8 0.952 7 0.907 7 0.831 1 0.971 3 0.944 3 0.848 9 0.737 5 0.974 8 0.950 8 0.886 5 0.796 2 本文 0.981 4 0.963 5 0.926 6 0.863 3 0.976 8 0.954 6 0.864 2 0.760 9 0.975 8 0.952 7 0.887 1 0.797 2 Influence of different factors on segmentation resultsTable 4 加粗字体为各列最优结果。3.4.2与其他方法对比实验为了进一步验证CA-Net的有效性和泛化性,分别在Drishti-GS1、RIM-ONE-v3数据集和Refuge竞赛数据集上与其他视盘和视杯分割方法进行对比。这些方法包括在语义分割领域广泛应用的U-Net和Deeplabv3+(Chen等,2018)、基于U-Net改进的Robust(Yu等,2019)、M-Net(Fu等,2018)、CE-Net(Gu等,2019)和Sevastopolsky(2017),其中Robust和M-Net属于联合分割,Sevastopolsky属于二阶段分割。实验结果如表 5-表 7所示。 表5 不同方法在Drishti_GS1数据集中的分割结果对比 方法 OD OC $Dice$ $IOU$ $Dice$ $IOU$ U-Net 0.966 0 0.934 2 0.861 1 0.756 0 Deeplabv3+ 0.963 8 0.930 1 0.855 8 0.747 9 M-Net 0.967 8 0.938 6 0.861 8 0.773 0 CE-Net 0.975 9 0.953 0 0.915 7 0.844 5 Al-Bander等人(2018) 0.949 0 0.904 2 0.828 2 0.711 3 Edupuganti等人(2018) 0.967 0 - 0.897 0 - Sevastopolsky(2017) - - 0.850 0 0.750 0 Jiang等人(2019a) 0.971 0 - 0.905 0 - Robust 0.973 8 0.949 2 0.887 7 0.804 2 Wang等人(2019a) 0.974 0 - 0.901 0 - Xu等人(2019) 0.978 0 0.949 6 0.892 1 0.823 2 Mohan等人(2019) 0.971 3 0.947 0 - - Shankaranarayana等人(2019) 0.963 0 0.929 0 0.848 0 0.760 0 Liu等人(2019) 0.980 0 - 0.890 0 - 本文 0.981 4 0.963 5 0.926 6 0.863 3 Comparison of segmentation results on Drishti_GS1 dataset among different methodsTable 5 加粗字体表示各列最优结果,“-”表示未列出结果。 表6 不同方法在RIM-ONE-v3数据集中的分割结果对比 方法 OD OC $Dice$ $IOU$ $Dice$ $IOU$ U-Net 0.958 7 0.920 6 0.797 6 0.663 3 Deeplabv3+ 0.966 1 0.934 4 0.823 6 0.700 1 M-Net 0.952 6 0.911 4 0.834 8 0.730 0 CE-Net 0.973 2 0.947 8 0.859 2 0.753 2 Sevastopolsky(2017) 0.950 0 0.890 0 0.820 0 0.690 0 Robust 0.961 0 0.925 6 0.844 5 0.742 9 Wang等人(2019a) 0.968 0 - 0.856 0 - Xu等人(2019) 0.956 1 0.917 2 0.856 4 0.758 6 本文 0.976 8 0.954 6 0.864 2 0.760 9 Comparison of segmentation results on RIM-ONE-v3 dataset among different methodsTable 6 加粗字体表示各列最优结果,“-”表示未列出结果。 表7 不同方法在Refuge数据集中的分割结果对比 方法 OD OC $Dice$ $IOU$ $Dice$ $IOU$ U-Net 0.953 8 0.911 8 0.862 6 0.758 3 Robust 0.973 2 0.947 8 0.873 9 0.776 0 DeepLabv3+ 0.972 5 0.946 6 0.859 2 0.753 2 CE-Net 0.974 7 0.950 7 0.883 6 0.791 4 本文 0.975 8 0.952 7 0.887 1 0.797 2 Comparison of segmentation results on Refuge dataset among different methodsTable 7 加粗字体表示各列最优结果。从表 5可以看出,在Drishti-GS1数据集中,本文提出的CA-Net分割视盘的$Dice$和$IOU$分别为0.981 4和0.963 5,分别比U-Net提高了1.54%和2.93%,比Deeplabv3+提高了1.76%和3.34%;CA-Net分割视杯的$Dice$和$IOU$分别为0.926 6和0.863 3,分别比U-Net提高了6.55%和10.73%,比Deeplabv3+提高了7.08%和11.54%。CA-Net在视盘和视杯分割精度上均达到了优秀水平。从表 6可以看出,在RIM-ONE-v3数据集中,CA-Net分割视盘的$Dice$和$IOU$分别为0.976 8和0.954 6,分别比U-Net提高了1.81%和3.4%,比Deeplabv3+提高了1.07%和2.02%;CA-Net分割视杯的$Dice$和$IOU$分别为0.864 2和0.760 9,分别比U-Net提高了6.66%和9.76%,比Deeplabv3+提高了4.06%和6.08%。CA-Net在视盘和视杯分割任务中均取得了最优结果。从图 7可以看出,CA-Net分割视盘的$Dice$和$IOU$分别为0.975 8和0.952 7,分别比U-Net提高了2.2%和4.09%,比Deeplabv3+提高了0.33%和0.61%,比Robust提高了0.26%和0.49%,比CE-Net提高了0.11%和0.2%;CA-Net分割视杯的$Dice$和$IOU$分别为0.887 1和0.797 2,分别比U-Net提高了2.45%和3.89%,比Deeplabv3+提高了2.79%和4.4%,比Robust提高了1.32%和2.12%,比CE-Net提高了0.35%和0.58%。在Refuge竞赛数据集中CA-Net分割视盘和视杯均取得最优结果。为验证CA-Net的泛化性能,进行了跨数据集实验。利用Refuge训练集(320幅图像)训练神经网络,然后分别在Drishti-GS1和RIM-ONE-v3的测试集中进行测试。分别复现U-net和CE-Net进行对比,并与pOSALseg-S(Wang等,2019a)中的实验结果进行对比。如表 8所示,在Drishti-GS1测试集中,CA-Net分割视盘的$Dice$和$IOU$分别为0.959 5和0.922 1,分割视杯的$Dice$和$IOU$分别为0.875 4和0.778 5。在RIM-ONE-v3测试集中,CA-Net分割视盘的$Dice$和$IOU$分别为0.897 3和0.813 7,分割视杯的$Dice$和$IOU$分别为0.827 4和0.705 6。由于训练集和测试集中的图像特征差异较大,导致各个方法在跨库实验中均有不同程度的精度下降,这涉及到域适应问题。相比于在Drishti_GS1测试集的分割结果,CA-Net在RIM-ONE-v3测试集中的分割精度下降更为明显。这主要是因为Refuge训练集的图像特征与Drishti_GS1测试集中的图像特征较为接近,而与RIM-ONE-v3测试集的图像特征差异较大。尽管如此,CA-Net在跨数据集实验中仍然能够获得优于其他对比方法的分割结果。综合可知,CA-Net的泛化性能良好。 表8 不同方法在Drishti_GS1和RIM-ONE-v3测试集中的分割结果对比 方法 Drishti_GS1测试集 RIM-ONE-v3测试集 OD OC OD OC $Dice$ $IOU$ $Dice$ $IOU$ $Dice$ $IOU$ $Dice$ $IOU$ U-Net 0.746 4 0.595 4 0.638 1 0.468 5 0.555 5 0.384 6 0.393 6 0.245 0 CE-Net 0.951 1 0.906 8 0.852 1 0.742 3 0.896 8 0.812 8 0.816 2 0.689 5 pOSALseg-S 0.944 0 - 0.836 0 - 0.779 0 - 0.744 0 - 本文 0.959 5 0.922 1 0.875 4 0.778 5 0.897 3 0.813 7 0.827 4 0.705 6 Comparison of segmentation results on Drishti_GS1 and RIM-ONE-v3 testing datasets among different methodsTable 8 加粗字体表示各列最优结果,“-”表示未列出结果。3.4.3分割结果可视化为了直观地验证本文算法的效果,将本文提出的CA-Net算法与U-Net、Deeplabv3+、Robust、pOSAL(Wang等,2019a)和CE-Net等视盘和视杯分割网络的分割结果进行可视化对比。其中Robust和pOSAL这两种方法属于联合分割。图 11为不同算法在Drishti_GS1数据集的测试集中选取的6幅图像的可视化对比。图 11(a)是裁剪后的ROI区域,图 11(b)是专家标注结果。可以看出,U-Net分割出的视盘和视杯边界不规则,Deeplabv3+分割出的视杯边界不规则。与Robust、CE-Net和pOSAL的分割结果比较,CA-Net的分割图像更接近真实标注结果。 图11 不同方法在Drishti_GS1数据集中的分割结果可视化对比 Comparison of visualization of segmentation results on Drishti_GS1 dataset among different methodsFig 11((a)original images; (b)label; (c)U-Net; (d)Deeplabv3+; (e)Robust; (f)pOSAL; (g)CE-Net; (h)ours) 图 12为不同算法在RIM-ONE-v3数据集中选取的6幅图像的可视化对比。相比于Drishti-GS1数据集,RIM-ONE-v3数据集中图像的对比度更低,导致分割更加困难。从图 12可以看出,U-Net和Deeplabv3+分割出的视盘和视杯边界不规则。在Drishti-GS1数据集中表现良好的pOSAL网络,在RIM-ONE-v3数据集中分割视盘效果下降,错分现象严重,Robust分割出的轮廓较为粗糙。而CA-Net分割出的OD和OC边界比较光滑,与专家标注结果更为接近,优于属于联合分割的Robust和pOSAL方法。 图12 不同方法在RIM-ONE-v3数据集中的分割结果可视化对比 Comparison of visualization of segmentation results on RIM-ONE-v3 dataset among different methodsFig 12((a)original images; (b)label; (c)U-Net; (d)Deeplabv3+; (e)Robust; (f)pOSAL; (g)CE-Net; (h)ours) 图 13是本文算法与U-Net、Deeplabv3+、Robust和CE-Net等网络在Refuge竞赛数据集中选取的6幅图像的分割结果可视化对比图。可以看出,U-Net分割出的视盘边界不规则。与Deeplabv3+、Robust和CE-Net的分割结果相比,CA-Net分割出的视盘/杯轮廓更加接近专家标注的结果。 图13 不同方法在Refuge数据集中的分割结果可视化对比 Comparison of visualization of segmentation results on Refuge dataset among different methodsFig 13((a)original images; (b)label; (c)U-Net; (d)Deeplabv3+; (e)Robust; (f)CE-Net; (g)ours) 4结论本文采用了一个新的二阶段视盘和视杯分割方法,在极坐标系下利用两个分割网络CA-Net分别进行视盘和视杯分割。CA-Net通过CAM模块多层次地聚合了图像上下文信息,通过AGM模块增强了有用特征响应、抑制了无用特征。此外,利用深度监督思想在模型训练阶段对浅层网络参数进行充分训练。针对更加困难的视杯分割任务,使用mask ROI图像作为网络输入,为OC分割添加了先验知识,引入了OD和OC之间的距离信息,进一步提升了视杯分割性能。通过与其他分割算法在Drishti-GS1、RIM-ONE-v3和Refuge数据集上进行对比,证明了本文提出的CA-Net算法在视盘和视杯分割任务中的有效性。同时通过跨库实验进一步证明了CA-Net的泛化性能。但是,由于获取带诊断的数据集困难,本文主要研究的是视盘和视杯分割问题。在接下来的工作中,将逐步获取一些带诊断的数据集,将CA-Net应用到实际的青光眼诊断中。此外,将重点关注域适应问题,解决训练样本不足时的视盘和视杯分割难题。

使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读