刁 毅,張魁星,江 梅,徐云峰,魏本征
1.山東中醫藥大學智能與信息工程學院,濟南250355
2.山東中醫藥大學青島中醫藥科學院,山東青島266112
脊椎是人體骨骼系統中重要的組成部分,對維持人類正常生命活動具有不可或缺的作用。隨著現代社會人們生活和工作方式的改變,脊椎疾病發病率逐年遞增,且逐漸呈現年輕化的趨勢[1]。常見的脊椎疾病包括頸椎病[2]、椎間盤退化[3]、脊柱畸形[4]等,嚴重的脊椎疾病易引起大腦供血不足,危及患者的生命安全[5]。
脊椎的磁共振成像(magnetic resonance image,MRI)、計算機斷層掃描(computer tomography,CT)和X 射線(X-ray)等醫學影像是脊椎疾病臨床診斷的重要依據[6]。脊椎解剖結構復雜,通過對脊椎影像的精確分割和識別能夠直觀地展現脊椎的詳細信息,協助醫生精準定位病灶,輔助臨床診療[7]。近年來,隨著人工智能技術的不斷發展,利用深度學習對醫學圖像進行分析已經取得了顯著的成效[8]。醫學圖像分割是計算機提供診斷輔助的關鍵步驟。將深度學習技術應用于脊椎圖像分割能提高圖像分割的精度及分割效率,充分挖掘脊椎的影像信息,量化評估治療前后的效果,提升醫生的工作效率。同時,在臨床的智能決策和疾病預防中也起到良好的輔助作用。
深度學習是通過深度神經網絡模仿人腦分析學習的一種機器學習技術[9]。深度學習的算法經過不斷改進和發展,在計算機視覺領域已經逐漸超越了其他傳統的機器學習方法[10],其中模型改進包括結構重組、正則化、參數優化、新模塊開發等方向,提高了模型準確率和泛化性。
通過對文獻的檢索發現,CNN、FCN、U-Net、GAN等高效的改進模型在脊椎分割方向上取得了明顯的優勢,國內外研究學者針對上述模型進行了深入的改進研究,并取得了準確高效的脊椎分割結果。由于脊椎圖像分割算法的應用、網絡結構和評價標準的多樣性,對全面系統地回顧深度學習在脊椎圖像分割的研究進展具有很大的挑戰性[11]。本文系統地綜述了脊椎圖像分割的深度學習算法,結合近年來先進的深度學習技術,討論了深度學習網絡模型用于脊椎分割的可行性,并對目前常用的深度學習框架進行了對比,幫助研究者全面了解深度學習在脊椎分割上的發展現狀。表1 簡要概述了幾種常見的神經網絡模型[12-24]。

表1 常見的深度神經網絡模型Table 1 Common deep neural network models
在制定脊椎圖像分割的策略時,數據集具有重要作用,但是由于隱私問題,使得脊椎圖像數據的共享變得困難。此外用于訓練模型的脊椎數據還需要專家標注,導致高質量的標注數據稀缺。目前常用的脊椎圖像的公開數據集如表2所示。

表2 常用的脊椎圖像數據集Table 2 Commonly used spine image datasets
深度學習在脊椎圖像分割任務中常用的評價指標包括像素準確率(pixel accuracy,PA)、交并比(intersectionover-union,IOU)、Dice系數(Dice coeffcient)、豪斯多夫距離(Hausdorff distance,HD)等。PA 是用正確分類的像素除以所有像素,即圖像中正確分類的像素百分比。IOU 是模型的分割結果與真實標簽的交集和并集的比值。Dice 系數與IOU 類似,兩者是正相關的關系,區別是Dice 系數是取兩倍的交集除以像素總和。HD 也稱最大表面距離,應用在衡量算法邊界分割的準確程度,是兩個點集之間距離的度量。表3 匯總了脊椎圖像分割中常見的指標。

表3 脊椎圖像分割模型的評價指標Table 3 Evaluation metrics for spine image segmentation models
卷積神經網絡(CNN)是一種常用于圖像處理的神經網絡,能夠通過層層的特征提取學習輸入圖像和分割標簽之間復雜的、非線性的數據關聯,有效利用圖像的空間信息,形成對數據的高效特征表示,卷積過程如圖1所示。CNN主要的模型結構有卷積層、池化層、全連接層等[25]。其中,卷積層由卷積濾波器組成,通過對圖像數據進行卷積操作來檢測特征圖中不同位置的局部特征,學習特征圖之間的連接權重。池化層是仿照人的視覺系統對視覺輸入對象進行降維和抽象,減少下一層神經網絡的輸入數據的空間維度,這種操作也稱為下采樣,既保留了大部分的特征信息,還減少了模型參數和計算量。全連接層在神經網絡中執行高級推理,集成了來自給定輸入圖像的各種特征響應,以提供最終結果。如表4總結了CNN在脊椎圖像分割上的文獻摘要[26-35]。

