黃留揮,程輝
(江漢大學人工智能學院,武漢 430056)
舌象分割是中醫現代化的重要研究方向之一,它在臨床當中為中醫的發展和診斷起到重要的作用,將舌象數字化和客觀化,能為醫師在診斷的過程中提供極大的便利。中醫診斷四步法——望、聞、問、切,從表面的特征出發,一步一步深入到人體神經脈絡,全面了解人體內的病情狀況,其中第一步望診,是通過觀察人的舌頭診斷,因為舌頭上神經連著人體內的五臟六腑,能夠很好反映出體內的情況,但是舌頭易受外界環境的影響,給醫師的診斷帶來極大的困難,并且醫師的診斷也受限于醫師的中醫水平和臨床經驗。因此,對舌象進行客觀化、數字化是一項重要的研究。
在2015年,Xu Qiang,Zeng Yu等人[1]首次利用深度學習神經網絡分割技術對舌象進行分割,提出一種基于多任務聯合學習(multi-task joint learning,MTL)的舌圖像分割分類方法,該方法很好地解決了傳統分割自動化弱的問題;Lin Bingqian,Qu Yanyun等人[2]針對舌象收到光線和大小等原因限制,提出一種基于ResNet的深度學習神經網絡訓練分割舌圖像方法;張新峰、郭宇桐等人[3]提出一種基于DCNN和全連接CRF的舌圖像分割算法,很大程度上提升分割精度;Zhou Changen等人[4]提出一種新的端到端多任務學習模型TongueNet,利用像素級先驗信息對深度卷積神經網絡進行監督訓練;顏建軍、徐姿、郭睿等人[5]針對傳統技術分割精度不高、分割難度大等問題,首次提出一種基于Mask R-CNN的舌圖像分割研究;Li Lei,Luo Zhiming等人[6]注意到基于深度學習的方法在不同分布式數據集上退化顯著等問題,提出一種迭代跨區域舌象分割模型;Zeng Xinxi等人[7]提出一種新穎的端到端邊界引導分層網絡(BGHNet);Cai Yuanzheng等人[8]提出一種新的輔助損失函數來提高深度卷積神經網絡(DCNNs)的分割性能;Zhou Chengen等人[9]首次提出一種基于半監督舌象分割的重建增強概率模型。
基于深度學習神經網絡的舌象分割方法研究,目前相對比較少,盧運西、李曉光等人[10]在文獻《醫舌象分割技術研究進展:方法、性能與展望》當中,把當前舌象分割進行總結分析,并把舌象分割應用到FCN8s當中;但是分割效果不理想,分割精度較低,分割結果當中噪聲較多,對于邊緣分割不夠精準。因此,本文提出一種FCN2s_2結構模型,通過實驗驗證,相比較FCN8s分割模型,改進的FCN2s_2在評價指標iou和Dice上都有所提升,分割效果比FCN8s優。
FCN是Long J、Shelhamer E和Darrell T等人在2014年提出的,它的網絡結構是基于VGG網絡結構改進而得的,也具備VGG識別網絡的一些多層結構自動獲取功能,并且可獲取不同層次的特征,在淺層的卷積層中感受野較少只能獲取局部特征,在深層的卷積層獲取感受野增大,可獲取抽象特征,抽象特征在識別當中,對物體的表層信息敏感度較低,因此可提高網絡模型對目標區域的識別能力。但是該方法也有不足,比如需要對圖像當中某一個像素進行分類,則需要訓練測試該像素周圍一塊區域,大大地增加計算量,導致計算效率低下,并且存儲的需求也增大,再識別過程中會導致物體細節丟失嚴重。因此針對這些問題,Long等人[11]提出Fully Convolutional Networks,它是將VGG網絡當中的全連接層改為卷積層,從而讓網絡模型可以接受任意大小的輸入圖,不需要求訓練圖和側視圖具有同樣的尺寸,并通過反卷積進行上采樣恢復圖像的分辨率,可以實現給每一個像素進行分類,實現像素之間進行端到端學習,從而實現語義分割。
全連接層輸入,如圖1所示,將一個2×2的矩陣通過全連接得到一個4維向量的過程。卷積層和全連接層的相同之處在于卷積層和全連接層都是進行一個點乘操作,它們的函數形式相同,但是全連接層的權值是固定的,因此要求特征圖的大小和網絡模型開始輸入的圖像大小也需固定,而全連接層提取特征圖的局部特征,使用滑動窗口對特征進行提取,因此對特征圖的大小和網絡模型開始輸入大小不需固定。

圖1 全連接層輸入
反卷積上采樣實際上也是一種卷積,一般普通的卷積在特征提取階段會使得圖像分辨率降低,如圖2所示的卷積核去卷積4×4得到2×2的輸出。但是反卷積上采樣在卷積時,需要在圖像在像素之間補零,通過在像素之間進行補零,然后使用卷積核進行特征提取,從而得到一個高分辨的特征圖。

