APP下载

基于通道注意力双路径架构网络分割视网膜血管

2021-10-28邓小波何柯辰全美霖刘艳丽

中国医学影像技术 2021年10期
关键词:注意力视网膜卷积

邓小波,刘 奇,陈 曦,何柯辰,全美霖,刘艳丽

(1.四川大学电气工程学院,2.生物医学工程学院,四川 成都 610065;3.承德医学院生物医学工程系,河北 承德 067000)

分割及定位视网膜血管对诊断视网膜病变、青光眼、糖尿病及高血压眼病等具有重要意义。利用眼底照相机和光学相干断层成像可观察视网膜及其内部区域,包括血管树、中央凹及视盘等[1],进一步分段血管树并提取血管的长度、宽度、分支及角度等形态属性,可用于诊断眼科疾病;但是,人工分割受主观因素影响较大,且耗时、费力[2-3]。传统机器学习依赖人工构造图像特征,而深度学习(deep learning,DL)可自动提取并选择特征。采用U-Net算法或全卷积网络(fully convolutional networks,FCN)的DL方法可实现分割视网膜血管。以现有DL算法分割血管虽可达到较高精度,但网络设计多采用单个路径提取特征,且为获取更多纤薄血管,多使用跳层结构,融合高层语义信息及低层特征信息,而忽略了中间层特征图。本研究观察基于通道注意力的双路径架构网络(dual path-based channel attention network,DPCA-Net)算法分割视网膜血管的效果。

1 数据与方法

1.1 数据集 数据来源于公开DRIVE数据集[4]和CHASE_DB1数据集[5]。DRIVE数据集包含40幅彩色视网膜图像及经过标注的视网膜血管掩码图像,每幅原始图像的尺寸为565×584,以其中20幅为训练样本、另20幅为测试样本。CHASE_DB1数据集包含28幅分辨率为999×960的彩色视网膜图像,将前10组共20幅左眼、右眼图像作为训练样本,其余8幅作为测试样本。自DRIVE训练集中随机抽取19万块大小为48×48的图像块,自CHASE_DB1训练集中随机抽取12万块64×64图像块,用以增加样本数量[6]。

1.2 图像预处理 基于训练集(其中10%为验证集),将眼底彩色图转换为灰度图;对其行标准化处理,将每幅图的灰度减去20幅训练集图像灰度的均值后除以标准差,以对比度受限自适应直方图均衡[7]和Gamma校正[8]调整图像对比度。

1.3 网络结构 DPCA-Net算法由次路径及主路径组成,以通道注意力模块连接两个路径(图1)。路径网络主要由卷积层、残差块、激活层、池化层及上采样层组成。于每个残差卷积模块前加入一个卷积层,该卷积层的输出特征通道数提高2倍,使用ReLU激活函数[9]对卷积后的特征添加非线性因素,残差块为非共权残差块[6];于残差块后引入池化层,提取主要特征并降低特征图的分辨率,上采样层通过反卷积操作增加特征图分辨率。次路径与主路径网络之间仅卷积核大小不同,次路径采用1×1的卷积核,主路径采用3×3的卷积核。通道数为64和128的卷积层在每次下采样前及上采样后均引入通道注意力模块。特征融合前添加残差块和卷积层,以获得不同尺度特征信息,将2个路径提取的特征相加,经过ReLU函数计算后,采用1×1卷积核,以输出通道为2的卷积层作为网络输出。以交叉熵损失作为损失函数(Lossce)对每个像素进行分类[10],公式如下:

图1 DPCA-Net算法网络结构

(1)

同时构建未采用通道注意力模块的双路径架构网络(dual path architecture network,DP-Net)算法。

1.4 通道注意力机制 选择2个特征图Ft∈RC×H×W和Fc∈RC×H×W,其中C表示输入特征图的通道数,H和W分别表示特征图的高度和宽度;分别通过全局平均池化层(AvgPool)和全局最大池化层(MaxPool)压缩特征图的通道信息,对压缩后的特征逐元素相加,得到特征Ftc∈RC×1×1。通过一个多层感知机模型生成通道注意力权重图Mtc∈RC×1×1。为得到更为有效的特征,将隐藏层的大小设置为RC/r×1×1,其中r为缩减比率。最后对生成的特征图进行特征映射,使其大小与原始输入特征图相同,再与其逐元素相乘,得到输出特征图FTout∈RC×H×W和FCout∈RC×H×W,见图2。具体公式如下:

图2 通道注意力模块

Ftc=AvgPool(Ft+Fc)+MaxPool(Ft+Fc)

(2)

Mtc=σ[W1×δ(W0×Ftc)]

FTout=Ft×Fscale(Mtc)

FCout=Fc×Fscale(Mtc)

其中,σ表示Sigmoid激活函数,δ为ReLU激活函数,W0∈RC/r×C为多层感知机的第一层权重(长为C,宽为C/r的实数域矩阵),W1∈RC×C/r为第二次权重(长为C/r,宽为C的实数域矩阵)。Fscale表示将通道注意力权重图映射成H×W的特征图。