圖1 卷積過程示意圖Fig.1 Schematic diagram of convolution process

表4 基于CNN的脊椎分割論文摘要Table 4 Spine segmentation based on convolutional neural network
椎體是脊椎的主要部分,Rak等人[26]將CNN與基于編碼交換的圖形切割算法相結合,減少網絡的復雜性,避免了鄰接椎體之間模糊分割的問題,實現了在3D的脊椎圖像中對椎體的快速分割。3D CNN 需要承擔較大的處理成本和過擬合的風險,為了降低計算負荷Qadri等人[27]提出了OP-convNet模型來自動分割椎體,該模型從脊椎圖像中提取重疊的圖像塊作為輸入,有效地保留了圖像中更多的局部信息。之后,Qadri 等人[28]又將CNN和堆疊稀疏自動編碼器結合,提出了椎體的分割模型SVseg。SVseg 也以重疊的圖像塊作為訓練數據,以無監督的方式從未標記的圖像塊中學習高級特征,然后采用監督學習來完善特征表示,提高所學特征的可辨別性,最后通過邏輯回歸分類器微調模型。為了減輕對脊椎注釋數據集的需求,Kervadec等人[29]對基于部分標記的脊椎圖像進行了弱監督分割,引入基于懲罰的不等式約束,提出一種新的損失函數,減少了訓練的計算需求,通過只對一小部分像素進行注釋,達到與全監督相當的分割性能水平。
脊椎的多個結構是直接相互依賴和影響的,脊椎分割中CNN 框架下的多個任務也可以相互關聯,Tam 等人[30]提出了一種多尺度融合圖像特征的多任務回歸網絡(holistic multitask regression network,HMR-Net),HMR-Net 將多器官分割轉成多任務學習問題,利用了任務間的關聯性,具有良好的可移植性和通用性,通過在多個任務之間共享網絡參數實現更低的內存消耗和更快的推理計算。Hong等人[31]結合殘差模塊和變分水平集提出了MMCL-Net模型,提高了模型對模糊邊緣的感知和識別能力,可以同時檢測、分割和分類椎間盤、椎體和神經孔。多任務分割工作復雜,每個脊柱至少有十幾個目標結構,同時分割所有結構比單目標分割困難得多。Huang等人[32]引入了一種新型的半監督混合脊柱網絡(semi-supervised hybrid spine network,SSHSNet)。首先采用2D半監督的DeepLabv3+網絡,提取脊椎圖像的全局信息,對脊椎進行粗分割。然后采用3D DeepLabv3+網絡結合交叉注意力模塊實現對椎體和椎間盤的精確分割,填補網絡的信息損失,提高特征表示能力。
全卷積網絡(FCN)是深度學習在語義分割上的開創性工作[36]。FCN將CNN最后的全連接層全部換成卷積層,利用反卷積層對最后一個卷積層的特征圖進行上采樣,將其恢復到輸入圖像相同的尺寸,對上采樣的特征圖進行像素分類,實現對圖像的分割,其網絡結構如圖2所示。相較于傳統的CNN,FCN提高了脊椎圖像分割的精度和效率,表5簡要總結了FCN在脊椎圖像分割上的文獻摘要[37-42]。

圖2 全卷積分割網絡Fig.2 Full convolutional segmentation network

