黃文博, 屈超凡, 燕 楊
(長春師范大學 計算機科學與技術學院,吉林 長春 130032)
脈絡膜層是位于眼底視網膜下方的血管層,其主要功能是為視網膜提供氧氣和營養[1]。臨床研究表明,觀察脈絡膜厚度的變化對于預測相關眼部疾病至關重要。如成人年齡及近視度數的增加會導致脈絡膜厚度變薄,糖尿病視網膜病變會導致脈絡膜厚度變厚[2]。因此,脈絡膜分割及厚度分析在眼部疾病的早期預測及診斷中具有重要意義。
目前,眼科醫生想要獲得準確的脈絡膜邊界,需在眼底OCT 圖像中手動測量其厚度,耗時費力。眼底OCT 圖像脈絡膜區域中,脈絡膜與鞏膜之間對比度較低,脈絡膜自動分割存在脈絡膜下邊界模糊,難以界定等困難[3]。針對這些問題,國內外學者對脈絡膜分割展開了較為深入的研究。Yan 等[4]提出了上下文高效自適應網絡(Context Efficient Adaptive Network,CEA-Net),用于OCT 圖像中脈絡膜的自動分割,以CE-Net為主干模型,整合高效通道注意力(Efficient Channel Attention, ECA)模塊以實現精確的分割性能。許祥叢等[5]提出了壓縮-激勵-拼接(Squeeze-Excitation-Connection,SEC)模塊,并與U-Net 相結合稱為SEC-Unet。SEC 模塊作為注意力機制通過自適應學習通道之間相互關系提高網絡的表達能力和性能,使網絡更適應脈絡膜分割任務,但注意力的計算僅在局部范圍內進行,對全局上下文沒有充分關注。Zhu 等[6]提出脈絡膜U 型網絡,捕捉脈絡膜層和脈絡膜血管之間的相關特征和特定特征,生成像素級分類,實現脈絡膜層的自動分割。Khaing 等[7]提出以UNet 作為主干模型,集成具有不同膨脹率的膨脹卷積,實現脈絡膜分割。膨脹卷積的空洞間隔不合適,可能導致感受野過大或過小,因此沒能捕獲更多的上下文信息來進行預測。Xu 等[8]提出結合圖像增強和基于注意力的密集(Attentionbased Dense,AD)U-Net 模型,在U-Net 基礎上加入注意力門機制,使網絡能夠加強對圖像感興趣的區域關注,從而對脈絡膜進行分割。WU 等[9]提出邊界增強編碼器-解碼器架構,邊界增強模塊構成每個編碼器-解碼器層的主干,特征提取分別使用不同擴張率的擴張卷積來獲取不同感受野下的相關圖像特征。這意味著不同位置上計算的特征主要關注局部區域,而不是圖像的全局信息。通道增強分支的重點仍是局部區域特征增強,缺乏全局信息獲取。
綜上所述,現有方法實現脈絡膜分割多數只關注局部信息,雖能對脈絡膜細節進行學習,但欠缺對圖像上下文和全局結構信息的學習,從而沒能有效兼顧脈絡膜OCT 圖像的全局信息及局部細節,導致脈絡膜在OCT 圖像分割任務中存在定位和分割困難及分割結果邊界模糊等問題,脈絡膜自動精準分割仍面臨挑戰。
本文提出一種基于TransGLnet 網絡的脈絡膜自動分割方法,用于在OCT 圖像中自動分割脈絡膜層。為了解決網絡在訓練過程中產生全局信息丟失及局部細節不準確等問題,引入專注于全局信息和局部細節的全局注意力模塊[10](Global Attention Module,GAM)和局部注意力模塊(Local Attention Module,LAM)[11],幫助網絡捕捉圖像的整體上下文和語義信息,同時網絡聚焦于圖像的細節和局部特征,跨越語義鴻溝,使得網絡能夠綜合考慮到圖像的全局結構和局部細節,從而更全面地理解圖像內容和語義信息,顯著提升模型性能。
本文搭建的TransGLnet 網絡由編碼器和解碼器兩部分組成,如圖1 所示。其主干網絡為TransUnet[12]。 編碼器由卷積層、特征層及Transformer 編碼器組成。在特征提取過程中,卷積層有獲取局部信息的能力,但對獲取全局上下文的能力很弱,Transformer 對來自卷積神經網絡特征映射的標記化圖像塊進行編碼,作為提取全局上下文的輸入序列,主要衡量序列中所有元素之間的相關性,但忽略了局部細節信息。為了增強網絡對全局與局部信息獲取的能力,探索特征圖中元素之間的空間位置關系,本文引入GAM 和LAM 來探索不同范圍內元素之間的相關性以及特征圖的局部細節。為了提高圖像分割的精度和感興趣區域的重建效果,這里采用與編碼器對稱的解碼器來恢復圖像中的感興趣區域。由于下采樣在特征提取的過程中不可避免地會丟失特征圖中的一些前景信息,為了解決這個問題,通過跳躍連接將編碼器的多尺度特征信息和上采樣提取的上下文信息進行特征融合。