1.5 网络训练 采用Adam优化算法[11],将初始学习率设置为0.001,指数衰减率设置为0.9和0.999。当验证集损失在训练10个epoch不下降时,学习率变为原有数值之半,重复进行训练,直至学习率下降至10-7以下。进行模型Xavier初始化[12],批量大小为512,丢失率为0.25。模拟平台为Pycharm,采用PyTorch框架。计算机配置:Inter(R)Xeon(R)CPU E5-2630 V3@2.40 GHz处理器:Nvidia Geforce GTX 1080 Ti显卡:64位Windows10操作系统。

1.6 算法评估 基于测试集统计血管像素被正确分类的真阳性(true positive,TP)数目、血管像素被错误分类为非血管像素的假阴性(false negative,FN)数目、非血管像素被正确分类的真阴性(true negative,TN)数目及非血管像素被错误分类为血管像素的假阳性(false positive,FP)数目。计算准确率(accuracy,ACC)、敏感度(sensitivity,SE)、特异度(specificity,SP)和F1值,评价DPCA-Net算法与DP-Net算法分割视网膜血管的效果。ACC=(TP+TN)/总数;SE=TP/(TP+FN);SP=TN/(TN+FP);精确度(precision,PR)=TP/(TP+FP),F1值=2×PR×SE/(PR+SE)。

2 结果

DPCA-Net算法可正确识别中央血管反射区中同时存在的微血管、无中央反射的血管和有中央反射的血管。采用DPCA-Net算法,亮斑区中的大部分血管被识别;背景干扰区中仅小部分背景被认为是血管;黑斑区中,形状类似血管的黑斑被认为是血管,其他形状被认为是非血管(图3、4)。DPCA-Net算法分割DRIVE/CHASE_DB1数据集中视网膜血管的ACC为95.58%/96.34%,SE为80.37%/77.70%,SP为97.80%/98.22%,F1值为82.24%/79.55%,除针对DRIVE数据集的SE(80.63%)低于DP-Net外,其针对CHASE_DB1数据集的SE(76.06%)、分割DRIVE/CHASE_DB1数据集中视网膜血管的ACC(95.51%/96.15%)、SP(97.68%/98.18%)及F1值(82.06%/78.38%)均高于DP-Net。

图3 DPCA-Net算法分割CHASE_DB1数据集视网膜血管结果 A、B.原始图像;C、D.数据集标准分割结果;E、F.DPCA-Net算法分割结果 (蓝框为中央血管反射区;红框处为亮斑区)

3 讨论

分割血管多基于U-Net架构并采用FCN方法。U-Net网络利用跳层结构融合解码器和编码器特征,FCN则使计算更为高效。ALOM等[13]采用基于U-Net的递归神经网络及递归残差卷积神经网络(convolutional neural network,CNN)的算法分割视网膜血管;LUO等[14]提出一种尺寸不变、可利用连续卷积层和池化层提取血管特征的FCN算法;FENG等[15]利用网络主路径与次路径间的交叉连接融合多层次特征构建CNN算法;FU等[16]采用多尺度注意机制CNN算法,使网络更加关注血管像素,并引入具有不同扩张率的阿托罗斯可分离卷积,以获得更多血管特征。本研究将双路径FCN与通道注意力机制相结合,以充分发挥其优点,次路径的引入丰富了血管特征,注意力机制不仅代替了跳层结构,且提高了特征层的利用率,使得DPCA-Net算法分割DRIVE/CHASE_DB1数据集中视网膜血管的效果均较好。

图4 DPCA-Net算法分割DRIVE数据集视网膜血管结果 A、B.原始图像;C、D.数据集标准分割结果;E、F.DPCA-Net算法分割结果 (橙框为黑斑区;黄框为背景干扰区)

与既往研究[13,15-19]相比,DPCA-Net分割的血管具有更好的连通性,且能分割出更多微血管,其对DRIVE、CHASE_DB1数据集的定量结果ACC均优于其他算法,分别达到95.58%/96.34%,SE、SP及F1值也达到较高水平(表1、2),提示引入通道注意力机制可通过利用网络中间特征层进一步提升网络性能。与DP-Net相比,DPCA-Net在2个数据集上的多项效能指标更优;但其针对DRIVE数据集的SE低于DP-Net,可能原因在于引入通道注意力机制使网络更加注意微血管而将部分微小非血管元素分类为血管元素。

表1 不同算法针对DRIVE数据集的效能比较

综上,本研究提出的DPCA-Net FCN视网膜血管分割方法可避开传统跳层结构,将双路径网络提取的特征经通道与注意力机制相融合,使网络更加注意血管特征,降低病变区域度算法的影响,有利于改进分割视网膜血管的效果。

表2 不同算法针对CHASE_DB1数据集的效能比较

猜你喜欢

注意力视网膜卷积
深度学习在糖尿病视网膜病变诊疗中的应用
让注意力“飞”回来
基于3D-Winograd的快速卷积算法设计及FPGA实现
家族性渗出性玻璃体视网膜病变合并孔源性视网膜脱离1例
高度近视视网膜微循环改变研究进展
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
“扬眼”APP:让注意力“变现”
复明片治疗糖尿病视网膜病变视网膜光凝术后临床观察
A Beautiful Way Of Looking At Things