表5 基于FCN的脊椎分割論文摘要Table 5 Spine segmentation based on full convolutional neural network
椎間盤是相鄰椎骨之間的軟骨組織,從脊椎圖像中準確分割椎間盤對于確定椎間盤疾病和患病程度具有重要作用。Chen 等人[37]使用端到端的3D FCN 對椎間盤進行定位和分割,通過3D 卷積層對體素級別的特定區域進行概率分析,使用平滑和閾值等技術進行細化分割,同時還驗證了空間信息在脊椎圖像處理任務上的重要性。
Li 等人[38]提出了一個集成的多尺度FCN 用于椎間盤的定位和分割,并結合隨機模態體素丟棄學習的方法,提高了椎間盤的分割精度。Das 等人[40]針對椎間盤分割任務提出了一個端到端的區域-圖像匹配學習的深度網絡(region-to-image matching network,RIMNet),對椎間盤進行區域分類,區分每個椎間盤,并采用退出策略,通過隨機地禁用小批量的模式,實現了對MRI圖像進行全自動的椎間盤識別和分割。
相鄰脊椎的椎體具有很強的相似性,在對椎體進行分割時不容易區分,Sekuboyina 等人[41]提出了相互補充的FCN 模型,分為兩個階段。第一階段使用多層感知器定位圖像中感興趣的腰椎區域,提供椎體的粗略定位;第二階段使用深層FCN,利用局部區域的背景信息一次性分割和標記腰椎。兩者結合減少了脊椎區域外的噪聲,具有很強的魯棒性。Xia 等人[42]也提出了一種兩階段的分割方法,先使用3D FCN 對CT 圖像進行粗分割,然后通過級聯細分割的CNN 來完成對多個椎體的分割和分類。
在對醫學圖像進行處理時經常會出現數據量少的問題,U-Net 是Ronneberger 等人[20]提出的一種編碼器-解碼器的改進模型,具有用于圖像下采樣的特征提取網絡和用于圖像上采樣的特征融合網絡,如圖3收縮路徑由卷積和池化兩層組成,可以壓縮圖像的空間信息,提取深層特征。在擴展路徑中,空間信息與來自收縮路徑的特征相連接,可以使用有限數量的標記訓練圖像完成對圖像的高效分割。并且U-Net 通過跳躍連接的架構將上采樣和下采樣圖像特征融合起來,可以獲得比較完整的椎骨上下文信息,普通的CNN 模型往往難以獲得準確的脊椎分割結果,而U-Net創造性地設計了跳躍連接來結合低級和高級特征,即使在目標物體相對于背景較小,數據樣本數量有限的情況下,也能取得很好的性能。因此,研究者針對脊椎圖像的分割算法有很多采用U-Net作為基本的網絡結構。

圖3 U-Net網絡Fig.3 U-Net
如表6總結了近幾年U-Net在脊椎圖像分割上的文獻摘要[43-60]。