圖1 TransGLnet 整體框架Fig.1 Overall framework of TransGLnet
全局注意力模塊GAM 嵌入到卷積層之中,如圖2 所示。卷積層與ResNet50[13]網絡架構基本相同。本文輸入的原始特征圖尺寸為3×224×224。經過一系列卷積運算后,最終輸出的特征圖尺寸為1 024×14×14。在計算空間有限的情況下,使用Transformer 計算特征圖中元素之間的相關性往往需要大量的計算資源。由于較大的輸入批量往往會因計算資源不足而導致實驗失敗,因此,采用組歸一化來克服批歸一化在小批量下實驗效果不佳的缺點,使用自注意力機制來實現GAM。為了提取全局特征,GAM 從輸入特征的線性卷積開始,每個卷積都具有1×1內核。這種線性變換的結果假設成f(x),g(x)和h(x)。GAM 的核心思想是特征之間的矩陣乘法,如下:

圖2 全局注意力模塊結構Fig.2 Structure of global attention module
其中S代表Sigmoid 函數;γ是一個超參數,本文設置為1。
將注意力輸出結果乘以標量γ,以調節GAM對輸出的貢獻。如果γ為零,則整個全局信息模塊的貢獻為零,輸入x直接傳遞到下一層。使用矩陣乘法能夠創建多個不同特征之間的非線性交互。例如,f(x)中的每個特征都與g(x)中的所有特征相乘,從而幫助捕獲全局特征,且無需額外的參數。在將Softmax 函數應用于矩陣乘法輸出之后,每個特征圖都成為一個注意力掩碼,可以使網絡集中注意力于h(x) 中的特定區域,忽略其他區域。將Softmax 函數輸出與h(x)相乘可以過濾掉注意力為零的區域,從而確保只有關注的區域傳遞到下一層。
直接使用Transformer 探索全局元素的關系,網絡很難關注特征圖的細節信息。為了進一步探索特征圖中元素之間的空間位置關系,這里使用LAM 來探索局部范圍內元素之間的位置關系。LAM 流程如圖3 所示。輸入到網絡的特征圖是RC×H×W,其中C為通道數,H和W分別為特征圖的高度和寬度。為了方便介紹此模塊,這里C=1,H=W=4。

圖3 局部注意力模塊流程Fig.3 Process of local attention module
特征融合過程如圖4 所示,輸入到網絡的原始特征圖為F1∈R1×4×4,并且以1/4 的特征圖為基本單位探索元素間的空間位置關系。對輸入的原始特征圖F1進行切割,得到4 個特征塊,每個特征塊的尺寸為H/4×W/4。接著,針對每個特征塊進行所有元素的每行位置不變、每列位置從大到小重新排列,得到新的特征塊。然后,對新特征塊中元素進行轉置操作,得到改變后的新特征塊。將完成元素轉置的特征塊拼接,得到特征圖F2。類似地,特征圖F3和F4是在特征圖F2和F3的基礎上,按照相同的特征圖切割、元素空間位置偏移、轉置以及特征塊組合得到的。最后,通過4 個尺寸為1×1 的卷積分別作用于特征圖F1,F2,F3和F4,將它們相加得到特征圖J1。J1中每個元素都是通過特征圖F1 中的局部區域元素交互得到的。LAM 以1/4 特征圖為基本單元,感受野較小,因此更有利于網絡提取圖像的局部細節信息。

