盧 葦,劉 丹,邵 敏,吳揚東
1.貴州大學 現代制造技術教育部重點實驗室,貴陽550025
2.貴陽市口腔醫院 口腔頜面外科,貴陽550002
電子計算機斷層掃描技術(Computed Tomography,CT),利用X射線束對人體一定厚度的層面進行掃描,能夠快速地獲取病變區域的切片圖像,CT成像技術的發展為醫學圖像的處理奠定了基礎。醫學圖像的分割一直是醫學圖像處理的關鍵技術[1],醫學圖像分割就是把圖像分成特定的區域,以便提取出感興趣的區域,并使它盡可能地接近解剖結果。在醫學圖像中將特定的組織、器官分割出來,使其為醫學圖像的配準、融合等處理,以及組織器官、病灶的測量和三維重建提供可靠的依據。其中,細胞的圖像分割是醫學圖像分割中較早也是相對較容易的研究點,細胞圖像分割技術的應用,避免了采用細胞學診斷法效率低,醫生長時間在顯微鏡下讀片易疲勞,產生誤判等缺點。隨著研究的進行,醫學圖像分割在各類腫瘤的識別、器官提取方面的研究也不斷深入?,F今醫學圖像的分割方法常見的有基于閾值、區域、邊緣檢測以及結合區域與邊緣檢測的醫學圖像分割方法[2],研究者們也將改進的粒子群算法、遺傳算法、蝙蝠算法等應用于CT或者核磁共振(MR)圖像的分割中[3]。將常見的經典圖像處理技術、理論與優化算法、神經網絡等有機地結合起來,以實現快速、自動、精準的處理,將會是未來醫學圖像處理的發展方向。
本文以下頜骨的識別與分割為例,下頜骨位于面下部,呈弓形,在頜面骨骼中面積和體積占比大,是面部骨骼中唯一能活動的骨骼,也是病變的好發區域[4],但將以上圖像分割方法應用在下頜骨的分割中差強人意。對于常用的閾值分割來說,對于目標區域與背景區域灰度值相差較大時,大大地簡化了處理步驟,只需設定合適的閾值便能將目標區域分割出來。但因為下頜骨的閾值和整個面部骨組織的灰度值相近,所以基于閾值的分割方法無法有效地將其分割。另由于區域生長是將具有相似性質的像素集合起來,但下頜骨像素的特性、灰度級都與面部骨骼相同,其兩突部分還與上頜骨以及顱骨相連,這使得基于區域生長和邊緣檢測的方法也無法實現有效的分割。近年來,研究者們利用粒子群算法、蟻群算法等優化算法改進經典的圖像分割算法,以尋求最佳的閾值或者合適的邊界,但這并未改變基于閾值或邊緣檢測的分割方法的本質,所以也無法對下頜骨進行有效的分割?,F今,基于深度學習的圖像分割方法在醫學圖像的分割上取得了較好的結果[5-8],在肺部[7]、腦腫瘤[8]等醫學圖像的自動分割中大放異彩。其中,Mask R-CNN網絡是目前應用最為廣泛的目標檢測和分割網絡之一。在神經網絡中,低層特征包含更多的細節信息[9],對識別小物體的作用不容忽視,但Mask R-CNN中網絡層數較深,低層特征和頂層特征融合路徑長,使低層特征沒有得到充分的利用,同時較深的網絡也會產生大量的計算任務。所以本文對Mask R-CNN網絡進行改進,減少主干網絡的層數,減少了網絡的計算量的同時,縮短了低層特征到頂層特征融合距離和檢測時間。并將低層特征進行復用,以增加頂層特征圖像的細節信息,提高特征金字塔的融合能力。將改進的Mask R-CNN網絡在自備人體下頜骨數據集上進行訓練和驗證,得到改進后的Mask R-CNN網絡在人體下頜骨的識別和分割上具有很高的準確率。
Mask R-CNN網絡是華人科學家何凱明在2017年提出,該網絡在精準目標檢測的同時還能獲得高質量的圖像分割。該網絡以Resnet系列網絡為主干網絡進行不同層級的圖像特征提??;利用主干網絡將圖像壓縮兩次、三次、四次、五次后的特征圖像用于特征金字塔網絡(FPN)的構建[10],以實現多次度的融合;并將融合后的圖像輸入區域建議網絡(RPN)得到可能包含目標物體的候選區域,也就是建議框[11];利用建議框對有效特層進行截?。≧OI Align),獲得局部特征層,并將截取后的結果統一到一定的大小[12],進而對目標進行定位、分類以及分割處理。
ResNet網絡的提出有效地解決了網絡層數加深引起的梯度消失、梯度爆炸問題[13],其中的關鍵技術是多個殘差塊堆疊而成。圖1是深層殘差網絡使用的一種殘差塊,在跳躍連接上沒有卷積操作,文中定義為Res Block殘差塊,該殘差塊的圖片輸入輸出維度是相同的,輸入經過主分支上的三次卷積操作后的結果與原始輸入直接連接,用于加深網絡深度。圖2是深層殘差網絡使用的另一種殘差塊,該殘差塊的跳躍連接上有一個卷積層,輸入除了將經過主分支上的三次卷積外,還會通過跳躍連接上的卷積,然后再與原始的輸入相連。文中定義為ResConv Block殘差塊,該殘差塊的輸入輸出的維度是不一樣的,其作用是改變網絡的維度和加深網絡深度。

