融合卷积和Transformer的多尺度皮肤病变分割算法
2024-03-05蒋新辉李筱林韦春苗覃镇锋
蒋新辉,李筱林*,韦春苗,覃镇锋
(1. 柳州铁道职业技术学院 通信与物联网学院,广西 柳州 545616;2. 广西生态工程职业技术学院 汽车与信息工程学院,广西 柳州 545004)
0 引言
黑色素瘤是一种常见的皮肤癌,恶性黑色素瘤在皮肤癌中的的致死率占比75%,严重威胁着人类的健康[1-3]。黑色素瘤的早期症状不明显,外观上与良性痣相似度极高,若能在病发早期及时确诊并接受相关手术治疗,患者的治愈率极高[4]。安全无创的皮肤镜技术能获取各类皮肤病的皮肤镜图像,已渐渐成为临床中各种皮肤癌早期诊断的重要手段。在临床诊断中,因病变区域本身具有一定的复杂性,如病灶的不良残留(头发、标尺标记和人造伪影)、对比度低、颜色不均和边界模糊等因素的影响,皮肤科医生对病灶进行诊断非常耗时耗力,且存在一定主观性。得益于计算机视觉技术的发展,图像处理技术在医学影像分析中得到广泛使用。
传统的皮肤镜图像分割方法如阈值分割[5-7]、边缘检测[8]和区域生长等[9-10],主要依赖手工特征,不仅实现困难、效率低,且分割结果差强人意,近年来,基于卷积神经网络的一系列体系架构被提出并用于图像分割,如最为典型的全卷积神经网络(Full Convolutional Neural Network,FCN)[11-12]和对称的编解码网络U-Net[13]。基于U-Net的模型架构在各种医学影像分割任务中取得优异成绩,包括Res-Ne[14]、U-Net++[15]和CE-Net[16]等。随着学者的深入研究,卷积分割模型得到不断地优化和改善,如2017年,Bi等[17]采用多阶段全卷积网络(mFCN)中的并行融合方法实现了精确的皮损分割;2019年,Tang等[18]开发了基于深度监督学习策略的多阶段U-Net(MS-U-Net)以进一步提高分割性能。这些方法的卷积操作具有很好的平移不变性和局部相关性,提高了其分割任务的性能,但是因卷积受限于感受野通常很难捕获全局上下文信息,而全局上下文信息对于皮肤病变的精确定位具有重要的意义。另一方面,在医学影像语义分割中,像素之间的长程依赖关系对于准确定义边界轮廓像素至关重要。与卷积神经网络(CNN)不同的是,在自然语言处理(Na-tural Language Processing, NLP)领域中,Vision Transformer(ViT)[19]结构被认为能够捕获特征的长程依赖关系,但ViT是一个用来完成分类任务的网络,且需要大规模的训练数据集才能具有较好的分类效果,最重要的是它无法解决语义分割任务中像素级的密集预测问题。2021年,一种新型的Transformer——Swin Transformer[20]横空出世,相对于ViT,Swin Transformer不仅计算复杂度大大减小,且该层次化结构的网络模型可利用滑窗操作进行自注意力的计算,它是一种通用的骨干网络,可用于完成图像分类、分割和目标检测等任务。为了同时拥有CNN强大的局部细节捕获能力以及Transformer的全局上下文建模的能力,许多学者将U-Net和Transformer两种架构进行合并研究[21-24],结果表明这种新颖的架构获得更精准的医学影像分割。受此启发,本文针对现有皮肤镜图像分割方法存在的局限与不足,从病灶特征提取和上下文信息全局建模2个角度进行深入研究,提出了一种基于CNN和Transformer的多尺度皮肤病变分割网络,主要步骤如下:
①利用ResNet34进行局部特征的提取,建立特征多级局部语义相关性;
②利用Swin Transformer模块对上下文信息进行全局信息建模,捕获特征的长程依赖关系;
③提出了多尺度聚合模块来捕获皮肤病变的多尺度信息,有效兼顾长短不一、形状多变的病灶信息,避免了传统卷积神经网络捕获复杂病灶特征时信息丢失的问题;
④解码块逐步融合来自上下文和跳跃连接2条路径的多级语义特征,考虑到跳跃连接路径的特征中夹杂着较多噪声,为了降低噪声干扰,在解码块采用了高效通道注意力机制进行处理。
1 算法描述
本文算法主要分为三部分,总体架构如图1所示。第一部分为编码模块,采用ResNet34[25]对输入图像进行特征提取,在ImageNet数据集上经过预训练的ResNet34拥有丰富的自然图像特征,可以为皮肤分割模型提供较好的初始权重,有助于模型更好地挖掘病灶特征,其残差连接可很好地避免因深层卷积而出现的梯度消失或者梯度爆炸现象。ResNet34金字塔结构下采样方式可以有效改善网络的复杂度和收敛速度,同时可以捕获局部相关性。第二部分是上下文模块,针对CNN的皮肤镜图像分割在建立远程依赖上的不足,在处理上下文特征中引入Swin Transformer模块,利用Swin Transformer全局信息交互能力帮助特征提取器快速建立皮肤镜图像全局感受野,并采用多尺度聚合模块捕获多尺度上下文特征信息,增强网络对特征的利用率。第三部分是解码模块,逐步聚合低级语义信息和高级语义信息,该解码块跳跃连接接口配备了一个轻量级的注意机制,以缓解皮肤镜的纹理、对比度和颜色的变化差异带来的噪声干扰,通过降低背景噪声和增强边界细节来促进低水平和高水平特征的融合。
图1 算法总体架构Fig.1 Overall algorithm architecture
1.1 Swin Transformer模块
由于卷积操作受限于感受野,从而导致卷积网络很难建立像素之间的长程依赖关系。基于此,本文采用4个相同Swin Transformer模块串联成一个独立的模块对上下文进行全局建模,Swin Transformer使用了基于移位窗口的多头自注意力机制来提取上下文特征,从而捕捉不同尺度像素之间的关系,建立像素之间的长程联系,Swin Transformer的标准架构如图2所示。
图2 Swin Transformer 的标准架构Fig.2 Standard architecture for Swin Transformer
编码块的操作后得到的像素分辨率图像首先被转换成多个不重叠的小块(patchs),每个块(patch)被看作一个token,再经过线性映射(Linear Embedding)将特征块转换成特征序列,这2个过程均由块嵌入模块(Patch Embed)实现,随后被馈传送到Transformer的4个标准架构单元中进行特征提取,一个Swin Transformer 的标准基础单元(Swin Transformer Block)包括基于窗口的多头自注意(Window-Multi-head Self Attention,W-MSA)模块和基于移位窗口的多头自注意(SW-MSA)模块。每个块由层模LayerNorm(LN)层、多头自注意模块、残差连接和2层MLP组成,MLP中间有ReLU非线性激活层。在多头自注意力机制中,输入特征被分成多个头,每个头都计算出一个不同的注意力权重矩阵。这些权重矩阵被加权平均以产生最终的输出特征。这种方法可以更好地捕捉不同尺度之间的关系,并提高特征表达能力。在移位自注意力机制中,它通过引入移位操作来捕捉不同位置之间的关系。具体来说,它将输入特征分成多个块,并且每个块都与其他块进行交互。在这个过程中,每个块都会向左和向右移动一个固定的距离,以便与相邻的块进行交互。这种移位操作可以帮助网络更好地理解不同区域之间的关系,以此来建立像素之间的长程联系。
假设一张图片被分成多个尺寸为h×w的块,块的数量为M×M,则普通的多头自注意力(Multi-head Self Attention,MSA)和W-MSA模块的计算复杂度分别如式(1)和式(2)所示:
式中:Ω为计算复杂度,h、w和c分别为特征图的高度、宽度和深度。从式中可看出,MSA对输入图像块的大小与计算复杂度成平方关系,而W-MSA对于输入的图像块具有线性的计算复杂度,可见Swin Transformer通过使用W-MSA可有效降低计算的复杂度,采用SW-MSA来提升感受野从而实现不同窗口间的信息交互,所以,一般来说Swin Transformer Block是成对出现的。连续的Swin Transformer Blocks的计算如式(3)~式(6)所示:
(7)
式中:Q,K,V∈RM2,d分别表示查询、键和值矩阵,d表示Q/K维度,M2表示窗口内块的数量,B的值来自于偏置矩阵。
1.2 多尺度特征聚合模块(MFAM)
考虑到皮肤病变的长短不一、形状多变等问题,上下文特征经过Swin Transformer模块建立全局信息之间的通信后的输出序列特征重新映射成二维特征,将得到的二维特征输入至MFAM进一步捕获多尺度信息。
MFAM如图3所示,其包含两部分,前半部分用于提取上下文特征的多尺度信息,由3个不同大小的空洞卷积和一个带有本地标识的映射分支组成,经过3个膨胀系数分别为2、4、8的膨胀卷积,相对于普通卷积而言,膨胀卷积在保证网络计算参数不变的情况下能有效地增大卷积核的感受野,有效克服了标准卷积空间信息丢失的问题,经3个膨胀卷积处理得到不同的空间特征信息,后与原输入映射分支输出特征信息进行多尺度融合。
图3 MFAMFig.3 MFAM
考虑到皮肤镜图像存在长条形的病灶,方形池化窗口不能很好地提取长条形目标特征,且会造成一定程度的计算浪费,从而带入一些来自无关区域的噪声。为进一步兼顾长条形的病灶特征的学习能力从而增强模型的鲁棒性,将前半部分输出的多尺度特征信息输送到后半部分,后半部分主要采用垂直池化和水平池化来捕获上下文特征信息,经过水平和竖直池化操作后,特征图的宽(W)和高(H)变成原来的1/4,为恢复原输入特征尺寸,对经过2个池化层的特征图进行上采样和卷积操作,得到40个通道的新特征图与原始特征输入在通道维度进行特征融合输出得到(C+40)维度的特征。在多尺度模块后面增加2个条形池化块来建模特征之间的长距离依赖关系,可以有效增大特征的感受野,进一步提高网络的鲁棒性。
1.3 解码块
本文所提模型的解码块如图4所示。先将跳跃连接低水平特征和逐步上采样后的高水平特征依次进行融合以改善分割结果;由于低水平特征图中有很多信息与高水平特征重复,而且低水平特征中很多无用信息(如背景信息、毛发和人工造影等信息)会影响分割结果,若直接融合不仅会复制过多的重复信息,还会给高水平的特征带来噪声从而影响分割结果。为解决以上问题,更好地利用跳跃连接路径的特征信息,本文提出以下解码块,采用高效通道注意力机制[26]来调整跳跃连接路径的关注度。首先将每条跳路径进行全局平局池化获取每个通道之间的全局特征信息,再通过使用1维卷积(其中卷积内核设置为5)来实现局部跨通道交互来建立通道之间的特征关系,经过Sigmoid对交互信息进行评估实现注意度权重的分配,增强对分割结果有用信息的权重,抑制对分割结果无用甚至有害的信息;然后将得到权重和跳跃路径的输入原始特征进行点积,从而获得对分割结果有效的特征集;最后将跳跃连接特征和解码阶段特征进行融合以改善分割结果。
图4 解码块Fig.4 Decoding block
1.4 交叉熵损失函数
损失函数在网络模型中的作用是计算出模型分割结果与实际结果的误差,并将计算得到的误差通过反向传播的方式反馈给前面的每一层网络,进行参数更新,参数更新后模型进行重新训练以缩小网络训练结果与真实标签的差距,使得模型分割精度提高。医学图像分割是将图像背景和病灶进行分离的二分类任务,所以本研究使用交叉熵损失函数,其计算如下:
(8)
式中:p为模型预测的样本中病灶的概率。
2 实验结果及分析
2.1 实验环境与数据集
所有实验都在Windows 10操作系统中进行,处理器CPU为Intel(R)i7-11700K,显卡:GPU为NVIDIA GeForce RTX 3090 显存容量24 GB,运行内存32 GB。开发环境基于深度学习框架Pytorch 1.7,汇编语言为Python 3.7。本文所提模型的训练参数如表1所示。
表1 实验超参数设置Tab.1 Experimental hyper-parameter settings
实验数据采用国际皮肤成像协会(The International Skin Imaging Collaboration, ISIC)2017年国际皮肤镜图像分割竞赛中提供的ISIC 2017分割数据集[27],该数据集被来自世界各地权威的医生进行标注,一共2 750张图片,其中包含2 000张训练集、150张验证集和600张测试集,为了增加数据的多样性,对数据进行了翻转、旋转、裁剪和缩放等增强操作,最终以224 pixel×224 pixel的分辨率进行训练与测试。
2.2 评价指标
为定量评估模型对皮肤镜图像的分割性能,本文采用Dice系数、灵敏度(Sensitivity, SEN)、准确率(Accuracy, ACC)和Jaccard相似系数(Jaccard Similarity Index, JSI)这几个评估指标对分割结果进行评估,其定义分别如式(9)~式(12)所示:
(9)
(10)
(11)
(12)
式中:TP为真阳性,表示正确标记的病灶像素;TN为真阴性,表示正确标记的非病灶像素;FP为假阳性,表示非病变的像素被标记为病变;FN为假阴性,表示病变像素被标记为非病变。Dice系数是像素级的,其值越高表示模型分割的病灶区域与标签的契合度越高 (Dice系数值在0~1;JSI与Dice系数类似,是衡量黑色素瘤分割精度的重要评价标准,是评判测量结果与真实标签相似程度的指标,其值越高(越接近1),表明网络分割性能越好。
2.3 不同算法结果对比
在ISIC 2017数据集上,将本文提出的算法与在相同配置环境和相同数据增处理下的7种先进方法进行比较,包括 U-Net、Swin-Unet 、MBDCNN[28]、Ensemble-A[29]、DAGAN[30]、UCTransNet和FAGAN。其中MBDCNN、Ensemble-A、DAGAN、FAGAN(2022)等方法专门用于皮肤病变分割,其他方法则是最先进的医学图像分割网络。对比结果如表2所示;表中粗体表示最优值,*表示在相同实验平台中的测试结果。本文模型在Dice系数、SEN、ACC和JSI上的得分表现分别为89.55%、88.85%、96.21%和84.01%,相对于其他先进模型来说,Dice、ACC和JSI三个指标获得了最优值,说明本文所提模型相对于其他3种先进的黑色素瘤分割模型来说具有更高的分割精度,这表明本文所提算法在准确性上优于其他算法。
表2 不同算法在ISIC 2017数据集上的测试结果对比Tab.2 Comparison of test results of different algorithms onISIC 2017 dataset
图5为本模型与其他3种先进模型在ISIC2017测试集上的描述性统计,其中分别为各模型在ISIC2017测试集上前100个epoch的Dice系数箱型图和用来衡量各算法速度FPS-FLOPs散点图。从图5(a)可以看出,与其他3种模型对比,本模型的Dice系数获得最优值,且其上下四分位数的差值小,异常值要明显少于其他模型,表明本模型具有很好稳健性;从图5(b)可以看出,本模型的计算量FLOPs是最小的且模型推理速度FPS是最快的。综上可得,本模型具有较高分割精度的同时保持了较好的稳定性以及满足速度响应要求。
(a)各模型在ISIC 2017测试集上的Dice系数箱型图
(b)各模型在ISIC 2017验证集上的FPS散点图
图6为本模型与U-Net、Swin-Unet和UCTransNet其他3种模型的分割结果对比图,其中红色部分表示预测欠分割,表明模型拟合目标的能力不足;绿色部分表示预测过分割,把背景预测为目标;黄色部分表示模型正确预测目标位置,其区域占比越大,表明模型与标签的契合度越高,说明模型分割性能越好;黑色代表背景区域。从图中可以看出,本模型相对于其他3种模型而言,黄色部分区域较大,红色和绿色区域占比较小,相对而言本模型分割准确率更高、误判概论较小,说明本模型具有较好的分割性能。
图6 各模型的分割结果对比Fig.6 Comparison of segmentation results of each model
2.4 消融实验
表3展示了在所提算法中逐渐加入各种改进手段对ISIC 2017数据测试集语义分割的影响,包括Swin transformer、MFAM和Decoding Block。由表3可知,在基线基础上逐步融合改进手段,黑色素瘤分割精度逐步改善,Dice精度基线从82.36%上升到89.55%。初始分割模型的Dice系数为82.36%,在加入了Swin Transformer后,由于捕获上下文特征的远程依赖关系,网络对特征的全局信息交互能力增强,Dice上升至85.24%,后又在此基础上做出改进,加入MFAM对条形目标进行建模,获取更多特征信息,使得网络对背景和条形目标鉴别能力进一步增强,Dice上升至88.28%。在加入解码块后,跳跃连接路径无用特征信息被抑制,跳跃连接路径有用特征信息被增强,实现了跳跃路径的通道特征自注意,使得最终的Dice系数上升至89.55%。综上,本文的各项改进均能有效提高黑色素瘤的分割精度。
表3 本模型在ISIC 2017数据集上的消融实验Tab.3 Ablation experiments of this model on ISIC2017 dataset
3 结束语
本文提出了一种新的基于CNN和Transformer的混合结构网络用于皮肤镜图像分割,该方法兼顾了CNN结构建模的局部像素相关性和Transformer建模特征的长程依赖关系,二者的巧妙结合有效强化了特征信息的表达,从而提高了分割任务中的目标信息的获取能力。通过在ISIC 2017数据集上进行测试,与现存较为典型的模型做实验对比,并与许多主流模型做引文对比,证明本模型具有一定的优势,在可视化分割结果对比中,本文分割结果图轮廓更加清晰、推理速度更快,在实际应用中具有一定的参考价值。