圖4 特征融合過程示意圖Fig.4 Schematic of feature fusion process
醫學圖像中待分割的前景信息通常占據整幅圖像的較小比例,并且不同類別的前景區域的尺寸和形狀也不同,這使得在學習和訓練過程中,網絡容易出現過擬合現象。為了應對這種情況,這里采用Dice loss[14]作為損失函數的一部分,從而改善網絡的泛化能力和抗過擬合能力。Dice loss 基于Dice 系數,用來度量分割結果與真實標簽之間的相似度。使用Dice Loss 可以使網絡更好地學習圖像的邊界和細節信息,從而提高分割精度,其公式如下:
其中:i屬于元素的具體索引值,Pi為預測圖中第i個元素值屬于某一類別前景的概率,Gi是標簽圖中第i個元素的真實值。除此之外,本文使用交叉熵損失(Cross Entory Loss,CEL)作為損失函數的一部分,即:
其中:Pi(correct)表示某點的元素值被正確預測的概率,H×W表示最終預測圖的尺寸。
最后,損失函數由CEL 損失函數和 Dice 損失函數組成,具體公式如下:
所有實驗均默認在λ1和λ2為0.5 的情況下進行。
實驗在Pytorch 深度學習框架下搭建,實驗環境為python 3.9,pytorch 2.0.0,cuda 12.0。將數據集中80%的圖像劃分為訓練集,20%的圖像劃分為測試集。采用指數衰減調整學習率ExponentialLR,其中Gamma 為0.9,優化器為Adam,訓練epoch 為50,batch_size 為2。
本文采用的數據集是廣州婦女兒童醫學中心的視網膜OCT 圖像[15]。從OCT 數據集中隨機選取300 幅圖像。脈絡膜層分割黃金標準由兩位眼科醫師使用Image J 軟件在OCT 圖像上進行手工標注。在標記脈絡膜下邊界時,眼科醫師最初通過使用分段線工具選擇稀疏點來標記,然后通過樣條線擬合操作進行平滑處理。最后進行微調,以確保繪制的曲線邊界清晰,具體過程如圖5 所示。

圖5 脈絡膜標記過程Fig.5 Choroidal labeling process
當出現邊界標注不一致時,兩位醫師會討論標注邊界的異議,共同解決標注不確定性,達成一致意見。若無法達成一致,邀請第三位眼科醫師評估標注結果,作為仲裁者解決異議,最終達成一致的脈絡膜邊界標注結果。
本文使用Dice 系數、準確率(Accuracy)、均交并比(Miou)、F1 值以及豪斯多夫距離(Hausdorff Distance,HD)5 個指標來評估性能。其計算公式如下:
其中:TP 為預測正確的正樣本像素數量,FP 為預測錯誤的正樣本像素數量,TN 為預測正確的負樣本像素數量,FN 為預測錯誤的負樣本像素數量,k+1 為包括背景在內的類的數量。
其中:X和Y分別表示預測圖和標簽圖,x和y分別表示預測圖和標簽圖中的像素表示預測圖中像素到標簽圖中像素的最短距離集合表示該最短距離集合中的最大距離表示標簽圖中像素到預測圖中像素的最短距離集合表示該最短距離集合中的最大距離。
由表1 可知,本文方法的Dice 系數為0.91,準確率達到0.98,MIoU 達到0.89,F1 值達到0.9,豪斯多夫距離為6.56。實驗結果表明,使用TransGLnet 網絡訓練取得了較好的分割結果,相對于TransUnet,本文網絡的Dice 提高了10%。相對于其他脈絡膜自動分割方法,本文方法的各項性能指標均有提高,證明本文訓練策略具有很高的穩定性。