圖1 Res殘差塊Fig.1 Res Block

圖2 ResConv殘差塊Fig.2 ResConv Block
兩種殘差塊都采用的是瓶頸結構[14],經過一個1×1的卷積,3×3的卷積,再經過一個1×1的卷積,其中第一個1×1的卷積的作用是降維,第二個1×1的卷積的作用是升維。該類架構可以減少參數量,降低計算復雜度,從而提高計算效率。
ResNet網絡具有很強的學習能力,但針對CT圖像中的下頜骨進行檢測時,由于下頜骨兩突部分較小。過深的網絡對兩突部分的檢測泛化能力下降,還會導致網絡臃腫、參數量過大,訓練時間長。神經網絡中,低層的網絡語義信息弱,定位好,利于檢測小物體,與深層網絡語義信息強,分辨率低,不利于檢測小物體優劣相互彌補,從而提高網絡的精準性。通過主干網絡獲得長寬被壓縮了兩次、三次、四次、五次的特征層C2~C5,從而得到特征金字塔自上而下的部分,這與一般的特征提取沒有區別;將最后提取到的特征層C5經過通道統一以后進行上采樣,采用最近鄰上采樣法,從而組成特征金字塔自下而上的部分;然后通過橫向連接將維度相同的特征圖進行融合,并各自進行一次3×3的卷積操作,以消除混疊效應,從而得到P2~P6層;這三大部分是經典的特征金字塔結構。
本文受ResNet網絡的啟發,使用兩種殘差塊的組合來構建改進網絡的主干網絡,利用殘差模塊可根據實際需要分割的器官或者病變區域靈活搭建不同網絡層數的主干網絡,加快網絡的構建。根據下頜骨的解剖結構,兩突部分到下頜切跡約占下頜骨高的1/3;下頜支部分約占下頜骨高的1/3;下頜體部分也約占下頜骨高的1/3。也就是網絡需識別與分割的小目標、中等大小目標和大目標幾乎均等,所以在主干網絡中C1至C5層之間均堆疊3個的殘差塊,每個殘差塊包括3個卷積層,最終使得主干網絡自上而下的層數為38層,以適合訓練下頜骨CT圖像,同時較淺的網絡層數還可防止過擬合的發生。
本文設計復用C1層特征提取網絡如圖3所示,首先輸入大小為640×640×3的原始圖像,將首次壓縮兩次后獲得的特征圖定義為C1。其次對C1采用256個步距為1,大小為3×3卷積核得到特征圖大小為160×160×256的C1C2,接著與經過通道統一后的C2進行融合后得到P2;對C1采用256個步距為2,大小為3×3卷積核得到特征圖大小為80×80×256的C1C3,與通道統一后的C3進行融合后得到P3;同理對C1采用256個步距為4,大小為3×3卷積得到的C1C4,與C4融合后便得到了P4。此時的C1層壓縮次數少,包含較多的細節信息,易于檢測下頜骨中的兩突部分。