表6 基于U-Net的脊椎分割論文摘要Table 6 Spine segmentation based on U-Net
對于椎體分割任務,通過跳躍連接來獲得多尺度特征,以增加對比度,減少了脊椎、靜脈畸形等與背景之間的模糊邊界,從而實現更準確的脊椎分割。Janssens 等人[43]基于3D 全卷積網絡提出了一種由定位和分割網絡組成的腰椎CT 圖像的自動分割方法,先通過訓練Localization Net來尋找腰部邊界框,然后通過類似U-Net網絡的Segmentation Net 進行多類分割。為了利用相鄰椎骨的上下文信息,Al Arif等人[44]將FCN和2D U-Net相結合,通過一個全自動深度學習框架實現了椎體定位、椎體中心定位和椎骨分割。
脊椎CT 和MR 的掃描結果經常只覆蓋部分椎體,Lessmann等人[45]提出了一種迭代的分割方法,并使用大尺寸(128×128×128)的3D圖像塊來覆蓋整個椎體,避免了網絡輸入中出現某個椎體信息的缺失。該方法也有一定的局限性,找不到一個椎體可能會影響后續的椎體分割。Chuang等人[46]對該方法進行了改進,改變了網絡中的跳躍連接,減少了內存的使用量,在輸出結果中提供了椎骨的標記信息。將脊椎圖像的每個切片輸入到訓練網絡,不僅節省了計算成本,而且還增加了訓練的樣本數,通過2D網絡訓練解決了3D椎體的分割。
Rehman等人[47]將參數水平集方法與U-Net相結合,提出了FU-Net 框架,提高了網絡在處理椎骨骨折時的收斂效果,成功解決了椎骨破裂的圖像分割任務。Zhang 等人[48]對椎體間的空間關系進行建模,設計了一個序列條件強化學習網絡(sequential conditional reinforcement learning network,SCRL)。SCRL 使用了注意力模塊來考慮脊椎的全局信息,首次將深度強化學習應用到脊椎分割上,并獲得了效果顯著的分割精度。Cheng 等人[49]提出了一種二階段的CT 脊椎圖像自動定位與分割方法。第一階段使用2D-Dense-U-Net,通過對帶有密集的椎體質心標記的切片來定位椎體。第二階段通過3D-Dense-U-Net實現對每個椎體的分割。然后,將分割的椎體合并成一個完整的脊柱,并重新采樣到原始分辨率,實現了對脊椎的實例分割。
U-Net可以有效實現全局和局部的特征信息交互融合,普鐘等人[50]針對脊椎的空間位置信息與通道信息的融合問題提出了融合多注意力的脊椎圖像分割網絡(multi-attention U-Net,MAU-Net)。使用了坐標注意力模塊,還引入了雙支路通道模塊代替跳躍連接,通過位置信息對通道信息進行編碼,增強網絡的全局特征提取。Zhang 等人[51]在U-Net 的基礎上擴大了網絡結構的深度,并在特征提取的雙卷積中加入了通道注意模塊,改進后的網絡稱為SeUneter。它包含兩個部分:SeDeepUnet模型和后處理。SeDeepUnet 實現對頸椎的分割,而后處理則是通過使用頸椎圖像的先驗知識來調整分割結果,以獲得更精確的結果。
脊椎病變可能是脊椎的多個部位引起,多任務分割同時分割多類對象,并將分割與分類等其他任務相結合。為了解決不同目標之間的非線性關系,達到對多個脊椎部位進行準確分割的目的,Pang 等人[52]將用于3D 粗分割的3D圖卷積分割網絡(graph convolutional segmentation network,GCSN)和用于2D 細分割的2D 殘差U-Net 組合,提出了一種二階段框架SpinePareNet。SpinePareNet通過脊椎間的依賴關系與3D GCSN相結合來提取語義信息,隨后通過2D 殘差U-Net 網絡對高分辨率脊椎圖像切片進行細化分割。但是對圖像邊界模糊的骶骨周圍分割效果不好,無法分割不完整的椎體。此后,為了解決脊椎分割中的類間相似性問題,Pang等人[53]又提出了一種檢測引導的混合監督分割網絡(detection-guided mixed-supervised segmentation network,DGMSNet),由檢測路徑和分割路徑組成。通過檢測路徑來提取脊椎的語義特征,進而指導分割路徑產生準確的分割結果,緩解了類間相似性,實現對椎體和椎間盤的準確分割。Li等人[54]在U-Net網絡中嵌入了雙分支多尺度注意力模塊,將原始U-Net中兩個下采樣或上采樣之間的兩個卷積層替換為一個卷積層和一個雙分支多尺度注意力模塊。該模塊的作用是在保留圖像關鍵信息的同時,還能夠適應不同尺度的目標,該方法可以提高分割效率,減少重復工作。
生成對抗網絡(GAN)是區別于CNN的另一種神經網絡,由生成器和判別器組成,如圖4。生成器從指定訓練集中獲取的隨機向量產生偽樣本,而判別器對輸入樣本是真實數據還是偽樣本進行分類輸出。結合語義分割的要求和GAN的特點,Luc等人[61]訓練了一個卷積語義分割網絡和一個對抗網絡,將GAN 的思想第一次應用于語義分割。其中卷積語義分割網絡Segmentor是一個基于CNN 的傳統分割網絡,生成一個接近真實值的分割圖,對抗網絡是GAN中的判別器,利用博弈的思想對網絡進行訓練。

圖4 GAN網絡Fig.4 Generative adversarial network
Han 等人[62]為了在一個網絡模型中完成椎間盤、椎體和椎間孔的語義分割,利用遞歸生成對抗網絡Spine-GAN 對MRI 脊椎圖像進行多任務自動分割和分類,并使用LSTM(long short-term memory)發現多個對象之間的空間關系。通過使用概率圖對相鄰椎骨和椎間盤之間的相關性進行建模,完成了對椎間盤、椎體和神經孔的語義分割,在253 例患者的脊柱圖像上取得了96.2%的像素準確率。
Gong等人[63]為了在MRI圖像上實現對椎間盤、神經孔、硬膜囊和后弓的同步分割和疾病診斷,提出了Axial-SpineGAN,包括生成器、判別器和診斷器。生成器采用增強特征融合模塊和增強邊界對齊模塊,解決了脊椎結構多樣性中正常與異常結構之間差異微小的問題,提升了對邊界像素的精確分類。鑒別器采用對抗性學習模塊,避免了因訓練數據不足而導致的過擬合。診斷器采用了一個自動診斷模塊來提供脊椎疾病的自動識別。Axial-SpineGAN 在分割精度方面Dice 系數為94.90%±1.80%,可以為MRI圖像上的多個脊椎結構提供自動分割和疾病診斷。
常用的脊椎成像方式CT、MRI 和X 射線都可以提供高質量的影像輸出。超聲波成像安全和經濟,但圖像質量低,而圖像的質量很大程度上會影響分割結果的準確。Huang等人[64]針對脊椎超聲圖像的噪聲問題提出了一個具有選擇性特征共享機制的多任務框架,框架包括兩個部分:基于生成對抗網絡的噪聲去除,通過弱監督的方式實現對噪聲的掃描去除;脊椎分割,預測準確的脊椎圖像。同時提出了一個選擇性的特征共享策略,兩個任務之間有選擇地傳輸特征,在處理噪聲的同時完成脊椎分割。
GAN 在脊椎分割任務中將對抗損失融入分割損失,利用判別器對分割結果進行判斷,提高了分割結果的完整性。并可以通過生成器改善數據集過小的問題,從而增加數據在總體的連續性,與直接使用真實特征圖的其他模型相比,GAN提高了全局級別的精度,并避免了脊椎圖像分割中的過擬合。但在實際訓練GAN網絡模型時,由于生成器和鑒別器的訓練過程類似于博弈過程而非優化,會導致訓練難度很大[65],在對文獻的檢索時發現將GAN 作為改進網絡的脊椎分割文獻很少,把GAN中的生成對抗機制應用到脊椎分割任務中還有很大的研究空間。表7總結了近年來GAN在脊椎圖像分割上的文獻摘要[62-63,66-68]。

