一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于眼底图像的糖尿病性视网膜病变图像识别方法与流程

2021-10-24 05:24:00 来源:中国专利 TAG:方法 图像处理 注意力 深度 图像


1.本发明属于深度学习图像处理领域,尤其涉及融合了注意力方法的医学图像分类方法。


背景技术:

2.深度学习技术是机器学习领域中的一个研究方向。深度学习可以学习样本数据的内在规律和表示层次,这对大量样本信息诸如文字图片和声音等的解释有很大的帮助。它的最终目标是让机器能像人一样有分析学习能力,能够识别文字图像声音等数据。在计算机视觉领域,对于图像分类,分割,融合等目标,都发挥着重要作用。
3.arcface loss是神经网络训练过程中损失函数的一种,通过将分类神经网络全连接层的输出映射到超球体空间中,并设置角度惩罚项,在角度空间中最大化分类界限,使得样本类间距离尽可能大,提升分类准确度。在医学图像领域,数据样本规模有限,类别之间又往往存在渐进关系,固定的惩罚项可能使模型难以学习到类别之间的关联。
4.糖尿病性视网膜病变是由糖尿病引发的微血管病变的一种疾病。糖尿病性视网膜病变会对视力造成严重损伤甚至导致失明,糖尿病性视网膜病变成为国内外面临的重要挑战。google科研人员再两个数据集上使用深度学习的方法对糖尿病视网膜病变进行诊断,但是只能在区分正常和较严重的病变时能有较好的效果,区分多个类别尤其是轻微症状时效果欠佳,在区分四个等级的病变时仅有57.2%的准确率。


技术实现要素:

5.本发明提出了一种基于眼底图像的糖尿病性视网膜图像识别分类方法,其特征在于,眼底图片的病变区域与周围正常区域往往会呈现视觉上较为明显的不同特征,这些区域为感兴趣区域;考虑糖尿病性视网感兴趣区域,在传统分类网络中融合注意力机制算法;此外,还考虑到医学图像分类的特性,不同类别间往往会有关联,使用并改进arcface loss的思路,对类别之间的渐进关系建模,使得模型对数据分布敏感;
6.该方法具体包括以下步骤:
7.s1,获取kaggle平台公开数据集asia pacific tele

ophthalmology society(aptos)并进行预处理;
8.s2,构建基于resnet的分类网络,对预处理得到的数据集进行图像浅层和深层结构特征提取,并且在第二层和第三层网络间引入注意力块;
9.s3,考虑数据类别之间的联系,对arcfaceloss进行改进,设计了w

arcface loss作为损失函数,使模型能学习到类别之间的距离信息;
10.s4,训练分类网络,并使用quadratic kappa系数作为评估指标,该系数的计算方法如下:
[0011][0012][0013]
w
ij
为类别i预测为类别j时的权重,n为类别的数量,o
ij
为将类别i预测为类别j的数量,e
ij
为实际类别i的总数*预测类别为j的总数除以所有类别的总数。
[0014]
其中,上述图像预处理过程s1中,具体包括以下步骤:
[0015]
s11,读取数据集中眼底图片;
[0016]
s12,采用归一化方法进行亮度矫正,使得图片亮度均匀,明暗分布一致;
[0017]
s13,设置去除黑边阈值为7像素值,统计每一行每一列像素值大于7的个数,删除统计量为0的边缘行列,自动对图像黑边进行去除;
[0018]
s14,使用随机裁剪,水平翻转,竖直翻转进行数据增强;
[0019]
s15,调整图片分辨率为224*224。
[0020]
上述步骤s2中,分类网络以resnet34为基础框架,包括卷积框架头模块(即stem块),残差模块layer1,残差模块layer2,残差模块layer3,残差模块layer4,并在layer2和layer3之间加入注意力模块,将经过注意力模块处理后的输出layer3_1与原来layer3的输出进行拼接操作,再通过一个1*1卷积降维,得到新特征。具体包括以下步骤:
[0021]
s21,将layer3层的输出通过1*1卷积融合所有通道信息;
[0022]
s22,进行空间维度归一化归一化公式如下:
[0023]
其中f
p,q
代表特征图f上的第p行第q列的值,再通过一个sigmoid激活函数得到注意力图。
[0024]
s23,对得到的注意力图进行插值,调整维度和layer2一致;
[0025]
s24,将插值后的结果与layer2的输出点乘,得到layer3_1;
[0026]
s25,将layer3_1和layer3的输出拼接并经过1*1卷积降维,再输入layer4。
[0027]
上述步骤s3中,损失函数使用了改进版的w

