摘要:针对因各类疑难皮肤病之间表征相似,诊断受到主观因素影响,导致皮肤病识别困难的问题,设计了一个利用小波变换对皮肤病图像进行降噪的预处理方法,并以ResNet50为基础框架,结合自注意力机制构建出一个识别率较高的皮肤病识别模型。为解决传统的小波软、硬阈值函数的缺陷,设计了一种较为平滑的新阈值函数用于图像预处理;把ResNet50框架与自注意力机制结合得到新的算法模型,训练得到有效的皮肤病识别模型。实验结果表明,利用新设计的阈值函数去噪后得到的皮肤病图像拥有更高的PSNR/SSIM值,并且对图像的识别准确率相较于去噪前有较为明显的提升。
关键词:图像识别;阈值函数;小波阈值去噪;ResNet50;自注意力机制
中图分类号:TP391 文献标识码:A
文章编号:1009-3044(2022)10-0091-04
1 引言
据世界卫生组织公布的数据表明,在2018年约960万癌症死因中,有104万死于皮肤癌。皮肤癌作为致死率最高的癌症之一[1],其诊断结果与患者的命运紧密相连,因部分疑难皮肤病的表征极为相似,传统诊断方法受到部分医生缺少诊断经验以及图像噪声的影响,容易出现误诊的情况,诊断效果大大降低[2]。为了解决问题,徐明月等人提出基于PCA-SVM模型来对皮肤病进行识别[3],但其效果并不理想。有人将深度学习引入到皮肤病识别的应用中,比如利用VGG19[4]以及GA-Net作为主干网络来训练皮肤病识别模型,但并未取得理想效果,李航等人使用ResNet152框架训练皮肤病识别模型[5],虽然取得了较好的识别效果,但都未对皮肤病图像进行去噪、增强等预处理,并且使用的训练模型均为基础框架,存在进一步改善的空间。
本文对图像的预处理方法采用小波阈值去噪,并在ResNet50[6]模型结构上结合自注意力机制进行改进。相对于一般的空间域去噪方法,利用小波去噪的方法优势在于小波变换具有多分辨率的特性,可以更好地描述图像的边缘特征,并且可以根据应用场景的不同可以去挑选适合的小波母函数,取得最优的去噪效果。自注意力机制可以灵活地选择卷积的感受野,强调皮肤病图像的重要特征以提高模型训练的准确率。
2 小波阈值去噪的基本原理
在皮肤病图像拍摄过程中所观测到的信号通常带有噪声,带有噪声的信号模型为:
[f(i)=x(i)+s(i)] (1)
其中,[x(i)]表示原始信号,[s(i)]表示信号中的高斯白噪声,一般而言,将观测信号[f(i)]直接去除其中的噪声[s(i)]较为困难,而小波变换为这一问题的解决提供了很好的方法。若对(1) 式做小波变换,可以得到:
[Wf=Wx+Ws] (2)
其中,[Wx]为原始信号的小波系数,[Ws]为噪声的小波系数。
小波变换的定义[7]为:
[Wψ(a,b)=1a-∞+∞f(t)ψ(t-ba)dt] (3)
对信号重构,需进行小波的逆变换,其定义为:
[f(t)=1Cψ0∞-∞+∞Wψ(a,b)ψa,b(t)a2dbda] (4)
其中,[Cψ]为可行性条件,[Cψ=|ψ(ω)|2|ω|dω<∞],a为基函数的尺度系数,b为基函数沿t方向的平移因子,[ψa,b(t)]为小波基函数。
3 阈值估算与阈值函数设计
在图像信号中,信号的低频区域对应图像的主干部分,能量大多堆积于此,少数能量散布在高频区域,此区域包含了图像的细节和边缘。而高斯噪声的能量多数散播在高频区域,因此,可以设置一个阈值区分噪声和原始信号,去除处在高频区域的噪声,最终达到对图像降噪的效果。对皮肤病图像进行去噪预处理要保证阈值设置的合理性。如果阈值设置过高,图像中的有效信息会被当作噪声去除,导致图像变得更加模糊;如果阈值设置过低,去噪后的图像仍会有大量的噪声被保留,使得去噪的效果不明显。
3.1 阈值估算
由上文描述可知,在小波去噪的过程中,选取一个合理阈值起到关键作用,常用阈值有VisuShrink阈值[8]、BayesShrink阈值以及Minimax阈值,论文在选择阈值时遵循固定阈值准则。
论文中选取VisuShrink全局阈值定义为:
[T=σ2ln(L1∗L2)] (5)
其中,[L1∗L2]为图像信号的长度,[σ]为噪声的标准差。
3.2 阈值函数设计
小波阈值去噪的一般方法包含硬阈去噪和软阈去噪[9],阈值函数的作用在于包含噪声的原小波系数可以根据选定的阈值对小波系数进行重估,小于选定阈值的小波系数为噪声存在位置,故需对其去除,将大于该阈值的小波系数通过阈值函数重新映射,提高小波重构系数的精度。因此,要达到理想的除噪效果,阈值函数的选取是关键因素,以下为一般去噪方法中使用的阈值函数。
硬阈值函数为:
[W∧=W,|W|≥T0,|W|<T] (6)
軟阈值函数为:
[W∧=(|W|-T)∗sign(W),|W|≥T0,|W|<T] (7)
其中,[sign=1,W>00,W=0-1,W<0]
[W∧]为去噪后进行重新映射的小波系数,[W]为原包含噪声的小波系数,[T]为选定阈值。
由下文阈值函数图可知,硬阈值函数在[W=T]处中断,小波系数的重构会出现二值现象,使得重构后失真;软阈值函数虽然连续,但是当[W>T]时,[W∧]与[W]存在固定偏差[10],降低了图像重构的准确性,使得图像模糊不清晰,为了改善小波系数重构的效果,解决传统软、硬阈值函数中所出现的缺陷,论文设计了一种改进的阈值函数:
[W∧=θ(W-T∗sign(W)2),|W|≥TθT((eW-e-W)(eT+e-T)(eW+e-W)(eT-e-T))2sign(W)2,|W|<T] (8)
其中,[θ]为调控因子,阈值[T=σ2ln(L1∗L2)],此阈值函数具有连续性并且提升了可调控性,是一个较为光滑的阈值函数,提高了对图像细节和噪声之间处理的敏感度。
3.3 阈值函数去噪算法流程
在小波理论中,利用小波阈值去噪可以被分为以下步骤:
步骤1:确定小波种类和分解层数,算出含噪信号的小波系数,将小波系数分为高、低频区域;
步骤2:选取合适的计算阈值方法以适应设计的新阈值函数;
步骤3:利用设计的新阈值函数对处于高频区域的小波系数根据所设阈值进行去噪以及系数重估,达到去噪的效果。
步骤4:重构重估后的高、低频小波系数,得到去噪后的皮肤病图像。
图2为本文中利用小波去噪的流程图。
4 皮肤病识别模型结构设计
为了避免人眼主观因素的判断,需要客观检验小波去噪对皮肤病图像识别的影响,本文将训练出一个基于皮肤病图像特征的皮肤病识别模型。
传统的网络模型随着层数的加深,其训练后的模型识别准确率反而会出现下降的现象,而ResNet通过跳跃连接组成残差结构解决了这一问题。
由于皮肤病图像中的非病状特征因素较多,论文采用自注意力机制与ResNet50相结合的方法构造CNN框架。注意力机制[11]可以通过相应步骤计算出数据权重,依据对象的权重大小对资源进行重新分配。自注意力机制降低了对外部信息的依赖性,更擅于捕捉内部关联性较高的特征。其计算步骤如下:
步骤1:将输入的皮肤病图像转换为向量;
步骤2:通过转换矩阵将皮肤病图像向量分别转换为q,k,v三个向量,其中q要与k相匹配,计算出有用信息v的权重;
步骤3:进行归一化处理,将向量q和k点乘后除以[dk] ,其中[dk]为向量k的长度;
步骤4:使用softmax函数,乘以有用信息v,对有用信息分配权重。
本文采用多头自注意力机制(Multi-Head Self-Attention) ,即将输入向量q,k,v分为多组,分别进行上述步骤。如图4所示。
5 实验
实验在MATLAB2016a和Python3.7环境中进行,在配置为AMD Ryzen 5 4600H with Radeon Graphics CPU 3.00 GHz的PC上运行。本文中图像数据集来源于ISIC公开皮肤病数据集ISIC2018,其中包含3种类型皮肤病图像:NV、BCC、MEL,以下为随机选取的皮肤病图像:
5.1 噪声去除效果分析
首先对选取的皮肤病测试图像中加入相同大小的Gaussian噪声,构造噪声图,再将图片利用小波分解为高频、低频区域,对高频区域分别采用软、硬阈值和本文中的阈值函数进行小波阈值去噪,最后采取客观评价标准分别对三种方式进行评价。论文采用对图像评价的标准为PSNR(最大信噪比) 值、SSIM(结构相似率) ,PSNR值为最大信号与皮肤病图像中的噪声比率,SSIM是衡量两幅图之间相似度的指标。
本文实验分别对Gaussian噪声[σ=15]以及[σ=30]情况下的三种皮肤病图像进行添加噪声以及去噪处理,结果如图6所示。
采用本文阈值函数与软、硬阈值函数的PSNR/SSIM值进行比较,得到如表1所示分析表。
分别对经过新设计的阈值函数与经过一般的软阈值函数、硬阈值函数去噪的皮肤病图像PSNR值进行分析对比可知,当添加的Gaussian噪声[σ=15]时,不同图像的PSNR/SSIM值相差不明显,甚至该方法效果不如软、硬阈值函数去噪的方法。但添加Gaussian噪声[σ=30]时,对于去噪图像的PSNR/SSIM值,经过本文阈值函数去噪的图像相较于经软、硬阈值函数去噪的图像。以上实验表明,当噪声较小(如添加Gaussian噪声的[σ=15]) 时,采用本文阈值函数的去噪效果并无明显改进,但当噪声较大(如[σ=30]) 时,本文方法整体略优于软、硬阈值函数去噪的效果,去噪图像的PSNR/SSIM值提升较为明显,说明经本文阈值函数去噪的图像与原图的噪声去除程度,结构相似性有较明显的提高。
5.2 皮肤病识别效果分析
针对原数据集中各类皮肤病样本间存在分布不均的问题,本文对训练集中数量较少的种类进行数据增强。之后采用本文网络结构对3类共计15097张皮肤病图像进行训练,其中80%为训练集,20%为测试集,得到皮肤病图像识别模型。从每种皮肤病图像中随机选取500张分别加入[σ=30]的Gaussian噪声,再对图像利用新设计的阈值函数进行去噪预处理,得到1500张含噪图像,1500张小波阈值去噪图像。分别对上述图像利用已训练的皮肤病识别模型进行预测,得出对每种皮肤病图像的准确率。
6 结束语
本文针对皮肤病圖像拍摄过程中出现的噪声,在对皮肤病图像进行预处理时采用小波阈值去噪方法。为了改善传统软、硬阈值去噪方法的缺点,构造了一种平滑的阈值函数,并利用ISIC2018皮肤病数据集建立了一种新型的皮肤病识别模型。本文得出结论如下:
1) 在对皮肤病图像去噪的实验中可以得出,与传统软、硬阈值对皮肤病图像去噪的结果相比,本文构造的阈值函数虽然在[σ=15]的噪声图像上的去噪效果并无明显改善,但在[σ=30]的噪声图像上进行去噪后,皮肤病图像的PSNR/SSIM值表现出更好的效果。
2) 论文构建了一个以ResNet50框架为基础,与Self-Attention相结合的皮肤病识别模型,并经过实验后取得了良好的识别效果。通过皮肤病识别模型,对利用本文小波阈值去噪前后的皮肤病图像分别进行识别效果分析,去噪后的图像较去噪前识别准确率有较为明显的提升。
参考文献:
[1] Kasmi R,Mokrani K.Classification of malignant melanoma and benign skin lesions:implementation of automatic ABCD rule[J].IET Image Processing,2016,10(6):448-455.
[2] 谭鸿,巴伟,李承新.深度学习在皮肤图像识别中的应用[J].实用皮肤病学杂志,2020,13(6):348-351.
[3] 徐明月,林泽轩,顾彦.基于PCA-SVM模型的红斑鳞屑性皮肤病识别研究[J].杭州电子科技大学学报(自然科学版),2018,38(6):35-40.
[4] 何雪英,韩忠义,魏本征.基于深度卷积神经网络的色素性皮肤病识别分类[J].计算机应用,2018,38(11):3236-3240.
[5] 李航,余镇,倪东,等.基于深度残差网络的皮肤镜图像黑色素瘤的识别[J].中国生物医学工程学报,2018,37(3):274-282.
[6] He K M,Zhang X Y,Ren S Q,et al.Deep residual learning for image recognition[C]//Las Vegas,NV,USA:2016 IEEE Conference on Computer Vision and Pattern Recognition.IEEE,2016:770-778.
[7] 王麗荣.基于小波变换的目标检测方法研究[D].长春:吉林大学,2006.
[8] 徐景秀,张青.改进小波软阈值函数在图像去噪中的研究应用[J].计算机工程与科学,2022,44(1):92-101.
[9] 王永凯.基于阈值函数和阈值的小波去噪方法研究[D].秦皇岛:燕山大学,2017.
[10] 张小燕.小波变换的阈值图像去噪算法改进[J].计算机技术与发展,2017,27(3):81-84.
[11] 王红,史金钏,张志伟.基于注意力机制的LSTM的语义关系抽取[J].计算机应用研究,2018,35(5):1417-1420,1440.
【通联编辑:谢媛媛】
收稿日期:2022-01-25
基金项目:国家自然科学基金项目:基于业务感知的矿山物联网自治QoS保障机制研究(项目编号:61300001)
作者简介:方世哲(1997—) ,男,安徽宣城人,硕士在读,研究方向为图像处理方向。