表1 不同網絡脈絡膜分割結果比較Tab.1 Comparison of choroid segmentation results among different networks
圖6 展現了脈絡膜OCT 圖像訓練和測試結果的可視化。其中,第一張圖片是原始圖片,第二張圖片是標簽圖片,接下來的幾張圖片是不同分割方法的可視化結果。將本文方法與現有的脈絡膜自動分割方法進行比較,包括U-Net[16],AttU-Net[17],R2U-Net[18],R2AU-Net[19],TransUnet[20],Swin-Unet[21]。

圖6 脈絡膜分割實例結果的可視化Fig.6 Visualization of choroid segmentation example results
U-Net 是一個由跳躍連接將編碼器-解碼連接的U 形結構,該網絡廣泛應用于醫學圖像分割任務。AttU-Net 以U-Net 為主干,在跳躍連接處加入注意力門機制,抑制輸入圖像中的不相關區域,突出特定局部區域的顯著特征。R2U-Net 以U-Net 為主干,結合殘差連接和循環連接,增強U-Net 在處理長距離依賴和特征傳遞方面的能力。R2AU-Net 結合遞歸殘差卷積層,更好地表示分割任務的特征和注意力區域,以突出顯示通過跳躍連接傳遞的顯著特征。TransUnet 將Transformer 和U-Net 結合利用Transformer 的自注意力機制來捕捉圖像中的全局上下文信息。Swin-Unet 基于純Transformer 的U 形編碼器-解碼器網絡用于醫學圖像分割,將SwinTransformer 塊作為特征表示和遠程語義信息交互學習的基本單元。
分割結果顯示,由于脈絡膜下邊界模糊,在其他網絡處理圖像中明顯可見脈絡膜下邊界參差不齊且不連續,相比之下,本文方法分割脈絡膜得到了相對平滑和完整的層邊界。在特征提取中,卷積層獲取局部信息的能力很強,但對全局的建模能力較弱。Transformer 主要衡量序列中所有元素間的相關性,卻忽略了局部細節信息的重要性。本文提出的方法得益于其對全局的建模能力的增強和增加對局部細節信息的重視,因此相比于基準網絡和其他網絡,本文網絡的學習能力得到增強。
為驗證本文模型的有效性,還針對美國國立衛生研究院國家醫學圖書館提供的500 張肺部X射線圖片[22]進行分割,分割結果如圖7 所示。實驗結果表明,本文提出的TransGLnet 模型在該數據集上也體現出優秀的性能,Dice 系數達到0.94,HD 為8.92。通過觀察分割結果發現,TransGLnet 模型對于全局建模能力以及局部細節信息的重視,使其在肺部分割任務上表現出較好的效果,進一步證明了TransGLnet 模型具有較強的泛化能力,能夠在不同數據集和任務中取得良好的性能表現。

圖7 肺部分割實例結果的可視化Fig.7 Visualization of results of lung segmentation example
為驗證添加模塊的有效性,本文進行了消融實驗,消融模型1(Ablation 1)代表只包含GAM,消融模型2(Ablation 2)代表只包含LAM,使用相同的訓練和測試集對消融模型進行訓練和驗證。
圖8 為消融實驗結果。實驗結果表明,分別添加兩個模塊到主干網絡效果都有提升,Dice 分別提高了4%和6%,同時添加兩模塊,Dice 提高了10%,模型的整體性能顯著提升。

圖8 消融實驗結果Fig.8 Ablation experiment results
脈絡膜分析對于確定眼病的發病機制和治療策略至關重要,使用計算機快速準確地分割脈絡膜可以輔助醫生預測相關眼部疾病。本文以TransUnet 為主干網絡,融入GAM 和LAM 模塊。通過對下采樣過程中的特征進行處理,將它與上采樣路徑中的特征進行拼接,以增加圖像細節并更充分地利用每一層的多尺度信息。實驗結果表明,本文方法的Dice 系數為0.91,準確率達到0.98,MIoU 達到0.89,F1 值達到0.9,HD為6.56,相比現有方法各項指標均有所提高,可為臨床提供可準確的脈絡膜分割結果。