基于迁移学习的伤口图像分割①

2022-08-25 02:52陈志威曹吉龙马慧敏
计算机系统应用 2022年8期
关键词:集上特征提取伤口

陈志威, 赵 奎, 曹吉龙, 孙 靖, 马慧敏

1(中国科学院 沈阳计算技术研究所, 沈阳 110168)

2(中国科学院大学, 北京 100049)

3(中国医科大学附属第四医院, 沈阳 110032)

4(东软集团股份有限公司 医疗解决方案事业本部, 沈阳 110179)

慢性伤口如静脉性溃疡、压力性溃疡、糖尿病性溃疡等具有高发病率、高患病率、高费用等特点, 已成为医疗保健的一大难题. 这类伤口的愈合时间长达数周甚至数百天, 而住院条件无法满足患者所有治疗都在院内进行, 因此院外延续性护理成为了慢性伤口患者治疗的重要组成形式. 皮肤病变的常规诊断是通过活组织和周围皮肤的检查, 伤口溃疡可以通过伤口部位特定类型的组织进行预测[1–3]. 伤口观察与分析是伤口治疗的基础, 所以在早些时候伤口护理通常是由患者和专业护理人员一对一进行. 通常慢性伤口的患者行动非常不便利, 近年来随着互联网的发展, 伤口护理也从线下转到了线上, 由患者拍摄伤口部位的像片通过网络传送给专业护理人员进行分析和诊疗. 伤口护理人员严重依赖于伤口图像进行正确的诊断和治疗. 近年来随着机器学习和深度学习的发展以及医疗设备的不断更新, 部分人也开始利用机器学习和深度学习等算法辅助医生阅片. 然而由患者拍摄的伤口图像通常包含大量背景, 这对计算机阅片增加了许多干扰. 为了提高计算机阅片的精度,对伤口图像进行分割, 去除背景, 提取出伤口区域成为了必不可少的环节. 伤口图像的分割不仅可以帮助医生提取出伤口图像中感兴趣的区域, 并且可以为伤口图像的分析提供形状和结构特征. 伤口分割的准确度直接影响计算机对患者拍摄的伤口图片中伤口面积的测量和组织分析. 但是由于缺乏带有标记的伤口图像, 目前关于使用深度方法进行伤口分割的研究很少. 在早些时候图像分割主要采用一些传统方法, 如阈值分割法, 区域生长法、区域分裂合并法等. 国内利用传统方法对伤口图像进行分割的研究较少, 国外有Song等[4]分别采用阈值分割、K-means聚类、边缘检测和区域增长4种方法对伤口图像进行分割, 考虑到没有哪一种方法是对所有伤口图像有效的, 他们将4种方法进行集成, 对不同的伤口图像调节节每个方法的参数, 大大提升了分割系统的鲁棒性. Fauzi等[5]先在修正的HSV颜色空间进行概率图计算, 然后再用区域生长法和最优阈值进行分割. Li等[6]利用深度神经网络对伤口图像进行分割, 并且利用分水岭算法和动态阈值法分割结果进行校正, 实验结果表明该方法在950张伤口图片的数据集上取得了不错的效果, 但是该方法比较繁琐. Wang等[7]采用卷积神经网络MobileNetV2[8]进行分割, 该网络比传统的卷积神经网络速度更快. 由于缺乏大型的带有标记的伤口数据集, 大多数研究人员都是在几百张伤口图片的小数据上进行训练, 使用的网络不够深, 难以发挥深度神经网络的优势, 在小数据集上的精度提高并无很大意义. 由于人工标记的伤口图像需要大量的时间和精力.所以本文提出基于迁移学习的伤口图像分割方法.

本文利用ResNet50[9]在ImageNet数据集上的进行预训练, 将训练好的ResNet50模型作为特征提取前端, 后接Danet网络[10]形成伤口图像分割网络, 再在收集到的伤口图像数据集上进行再训练, 得到伤口图像分割模型. 该方法在平均交并比上达到了87.92%, 比之前的方法效果都要好.

1 基本理论

1.1 迁移学习

迁移学习(transfer learning)[11,12], 如图1所示, 是指将已训练好的模型参数迁移到新的模型, 从而达到加快模型的训练的目的. 通过使用其他相关任务训练模型的参数, 即使只有一个小的数据集, 也可能达到很好的性能.

图1 传统机器学习与迁移学习