圖3 復用C1層特征提取網絡Fig.3 Reuse C1 layer feature extraction network
文中還設計一種復用依次卷積的C1層特征提取網絡如圖4所示,該方法除了在C1層的利用方式上述與復用C1層特征提取網絡不同外,其余均相同。在復用依次卷積的C1層特征提取網絡中,首先將C1層進行統一通道數后得到的C1C2,與C2統一通道數以后進行相加,再經過3×3卷積得到P2。然后對C1C2進行一次步距為2的3×3卷積得到C1C3,與C3統一通道數以后進行相加,再經過3×3卷積得到P3。最后對C1C3進行一次步距為2的3×3卷積得到C1C4,與C4統一通道數以后進行相加,再經過3×3卷積得到P4。經過這一系列步驟就完成了低層信息的重用,提高對小物體的檢測能力。

圖4 復用依次卷積的C1層特征提取網絡Fig.4 Reuse C1 layer feature extraction network of sequential convolution
主干網絡構建完成以后,如圖5所示,會經過建議網絡、局部特征層等處理后,進行目標物體的識別和分割。將主干網絡提取到的P2~P6將作為建議網絡(RPN)有效特征層的輸入。建議網絡對特征圖上的信息進行預判,對可能包含目標物體的部分生成不同大小、長寬比例不同的預測框,這些框會根據交并比(IOU)來預測該框選區域有無目標物體或包含目標物體的概率進行計算,不同大小的框會預測特定大小的物體[15],這對下頜骨的識別來說是非常有必要的,因為下頜骨的CT圖像中可看出,從下頜骨的髁突、冠突部分到頦結節形狀大小差異性很大,如圖6所示,預測頦結節部分需要一個較小的框,而預測牙槽嵴則需要一個較大的框。

圖5 改進Mask R-CNN流程簡圖Fig.5 Improved Mask R-CNN process diagram

圖6 下頜骨CT圖Fig.6 CT image of mandiblem
通過以上操作獲得一定數量的框以后,再與ROI Align結合,從而獲得固定大小的輸出,這與ROI Pooling的目的是相同的,但實現的方法和效果不一樣。ROI Align與ROI Pooling的區別在于ROI Pooling在生成局部特征層時會將感興趣區域取整到相鄰的像素,這樣的操作忽略了跨越像素的信息,然后再將這個感興趣區域按實際應用分成不同數量的小區域,但當感興趣區域的長寬不是偶數時,感興趣區域會被再一次進行取整的相連像素,會使得分成的這些小區域大小不等,在每個小區域中進行最大池化操作,這個操作過程中會引入兩次量化誤差,會對目標的分割產生影響。在RoI Align中,采用的是雙線性插值的方法進行采樣,使兩次跨像素的信息得以保留,在感興趣區域進行均等的劃分。將主干網絡提取到P2~P6不同尺度特征層輸入RoI Align中時,RoI Align會根據輸入感興趣區域的大小來決定在哪一個層上映射出來,具體可通過公式(1)計算[16]。

其中,k0代表不同尺度的特征層P2~P6所對應的下標。
x,y對應感興趣區域的寬和高,最后將計算結果向下取整后得到k。
經過RoI Align層后,會輸出特定維度大小的特征圖,然后經過一次7×7的卷積和用于模擬1 024全連接的通道數為1 024的1×1卷積,然后再經過全連接以后連接到分類和定位分支上。同時經過RoI Align層輸出特定維度大小的特征圖,會進行四次3×3的卷積,然后進行一次反卷積,再進行一次通道數為所要識別的類別個數的卷積,得到分割結果,完成了復用低層信息的Mask R-CNN網絡的檢測與分割功能。
本文采用自制數據集進行訓練,數據來源為貴陽市某醫院,選取1 064張下頜骨的CT圖像,CT圖像為dicom格式,該格式有患者的姓名、性別、年齡、造影時間等隱私信息,所占內存資源也較大,且無法使用常見的圖像處理軟件打開和處理。所以首先將dicom格式轉為常見的jpg格式,即可隱去患者的隱私、減少內存占用,也方便后續圖片的標注和處理。將轉換格式后的圖片在專業醫生的指導下利用開源標注工具Labelme進行標注,如圖7所示;并生成對應的掩膜圖片,如圖8所示。最后將圖片按9∶1的比例分為訓練集和驗證集進行訓練。