arcface loss,将分类网络的全连接层和softmax转化为将特征映射到空间中的超球体,并且考虑了类别距离关系,动态选择惩罚项大小,具体包括以下步骤:s31,对layer4的输出x
i
和全连接层参数w做归一化,具体如下公式所示:
[0028][0029][0030]
其中,i为表示第i个样本,d为输出x
i
的维数,c为类别总数。
[0031]
s32,再通过点积算出权重w和输入x
i
的夹角余弦,如下公式所示:
[0032]
cos(θ
i
)=w
t
·
x
i
/(||w||||x
i
||),且
[0033]
s33,之后,对传统的arcface loss中的惩罚项m进行如下改进:对每个样本设置超参数向量:m=[m1,m2,

,m
c
],且对任意c≥k,有m
c
≥m
k
。即当第c的类别标签数值比第k类的标签数值要大时(即c≥k),则他们之间分类边界的距离也应该相应大一些(即m
c
≥m
k
)。通过这样的方式使得类别差距比较大的样本在分类边界上也相距较远。具体的,给定样本i及其真实类别标签y
i
,计算y
i
与类别标签向量y=[1,2,

,c]
t
中每个分量的绝对距离即d
c
=|y
i

y
c
|,其中y
c
为y的第c个分量,根据距离的计算得到向量m
i
=[d1,d2,

,d
c
,

,d
c
]作为样本i的惩罚项,达到优化arcface loss中惩罚项m的目的。s34,最后,根据上述距离的计算,每个样本都选择不同的惩罚项,最后提出的w

arcface loss损失函数如下:
[0034][0035]
其中,函数exp()表示softmax操作,m
i,c
和θ
i,c
分别表示第i个样本对应的m
i
和θ
i
中的第c项;n为样本数量,c为类别数量,s为特征规模恢复因子,恢复之前归一化的影响。
[0036]
本发明考虑了医学图像的特征,在深度学习网络中融合了注意力特征,使得模型能够关注图像中的感兴趣区域,在数据规模有限的情况下也能收获较好的效果;此外,还考虑了糖尿病性视网膜图像不同类别之间的距离渐进关系,根据类别间距离建模,提出w

arcface loss,根据样本类别与真实标签的距离,动态调整arcface loss中的惩罚项,进一步提升分类准确率。
[0037]
本发明方法和系统技术方案本身不是直接用于诊断、筛查糖尿病性,符合专利法第25条。
附图说明
[0038]
图1是本发明实施例提供的基于眼底图像的糖尿病性视网膜病图像识别系统流程图
[0039]
图2是眼底图片去除黑边前后对比
[0040]
图3是基于注意力机制的特征融合模型
[0041]
图4是注意力块的实现
[0042]
图5是注意力模块效果验证
[0043]
图6是w

arcface loss效果验证
具体实施方式
[0044]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步信息说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0045]
本发明实施提供的基于眼底图像的糖尿病性视网膜图像识别系统包括如下步骤:
[0046]
步骤一,数据预处理模块,我们的数据是kaggle平台上的公开数据集asia pacific tele

