楊國亮 賴振東 溫鈞林(江西理工大學電氣工程與自動化學院 江西 贛州 341000)
惡性黑色素瘤是全球增長速度最快的癌癥之一,并且具有很高的發(fā)病率和死亡率。根據(jù)全球癌癥發(fā)病死亡統(tǒng)計報告,2018年全球新發(fā)惡性黑色素瘤病例為287 723人,死亡人數(shù)為60 712人[1]。目前,晚期黑色素瘤五年存活率仍然只有15%,而早期的黑色素瘤的最終治愈率卻高達95%。因此對黑色素瘤及早地診斷和治療十分重要,不過由于皮膚表面毛發(fā)、顏色、血管及病變皮膚與未病變皮膚對比度低等因素的影響,即使是經(jīng)驗豐富的臨床醫(yī)生也無法準確判斷出皮膚上的病變區(qū)域,從而無法正確診斷惡性黑色素瘤。借助計算機輔助診斷系統(tǒng)(CAD)能提高對惡性黑色素瘤的診斷。而為了確保(CAD)在皮膚鏡檢圖像中檢測黑色素瘤的正常運行,準確地檢測病變的邊界是非常重要的。原因在于:(1) 為了對病變中存在的指標進行適當?shù)姆治觯枰獙ζ溥M行適當?shù)姆指睿?2) 根據(jù)邊界本身計算的一些數(shù)值,例如“ABCD法”和“Menzies法”中的分裂程度,本身就是惡性腫瘤的指標。
傳統(tǒng)圖像分割算法主要有直方圖閾值處理法[2]、無監(jiān)督聚類法[3-4]、基于邊緣和區(qū)域的方法[5]、基于活動輪廓法分割病變皮膚區(qū)域[6]和監(jiān)督學習分割方法(如人工神經(jīng)網(wǎng)絡ANN[7])。近年來,隨著深度學習技術快速發(fā)展,將深度卷積神經(jīng)網(wǎng)絡(CNN)方法運用到圖像分割領域提升了目標分割的性能。Shelhamer等[8]開發(fā)了第一個端到端的像素級語義分割算法,稱為全卷積網(wǎng)絡(FCN)。Badrinarayanan等[9]提出了一種稱為SegNet的編碼-解碼分割方法。Chen等[10]提出了基于深度卷積網(wǎng)絡的圖像分割方法DeepLab。在醫(yī)學圖像分割領域,Ronneberger等[11]提出了一種新的卷積分割方法U-Net,U-Net也憑借其優(yōu)異的表現(xiàn)成為醫(yī)學圖像分割算法中里程碑式的算法,但是U-Net也有自身的局限性,主要在于:① 由于U-Net的深度,特征提取達到了極限,使得網(wǎng)絡無法提取一些微小的病變目標;② 皮膚病變區(qū)域的高度復雜性給U-Net帶來了困難。本文研究在U-Net編碼器和解碼器中集成了調(diào)制可變形卷積塊,用以捕捉病變區(qū)域的幾何變換。在網(wǎng)絡訓練過程中,卷積核根據(jù)對象的比例和形狀調(diào)整自身的形狀,讓復雜的皮膚病變結(jié)構(gòu)也能被很好地檢測到。
U-Net網(wǎng)絡是典型的編碼解碼架構(gòu)(Encoder-Decoder),整體呈U型對稱結(jié)構(gòu),左側(cè)是編碼器,右側(cè)是解碼器。包含4個卷積層(Convolutional layer)和對應的4個上采樣層(Up sampling layer),在網(wǎng)絡實現(xiàn)的時候,既可以從頭搭建網(wǎng)絡并進行權重的初始化,然后進行模型的訓練,又可以借用現(xiàn)有網(wǎng)絡的卷積層結(jié)構(gòu)和對應的已訓練好的權重參數(shù),再加上自身的上采樣層進行訓練,比如借用ResNet、vggNet等,這樣可以大大加快訓練的速度。另一個特點是,U-net網(wǎng)絡的每個卷積層得到的特征圖都會通過跳躍連接(skip-connection)“疊加”(concatenate)到對應的上采樣層,從而實現(xiàn)對每層特征圖都有效使用到后續(xù)計算中。同其他的一些網(wǎng)絡結(jié)構(gòu)(如FCN)比較,U-Net避免了直接在高維特征圖中進行監(jiān)督和損失計算,而是結(jié)合了低維特征圖中的特征,從而使得最終所得到的特征圖中既包含了圖像高維特征,又包含很多的圖像低維特征,實現(xiàn)了不同尺度下圖像特征的融合,提高模型的分割精度。
限制對比度自適應直方圖均衡[12](CLAHE)同普通的自適應直方圖均衡(AHE)不同的地方主要是對比度限幅。這個特性也可以應用到全局直方圖均衡化中,即構(gòu)成限制對比度直方圖均衡(CLAHE)。在CLAHE中,對于每個小區(qū)域都必須使用對比度限幅,用來克服AHE對于噪聲過度放大的問題。
CLAHE算法主要通過限制AHE算法的對比度提高程度來實現(xiàn),指定像素值鄰域的對比度放大主要由變換函數(shù)的斜度決定,而這個斜度和鄰域的累積直方圖函數(shù)(Cumulative Histogram Function,CDF)的斜度成比例。所以CLAHE通過在計算CDF前用預先定義的閾值來裁剪直方圖以達到限制放大幅度的目的。這樣就限制了CDF的斜度,也就限制了變換函數(shù)的斜度,進而限制了對比度。
圖1顯示了自適應目標的U型皮膚病變圖像分割算法的功能流程,第一部分為圖像預處理,第二部分為圖像分割網(wǎng)絡。預處理部分包括對原始病變圖片依次進行灰度化、歸一化和限制對比度自適應直方圖均衡化處理,提高前景與背景的對比度。分割網(wǎng)絡將調(diào)制可變形卷積塊融合到U-Net的編碼器和解碼器中,使其自動適應病變目標的比例和形狀,最后通過Softmax分類器得到病變分割圖。
圖1 算法的功能流程圖
深度神經(jīng)網(wǎng)絡具有有效地學習未經(jīng)預處理的圖像數(shù)據(jù)的能力,如果對圖像數(shù)據(jù)進行適當?shù)念A處理,分割效率和效果會更好。在這項研究中,本文采用了三種圖像預處理策略,均基于Open CV軟件實現(xiàn),具體處理過程如圖2所示。由于單通道圖像顯示的病變區(qū)域與周圍皮膚的對比度比RGB圖像更好[13],因此先將原始RGB圖像轉(zhuǎn)換為單通道灰度圖像,然后對整個數(shù)據(jù)集進行歸一化,最后進行限制對比度自適應直方圖均衡化處理,以進一步增強前景與背景的對比度。
為了避免過擬合,實驗中需對訓練數(shù)據(jù)進行數(shù)據(jù)增強,采用滑動窗口的方式對圖像進行裁剪。為了降低計算復雜度并確保周圍的局部特征不損失,將滑動窗口的大小設置為48×48。需要注意的是,裁剪過程中需要將標簽與病變圖像同時裁剪,并且一一對應。而測試數(shù)據(jù)采用完整圖像,不進行裁剪。
在皮膚病變圖像分割中,由姿態(tài)、視角和部分形變等因素引起的幾何變化是設計分割算法的主要挑戰(zhàn)。標準卷積神經(jīng)網(wǎng)絡對物體的幾何形變具有一定程度的建模能力,而調(diào)制可變形卷積[14](Modulated Deformable Convolutional,MDCN)從輸入特征學習得到的偏移量來改變標準卷積的采樣位置進而提升幾何形變建模的能力,從而解決皮膚病變區(qū)域形狀多變帶來的困難。MDCN可表示為:
(1)
如式(1)所示,給定一個有M個采樣點的卷積核,Wm表示為第m個采樣點的權值,nm表示為第m個采樣點預定義的偏移量。例如:M=9和nm∈{(-1,-1)(-1,0),…,(1,1)}定義了一個3×3的卷積核。x(n)定義為輸入特征位置n的特征;y(n)定義為輸出特征位置n的特征。Δnm為卷積學習得到的第m個采樣點的位置偏移量,pm表示為第m個采樣點的調(diào)制因子,pm∈[0,1]。因為n+nm+Δnm是小數(shù),所以x(n+nm+Δnm)通過雙線性插值得到,而其中的核心——位置偏移量(offset),可通過以下算法計算得到:
def forward(self,x):
"""Return the deformed featured map"""
x_shape=x.size()
offsets=super(ConvOffset2D,self).forward(x)
# offsets:(b*c,h,w,2)
offsets=self._to_bc_h_w_2(offsets,x_shape)
# x:(b*c,h,w)
x=self._to_bc_h_w(x,x_shape)
# X_offset:(b*c,h,w)
x_offset=th_batch_map_offsets(x,offsets,grid=self._get_grid(self,x))
# x_offset:(b,h,w,c)
x_offset=self._to_b_c_h_w(x_offset,x_shape)
return x_offset
圖3展示了調(diào)制可變形卷積的工作原理(左側(cè))和MDCN對輸入圖像特征提取的過程(右側(cè))。圖3左上方表示常規(guī)卷積的采樣位置,不隨病變區(qū)域的形狀變化而改變卷積核形狀,左下方表示MDCN的采樣位置,通過位置偏移量(offset)生成新的采樣位置以適應病變區(qū)域的形狀變化。偏移量特征的分辨率與輸入特征的分辨率相同,且每個位置都有x和y兩個方向的偏移量,所以偏移量特征通道數(shù)為采樣點個數(shù)的兩倍。同時,調(diào)制因子特征的分辨率與輸入特征的分辨率相同,且通道數(shù)為采樣點的個數(shù),因此總的通道數(shù)為采樣點個數(shù)的三倍。
圖3 3×3普通卷積與MDCN采樣位置示意圖(左側(cè))及MDCN對輸入圖像的特征提取示意圖(右側(cè))
受U-Net和調(diào)制可變形卷積(MDCN)的啟發(fā),本文將調(diào)制可變形卷積與U-Net優(yōu)勢互補,提出了自適應目標形狀的U型網(wǎng)絡(MD-UNet),用于皮膚病變圖像分割任務。該網(wǎng)絡具有U形架構(gòu),兩側(cè)分別為編碼器和解碼器,并且部分原始卷積層由調(diào)制可變形卷積塊替換。對新模型進行訓練,將低級特征與高級特征相集合,并且對接收場和采樣位置進行了適應性訓練,以適應皮膚病變區(qū)域的紋理和形狀變化,實現(xiàn)對目標的精確分割。
圖4展示了MD-UNet的體系結(jié)構(gòu),虛線框中顯示了調(diào)制可變形卷積塊的詳細設計。該體系結(jié)構(gòu)由編碼器(左側(cè))和解碼器(右側(cè))組成,調(diào)制可變形卷積被加到第二層和第三層的卷積塊中,構(gòu)成調(diào)制可變形卷積塊。每個調(diào)制可變形卷積塊由一個卷積偏移層(Convolution Offset)、一個卷積層(Convolution)、一個批歸一化層(Batch Normalization,BN)和一個激勵層[15](ReLU)組成。在每個編碼和解碼階段,調(diào)制可變形卷積塊通過學習局部、密集和自適應感受野來對各種形狀和比例的皮膚病變區(qū)域進行建模。
值得注意的是,在MD-UNet的底部,本文使用傳統(tǒng)的卷積層而非調(diào)制可變形卷積,否則將引入大量參數(shù),而性能卻沒有實質(zhì)性的提升。借助這種網(wǎng)絡結(jié)構(gòu),MD-UNet可以學習提取特征并生成精確的皮膚病變圖像分割結(jié)果。
為便于與其他分割算法進行比較,實驗選用ISBI2016惡性黑色素瘤檢測挑戰(zhàn)賽分割系列的公開數(shù)據(jù)集來評估所提出的分割方法,該數(shù)據(jù)集由國際皮膚成像協(xié)會(ISIC)提供,其中訓練集包括900幅皮膚鏡圖像(RGB圖像)和每幅皮膚鏡圖像對應的手工分割真實圖像標簽(灰度圖像);測試集為379幅皮膚鏡圖像和對應的手工分割真實圖像標簽。皮膚鏡像圖像與手工分割真實圖像的分辨率從566×679像素至2 848×4 228像素不等。圖5展示了該數(shù)據(jù)集的圖像特征??梢钥闯?,首先皮膚病變區(qū)域的形狀、尺寸、顏色和紋理都差異巨大,見圖5(a)-(d);其次很多病變區(qū)域的邊界非常模糊,見圖5(e)-(h);部分病變區(qū)域往往有毛發(fā)的遮擋,見圖5(i)-(l);最后,包含了很多小目標的病變區(qū)域,見圖5(m)-(p)。
(e) (f) (g) (h)
(i) (j) (k) (l)
針對皮膚病變圖像分割結(jié)果的評估指標,本文主要采用逐像素精確度(Acc)、Dice相似指數(shù)(Dic)、Jaccard指數(shù)(Jac)、靈敏度(Sen)及特異性(Spe)對最終分割結(jié)果做出相應評估,各評估指標的定義如下:
(2)
(3)
(4)
(5)
(6)
式中:TP、TN、FN、FP分別代表真陽性、真陰性、假陰性、假陽性區(qū)域的像素個數(shù)。
本文所有實驗均基于Ubuntu 16.04系統(tǒng)下PyTorch 1.1.0深度學習框架實現(xiàn),處理器為Intel?CoreTMi7-6700 CPU @ 3.40 GHz×8。算法通過Python語言進行編寫,該網(wǎng)絡由兩塊內(nèi)存大小各為8 GB的NVIDIA GeForce GTX1070的GPU加速訓練,CUDA版本為9.0。網(wǎng)絡權重參數(shù)的初始化采用Xavier初始化方式,優(yōu)化器采用的是Adam,加快目標函數(shù)的收斂速度。網(wǎng)絡初始學習率設置為0.001,訓練epoch大小設置為100,為最大化GPU內(nèi)存的使用效率縮短網(wǎng)絡的訓練時間,網(wǎng)絡訓練時輸入Batch size大小設置為128。
由于ISBI2016數(shù)據(jù)集中的圖像分辨率不統(tǒng)一,需要將測試集中的圖片和標簽的轉(zhuǎn)換為統(tǒng)一分辨率。表1顯示了不同分辨率情況下的實驗結(jié)果,其中分辨率為256×192時的分割效果最佳,因此將測試圖片的分辨率轉(zhuǎn)換為256×192。測試時輸入Batch size為1,對測試圖片進行逐一分割,最后保存分割圖像并計算相關評估指標。
分別運用U-Net網(wǎng)絡和MD-UNet網(wǎng)絡對ISBI2016皮膚病變數(shù)據(jù)集進行分割,得到的分割圖像如圖6所示。通過與標簽進行對比可以發(fā)現(xiàn),U-Net網(wǎng)絡的分割結(jié)果雖然在大致輪廓上能夠?qū)?,但在邊緣細?jié)上表現(xiàn)得比較差,無法對病變區(qū)域與在周圍皮膚進行準確區(qū)分;而MD-UNet在邊緣細節(jié)分割上較為完美地貼合了病變區(qū)域,得到了精確的病變區(qū)域分割圖。通過比較分割結(jié)果的評估指標也能說明這一點,如表2所示,MD-UNet較U-Net在五項評估指標上分別提高了2.60、2.34、5.59、1.59和0.55百分點。這表明,調(diào)制可變形卷積對于像皮膚病變圖像這種目標形狀差異巨大和邊緣細節(jié)眾多的圖像具有良好的分割效果,通過學習位置偏移量更新采樣位置,實現(xiàn)對目標形狀變化的適應,達到精確分割的效果。
(a) 病變圖像
(b) 手工工分割真實圖(標簽)
在ISBI2016皮膚病變圖像之惡性黑色素瘤檢測挑戰(zhàn)賽的官網(wǎng)中,提供了部分參賽隊伍分割模型對病變圖像分割的各項評估指標,選取其中成績排名前五隊伍的評價指標與MD-UNet網(wǎng)絡所得評估指標進行比較,結(jié)果如表3所示。MD-UNet模型的前四項評估指標均高于其他模型,Acc、Dic、Jac、Sen和Spe五項評估指標相比Team-EXB分別提升了2.57、3.01、7.00、3.70和0.10百分點,表明本文算法在皮膚病變圖像分割上具有相對優(yōu)勢。
針對皮膚病變圖像自動分割算法對于惡性黑色素瘤診斷的作用及現(xiàn)有U-Net網(wǎng)絡在皮膚病變圖像分割中產(chǎn)生誤識別、分割精度低等問題,本文將調(diào)制可變形卷積融入到U-Net網(wǎng)絡中,提出一種自適應目標形狀的U型網(wǎng)絡。該網(wǎng)絡不僅繼承了U-Net網(wǎng)絡多尺度特征融合的優(yōu)點,而且能夠自動適應目標形狀變化,實現(xiàn)對復雜結(jié)構(gòu)圖像的精確分割。實驗證明,MD-UNet模型的逐像素分割精度、Dice相似指數(shù)和Jaccard相似指數(shù)等各項評估指標均優(yōu)于U-Net及其他對比模型。不過模型對于有嚴重毛發(fā)遮擋的皮膚病變圖像的分割效果欠佳,這將作為今后網(wǎng)絡改進的方向??傮w而言,MD-UNet模型實現(xiàn)了對皮膚鏡像圖像中皮膚病變區(qū)域的精確分割,為后續(xù)的病變分析打下了基礎,確保了黑色素瘤計算機輔助診斷(CAD)系統(tǒng)的正常運行。MD-UNet模型不僅提高了臨床黑色素瘤診斷的效率,而且避免了臨床醫(yī)生憑肉眼手工分割的主觀性,在臨床黑色素瘤診斷領域中具有應用前景。