圖7 下頜骨標注圖Fig.7 Mandible annotation diagram

圖8 下頜骨掩膜圖Fig.8 Mandible mask
本實驗使用的是開源學習框架TensorflowGPU和Keras,內存16 GB,使用GPU加速,顯卡為NVIDIA GTX1650。原始Mask R-CNN網絡和改進后的Mask R-CNN網絡的學習率都為0.000 01,建議框的非極大抑制值為0.7,非極大抑制后保留2 000個候選框,置信度為0.7,損失的比重設置為等比,每個世代的步長為1 000,迭代150個epoch。對于改進的Mask R-CNN網絡,其損失函數依舊是各個分支上的損失,損失比重設置為等比,意味著每個分支的重要性相同,如公式(2)所示[12]:

其中,Lcls代表分類分支的損失;Lbox代表定位分支的損失;Lmask代表分割分支的損失。
分類和定位損失計算公式如式(3),式(3)前半部分代表分類損失,后半部分代表定位損失或者邊界框回歸損失[11,17]。

輸入分割分支的圖像會經過一系列卷積、反卷積操作后輸出總的類別數個特征圖,Lmask定義為平均二值交叉嫡損失函數,其公式如式(7)所示。該函數會對每一個像素進行分類,利用sigmoid函數進行二分類,判斷是否為該類別。

其中,y表示二值化后的真實值;y?表示二值化后的預測值。
本實驗利用自制的數據集分別在原始的Mask R-CNN網絡和改進的Mask R-CNN網絡進行訓練,迭代150個epoch,統計每個epoch的總損失L,得到原始Mask R-CNN網絡的總損失變化曲線如圖9所示,復用依次卷積的C1層的Mask R-CNN網絡的總損失變化曲線如圖10所示,重用C1層的Mask R-CNN網絡的總損失變化曲線如圖11所示。

圖9 Mask R-CNN網絡損失Fig.9 Mask R-CNN network loss

圖10 復用依次卷積的C1層的Mask R-CNN網絡損失Fig.10 Reuse Mask R-CNN network loss of C1 layer of sequential convolution

圖11 復用C1層的Mask R-CNN網絡損失Fig.11 Reuse Mask R-CNN network loss of C1 layer
紅色的曲線代表訓練集損失,黑色的代表驗證集損失;三個網絡的總損失都會在前20個epoch急劇下降至10%以內,說明利用了Mask R-CNN網絡對下頜骨CT圖像進行識別與分割具有很高的可行性。原始網絡訓練集的總損失最低可降至3.3%;測試集總損失最低為6.9%,驗證損失變化不太穩定,波動較大;后20個epoch的平均損失訓練集為3.3%,驗證集為10.4%。復用依次卷積的C1層的Mask R-CNN網絡的總損失最低可降至2.8%;測試集總損失最低為6.6%,但驗證損失變化較為穩定,波動平緩;后20個epoch的平均損失訓練集為2.9%;驗證集為10.2%。復用C1層的Mask R-CNN網絡的總損失最低可降至3.2%;測試集總損失最低為7.4%,相對于復用依次卷積的C1層的Mask R-CNN網絡的驗證損失來說,驗證損失波動較大;后20個epoch的平均損失訓練集為3.4%,驗證集為10.3%。以及各網絡的參數量、訓練時間如表1所示。