迁移学习按照迁移知识形式可以分为: 基于实例的迁移学习, 基于特征的迁移学习, 基于参数的迁移学习, 基于关系的迁移学习. 由于缺乏大型的伤口图像数据集, 可以利用迁移学习, 使用在其他大型数据集上的预训练模型作为目标任务模型的起点, 从而充分发挥深度神经网络的优势, 优化模型训练效率. 本文利用ResNet50网络在ImageNet数据集上的预训练模型作为伤口图像的特征提取前端.

1.2 ResNet50

通常, 在数据集足够大的情况下, 神经网络的深度越深, 模型的精度越高, 但是随着网络深度增加, 深度神经网络的退化问题也随之而来. 如果深层的网络后面的层是恒等映射, 那么模型就退化成一个浅层网络.ResNet网络的提出正好解决了这个问题, 深度残差网络不在拟合一个恒等映射H(X)=X, 而是转换为学习一个残差函数F(X)=H(X)–X, 只要F(X)=H(X)–X. 只要F(X)=0, 就构成了一个恒等映射. 而拟合残差比拟合恒等映射要容易得多. 本文利用一个在ImageNet数据集上预训练的50层的ResNet网络作为特征提取器, 来提取伤口图像的特征.

1.3 Danet

Danet网络是一种双重注意力网络, 在传统的FCN网络[11]之上附加两种类型的注意力模块, 用来捕捉空间和通道维度中的全局特征依赖关系. 使用空间注意力模块[13]来学习特征的空间相互依赖性, 使用通道注意力模块[14]来模拟通道的相互依赖性. 通过添加这两个模块可以进一步提升模型的特征表示, 提升模型的分割性能, 图2(a)为空间注意力模块, 图2(b)为通道注意力模块.

图2 空间注意力模块和通道注意力模块

Danet网络通过将这两种注意力并联, 将提取的特征图分别经过这两种注意力机制处理后形成的分别具有空间注意力和通道注意力的特征图, 再将这两种特征图进行按元素求和完成特征图的聚合, 最后形成的特征图就融合了空间注意力和通道注意力. 整体结构如图3所示.

图3 Danet结构

2 基于深度迁移学习的伤口图像分割

2.1 数据集

本文数据集包括预训练数据集ImageNet和再训练伤口图像数据集. ImageNet数据集是一个大型公共的图像分类数据集, 含120万张, 1 000个类别的图片,该数据集足够大, 可以用来训练深度神经网络, 充分发挥深度神经网络的性能. 本文利用该数据训练的ResNet50网络, 作为图像分割的特征提取器. 伤口数据集总共有810张图片, 利用labelme图像标注软件进行手工标注. 部分伤口图像及标注图像如图4所示.

图4 部分伤口图像和标签

2.2 数据预处理

由于伤口图像数据集太小, 为了增加模型的泛化性,本文对训练数据进行了增广操作, 对读取的每个小批量图像进行随机水平和竖直翻转. 通过对图像的随机翻转,可以使感兴趣的物体出现在图像的不同位置, 减轻模型对物体出现位置的依赖性, 从而提高模型的泛化能力.

2.3 实验分析

ResNet50整体结构如图5所示, 整体结构如下图所示, 整个网络层数为50层, 图中“7×7, 64, 2”意为通过尺寸为7×7卷积层处理, 输出通道为64个通道, 步长为2. 预训练时对整个模型中的参数进行随机初始化, 利用该网络对ImageNet数据集进行图像分类, 由于ImageNet数据集中有1 000个类别, 所以最后的连接层的输出有1 000个类.

图5 ResNet50 结构

由于伤口数据集比较少, 本文不从头训练ResNet50网络, 而是直接将在ImageNet数据集上训练的ResNet50网络的参数迁移. 如图5所示, 本文将图像分类网络最后的全局平均池化层和全连接层替换成Danet网络进行图像分割. 训练时对特征提取器模块不进行随机初始化, 而是用预训练网络的参数权重. Danet模块的权重进行随机初始化.

伤口图像与ImageNet网络中的图像差别比较大,ImageNet数据集并不包含伤口图像, 所以对迁移的特征提取器中的网络权重进行微调. Danet块中的参数需要从头开始学习所以设置较大学习率, 而作为特征提取器的ResNet50网络只需要微调所以设置较小学习率. 同时为了使网络更容易收敛, 本文对学习率还设置了衰减策略.