表7 基于GAN的脊椎分割論文摘要Table 7 Spine segmentation based on GAN
深度學習作為一項新興技術,其在脊椎圖像分割領域的應用已經逐漸成熟,不斷改進的新型網絡架構提高了脊椎分割的準確度和魯棒性。但目前仍有許多問題值得繼續研究,深度學習要成為臨床醫生的有力工具仍存在許多改進的空間。
脊椎的臨床病理情況復雜多樣,脊椎圖像之間存在明顯差異性。這就需要有經驗的專業醫師對脊椎圖像進行標記,但也增加了脊椎數據的獲取難度[69]。此外,脊椎數據集經常存在類別不均衡的問題,體現為一些類別的樣本分布稀疏,訓練樣本的數據分布與臨床的常規脊椎數據分布差別很大,進而導致模型在學習這類數據時,由包含較多樣本的類別主導了模型的收斂,影響網絡的泛化性。
一些方法可以在一定程度上緩解這些問題,一種是通過遷移學習技術,將網絡在大型數據集中學習到的權重轉移到當前的任務中,減少對訓練數據的需求[70]。另一種是數據增強技術,如圖像的旋轉、平移、縮放、裁剪等方式,或GAN圖像生成技術,通過這類合成圖像的方法,來滿足數據多樣性的需求,實現對數據集的擴充。
脊椎結構復雜,脊椎圖像中不同類別之間的特征相似,且不同位置的椎骨形狀大小各異,因此在提取脊椎圖像特征時,類內差異通常會大于類間差異。并且脊椎圖像由于圖像噪聲、病理變化等原因,容易存在邊緣模糊、對比度不明顯等問題,這對分割小而復雜的器官,如椎管和椎間孔的分割產生了很大的挑戰。
此外,通過對大量網絡改進工作的研究發現,大部分研究者在對脊椎圖像處理時只關注了脊椎的結構特征,即只分析了分割結果,沒有將預測結果與醫學信息相結合。只有少數研究者實現了對脊椎的同步分割和診斷,通過神經網絡直接生成放射科醫生級別的分割結果和報告,這對脊椎的病理分析有很大幫助,進一步擴大了圖像分析的功能范圍。
深度神經網絡通過復雜的層與層之間的交互獲得最后的預測,研究者只能通過結果看到網絡的預測準確與否,但是無法理解網絡到底學到了什么樣的特征,又是怎樣學到的這些特征[71],這個過程類似于“黑匣子”[72]。深度學習的可解釋性還需要研究人員和臨床醫生的共同努力,也需要患者的信任和支持。
本文主要從三個方向對深度學習在脊椎分割領域進行綜述。首先,對深度學習的網絡框架進行了介紹。其次,全面概述了脊椎分割中采用的深度學習方法,回顧了深度學習在脊椎分割方向的最新進展。最后,總結了當前脊椎分割所面臨挑戰和前景,并提出了相應的解決方案。
目前深度學習方面的改進創新大多屬于開源狀態,計算資源也不斷改善,數據隱私等道德方面以及與預測風險相關的問責機制也正在受到關注,基于深度學習的脊椎圖像分割已經成為研究趨勢。因實際可用的脊椎圖像數據較少,未來深度學習在脊椎圖像分割的研究方向可以考慮結合半監督學習的方式從樣本量比較少的脊椎圖像中獲取特征信息。其次,在計算成本過大的情況下,通過對深度學習模型進行輕量化設計,提高對三維脊椎圖像的分割速度也是未來的發展方向之一。