張麗航,王善娟,常慶,羅懿文,周曉光,孫沐毅,王一飛,劉艷麗
胃潰瘍型病變的常規(guī)診斷主要依靠分析消化內(nèi)鏡檢查圖像特征,而將人工智能作為消化內(nèi)鏡的輔助診斷系統(tǒng),是內(nèi)鏡未來發(fā)展的一個(gè)重要方向。近年來,圖像處理技術(shù)與深度學(xué)習(xí)技術(shù)相結(jié)合,并應(yīng)用于醫(yī)療圖像輔助診斷領(lǐng)域[1],影像組學(xué)逐漸成為計(jì)算機(jī)視覺的研究熱點(diǎn)之一?,F(xiàn)有的計(jì)算機(jī)視覺算法應(yīng)用于醫(yī)療影像輔助診斷,常用的圖像分割方法為基于尺度不變特征轉(zhuǎn)換(Scale lnvariant Feature Transform,SIFT)的手動(dòng)特征提取方法[2]、基于聚類的非監(jiān)督圖像分割算法[3]。這些算法也能得到不錯(cuò)的效果,但是對于新的圖像樣本,模型泛化能力弱,不利于實(shí)際應(yīng)用的部署。從現(xiàn)有的研究情況看,大多數(shù)內(nèi)窺鏡數(shù)據(jù)來自無線膠囊內(nèi)窺鏡,其數(shù)據(jù)為拍攝的連續(xù)視頻幀,需要手工篩選剔除模糊、氣泡、反光等包含噪聲因素的圖像,效率低且容易遺漏[4]。另外,存在數(shù)據(jù)標(biāo)注準(zhǔn)確性問題,由醫(yī)生進(jìn)行手工標(biāo)注,不同醫(yī)生的標(biāo)注標(biāo)準(zhǔn)不一,沒法進(jìn)行統(tǒng)一標(biāo)準(zhǔn),存在爭議。有一些學(xué)者利用聚類方法[5]、SIFT[2]等圖像特征提取方法對胃潰瘍圖像進(jìn)行分割,大多數(shù)沒有使用深度學(xué)習(xí)方法。所以利用深度學(xué)習(xí)對胃潰瘍圖像病變區(qū)域進(jìn)行分割的研究較少。
因此,基于空洞卷積和數(shù)據(jù)增強(qiáng)技術(shù),利用DeepLab V3模型,對普通消化內(nèi)鏡胃潰瘍圖像病變區(qū)域進(jìn)行分割算法研究,為普通消化內(nèi)鏡圖像計(jì)算機(jī)輔助診斷研究提供新的思路,積極響應(yīng)國家對醫(yī)工結(jié)合的號召,降低醫(yī)生診斷負(fù)擔(dān),具有重要的理論研究意義和臨床價(jià)值。
選取2017年11月至2018年11月上海市嘉定區(qū)中心醫(yī)院消化內(nèi)鏡中心接受普通白光內(nèi)鏡檢查(胃鏡系統(tǒng)為OLYMPUS GIF-QX260)且診斷中包含有“胃潰瘍”的病例,內(nèi)鏡圖像均由有經(jīng)驗(yàn)的內(nèi)鏡醫(yī)生(至少內(nèi)鏡從業(yè)5年以上,胃鏡檢查例數(shù)200例以上)檢查采集得到。收集整理拍攝的潰瘍患病區(qū)域圖像,包含經(jīng)病理診斷的良性胃潰瘍圖像758張,圖像的尺寸為512×512。隨機(jī)抽選其中的600張做訓(xùn)練集,剩下的158張作為測試集。
本實(shí)驗(yàn)采用的服務(wù)器CPU為i7-6900k,CPU主頻為3.2 GHz,顯卡為4塊NVIDIA GeForce TITANX,每塊顯存為12 G。所用的Python版本為3.6.7,Pytorch版本為1.0.0,采用Adam優(yōu)化算法在數(shù)據(jù)訓(xùn)練過程中更新神經(jīng)網(wǎng)絡(luò)的權(quán)重,Momentum為0.9、衰減率為5e-4、Batch size大小設(shè)置為8。
普通內(nèi)鏡由于拍攝圖像方式為醫(yī)生手動(dòng)選擇病變區(qū)域并進(jìn)行拍攝,針對當(dāng)前的圖像攝取方式,存在三個(gè)主要問題亟待解決:①由于成像設(shè)備系統(tǒng)設(shè)置問題,上傳的圖像經(jīng)常包含病患的隱私信息,需要研究者進(jìn)行脫敏處理;②醫(yī)生進(jìn)行普通消化內(nèi)鏡檢查時(shí),拍攝病變區(qū)域?yàn)榈谝荒康?,拍攝的圖片會包含橫紋、氣泡、反光、儀器侵入等情況,需要對這類無效信息圖片進(jìn)行篩選;③總體數(shù)據(jù)集體量較小,需要進(jìn)行常見的數(shù)據(jù)增強(qiáng)處理。
1.3.1 圖像初步處理 現(xiàn)有的數(shù)據(jù)如圖1所示,除了實(shí)驗(yàn)所需的內(nèi)鏡圖像部份外,還包含黑框、病人信息等無用噪聲。這些數(shù)據(jù)部分屬于病患隱私信息,需要對這一部分也即是對黑框部分進(jìn)行裁剪。
圖1 Sobel算法切除無效信息 A:切除無效信息前;B:切除無效信息后
對如圖1A所示的黑色邊框部分,本文利用索貝爾算子(Sobel operator)作為邊緣檢測的方式[6],sobel算子根據(jù)像素點(diǎn)上下、左右相鄰點(diǎn)灰度加權(quán)差。在圖像內(nèi)容和邊框的邊緣分解處,極值達(dá)到最大,從而確定邊緣的位置,從而對黑框進(jìn)行裁剪。除此之外,sobel算子對噪聲有平滑作用,可以較為精確的判斷邊緣方向信息,其算法結(jié)果如圖1B。除此之外,還手動(dòng)剔除包含橫紋、氣泡、反光、儀器侵入等噪聲信息的圖像。除此之外,還計(jì)算出訓(xùn)練圖像的均值和方差,針對每張輸入的訓(xùn)練圖像,按照統(tǒng)一的均值和方差進(jìn)行歸一化,優(yōu)化訓(xùn)練進(jìn)程,有效防止過擬合。
1.3.2 數(shù)據(jù)集增強(qiáng) 現(xiàn)有的數(shù)據(jù)集包含良性胃潰瘍的圖像共計(jì)758張,隨機(jī)抽取其中的600張作為訓(xùn)練集,158張作為測試集,隨著卷積神經(jīng)網(wǎng)絡(luò)層數(shù)的加深,需要學(xué)習(xí)的參數(shù)逐漸變多,僅有600張訓(xùn)練集沒法完成神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,需要通過圖像處理手段對訓(xùn)練集進(jìn)行數(shù)據(jù)增強(qiáng),可以有效地防止過擬合的發(fā)生。本文中采用的數(shù)據(jù)增強(qiáng)的方式包括:①固定角度旋轉(zhuǎn),將數(shù)據(jù)進(jìn)行水平翻轉(zhuǎn)、垂直翻轉(zhuǎn)、逆時(shí)針旋轉(zhuǎn)90°、180°、270°,將數(shù)據(jù)擴(kuò)增6倍;②隨機(jī)裁剪,對輸入的圖像隨機(jī)切割掉一部分;③高斯噪聲,在圖像中添加少量的噪聲。
1.4.1 空洞卷積及Deep lab系列 早期的卷積神經(jīng)網(wǎng)絡(luò)模型,輸入圖像依次經(jīng)過卷積和池化的操作,在降低圖像的尺寸的同時(shí)增大感受野。但是針對語義分割問題,模型期待的輸出是與輸入圖像尺寸等大的像素級分類,因此需要上采樣池化后的特征圖到原始圖像的尺寸,F(xiàn)CN和Unet中通常利用反卷積完成這一過程[7]?,F(xiàn)存的問題是圖像的尺寸先減小再恢復(fù)的過程,會損失大量空間結(jié)構(gòu)信息,因此本文中采用空洞卷積,避免使用池化操作的同時(shí)增大感受野,不對圖像像素進(jìn)行壓縮,保留了輸入圖像內(nèi)部的空間結(jié)構(gòu)信息,分割效果優(yōu)于標(biāo)準(zhǔn)卷積,其結(jié)構(gòu)示意圖如圖2所示。
其中可設(shè)置的超參數(shù)為卷積核尺寸和擴(kuò)充倍率(dilation rate),其中擴(kuò)充倍率用于控制卷積核擴(kuò)張的大小,其數(shù)值越大相較于同尺寸的普通卷積核對應(yīng)的感受野越大。
圖2 空洞卷積感受野示意圖 A:1-dilated rate,感受野3×3; B:2-dilated rate,感受野7×7; C:4-dilated rate,感受野15×15
1.4.2 空洞空間金字塔池化模塊 空洞空間金字塔池化(Atrous Spatial Pyramid Pooling,ASPP)[8]是一種高效的上下文信息融合模塊,在DeepLab系列論文中,ASPP模塊被多次有效地利用。ASPP模塊在特征圖并行添加不同膨脹倍率的空洞卷積,可以對多尺度的上下文信息進(jìn)性融合。膨脹倍率大的空洞卷積感受野大,可以提取圖像整體特征;膨脹倍率小的空洞卷積,可以專注于圖像的細(xì)節(jié)邊緣信息,針對不同尺度的語義分割目標(biāo)提取不同層次的特征信息。除此之外,還利用了1×1卷積對進(jìn)行卷積通道的拼接和全局平均池化實(shí)現(xiàn)全局特征的整合。
本實(shí)驗(yàn)的核心網(wǎng)絡(luò)模型包含編碼器Encoder和解碼Decoder兩個(gè)結(jié)構(gòu)。其中編碼器,先利用1個(gè)1×1卷積層、3個(gè)3×3卷積層組合和一個(gè)池化層疊加,對輸入的圖像信息進(jìn)行多尺度的信息提取,3×3卷積層均使用空洞卷積,膨脹倍率分別為6、12、18。將提取的信息進(jìn)行concat疊加,再通過一個(gè)1×1卷積層進(jìn)行通道調(diào)整,將其作為Encoder的輸出。解碼器部分將4倍上采樣后的編碼器輸出和原圖融合,對其進(jìn)行3×3的卷積和4倍上采樣處理,恢復(fù)輸入圖像的尺寸大小,并進(jìn)行像素級的分類。我們設(shè)置batch size為8,初始的學(xué)習(xí)率為0.001,并設(shè)置根據(jù)loss的差值調(diào)整學(xué)習(xí)率的大小,兩輪loss變化值小于前一輪的10%,則將學(xué)習(xí)率變?yōu)樵鹊?0%。采用Dropout機(jī)制[9],降低結(jié)構(gòu)風(fēng)險(xiǎn),增強(qiáng)模型的泛化能力。實(shí)驗(yàn)采用交叉熵?fù)p失函數(shù)(Cross-entropy Loss),其公式1表達(dá)如下所示:
(1)
其中,G為醫(yī)生給出的標(biāo)注真值(groundtruth),y為網(wǎng)絡(luò)輸出的預(yù)測結(jié)果,交叉熵表述的是兩個(gè)概率分布之間的差異,所以網(wǎng)絡(luò)輸出需要經(jīng)過softmax激活函數(shù),將其轉(zhuǎn)化為概率分布的形式。綜合空洞卷積和空洞空間金字塔池化,本文的網(wǎng)絡(luò)模型搭建如下圖3所示。
普通消化內(nèi)鏡圖像中胃潰瘍病變區(qū)域分割問題的目標(biāo)是將每一個(gè)像素點(diǎn)分為兩類[10]:背景或者胃潰瘍病癥區(qū)域,我們將胃潰瘍病癥區(qū)域定義為正類,背景類定義為負(fù)類。將卷積神經(jīng)網(wǎng)絡(luò)的預(yù)測結(jié)果與醫(yī)生標(biāo)注的groundtruth進(jìn)行比對,會有四種情況:①真陽性(True Positive, TP),表示為正類像素預(yù)測結(jié)果也為正類的像素?cái)?shù)量;②假陽性(False Positive, FP),表示為負(fù)類像素預(yù)測結(jié)果為正類的像素?cái)?shù)量;③真陰性(True Negative, TN),表示為負(fù)類像素預(yù)測結(jié)果也為負(fù)類的像素?cái)?shù)量;④假陰性(False Negative, FN)表示為正類像素預(yù)測結(jié)果為負(fù)類的像素?cái)?shù)量。通過以上四種預(yù)測可能結(jié)果,本文根據(jù)其他同領(lǐng)域論文[11]使用了以下的計(jì)算指標(biāo)作為模型性能優(yōu)劣的評價(jià)標(biāo)準(zhǔn),包括準(zhǔn)確率(Accuracy,Acc)、交并比(IntersectionOver Union,IoU)、頻權(quán)交并比(Frequency Weighted Intersection Over Union,F(xiàn)wIoU),其計(jì)算公式如下:
圖3 網(wǎng)絡(luò)主體結(jié)構(gòu)示意圖
(2)
(3)
(4)
通過數(shù)據(jù)增強(qiáng)的方式對原始數(shù)據(jù)進(jìn)行隨機(jī)擴(kuò)充以增加數(shù)據(jù)集的多樣性,對原有的數(shù)據(jù)集采取隨機(jī)高斯噪聲、水平和垂直翻轉(zhuǎn)、多角度逆時(shí)針旋轉(zhuǎn)等方法,對胃潰瘍病癥區(qū)域圖像進(jìn)行增強(qiáng)。我們用DeepLab V3 Plus模型分別對原數(shù)據(jù)和增強(qiáng)后的數(shù)據(jù)進(jìn)行訓(xùn)練,評價(jià)準(zhǔn)確率、平均交并比、頻權(quán)交并比。結(jié)果如表1所示。其中,DATA AUG為數(shù)據(jù)集增廣后的結(jié)果,與基礎(chǔ)的DeepLab V3 Plus相比準(zhǔn)確率上升1.65%,平均交并比上升1.57%,頻權(quán)交并比提高2.64%。由此可見在此胃潰瘍病變區(qū)域數(shù)據(jù)集上,數(shù)據(jù)增強(qiáng)可以有效提高樣本數(shù)據(jù)特征的多樣性,優(yōu)化模型訓(xùn)練效果,有效地防止過擬合的發(fā)生。
表1 FCN、Unet、DeepLab V3、DeepLab V3 Plus的模型評價(jià)指標(biāo)
通過與早期公布的卷積神經(jīng)網(wǎng)絡(luò)分割算法進(jìn)行對比,論證空洞卷積的有效性。我們采用的基礎(chǔ)網(wǎng)絡(luò)為FCN、Unet,并利用DeepLab V3和DeepLab V3 Plus模型驗(yàn)證空洞卷積的有效性,采用相同的訓(xùn)練集和相同的訓(xùn)練策略,設(shè)置相同的batchsize和初始學(xué)習(xí)率,進(jìn)行對比實(shí)驗(yàn)。FCN、Unet、DeepLab V3的模型loss曲線對比見圖4。FCN、Unet、DeepLab V3、DeepLab V3 Plus的模型評價(jià)指標(biāo)見表1。
圖4 FCN、Unet、DeepLab V3的模型loss曲線對比
DeepLab V3 Plus在編碼器部分仍使用DeepLab V3的版本可以有效提取高級特征提供語義信息,還增加級聯(lián)結(jié)構(gòu)提取低級特征提供細(xì)節(jié)信息,因此DeepLab V3 Plus在處理細(xì)節(jié)的邊界信息的性能應(yīng)優(yōu)于其他的模型(圖5)。
圖5 FCN、Unet、DeepLab V3、DeepLab V3 Plus模型的分割效果
我們主要針對普通消化內(nèi)鏡胃潰瘍圖像病變區(qū)域進(jìn)行分割算法研究,利用Sobel算子以及手工篩選的方式,剔除與病變圖像無關(guān)的橫紋、氣泡、反光等噪聲信息。通過圖像數(shù)據(jù)增強(qiáng)手段,擴(kuò)充數(shù)據(jù)集的多樣性。利用與基礎(chǔ)網(wǎng)絡(luò)進(jìn)行對比試驗(yàn)的方式,探究空洞卷積對感受野的提升作用,還驗(yàn)證了空間空洞金字塔池化提高圖像對于邊緣信息和整體信息的提取能力。
為了更好的解決圖像分割任務(wù),早期研究者在卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上改進(jìn)得到全卷積神經(jīng)網(wǎng)絡(luò)(Fully convolutional networks,F(xiàn)CN)[7,12],全卷積網(wǎng)絡(luò)輸入和輸出的圖像尺寸大小,可以針對每一個(gè)像素點(diǎn)進(jìn)行分類,從而達(dá)到圖像分割的目的?;谏疃葘W(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò)的最早解決語義分割問題的模型是FCN。針對最后一個(gè)卷積層輸出的特征圖,該模型采用反卷積進(jìn)行上采樣,恢復(fù)圖像的尺寸大??;除此之外,SegNet[13]首次利用Encoder-Decoder結(jié)構(gòu),在編碼部分SegNet和VGG16[14]的卷積拓?fù)浣Y(jié)構(gòu)相同。將編碼器部分的maxpooling選擇的最大值的位置參數(shù)賦給解碼器上采樣過程,補(bǔ)充了下采樣過程空間信息的確實(shí),提升了模型效果;由于大多數(shù)的醫(yī)療圖像數(shù)據(jù)尺寸較大,在輸入卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練之前,需要對圖像進(jìn)行剪裁處理。由于進(jìn)行裁剪時(shí),常常使用Overlap的方法進(jìn)行切圖,Unet[15-16]網(wǎng)絡(luò)對這一類patch處理的結(jié)果通常較好,原因在于overlap生成的patch包含重疊信息,這一部分重疊圖像可以提供大量的環(huán)境紋理信息,有利于上下文信息的聯(lián)系。
我們的研究發(fā)現(xiàn),通過數(shù)據(jù)增強(qiáng)的方式對原始數(shù)據(jù)進(jìn)行隨機(jī)擴(kuò)充以增加數(shù)據(jù)集的多樣性,對原有的數(shù)據(jù)集采取多種方法,對胃潰瘍病癥區(qū)域圖像進(jìn)行增強(qiáng)。使用 DeepLab V3 Plus模型分別對原數(shù)據(jù)和增強(qiáng)后的數(shù)據(jù)進(jìn)行訓(xùn)練,可以明顯提高評價(jià)準(zhǔn)確率、平均交并比、頻權(quán)交并比,數(shù)據(jù)增強(qiáng)可以有效提高樣本數(shù)據(jù)特征的多樣性,優(yōu)化模型訓(xùn)練效果,有效地防止過擬合的發(fā)生[17],有利于胃潰瘍病變區(qū)域的識別。我們的研究發(fā)現(xiàn),最佳模型(DeepLab V3 Plus)對胃潰瘍病變區(qū)域的準(zhǔn)確率達(dá)到89.667%,平均交并比達(dá)到88.478%,頻權(quán)交并比為81.665%。人工采集的消化內(nèi)鏡圖像中噪聲信息較多,手動(dòng)篩選去除噪聲信息,可以有效提高卷積神經(jīng)網(wǎng)絡(luò)對數(shù)據(jù)特征空間的表征能力,數(shù)據(jù)增強(qiáng)可以有效提高模型對圖像的分割精度。DeepLab V3 Plus在編碼器部分仍使用DeepLab V3的版本可以有效提取高級特征提供語義信息,還增加級聯(lián)結(jié)構(gòu)提取低級特征提供細(xì)節(jié)信息,因此DeepLab V3 Plus在處理細(xì)節(jié)的邊界信息的性能應(yīng)優(yōu)于其他的模型[18-19]。
此實(shí)驗(yàn)中,我們使用的是白光內(nèi)鏡的圖像,隨著內(nèi)鏡技術(shù)的發(fā)展,NBI+放大內(nèi)鏡能提高胃黏膜病變診斷的準(zhǔn)確率[20],今后,我們也可以使用DeepLab V3 Plus模型對NBI+放大內(nèi)鏡所產(chǎn)生的圖像進(jìn)行分析。今后,我們將在后續(xù)的實(shí)驗(yàn)中,對DeepLab V3模型進(jìn)行改進(jìn)并進(jìn)行消融性實(shí)驗(yàn),在解碼器decoder部分,將進(jìn)行第二次下采樣的特征圖進(jìn)行輸出并與空洞空間金字塔池化后的輸出進(jìn)行融合,這樣可以從編碼器encoder部分提取更多的邊界細(xì)節(jié)語義信息,以期提高模型的性能。
綜上所述,基于空洞卷積的卷積神經(jīng)網(wǎng)絡(luò)可以有效地解決普通消化內(nèi)鏡胃潰瘍圖像病變區(qū)域進(jìn)行分割問題。在醫(yī)生進(jìn)行胃潰瘍圖像病變區(qū)域診斷時(shí),計(jì)算機(jī)視覺算法可以有效地提供指導(dǎo)和幫助,避免主治醫(yī)師的模糊判斷,從而在一定程度上提高早期惡性胃潰瘍的診出率。此外,還可以為計(jì)算機(jī)視覺和醫(yī)療影像相結(jié)合提供新的研究思路,積極響應(yīng)國家醫(yī)工結(jié)合的號召,具有廣闊的理論研究前景和重要的臨床價(jià)值。