劉慧琳,馮 躍+,徐 紅,2,羅堅(jiān)義
1.五邑大學(xué) 智能制造學(xué)部,廣東 江門 529020
2.維多利亞大學(xué),澳大利亞 墨爾本 8001
3.五邑大學(xué) 應(yīng)用物理與材料科學(xué)學(xué)院 柔性傳感材料與器件研究開發(fā)中心,廣東 江門 529020
4.廣東天物新材料科技有限公司五邑大學(xué)柔性傳感技術(shù)聯(lián)合實(shí)驗(yàn)室,廣州 511483
隨著人工智能技術(shù)的不斷發(fā)展,研究人員越來越多地利用深度學(xué)習(xí)網(wǎng)絡(luò)來設(shè)計(jì)醫(yī)療診斷的輔助系統(tǒng)[1]。在中醫(yī)診斷中,舌診是一種重要的方法,其涉及到對舌體的顏色、形體、舌苔等舌象特征的觀察。例如,HIV 感染者的舌體可能會(huì)出現(xiàn)腫脹和齒痕[2]。但是在研究實(shí)現(xiàn)智能醫(yī)學(xué)診斷的客觀定量化過程中,采集到的圖像往往是含有舌體區(qū)域的人臉圖像。因此需要對其進(jìn)行預(yù)處理,去除背景區(qū)域(如人臉、嘴唇和牙齒等),進(jìn)而獲得舌體區(qū)域。舌體圖像分割是舌體診斷對象化的基礎(chǔ),其準(zhǔn)確性會(huì)直接影響智能舌診系統(tǒng)的分析結(jié)果[3]。
研究人員提出了許多方法來實(shí)現(xiàn)準(zhǔn)確的舌頭分割,包括基于邊緣信息的分割[4]、基于閾值的分割[5]、區(qū)域生長[6]、基于主動(dòng)輪廓的分割[7-8]以及基于聚類的分割[9]。然而,大部分傳統(tǒng)分割方法依賴手工,耗時(shí)耗力,易受主觀影響,分割效率是有限的[10]。此外,由于患者的舌頭特征復(fù)雜,形狀多變,而與其他區(qū)域的嘴唇又很相似,要達(dá)到目標(biāo)的分割精度是很困難的。
如今,深度學(xué)習(xí)的發(fā)展尤為先進(jìn),在醫(yī)學(xué)圖像信息提取和病理圖像分割檢測領(lǐng)域中發(fā)揮著日益重要的作用[11-12]。深度學(xué)習(xí)網(wǎng)絡(luò)已產(chǎn)生了新一代性能卓越的圖像分割模型,從而使該領(lǐng)域發(fā)生了范式轉(zhuǎn)變[13]?;谏疃葘W(xué)習(xí)的圖像分割方法可以通過模擬人腦的層次結(jié)構(gòu)傳遞信息[14],實(shí)現(xiàn)了從像素級數(shù)據(jù)到抽象語義特征的轉(zhuǎn)換。隨著計(jì)算機(jī)輔助診斷在臨床診斷領(lǐng)域的應(yīng)用,國內(nèi)外不少學(xué)者開展其相關(guān)研究以及舌診客觀定量化的探索。
深度學(xué)習(xí)在提取圖像特征方面取得較好的成果,因此一些基于深度學(xué)習(xí)的方法被應(yīng)用于舌診客觀化研究。如圖1 所示,分析統(tǒng)計(jì)目前已有的舌診研究文獻(xiàn)發(fā)現(xiàn),每年發(fā)表的文章數(shù)量都在增加,但增加速度緩慢[15-16]。近年來,隨著深度學(xué)習(xí)的快速發(fā)展,基于傳統(tǒng)方法進(jìn)行舌體分割的文章較少,但基于深度學(xué)習(xí)的舌體分割論文數(shù)量卻在增加[17],見圖2。與傳統(tǒng)方法相比,深度學(xué)習(xí)具有以下三個(gè)優(yōu)點(diǎn):(1)在計(jì)算機(jī)視覺中識別率可以達(dá)到最高;(2)可以充分利用大型數(shù)據(jù)集進(jìn)行自動(dòng)特征學(xué)習(xí);(3)可以最大限度地實(shí)現(xiàn)特征表示和分類器性能的聯(lián)合優(yōu)化。
Fig.1 Growth of objective study on tongue diagnosis圖1 舌診客觀化文章數(shù)量的變化趨勢
Fig.2 Trend of professional attention on tongue segmentation圖2 舌體分割的研究趨勢
卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)是深度學(xué)習(xí)中應(yīng)用最廣泛的架構(gòu)之一,特別是在計(jì)算機(jī)視覺任務(wù)中。CNN 可以通過卷積和池化操作,自動(dòng)學(xué)習(xí)圖像各層次的特征。其主要優(yōu)勢是所有的感受野都有相應(yīng)的權(quán)重。因此,與全連接神經(jīng)網(wǎng)絡(luò)相比,CNN 需要的參數(shù)較少。由于卷積神經(jīng)網(wǎng)絡(luò)最早被用于手寫數(shù)字識別[18]和圖像分類[19],在計(jì)算機(jī)視覺領(lǐng)域中得到了廣泛的應(yīng)用。
CNN 主要由三類層組成:(1)卷積層。應(yīng)用于降維和特征提取。卷積運(yùn)算含有激活函數(shù)(如sigmoid、tanh 和ReLU)用于數(shù)據(jù)擬合。(2)池化層。一般指均值或最大池化操作,用統(tǒng)計(jì)信息代替特征值,降低空間分辨率。(3)全連接層。在CNN 中作為分類器使用,其通過權(quán)重矩陣組將所有的局部特征組合成一個(gè)完整的結(jié)果圖。如圖3 所示。在網(wǎng)絡(luò)的前半部分,卷積層的感受野較小,用于捕捉圖像的局部細(xì)節(jié)。隨著感受野數(shù)量的增加,圖像信息變得更加復(fù)雜和抽象。通過多層卷積運(yùn)算,得到不同尺度的抽象表示。一些最著名的CNN 架構(gòu)包括:AlexNet[19]、VGGNet[20]、ResNet[21]和DenseNet[22]。Lin 等人[23]設(shè)計(jì)了一個(gè)結(jié)合Res-50 和DeepMask[24]的舌體分割網(wǎng)絡(luò)。以50 層的ResNet 為骨干網(wǎng)絡(luò),可以獲得更高的分類精度和更低的訓(xùn)練誤差。Li 等人[25]設(shè)計(jì)了一個(gè)增強(qiáng)的HSV 卷積神經(jīng)網(wǎng)絡(luò)預(yù)測舌體輪廓。然而,該網(wǎng)絡(luò)需要一些額外的預(yù)處理,如亮度識別和圖像增強(qiáng),這使得整個(gè)分割過程變得復(fù)雜。Cai等人[26]提出了一種新型的輔助損失函數(shù),該函數(shù)與CNN 相結(jié)合,利用大量數(shù)據(jù)學(xué)習(xí)來建立端到端的分割模型。
然而CNN 有如下一些明顯的缺點(diǎn)。在訓(xùn)練過程中,每個(gè)像素需要遍歷提取補(bǔ)丁,因此其速度太慢,而且很難決定通道大小。如果太小會(huì)缺乏上下文信息,反之如果太大會(huì)導(dǎo)致大量的冗余計(jì)算。因此,一些研究者對其進(jìn)行了改進(jìn),充分利用空間信息,如空間包含關(guān)系等,可作為圖像分割的先驗(yàn)輔助知識加以應(yīng)用[27]。
級聯(lián)結(jié)構(gòu)可以在處理階段劃分子區(qū)域,也可以在細(xì)化階段剔除假陽性結(jié)果。陽性像素樣本(舌體)和陰性像素樣本(背景區(qū)域)之間的不平衡可能導(dǎo)致訓(xùn)練模型產(chǎn)生預(yù)測偏差。利用子區(qū)域?qū)哟谓Y(jié)構(gòu)保持高召回率,級聯(lián)結(jié)構(gòu)可過濾篩選大量的背景區(qū)域。Yuan 等人[28]設(shè)計(jì)了三個(gè)級聯(lián)CNN 用于舌體檢測分割,每個(gè)階段都有不同的任務(wù)。第一階段是獲取候選的舌體區(qū)域。下一階段是選擇最終的候選者,用邊界回歸進(jìn)行校準(zhǔn),并預(yù)測34 個(gè)坐標(biāo)。最后一個(gè)階段是對這些坐標(biāo)進(jìn)行細(xì)化,得到分割后的結(jié)果。
級聯(lián)結(jié)構(gòu)大大降低了標(biāo)簽的工作量,并為訓(xùn)練過程提供了足夠的監(jiān)督能力。雖然訓(xùn)練多個(gè)子網(wǎng)絡(luò)比訓(xùn)練單一的端到端網(wǎng)絡(luò)更困難,計(jì)算量較大,時(shí)間消耗大,但級聯(lián)網(wǎng)絡(luò)考慮到了子區(qū)域的空間關(guān)系。該結(jié)構(gòu)不僅大大提高了效率,而且提高了準(zhǔn)確性。
Fig.3 Architecture of convolutional neural network圖3 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
Fig.4 Network structure of FCN-8S圖4 FCN-8S 網(wǎng)絡(luò)結(jié)構(gòu)
端到端和像素到像素的卷積神經(jīng)網(wǎng)絡(luò)被證明優(yōu)于當(dāng)時(shí)最先進(jìn)的語義分割方法。全卷積網(wǎng)絡(luò)(fully convolutional network,F(xiàn)CN)[29]用卷積操作代替了傳統(tǒng)的全連接操作,其架構(gòu)交替使用多層普通卷積和池化操作。最后實(shí)現(xiàn)了兩種轉(zhuǎn)換:分類網(wǎng)絡(luò)向分割網(wǎng)絡(luò)的轉(zhuǎn)換和圖像級分類向像素級分類的轉(zhuǎn)換。FCN 可以解決全連接層中輸入圖像的大小必須固定的問題(即可以處理任何大小的輸入圖像)。反卷積層有利于完善輸出結(jié)果。跳躍連接與不同深度層的結(jié)果相結(jié)合,可以達(dá)到更好的魯棒性和準(zhǔn)確性。Li等人[30]提出了基于FCN 的分割模型,結(jié)合深層語義信息和淺層外觀信息進(jìn)行舌體區(qū)域的語義分割。Wang 等人[31]采用了FCN 來處理舌部輪廓模糊和周圍組織顏色相近的問題,從而為后續(xù)的舌部分析和辯證診斷獲得更好的分割結(jié)果。Xue 等人[32]將FCN-8S應(yīng)用于舌體圖像分割,其網(wǎng)絡(luò)結(jié)構(gòu)如圖4 所示。由于一系列卷積和池化操作,圖像越小,分辨率越低。為了在像素級對圖像進(jìn)行分類,F(xiàn)CN 對第五卷積層的輸出進(jìn)行32×上采樣,以恢復(fù)掩膜的大小。但由于損失了一些細(xì)節(jié),原始結(jié)果不夠準(zhǔn)確。因此,第四層和第五層的輸出采用了2 倍和4 倍兩種尺度的上采樣操作,將其融合在第三層的特征圖。最后,上采樣操作產(chǎn)生的特征圖與輸入圖像的大小相同。
這項(xiàng)工作被認(rèn)為是圖像分割的一個(gè)里程碑,表明可以進(jìn)行端到端圖像語義分割的深度學(xué)習(xí)網(wǎng)絡(luò)。然而FCN 也有一些局限性。上采樣操作的結(jié)果是模糊的,對圖像中的小細(xì)節(jié)不敏感,這限制了該模型在醫(yī)學(xué)圖像分析中的性能。由于速度較慢,不能實(shí)時(shí)分割對象。此外FCN 也不能有效利用全局上下文信息,不易轉(zhuǎn)換為三維模型。
FCN 忽略了潛在有用的上下文語義信息。為了獲得融合更多的上下文信息,一些概率圖模型如條件隨機(jī)場(conditional random field,CRF)和馬爾科夫隨機(jī)場(Markov random field,MRF)被利用到深度學(xué)習(xí)架構(gòu)中。
傳統(tǒng)的CRF 通常用于平滑噪聲,通過連接相鄰節(jié)點(diǎn)、空間上相鄰的像素獲得相同的標(biāo)簽[33]。深度卷積神經(jīng)網(wǎng)絡(luò)(deep convolutional neural network,DCNN)獲得的邊緣是平滑的,因此傳統(tǒng)的CRF 在這種情況下不適用[34]。而且DCNN 最后一層的響應(yīng)不足以進(jìn)行精確的物體分割。為了得到物體清晰精確的邊緣,而不是進(jìn)一步平滑邊緣,Chen 等人[35]提出了一種基于CNN 和全連接CRF組合的語義分割算法,如圖5所示。其證明了與之前的其他方法相比,該模型結(jié)構(gòu)能夠以更高的精度定位邊界。在研究舌體分割的領(lǐng)域,張新峰等人[36]采用了DCNN 和全連接CRF 以完善分割的舌體邊緣精度。卷積神經(jīng)網(wǎng)絡(luò)和概率圖形模型的互相結(jié)合能夠細(xì)化分割結(jié)果,但單一的卷積神經(jīng)網(wǎng)絡(luò)會(huì)有高級特征的平移不變性,即重復(fù)的池化和下采樣操作會(huì)丟失關(guān)鍵位置信息,因此后來的研究人員改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)的池化操作,以獲取更多的上下文信息。
Fig.5 DCNN+CRF model圖5 DCNN+CRF 模型
1.4.1 SegNet
Badrinarayanan 等人[37]提出了一種用于圖像分割的深度卷積編解碼器架構(gòu),名為SegNet。SegNet 是一個(gè)對稱網(wǎng)絡(luò),包括一個(gè)編碼器網(wǎng)絡(luò)和一個(gè)解碼器網(wǎng)絡(luò),如圖6所示。編碼器網(wǎng)絡(luò)包括前13層VGG16[20]并不包括全連接層。因此,它可以保留高分辨率的特征圖,減少編碼器網(wǎng)絡(luò)的參數(shù)。此外,歸一化層、激活層和池化層依次連接到每個(gè)卷積層。每個(gè)編碼器塊由兩個(gè)連續(xù)的3×3 卷積層和一個(gè)最大池化層組成。每一個(gè)卷積層之后都有一個(gè)批量歸一化層和一個(gè)ReLU 層。解碼器網(wǎng)絡(luò)由上采樣層和卷積層組成,其中上采樣層和池化層相互對應(yīng)。得到每個(gè)像素的分類概率,實(shí)現(xiàn)語義分割。SegNet的新穎之處在于解碼網(wǎng)絡(luò)應(yīng)用上采樣層來恢復(fù)低分辨率的輸入特征圖。
Fig.6 Architecture of SegNet圖6 SegNet網(wǎng)絡(luò)結(jié)構(gòu)
Qu 等人[38]將亮度統(tǒng)計(jì)與SegNet結(jié)合起來進(jìn)行舌體圖像分割。亮度統(tǒng)計(jì)作為預(yù)處理來判斷輸入圖像是否要分割。訓(xùn)練圖像的像素分為兩類:舌體區(qū)域和背景。采用編碼器網(wǎng)絡(luò)提取特征,再利用解碼器網(wǎng)絡(luò)對上采樣層的圖像信息進(jìn)行豐富,從而獲得池化過程中丟失的信息。
SegNet 不需要保留編碼器網(wǎng)絡(luò)的特征圖,以節(jié)省內(nèi)存空間。解碼器網(wǎng)絡(luò)采用上采樣層,而不是解卷積層,實(shí)現(xiàn)非線性上采樣。此外,SegNet 只有較少的可訓(xùn)練參數(shù),速度較快。SegNet 雖然在精確度上沒有明顯的提升,但注重于節(jié)省內(nèi)存空間,為了后續(xù)設(shè)計(jì)效率更高的實(shí)時(shí)分割網(wǎng)絡(luò)提供了思路基礎(chǔ)。
1.4.2 U-Net
一些模型最初是為生物醫(yī)學(xué)圖像分割而設(shè)計(jì)的,它們的靈感來自于FCN 和編解碼器模型。Ronneberger等人[39]提出了一種用于生物顯微鏡圖像分割的U-Net,如圖7 所示。U-Net 有效提高了上下文信息的利用率。同時(shí),它只需要少量的樣本,在醫(yī)學(xué)圖像領(lǐng)域得到了廣泛的應(yīng)用。其訓(xùn)練策略依賴于數(shù)據(jù)增強(qiáng),可以更有效地從現(xiàn)有的注釋圖像中學(xué)習(xí)。它的整體結(jié)構(gòu)也由兩部分組成:用于捕捉上下文信息的收縮路徑(編碼網(wǎng)絡(luò))和用于精確定位的擴(kuò)展路徑(解碼網(wǎng)絡(luò))。編碼網(wǎng)絡(luò)應(yīng)用卷積和最大池化來實(shí)現(xiàn)特征提取。下采樣部分采用類似FCN 的結(jié)構(gòu),逐漸增加特征通道。解碼網(wǎng)絡(luò)與編碼器網(wǎng)絡(luò)相同,只是使用了轉(zhuǎn)置卷積層而不是池化層。特征圖從下采樣部分復(fù)制拼接到上采樣部分,以防止丟失模式信息。此外,網(wǎng)絡(luò)通過解卷積獲得了豐富的細(xì)節(jié)信息。在增加特征圖大小的同時(shí),減少了特征圖的數(shù)量。這種結(jié)構(gòu)有利于在上采樣過程中向高分辨率層發(fā)送信息。1×1 卷積層對特征圖進(jìn)行處理,得到預(yù)測圖像。
Fig.7 Architecture of U-Net圖7 U-Net網(wǎng)絡(luò)結(jié)構(gòu)
相較于SegNet,U-Net 需要更多的內(nèi)存,單一的卷積核尺寸局限了分割目標(biāo)的精確度。Xu 等人[40]利用U-Net 獲取舌體圖像特征,從而為后續(xù)舌象分類提供準(zhǔn)確的分割結(jié)果。Trajanovski 等人[41]結(jié)合顏色空間與U-Net 對舌體病癥進(jìn)行語義分割。Li 等人[42]結(jié)合U-Net 和轉(zhuǎn)移學(xué)習(xí)(在1.7 節(jié)中詳細(xì)描述),設(shè)計(jì)了一個(gè)名為迭代跨域舌體分割的框架。U-Net 用于獲取不同數(shù)據(jù)集的原始掩碼和共享權(quán)重,以便將共享權(quán)重傳輸?shù)较乱浑A段。由于經(jīng)典的U-Net 會(huì)產(chǎn)生一個(gè)帶有噪聲的粗糙預(yù)測結(jié)果,Zhou 等人[43]設(shè)計(jì)了一個(gè)形態(tài)層來完善預(yù)測結(jié)果,證明了所提出的網(wǎng)絡(luò)不僅可以得到更快、更準(zhǔn)確的結(jié)果,而且可以應(yīng)對舌體的特征不同的挑戰(zhàn)。
1.4.3 高分辨率模型
語義分割方法中,對輸入的原始圖像進(jìn)行了大小調(diào)整,影響了對象邊緣的精度。為了解決這個(gè)問題,Yuan 等人[44]提出了高分辨率網(wǎng)絡(luò)(high resolution network,HRNet),如圖8 所示,它不僅有SegNet 和UNet 相似的架構(gòu),而且還保持了高分辨率的輸入處理。HRNet 在編碼過程中通過將高低分辨率卷積流并行連接,并在不同分辨率之間反復(fù)交換信息,從而擁有了表征[44]。
Fig.8 Architecture of high-resolution network圖8 高分辨率網(wǎng)絡(luò)結(jié)構(gòu)
為了解決舌體邊緣的信息丟失問題,馬龍祥等人[45]采用了HRNet 來實(shí)現(xiàn)準(zhǔn)確的舌體圖像分割。多尺度融合用于不同分辨率的特征圖,以增強(qiáng)高分辨率的表現(xiàn)力[46]。它可以避免特征信息因上采樣和下采樣層而丟失。該網(wǎng)絡(luò)有四個(gè)不同的通道,其輸出的特征圖可以保持原始圖像的大小。同時(shí),該網(wǎng)絡(luò)在三個(gè)低分辨率通道上應(yīng)用雙線性插值(上采樣方法之一)。最后,將不同通道生成的特征圖進(jìn)行疊加,得到高分辨率特征圖。HRNet 是并行連接,不同分辨率的特征圖有不同的語義分割影響效果。該網(wǎng)絡(luò)采用高分辨率圖像作為輸入,彌補(bǔ)一系列的卷積池化操作后的信息丟失,因此過低的分辨率會(huì)影響關(guān)鍵點(diǎn)的預(yù)測質(zhì)量。
實(shí)例分割在圖像處理領(lǐng)域也得到了廣泛的應(yīng)用,它同時(shí)執(zhí)行對象檢測和語義分割。區(qū)域卷積網(wǎng)絡(luò)(regional convolutional network,R-CNN)[47]及其延伸部分(Fast R-CNN[48]、Faster R-CNN[49]和Mask RCNN[50])在物體檢測應(yīng)用中已被證明是成功的。Mask R-CNN 采用FCN 作為分割分支,實(shí)現(xiàn)物體檢測、物體分類與識別、像素級物體分割,其結(jié)構(gòu)如圖9所示。Mask R-CNN 本質(zhì)上是Faster R-CNN,有三個(gè)輸出分支:第一個(gè)預(yù)測邊界框坐標(biāo);第二個(gè)計(jì)算相關(guān)的類;第三個(gè)獲取二進(jìn)制掩碼來分割對象。在架構(gòu)中,Mask R-CNN 使用RoIAlign 層代替Faster R-CNN中原有的RoIPool層是一個(gè)亮點(diǎn)。RoIAlign 是一個(gè)無量化的層,它可以忠實(shí)地保存精確的空間位置,相對提高掩膜精度10 個(gè)百分點(diǎn)~50 個(gè)百分點(diǎn)[50]。
對于每一個(gè)感興趣區(qū)域來說,只是針對一個(gè)類別一個(gè)物體。FCN 要考慮多個(gè)類別之間的競爭,而Mask R-CNN 里的二進(jìn)制掩膜僅僅關(guān)注分割一個(gè)類別的物體。將預(yù)測區(qū)域進(jìn)行對象分類和邊界框回歸從而使分割模型達(dá)到了最高的準(zhǔn)確率,但因?qū)嵗指钔瑫r(shí)執(zhí)行對象檢測和語義分割,所以運(yùn)行速度通常比較慢,會(huì)使語義分割過程更加復(fù)雜。
Fig.9 Architecture of Mask R-CNN圖9 Mask R-CNN 網(wǎng)絡(luò)結(jié)構(gòu)
Gholami 等人[51]利用R-CNN 將舌體區(qū)域從面部圖像中分離出來,進(jìn)而為后續(xù)的舌象分類提供圖像。Zhou 等人[52]在預(yù)測階段采用RoIAlign 修正錯(cuò)誤的舌體區(qū)域。在找到舌體區(qū)域后,分別采用定位分支和掩膜分支進(jìn)行舌體定位和舌模分割。顏建軍等人[53]應(yīng)用Mask R-CNN 進(jìn)行舌體分割,并評估網(wǎng)絡(luò)的效果。
1.6.1 空洞空間卷積池化金字塔
在語義分割和對象檢測中,深度卷積層在提取圖像特征表示方面是有效的。但是,經(jīng)過反復(fù)卷積和池化后,網(wǎng)絡(luò)的特征圖會(huì)逐漸縮小,丟失更多的邊界信息,不利于獲得更平滑的舌邊。為了克服這一局限性,采用不規(guī)則卷積進(jìn)行密集分割[35]。在卷積和池化操作中要避免將特征圖縮小得過小,盡可能保留更多的舌體邊界和語義信息。
DCNN 中通常采用固定大小的卷積核,如3×3 或5×5。網(wǎng)絡(luò)可以通過連續(xù)的卷積操作來提取深層特征,但固定大小的卷積操作只能提取單一大小的特征,因此不能提取多尺度的特征。
在數(shù)學(xué)定義上,二維信號中的空洞卷積計(jì)算如下:
其中,輸入的特征圖x和濾波器w的卷積產(chǎn)生輸出y,r是空洞率,用于定義內(nèi)核w的權(quán)值的間距。
如圖10 所示,一個(gè)3×3 的卷積,其空洞率為2,擁有與5×5 卷積相同大小的感受野。同時(shí),其參數(shù)量僅有9 個(gè)。
Fig.10 3×3 convolution operation with three different atrous rates圖10 三個(gè)不同空洞率的3×3 卷積操作過程
一個(gè)空洞卷積可以通過設(shè)置不同的空洞率來改變感受野的大小。串行結(jié)構(gòu)的空洞空間卷積池化金字塔(atrous spatial pyramid pooling,ASPP)增強(qiáng)了網(wǎng)絡(luò)在多尺度下多類別分割時(shí)的魯棒性,使用不同的采樣比例與感受野提取輸入特征,能在多個(gè)尺度上捕獲目標(biāo)與上下文信息,雖然大大擴(kuò)展了卷積核的感受野,但隨著感受野越來越接近圖像大小,會(huì)退化為1×1 卷積。因此一般采用并行結(jié)構(gòu)的ASPP,通過不同采樣率的空洞卷積并行采樣,捕捉圖像不同尺度的上下文信息。
Zhou 等人[52]改進(jìn)了ASPP,然后從舌體圖像中獲得多尺度特征。并行ASPP 將四個(gè)不同的卷積層平行排列,從多個(gè)感受野中提取多尺度特征。張新峰等人[36]利用其優(yōu)勢進(jìn)行多尺度特征提取。對處理舌體樣本缺乏的問題很有用。
1.6.2 DeepLab 家族
Chen 等人設(shè)計(jì)了DeepLabv1[54]和DeepLabv2[35]用于圖像分割,其后者有三個(gè)關(guān)鍵特征:(1)使用空洞卷積解決網(wǎng)絡(luò)中的分辨率下降(由最大池化操作和步長引起);(2)ASPP,它可以獲得圖像上下文信息并分割對象;(3)通過結(jié)合深度CNN 和概率圖模型,提高物體邊界的定位能力。同年,Chen 等人[55]設(shè)計(jì)了DeepLabv3+結(jié)合級聯(lián)和并行模塊的卷積,在ASPP 中應(yīng)用了1×1 卷積和批量歸一化。此外,所有的輸出都通過一個(gè)1×1 卷積得到最終的輸出。Xue 等人[32]在舌體數(shù)據(jù)集上測試了DeepLabv3,其結(jié)構(gòu)如圖11 所示,并希望將信息損失降到最低,因此將DeepLabv3 和learning based matting[56]結(jié)合起來以優(yōu)化結(jié)果。
深度學(xué)習(xí)需要大量的數(shù)據(jù),這樣可以利用數(shù)據(jù)增強(qiáng)來改善這一問題。為了進(jìn)一步提高網(wǎng)絡(luò)的準(zhǔn)確性,可以將轉(zhuǎn)移學(xué)習(xí)應(yīng)用于舌體圖像分割,從預(yù)先訓(xùn)練的模型中提取網(wǎng)絡(luò)權(quán)重的主要特征。另外,轉(zhuǎn)移學(xué)習(xí)可以避免網(wǎng)絡(luò)過擬合,加快訓(xùn)練速度。轉(zhuǎn)移學(xué)習(xí)有兩種策略:第一種是微調(diào),第二種是凍結(jié)與訓(xùn)練。微調(diào)使用原有數(shù)據(jù)集的預(yù)訓(xùn)練模型,并訓(xùn)練目標(biāo)數(shù)據(jù)集的所有層,它適用于訓(xùn)練一個(gè)較大的數(shù)據(jù)集。凍結(jié)與訓(xùn)練是凍結(jié)除用于分類的全連接層以外的所有層(它們的權(quán)重不更新),然后訓(xùn)練最后一層。此外,它還可以凍結(jié)前幾層,然后對其余層進(jìn)行微調(diào)。它適用于少數(shù)數(shù)據(jù)集。遷移學(xué)習(xí)一般適用于兩個(gè)數(shù)據(jù)分布較為相似的數(shù)據(jù)集訓(xùn)練。
盧運(yùn)西等人[57]利用ImageNet 數(shù)據(jù)集的預(yù)訓(xùn)練模型來初始化網(wǎng)絡(luò)的權(quán)重。該方法訓(xùn)練了舌體數(shù)據(jù)集中的所有層,使各個(gè)網(wǎng)絡(luò)更好地應(yīng)用于舌體圖像分割。當(dāng)損失曲線和分割精度曲線變得穩(wěn)定時(shí),網(wǎng)絡(luò)停止訓(xùn)練。
Li 等人[42]根據(jù)目標(biāo)數(shù)據(jù)集的U-Net 預(yù)測掩碼選擇滿意的樣本,如圖12 所示。對所選樣本進(jìn)行分割模型的微調(diào),在過濾和微調(diào)步驟之間進(jìn)行迭代,直到模型收斂。
Fig.11 DeepLabv3 for tongue segmentation圖11 DeepLabv3 用于舌頭分割
Fig.12 Combination of U-Net and transfer learning for segmentation圖12 U-Net與遷移學(xué)習(xí)的分割模型
除了上述方法外,還有其他幾種流行的深度學(xué)習(xí)架構(gòu)用于舌體分割,如人臉解析等[58-61]。該網(wǎng)絡(luò)對人臉圖像中的每個(gè)像素分配一個(gè)語義標(biāo)簽,由于其巨大的應(yīng)用潛力,近來引起了越來越多的關(guān)注[62]。然而,面部解析通常用于對頭發(fā)、面部、眼睛、眉毛、鼻子和嘴進(jìn)行分割。它并未包括舌體分割。TCMINet[63]是一個(gè)具有上下文聚合功能的端到端混合網(wǎng)絡(luò),可同時(shí)對中醫(yī)分析的面部器官進(jìn)行分割。它可以對舌、眼、耳和唇部等面部器官進(jìn)行檢測和分割。此外,一些研究者不再基于經(jīng)典的編解碼器結(jié)構(gòu)(如UNet)設(shè)計(jì)其分割網(wǎng)絡(luò)。
邵尤偉[64]設(shè)計(jì)出一個(gè)包含編碼和解碼兩個(gè)部分的語義分割網(wǎng)絡(luò),融合低層和高層特征,其網(wǎng)絡(luò)參數(shù)相對于普通的卷積網(wǎng)絡(luò)所需更少。Zeng 等人[65]提出了一種新型的端到端邊界引導(dǎo)分層網(wǎng)絡(luò),并提出了一種新的混合損失函數(shù)。在編碼網(wǎng)絡(luò)中,建立了上下文特征編碼器模塊,以應(yīng)對感受野的收縮缺點(diǎn)。解碼網(wǎng)絡(luò)應(yīng)用了一種新型的分層遞歸特征融合模塊。在此基礎(chǔ)上,通過整合局部上下文信息,逐步分層細(xì)化對象圖,恢復(fù)圖像細(xì)節(jié)。此外,混合損失函數(shù)采用像素、補(bǔ)丁、地圖和邊界四級層次結(jié)構(gòu)設(shè)計(jì)。它可以引導(dǎo)網(wǎng)絡(luò)有效分割舌體區(qū)域,準(zhǔn)確細(xì)化舌體邊界。李淵彤等人[66]也設(shè)計(jì)了一種基于區(qū)域像素相關(guān)性的單像素?fù)p失函數(shù),并將其應(yīng)用于深度語義分割模型,從而有效利用像素標(biāo)簽語義的監(jiān)督信息,更好地指導(dǎo)模型進(jìn)行訓(xùn)練學(xué)習(xí)。
除此之外,Yang 等人[67]提出了一種端到端的無監(jiān)督的舌體分割方法,使用基于對抗性的參考標(biāo)簽。再利用輸入對象掩碼和噪聲,使用生成網(wǎng)絡(luò)來重繪分割區(qū)域。最后,分割網(wǎng)絡(luò)和生成網(wǎng)絡(luò)由一個(gè)判別器和參考標(biāo)簽控制,以完善具有最佳性能的分割網(wǎng)絡(luò)。Zhou 等人[68]提出了一個(gè)重建增強(qiáng)型概率模型,用于半監(jiān)督下的舌頭分割,其中圖像重建約束與對抗性學(xué)習(xí)相結(jié)合,用于提高舌頭分割的準(zhǔn)確性。
綜上所述,基于卷積神經(jīng)網(wǎng)絡(luò)的模型最近已經(jīng)成為圖像處理中的一種流行方法。卷積操作可以有效提取低維或高維的特征,不同的網(wǎng)絡(luò)有各自的優(yōu)勢和弱點(diǎn)。表1總結(jié)了基于深度學(xué)習(xí)的舌體分割方法。
Table 1 Comparison of deep learning-based methods for tongue segmentation表1 基于深度學(xué)習(xí)的舌體分割方法比較
介紹基于深度學(xué)習(xí)的舌體分割方法常用的數(shù)據(jù)集以及評價(jià)指標(biāo)。
對于醫(yī)學(xué)舌體分割來說,由于各種原因如標(biāo)記成本和患者隱私,現(xiàn)有的公共數(shù)據(jù)集很少。這些數(shù)據(jù)集的舌體圖像一般是在封閉環(huán)境下采集的。公開BioHit 數(shù)據(jù)集[69]是一個(gè)包含300 張圖片的舌體數(shù)據(jù)集,尺寸大小為768×576 像素,如圖13 所示。大多數(shù)研究者使用的是自建數(shù)據(jù)庫,其數(shù)據(jù)庫從各醫(yī)院和互聯(lián)網(wǎng)上收集并經(jīng)由專業(yè)人員注釋,如圖14 所示。在訓(xùn)練深度學(xué)習(xí)模型的過程中,訓(xùn)練樣本的數(shù)量對分割模型的性能有直接影響。如果樣本數(shù)量較少,會(huì)導(dǎo)致模型過擬合,因此使用數(shù)據(jù)增強(qiáng)可減少出現(xiàn)這種情況。數(shù)據(jù)增強(qiáng)是一種數(shù)據(jù)擴(kuò)充的方法,通過對原始數(shù)據(jù)集進(jìn)行不同的改變,包括旋轉(zhuǎn)、翻轉(zhuǎn)、裁剪和鏡像,從而增加數(shù)據(jù)樣本的數(shù)量。數(shù)據(jù)增強(qiáng)后的舌體圖像及其標(biāo)簽作為輸入圖像輸入深度學(xué)習(xí)網(wǎng)絡(luò)。
Fig.13 Some samples from BioHit tongue dataset圖13 BioHit數(shù)據(jù)集中的部分舌體圖像
Fig.14 Some samples from self-built tongue dataset圖14 自建數(shù)據(jù)集中的部分舌體圖像
評估舌體圖像分割模型的性能主要有六個(gè)不同的評價(jià)指標(biāo),通過計(jì)算出的真陽性(true positives,TP)、假陽性(false positives,F(xiàn)P)、假陰性(false negatives,F(xiàn)N)和真陰性(true negatives,TN)來表示。TP表示被正確標(biāo)記為陽性的像素的集合,F(xiàn)P表示被錯(cuò)誤標(biāo)記為陽性的像素的集合,F(xiàn)N表示被錯(cuò)誤標(biāo)注為陰性的像素的集合,TN表示正確標(biāo)注為負(fù)值的像素集合。
準(zhǔn)確度(Accuracy)是指所有正向像素在所有像素中的比例,可以衡量分割法對正向像素的識別能力,其由式(2)進(jìn)行計(jì)算:
敏感度(Sensitivity)表示TP和FN中TP的比例,可以衡量分割法對正向像素的識別能力。靈敏度由式(3)進(jìn)行計(jì)算:
特異性(Specificity)是指在所有負(fù)值像素中正確標(biāo)注的像素所占的比例,能夠衡量分割方法對負(fù)像素的識別能力。具體計(jì)算方法如式(4):
精確度(Precision)是圖像分割精確性的度量參數(shù),用于判斷模型對正像素的預(yù)測能力,精度值由式(5)進(jìn)行計(jì)算:
Jaccard 相似系數(shù)(Jaccard)是集合A和集合B之間的交點(diǎn)和它們之間的結(jié)合的比值,其中A表示一個(gè)正像素,B表示一個(gè)負(fù)像素。該系數(shù)可由式(6)進(jìn)行計(jì)算:
骰子系數(shù)(Dice)表示圖像中兩個(gè)目標(biāo)形狀之間的交集面積與總面積的比值,該系數(shù)在[0,1]范圍內(nèi)取實(shí)值,1 表示完美分割,0 表示不存在重疊。Dice 系數(shù)的計(jì)算公式為:
本文主要對比經(jīng)典網(wǎng)絡(luò)與其變形結(jié)構(gòu)網(wǎng)絡(luò)方法,其實(shí)驗(yàn)數(shù)據(jù)集的選取由于舌體圖像的顏色呈現(xiàn)與采集環(huán)境光線有較大的關(guān)系,中醫(yī)舌診圖像客觀上基本是在封閉環(huán)境下進(jìn)行采集的舌體數(shù)據(jù)集。為了測試各種網(wǎng)絡(luò)的實(shí)際應(yīng)用效果,選取了封閉環(huán)境下采集的公開舌體數(shù)據(jù)集[69]進(jìn)行測試。本文主要對比各種經(jīng)典分割網(wǎng)絡(luò):FCN-8S、FCN-16S、SegNet、UNet、HRNet、DeepLabv3+和Mask R-CNN。
本文采用原圖與預(yù)測掩膜圖相互重疊的方法對分割效果進(jìn)行可視化,結(jié)果如圖15 所示。唇齒與舌根部分是最難區(qū)分的,因數(shù)據(jù)集是在封閉環(huán)境下采集的,所以數(shù)據(jù)分布較為相似,便于識別分割。
FCN-8S 和FCN-16S 的分割預(yù)測圖都存在較大的偏差,一些舌根區(qū)域并未被預(yù)測為舌體。隨著跳層連接增加,分割預(yù)測圖并無過多的變化。在舌體圖像的語義分割任務(wù)中,并未明顯地提升舌體分割的精度。
SegNet 網(wǎng)絡(luò)與FCN 網(wǎng)絡(luò)相比,能夠更好地找到舌體區(qū)域的邊緣,但是舌根區(qū)域仍存在無法識別的部分,同時(shí)出現(xiàn)粗糙的邊緣分割,這將影響舌體分割的結(jié)果,因?yàn)樯嗉獾倪吘壊糠謺?huì)出現(xiàn)舌體邊緣齒痕的假象,對后續(xù)的舌體客觀化診斷造成較大的負(fù)面影響。
U-Net 使用了一系列的3×3 卷積和池化操作,以及跳層連接,它相較于前者所提出的分割網(wǎng)絡(luò),有了明顯的分割邊緣。因舌體數(shù)據(jù)集有別于其他的語義分割數(shù)據(jù)集,舌體圖像的語義分割只有兩類,即背景與舌體區(qū)域,且舌體區(qū)域占整張圖像較大比重,因此單一的卷積核尺寸不利于體積較大的分割目標(biāo)。
HRNet的分割效果不佳,因其數(shù)據(jù)集的圖像分辨率低,高分辨率網(wǎng)絡(luò)所需的輸入應(yīng)是高分辨圖像,在連續(xù)的卷積操作過程中,專注于提取高層特征包含的語義信息,會(huì)導(dǎo)致丟失邊緣細(xì)節(jié)信息。太多的高層語義信息造成低層細(xì)節(jié)邊緣信息的丟失。
Mask R-CNN 的分割結(jié)果沒有明顯的粗糙分割邊緣。仔細(xì)觀察,會(huì)發(fā)現(xiàn)在舌尖與舌根部分存在欠分割效果,該方法丟失了舌體的邊緣信息,與實(shí)際的舌體分割區(qū)域存在一定的偏差。
從圖15 可看出,DeepLabv3+的分割結(jié)果圖有明顯的提升。其采用空洞卷積和空間金字塔網(wǎng)絡(luò),同時(shí)也引入了編解碼網(wǎng)絡(luò)結(jié)構(gòu)。因此能夠捕獲豐富的上下文信息和清晰的分割目標(biāo)邊界,使其結(jié)果優(yōu)于其他的分割網(wǎng)絡(luò)。
為了客觀定量比較分析,本文對各個(gè)方法的分割評價(jià)指標(biāo)進(jìn)行測量,同時(shí)對各個(gè)分割模型的測試時(shí)間進(jìn)行統(tǒng)計(jì)。表2 列出了各種分割評價(jià)指標(biāo)。在舌體分割圖像的評價(jià)指標(biāo)中,舌體圖像只包含嘴部區(qū)域和部分面部區(qū)域。
Fig.15 Visual comparison of different methods圖15 不同方法的視覺比較
從表2 可看出,在FCN 系列的分割網(wǎng)絡(luò)中,增加了跳層連接后,分割精度與Dice 值有所提高?;诰幗獯a分割網(wǎng)絡(luò)與FCN 系列結(jié)構(gòu)不同,各個(gè)模型性能由高到低依次為U-Net、SegNet和HRNet,其中U-Net和SegNet 的精確度都高于0.99,其Dice 值也高于0.98。U-Net帶有跳躍連接的編解碼結(jié)構(gòu)能夠融合不同層級的特征,使得性能優(yōu)于SegNet。但因HRNet缺乏高分辨率的圖像作為輸入,其分割性能未能達(dá)到0.99,而同樣采用FCN 結(jié)構(gòu)的Mask R-CNN 分割精度相對FCN 系列有所提高。DeepLabv3+取得較高分割性能主要得益于其在空間金字塔池化模塊和編解碼網(wǎng)絡(luò)方面做出的改進(jìn),其編解碼結(jié)構(gòu)上的編碼器能夠提取豐富的語義信息,而解碼器有利于恢復(fù)精細(xì)的物體邊緣。
Table 2 Evaluation metrics for different tongue segmentation methods表2 不同舌體分割方法的評價(jià)指標(biāo)
雖然基于深度學(xué)習(xí)的方法在舌體分割方面取得了顯著的性能,但該領(lǐng)域仍然存在一些挑戰(zhàn)和局限性,例如缺乏高質(zhì)量的注釋樣本和深度學(xué)習(xí)模型的可解釋性。簡要討論存在的問題和未來的方向。
(1)數(shù)據(jù)集:數(shù)據(jù)集對精確的舌片分割會(huì)產(chǎn)生各種影響。足夠大的數(shù)據(jù)集,專業(yè)準(zhǔn)確的標(biāo)注可以達(dá)到強(qiáng)大的系統(tǒng)性能。與其他醫(yī)學(xué)圖像分割數(shù)據(jù)集(如醫(yī)學(xué)影像)相比,舌體分割數(shù)據(jù)集相對較小且獨(dú)特。并且由于患者的面部隱私,研究人員必須自建非公開數(shù)據(jù)集,使得分割模型無法在相同的數(shù)據(jù)集進(jìn)行比較。密集的像素級標(biāo)注需要專業(yè)醫(yī)生不懈的努力,這是非常耗時(shí)的。近來,研究者將舌色值用于多元化的舌色中[70],這將有利于設(shè)計(jì)出一個(gè)半自動(dòng)或全自動(dòng)的交互式標(biāo)注框架,用于舌診圖像的標(biāo)注。而且具有挑戰(zhàn)性的是原始圖像是從不同環(huán)境下的不同設(shè)備收集的,這可能會(huì)增加標(biāo)注任務(wù)的難度。
(2)準(zhǔn)確分割:舌體分割作為中醫(yī)舌診的重要步驟,在學(xué)術(shù)研究和醫(yī)學(xué)診斷中都具有潛在的價(jià)值。同時(shí),準(zhǔn)確的分割方法可為后續(xù)的舌象分類提供高質(zhì)量的圖像。此外,很多算法采用了強(qiáng)大的GPU 進(jìn)行訓(xùn)練,醫(yī)學(xué)圖像的可視化無法在普通家用計(jì)算機(jī)上實(shí)現(xiàn)。隨著深度學(xué)習(xí)、計(jì)算能力的不斷提高,以及舌體數(shù)據(jù)集規(guī)模逐漸龐大,深度學(xué)習(xí)在舌診圖像處理領(lǐng)域的應(yīng)用可以更加廣泛。
(3)動(dòng)態(tài)分割:人工智能中醫(yī)舌診對動(dòng)態(tài)特征的獲取和分析研究很少。通過視頻處理技術(shù)幫助處理連貫舌體圖像和捕獲舌體動(dòng)態(tài)特征。例如,患者出現(xiàn)舌體異常顫抖。此外,患者無法將舌頭完整伸展。這些特征也為舌診提供了重要信息。動(dòng)態(tài)特征獲取的難點(diǎn)是目前客觀舌診無法達(dá)到連貫性與實(shí)時(shí)性,以及動(dòng)態(tài)目標(biāo)檢測分割精度不夠高,特別是復(fù)雜開放環(huán)境下的目標(biāo)錯(cuò)檢漏檢問題?;谏疃葘W(xué)習(xí)的靜態(tài)舌體分割方法為動(dòng)態(tài)視頻分割提供了基礎(chǔ),其中一個(gè)關(guān)鍵問題是如何實(shí)時(shí)準(zhǔn)確地捕捉動(dòng)態(tài)信息。動(dòng)態(tài)目標(biāo)分割技術(shù)還需要運(yùn)動(dòng)目標(biāo)檢測。通常舌體的顫動(dòng)都是細(xì)微的難以用肉眼察覺的,需要采用運(yùn)動(dòng)目標(biāo)跟蹤。在連續(xù)的圖像幀中,創(chuàng)建基于位置、速度、形狀、紋理、色彩等相關(guān)特征的對應(yīng)問題[71]。可以采用視頻形式保存圖像信息,當(dāng)舌診診斷的時(shí)候,可以獲取具有連貫性的舌象特征信息。后續(xù)動(dòng)態(tài)分割研究,可采用基于視頻的動(dòng)態(tài)特征及邊緣信息融合的舌體目標(biāo)檢測分割方法。
(4)開放環(huán)境:在開放環(huán)境下分析舌體圖像也是一種趨勢?;谏疃葘W(xué)習(xí)的方法在封閉環(huán)境下取得了較好的魯棒性。這為開放環(huán)境下舌體圖像分析的進(jìn)一步研究奠定了基礎(chǔ)。因此,未來開放環(huán)境下的舌體分割算法應(yīng)該是精確、實(shí)時(shí)和高效的。
將各種深度學(xué)習(xí)網(wǎng)絡(luò)應(yīng)用于舌體分割是一項(xiàng)有價(jià)值且具有挑戰(zhàn)性的任務(wù)。深度學(xué)習(xí)技術(shù)具有強(qiáng)大的特征學(xué)習(xí)能力。它被廣泛應(yīng)用于圖像處理、語音識別和自然語言處理中。本文綜述研究了基于深度學(xué)習(xí)的舌體分割的相關(guān)方法,對其進(jìn)行了結(jié)構(gòu)上的分類和總結(jié),為相關(guān)研究人員提供參考。研究和討論了未來面臨的挑戰(zhàn)與發(fā)展趨勢。隨著深度學(xué)習(xí)算法和計(jì)算能力的不斷提高,深度學(xué)習(xí)在舌體圖像處理領(lǐng)域的應(yīng)用有待進(jìn)一步發(fā)展。