ophthalmology society(aptos),该数据集是由印度亚拉文眼科医院收集。该数据集图像为眼底图片,根据图像特征进行了分级标注,分成三级。该数据集一共包括3662例训练数据,所有的数据都有医院真实采集的数据。为了验证模型的效果,将数据随机
平均分成了5份用于交叉验证。
[0047]
首先,采用归一化方法进行亮度矫正,使得图片亮度均匀,明暗分布一致;之后设置去除黑边阈值为7像素值,统计每一行每一列像素值大于7的个数,删除统计量为0的边缘行列,自动对图像黑边进行去除,去除黑边之后的图像可以参考图2;使用随机裁剪,水平翻转,竖直翻转进行数据增强;调整图片分辨率为224*224,得到最终的训练和验证数据。
[0048]
步骤二,基于resnet,结合注意力机制的特征提取网络构建,具体算法结构如图3,模型分成5个模块,依次为卷积框架头模块(即stem模块),残差模块layer1,残差模块layer2,残差模块layer3,残差模块layer4。通过layer3的输出,使用一个注意力块提取除包含特征空间维度信息的注意力图;基于获取的注意力图,结合layer2的输出提取除浅层特征中的感兴趣特征,再使用一个新的layer3_1学习更加专注于感兴趣区域的模型权重。为了防止原始的特征丢失,我们将最初layer3的输出与经过注意力模块处理后的layer3_1的输出进行拼接操作并通过一个1*1卷积降维,最后经过layer4和激活函数得到结果。
[0049]
注意力模块可参考图4,先通过一个1*1卷积融合所有通道的信息,这样得到的特征图只包含空间的维度并且在对应位置上融合了所有通道的信息,再对其进行归一化后直接通过一个sigmoid激活函数就可以得到最后的注意力图,归一化是为了防止特征的值全部太大或者全部太小,学习不到注意力信息。
[0050]
注意力模块的设计能够自动学习到空间位置上的感兴趣区域,并且结合感兴趣区域指导学习,更聚焦于病灶区域信息的模型权重;同时我们的拼接操作同时保存了原始的特征信息和聚焦病灶的焦点信息,可以让模型自动分析出应该如何整合两种特征,学习的模型更具泛化性也不容易梯度消失。
[0051]
步骤三,损失函数的设计,使用了arcface

loss的超球体空间映射思路,但是考虑了医学图像类别之间关联性特点,依据距离建模,设计了w

arcface

loss,具体实现方法如下:
[0052]
首先对残差模块layer4的输出x
i
和全连接层参数w做归一化,具体如下公式所示:
[0053][0054][0055]
其中,i表示第i个样本,d为输出x
i
的维数,c为类别总数。
[0056]
再通过点积算出权重w和输入x
i
的夹角余弦,如下公式所示:
[0057]
cos(θ
i
)=w
t
·
x
i
/(||w||||x
i
||),且
[0058]
之后,对传统的arcface loss中的惩罚项m进行改进:
[0059]
对每个样本设置超参数向量:m=[m1,m2,

,m
c
],且对任意c≥k,有m
c
≥m
k
。即当第c的类别标签数值比第k类的标签数值要大时(即c≥k),则他们之间分类边界的距离也应该相应大一些(即m
c
≥m
k
)。通过这样的方式使得类别差距比较大的样本在分类边界上也相距较远。具体的,给定样本i及其真实类别标签y
i
,计算y
i
与类别标签向量y=[1,2,

,c]
t
中每个分量的绝对距离即d
c
=|y
i

y
c
|,其中y
c
为y的第c个分量,根据距离的计算得到向量m
i
=[d1,d2,

,d
c
,

,d
c
]作为样本i的惩罚项,达到动态调整arcface loss中惩罚项m的目的。
最后,改进的w

arcface loss损失函数如下:
[0060][0061]
其中,函数exp()表示softmax操作;m
i,c
和θ
i,c
分别表示第i个样本对应的m
i
和θ
i
中的第c项;n为样本数量,c为类别数量,s为特征规模恢复因子,恢复之前归一化的影响。
[0062]
对于每一个输入网络的样本,模型会根据样本真实类别和类别标签向量的距离设置一个合适的惩罚项m
i
。使得在分类任务中,输出的类别余弦角度值不仅要比别的类别小,而且至少要小m
i
才能作为正样本。这样的设计使得在医学图像样本有限的情况下,模型仍然易于学习到类别之间的关联,又使得损失函数满足了如下两点要求:1.能直接学到类别之间的距离关系。2.输出可以直接用于表示概率信息。
[0063]
步骤四,模型训练和实验验证,将3662例数据平均分成了五份,网络使用凯明分布进行初始化,批归一化初始化权重为1,偏置为0;训练采用adam优化器,学习率设置为0.001,一阶矩阵系数设置为0.9,二阶矩阵系数设置为0.999;所有模型均训练90轮,模型的输入大小为224*224;按照这套统一的标准来训练测试不同的模型。
[0064]
为了验证注意力模块对结果的影响(图5)和w

arcface loss对结果的影响(图6),使用quadratic kappa系数和准确率来衡量模型的有效性;根据图5图6容易看出,注意力模块和w

arcface的引入,对模型的有效性尤其是quadratic kappa系数有着显著的提升。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