整个网络由经过预训练的ResNet50网络作为特征提取器, 后接具有空间注意力机制和通道注意力机制的Danet网络组成伤口图像分割网络再在伤口图像数据集上进行再训练得到伤口图像分割模型. 伤口图像首先由在InageNet数据集上预训练的ResNet50网络作为特征提取器提取出特征图, 特征图分别通过空间注意力机制模块和通道注意力机制模块. 空间注意力模块学习特征的空间相互依赖性, 通道注意力模块来模拟通道相互依赖性. 将两个注意力模块处理后的特征图进行求和以完成特征融合最后生成结果图像.

3 评价指标

伤口图像的分割结果最后将作为伤口图像分析的基础, 图像分割的精度越高, 能够为图像分析排除大量图像背景中无关信息的干扰, 图像分析的准确率也越高. 均交并比(mean intersection over union,MIoU)[15]为图像分割的标准度量. 其计算真实值和预测值的交集和并集之比, 之后求平均值, 公式如下:

其中,k表示共有k+1个类别(包含一个背景),Pij表示本属于类i但被预测为类j的像素数量,Pii为预测正确的像素数量.

Kappa系数用于一致性检验, 也可以用于衡量分类精度. 通常Kappa系数落在[0, 1]之间. 计算公式为:

其中,po为准确率, 即每一类分类正确的样本数量之和除以总样本数. , 其中ai为每一类的真实样本个数,bi为预测出来的每一类样本个数.Kappa值可分为5组来表示不同级别的一致性,如表1所示.

表1 Kappa值等级

4 实验平台

本文实验使用的PaddlePaddle框架完成, 硬件信息和框架版本如表2所示.

表2 硬件信息和框架版本

5 结果与分析

本文进行了多组对比试验, 实验结果如表3所示.Unet[16]是2015年提出的图像分割网络, 被广泛运用于医学图像分割. Attention-Unet[17]是在Unet网络结构上加上Attention模块, ResNet50_Danet是从零开始在伤口图像数据集进行训练的模型, 没有进行迁移学习.Pretrain_ResNet50_Danet是在将ResNet50在ImageNet进行预训练作为特征提取器和再在伤口图像数据集进行再训练的模型. 从表3实验结果可以看本文提出的基于迁移学习的Pretrain_ResNet50_Danet网络达到了最好的效果, 平均交并比达到了0.879 2,Kappa系数也达到了最高的0.863 2, 达到了几乎完全一致. 比医学影像分割常用的网络Unet和加注意力机制的Attention-Unet网络在平均交并比上都有大幅提升. 同时, 基于迁移学习的Pretrain_ResNet50_Danet网络比用伤口数据集从零训练的ResNet_50-Danet网络平均交并比高0.047 6.

表3 实验结果

从实验结果可以看出, 本文基于迁移学习伤口图像分割算法在一定程度上解决了伤口图像数据集小而导致的训练的伤口分割模型精度低的问题, 通过在大数据集ImageNet上训练ResNet50作为特征提取器,能有效提高伤口分割的精度. 部分分割结果如图6所示. 第1行是原图片, 第2行是手工利用labelme图像标注软件标注的图片, 第3行是利用训练好的Pretrain_ResNet50_Danet模型预测生成的伪彩色分割图片, 第4行是该模型预测的分割图与原图的叠加图.

图6 分割结果图与标注图对照和原图对比

6 总结

本文将在ImageNet数据集上训练的ResNet50网络去除最后的全局平均池化和全连接层作为特征提取器迁移至伤图像分割任务中, 提取的特征图再通过Danet网络处理. 由于伤口图像数据集与ImageNet数据集存在较大差异, 我们对ResNet50网络设置较小的学习率, 并设置权重衰减进行微调, 同时Danet网络是从头开始训练的, 我们设置较大学习率. 实验表明本文得方法取得最好的效果, 我们还对比了相同的网络使用迁移学习和不使用迁移学习得分割精度, 实验表明在伤口图像数据集小的情况下, 使用迁移学习能取得精度更高的分割结果.

猜你喜欢
集上特征提取伤口
为什么伤口愈合时会痒?
同步定位与建图特征提取和匹配算法研究
为什么在伤口上撒盐会疼?
单双点平滑结合的流形正则化半监督分类学习框架
那只给我带来伤口的大橘
基于MED—MOMEDA的风电齿轮箱复合故障特征提取研究
基于曲率局部二值模式的深度图像手势特征提取
伤口“小管家”
几道导数题引发的解题思考
2008年高考考前模拟试题(二)及略解