摘要:針對因各類疑難皮膚病之間表征相似,診斷受到主觀因素影響,導致皮膚病識別困難的問題,設計了一個利用小波變換對皮膚病圖像進行降噪的預處理方法,并以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—) ,男,安徽宣城人,碩士在讀,研究方向為圖像處理方向。