圖2 卷積和反卷積示意圖
由于FCN8s模型分割圖像時,準確率較低,提出一種FCN2s_2網絡模型分割方法。首先對FCN8s模型結構進行改變,如圖3所示,FCN2s在FCN8s的基礎上,進一步進行特征融合,把FCN8s最后一步對特征圖8倍上采樣改為2倍上采樣,和pool2最大池化得到的特征圖進行融合,進行2倍上采樣,得到的特征圖,繼續和pool1最大池化得到的特征圖進行融合,最后2倍上采樣輸出。以此對每一個經過卷積層提取特征最大池化后得到的特征圖都進行融合,極大的豐富了語義信息。

圖3 FCN2s模型
針對FCN2s當中,特征提取卷積層比較少,提取的特征不夠全面和詳細,改進雙支FCN2s網絡模型分割方法流程如圖4所示。該方法當中,含有兩個FCN2s子模型,在個子模型當中,將兩個子模型的pool1—pool5和conv7得到的特征圖分別進行融合,再把融合的特征,從conv7開始,反向進行2倍上采樣,分別與前一個融合的特征再進行融合,把所有特征融合以后,最后進行2倍上采樣,最后輸出分類分割圖。

圖4 雙支FCN2S_2模型
本文采取網上公開和手機收集的舌象數據集2000張,構成TongueImages數據集,樣本如圖5所示。數據集分為90%為訓練集,10%作為測試集,在使用本數據訓練模型時,為了提高模型的泛化能力,需對數據集進行像素級標注,分為背景和舌體。由于基于深度學習神經網絡分割,數據集樣本數量的大小直接影響到深度模型的性能,樣本太少,模型會出現過擬合,因此為了防止過擬合,則需采取常用的方法進行增強處理,對樣本進行旋轉角度為0.2的隨機轉動、圖像寬度和高度偏移的幅度為0.05、剪切變換的程度為0.05、隨機縮放幅度為0.05、隨機水平翻轉和模式填充為最近鄰插值。

圖5 部分舌象數據集
為了更好的對模型進行訓練和評估,在訓練中對網絡參數設置為:batch_size=2、迭代次數為500、優化器為Adam、損失函數為dice_coef_loss、調正學習率為reduce_lr(對val_loss的值進行監測,學習率的值將0.1*lr的形式被減少,當2epoch過去而模型不能提升時,學習率減少的工作將會被觸發)。
該方法使用當前語義分割中比較流行的兩個指標進行評價。

k為數據集中的總類數,p ii表示被正確分類的數量,p ij表示第i類數據被標記為第j類的數量,p j i表示第j類數據被標記為第i類的數量。

Dice系數是一種計算集合相似度度量的函數,通常用于GAN網絡分割模型的準確率評價,它主要計算真實特征X和生成特征Y的相似度,值的范圍為[0,1]。X∩Y表示集合X和Y的交集,|X|和 |Y|表示對應集合的元素個數。
3.3.1 總損失函數結果分析
如圖6所示,為模型在迭代過程中的損失總函數變化趨勢圖,該圖橫軸為模型的迭代次數,縱軸為損失函數的值,總損失函數為(loss-1),因此損失函數越小表示擬合程度越好。從圖中可以看出,三個模型的損失函數相差不多,迭代次數在130前,FCN8s和FCN2s損失函數比FCN2s_2低,迭代次數在130后,FCN2s_2的就比這兩個低。并且從中可以看出,FCN2s一直都比FCN8s低。

圖6 總損失函數趨勢
3.3.2 評價指標分析
為了更好地分析不同模型之間的分割精度,該實驗采取IoU和Dice評價指標對模型進行評價分析。為了保證公平性,在訓練過程中,模型迭代次數、訓練過程和實驗設置都應一樣,各模型的差異性主要是模型不一致,評價加過如表1所示,從中可以看出,不管是IoU評價指標還是Dice評價指標,FCN2s_s模型都為最優,FCN8s分割精度最低,從改進的模型來看,改進的FCN2s比FCN8s模型好,評價指標IoU提高2.27%,評價指標Dice提高1.33%。改進的FCN2s_s比FCN8s模型評價指標IoU提高9.31%,評價指標Dice提高5.94%,比FCN2s模型評價指標IoU提高7.04%,評價指標Dice提高4.61%。

表1 實驗平臺

表2 評價指標
3.3.3 可視化分割結果分析
如圖2所示為不同模型分割結果可視化和原圖像與標簽圖像對比圖,第一行為原圖像,圖像取自TongueImages數據集,第二行為標簽圖像,第三行到第五行為模型分割結果可視圖。從圖7可以看出,FCN8s分割結果存在一些不足,對舌象邊緣的分割不夠精準,FCN2s和FCN2s_2基本上可以把舌體分割出來。

圖7 分割結果可視化
本文提出一種新的雙支FCN2s_2的舌象分割算法。通過增加低級語義信息融合的程度,從而豐富特征提取的語義信息,獲取到更多的邊界細節,再結合雙支的網絡結果,增強特征提取能力,實現了對舌象的準確的提取。為了驗證算法的有效性,文中采用TongueImages數據集進行實驗,和FCN8s相比,該方法在分割當中,分割精度更高,分割邊緣更準確。