表1 各網絡部分指標對比Table 1 Comparison of various network indicators
文中因對網絡層數進行了縮減,使得改進的復用依次卷積的C1層的Mask R-CNN網絡的總參數量為42 343 070個,改進后復用C1層的Mask R-CNN網絡的總參數量為41 458 334個,均約為原始Mask R-CNN網絡總參數量的2/3。并在迭代150個epoch后,改進Mask R-CNN網絡訓練耗時也為原始Mask R-CNN網絡70%左右。將具有較多細節特征的C1層與其他特征層相融合,很多的特征被網絡利用,使得訓練損失和驗證損失均低于原始Mask R-CNN網絡,并從驗證損失曲線也可看出,與原始Mask R-CNN網絡相比,復用依次卷積的C1層的Mask R-CNN網絡和驗證損失變化更加平穩,穩定性更強。為了驗證本文中提出改進Mask R-CNN網絡層數設置的合理性和算法的性能,將復用依次卷積的C1層的Mask R-CNN網絡與利用Resnet101作為主干特征提取網絡的Mask R-CNN網絡進行比較。其中,Resnet101指主干特征提取網絡有101層,文中改進的Mask R-CNN網絡層數為38層,將兩者對相同的下頜骨CT圖像分割效果如圖12所示。

圖12 不同分割方法對比Fig.12 Comparison of different segmentation methods
如圖12(a)所示,針對不同解剖結構和不同成像質量的下頜骨CT圖像,復用依次卷積C1層的Mask R-CNN網絡都能有效地進行分割。與原始的Mask R-CNN網絡進行對比如圖12(c)、(d)所示,改進后的網絡不存在過分割問題。其原因就是采用了較少層數的主干特征提取網絡,在下頜骨CT圖像的識別與分割中有效地防止了過擬合的發生。由于提高了低層信息的利用率,使得改進后的網絡在兩突部分的識別,也就是小目標的識別中更具優勢,如圖12中的第三列所示,復用依次卷積C1層的Mask R-CNN網絡的分割效果更接近專家手工分割的結果。并在本次所使用的實驗平臺上,對一張下頜骨CT圖像的識別與分割的耗時中發現,原始Mask R-CNN網絡的耗時為0.56 s~0.74 s,復用依次卷積C1層的Mask R-CNN網絡的耗時為0.41 s~0.63 s,體現了改進網絡的性能。所以選擇該復用依次卷積C1層的Mask R-CNN網絡對人體下頜骨識別并分割進行更多的測試,測試結果如圖13所示??傻贸黾词乖谀繕藚^域和不同背景條件下:如圖13中第一排第一列中的兩突部位的灰度值與背景有較大的差別,而圖13中第一排第三列下頜支部位的灰度值與背景容易混淆,甚至肉眼較難分辨,但因提出的復用依次卷積C1層的Mask R-CNN網絡提升了對圖像細節信息的利用率,仍能有效地進行識別與分割。再如圖13中第二排第四列中的頦結節CT圖像,該CT圖像是由口腔CT設備掃描成像,與其他CT圖像的成像設備明顯不同,但依然可以有效地識別與分割,并有很高的正確率。

圖13 復用依次卷積C1層的Mask R-CNN下頜骨分割效果圖Fig.13 Mask R-CNN segmentation effect diagram of C1 layer that reuses sequential convolution
本文提出了復用低層特性信息的Mask R-CNN網絡,該網絡將主干網絡的層數進行精簡,有效地減少了參數量,降低了運算成本和時間成本,同時將低層特性融合到高層特征中,增加了特征金字塔的融合能力,并實驗兩種不同的復用低層特性的方式,選擇使用復用依次卷積的C1層的Mask R-CNN網絡對人體下頜骨進行識別與分割,用自建的1 064張下頜骨CT圖片訓練,較原始的Mask R-CNN網絡在訓練損失、驗證損失、訓練耗時上均獲得了提升。該網絡的應用不僅局限于下頜骨的識別與分割,同時為處理其他器官或者病變區域擴寬了思路,根據所需提取組織結構的生理特性,加以實驗確定所需堆疊的殘差塊的個數,就可靈活地構造適合于提取某特定組織器官的主干網絡,對于實現更快更準地提取組織結構,檢測病變具有重要意義。但該網絡在分割邊界光滑程度還有提高的空間,同時下一步將針對識別并分割出的器官CT圖像進行三維建模方面的研究。