程 敏, 沈林鵬, 羅作煌
(中國科學技術(shù)大學計算機科學與技術(shù)學院,安徽 合肥 230026)
經(jīng)皮穿刺介入是一種在醫(yī)學影像引導下的盲穿刺手術(shù),基于脊柱三維表面重建尋找最優(yōu)入針點與計算穿刺路徑規(guī)劃是當前行業(yè)內(nèi)公認最精確的方法,精準脊柱分割[1]是脊柱三維表面重建技術(shù)基礎(chǔ),所以實現(xiàn)快速、穩(wěn)定和精準脊柱分割已經(jīng)成為研究熱點。
傳統(tǒng)脊柱圖像分割技術(shù)是基于圖論的方法,例如Slan M S等人[2]提出一種基于3D形狀的方法存在泛化效果[3]。隨著人工智能技術(shù)與大數(shù)據(jù)的發(fā)展,當前的脊柱分割技術(shù)[4]更偏向通過深度學習數(shù)據(jù)驅(qū)動的方式進行實現(xiàn)。Huang S H等人[5]采用基于Adaboost的統(tǒng)計機器學習方法,對圖像采取降噪處理[6],完成椎骨位置檢測,擬合脊椎曲線,然后提出一種迭代歸一化分割算法對從檢測到的椎骨位置精確分割出椎骨區(qū)域。Zhang Y C等人[7]提出一種基于空間注意力的Unet結(jié)構(gòu),運用注意力機制在2D卷積網(wǎng)絡的3D分割任務中利用切片間的信息,在3D脊柱圖像上進行有效分割。Luo X等人[8]結(jié)合了全卷積網(wǎng)絡(fully convolutional network,FCN)和等值面提取算法來自動分割和重建CT脊柱圖像。以上分割方法均存在幾點弊端:1)算法參數(shù)多,算法訓練時對硬件平臺配置較高,同時算法在部署階段,對部署硬件配置要求高,難以達到落地標準;2)算法相對較冗余,難以保證較高精度。
為解決上述問題,提出一種融合2D與3D卷積神經(jīng)網(wǎng)絡(convolutional neural network,CNN)[9,10]的2階段脊柱3D實例分割關(guān)鍵技術(shù)方案。
脊柱3D實例分割關(guān)鍵技術(shù)方案如下步驟:1)基于輸入脊柱3D CT影像數(shù)據(jù),通過數(shù)字模擬投影生成脊柱2D正側(cè)位數(shù)字重建圖像(digital reconstructedly radiograph,DRR)圖像;2)利用2D AI實例分割算法,生成每節(jié)脊柱中心點;3)利用DRR正側(cè)位圖像上各節(jié)脊柱中心點,插值擬合生成各節(jié)脊柱3D中心點,基于生成的3D中心點對脊柱3D CT影像圖切割分塊,生成切割后單節(jié)脊柱分塊CT 3D圖像;4)利用AI 3D分割算法對分段CT圖像進行語義分割,最后將分段CT圖像分割掩模進行拼接,從而生成脊柱3D實例分割。
1.1.1 問題定義
脊柱2D實例分割包含2項任務:1)各節(jié)脊柱2D 關(guān)鍵點檢測與類別; 2)各節(jié)脊柱2D語義分割。以Mask-RCNN為主體框架,加入優(yōu)化方法,提升模型的精度,實現(xiàn)對每節(jié)脊椎精準目標檢測與語義分割。
1.1.2 2D AI分割模型優(yōu)化
CT影像檢測分割模型主要由5個部分構(gòu)成,包括主干(backbone)特征卷積網(wǎng)絡、特征金字塔網(wǎng)絡(feature pyramid network,FPN)、檢測網(wǎng)絡頭(detect network head)、分割網(wǎng)絡頭(mask network head)以及關(guān)聯(lián)網(wǎng)絡頭(associated network head)。通過對CT DRR圖像特征分析,存在椎節(jié)類別多、椎節(jié)與椎節(jié)間邊界模糊、相鄰椎節(jié)間相似、椎節(jié)存在局部遮擋等問題。為了對每節(jié)脊椎準確分類,以及對每節(jié)脊椎準確定位與邊緣分割[11],增加以下改進優(yōu)化方法:1)在主干特征提取網(wǎng)絡上加入可變感受野模塊(flexible receptive field module)來增強對全局特征提取能力,有助于對椎節(jié)準確分類;2)在關(guān)聯(lián)網(wǎng)絡頭前加入損失函數(shù)平衡機制,有利于損失函數(shù)更快收斂,模型準確率達到更高水平,模型結(jié)構(gòu)如圖1所示。
圖1 CT影像檢測分割模型
1)可變感受野卷積模塊
針對每個輸入的特征圖,普通卷積在l0位置的像素點處特征值計算公式如下
(1)
式中l(wèi)n為以l0為中心卷積核范圍內(nèi)的所有位置,w(l0)為l0位置的采樣點權(quán)重,x(l0+ln)為l0位置特征值,Rf為感受野區(qū)域。
可變形卷積在此基礎(chǔ)上增加了偏移量Δln計算公式為
(2)
2)損失函數(shù)優(yōu)化
針對圖像樣本尺寸多、少樣本、正負樣本不平衡等問題[12],原模型將Focal損失函數(shù)、SmoothL1Loss與Dice損失函數(shù)分別應用于語義類別分類、對象定位與掩模預測
L=γ1Lfocal+γ2Lregression+γ3Lmask
(3)
式中L為總損失函數(shù),Lfocal為Focal損失函數(shù),Lmask為掩模損失函數(shù),γ1,γ2,γ3為自定義權(quán)重參數(shù)。
考慮在輸入的CT圖像訓練集中,存在相鄰椎節(jié)像素相似、相鄰椎節(jié)邊界模糊的現(xiàn)象,導致像素點的預測值與真實值都很小,Dice損失函數(shù)的梯度則可能會出現(xiàn)非常大的情況,從而引發(fā)了訓練過程不穩(wěn)定,因此引入平衡系數(shù)γ3;同時考慮漏檢與誤檢的情況,引入分類平衡系數(shù)γ1與回歸平衡系數(shù)γ2。
1.2.1 問題定義
針對3D U-Net 準確度不足,容易出現(xiàn)假陽性的問題,設計并實現(xiàn)encoder和decoder之間增加了一個空間位置注意力模塊(spatial location attention module)和通道注意力模塊(channel attention module),并將兩者的輸出融合相加,獲得空間維度和通道維度的全局特征依賴關(guān)系,以提高網(wǎng)絡對特征提取學習能力。通過消融對比實驗,提出了一種3D-UNet網(wǎng)絡模型輸出加入Dense CRF來完成對脊柱邊緣精準分割[13]。
1.2.2 脊柱3D分割模型
模型結(jié)構(gòu)原理如圖2所示。
圖2 脊柱3D分割模型
1.2.3 3D注意力機制模塊
1)空間位置注意力機制模塊:位置注意力模塊能夠編碼更長范圍內(nèi)的上下文信息在局部特征中,提升局部特征的表達能力[14]。其工作流程如下:
a.特征圖A1分別通過3個卷積層,得到3個新的特征圖 B1、B2和 B3;
b.C1是由B3進行尺寸與維度變換而得到,尺寸由C×D×H×W變?yōu)镹×C,其中,N的尺寸為D×H×W;
c.B2和C1相乘,然后通過SoftMax函數(shù)得到空間監(jiān)督圖D1,D1的大小為N×N;
d.將B1的維度變換為C×N,再與D1相乘得到E1,乘以系數(shù)α,再將維度變換為C×D×H×W。其中,α被初始化為0,并通過訓練過程學習;
e.將E1和A相加得到F1,即位置注意力模塊的輸出。
2)通道注意力機制模塊:用于發(fā)現(xiàn)不同通道之間的依賴關(guān)系并加強依賴特征。其工作流程如下:
a.B3、B2和B1是由特征圖A分別進行reshape、reshape和transpose而得到;
b.對B1進行reshape和轉(zhuǎn)置得到大小為N×C的特征圖,與B2相乘通過SoftMax得到C1,C1的大小為C×C;
c.B3與C1相乘得到D1;
d.D1與β作乘積,reshape為C×D×H×W,其中,β初始化為0,并通過訓練過程學習;
e.將D1和A相加得到E1,即為通道注意力模塊的輸出。
1.2.4 Dense CRF條件隨機場模塊
如圖3所示,對于相同大小的輸入圖I,每個像素i都有一個類標簽Mi,其中有2種類型的類標簽:脊椎和非脊椎。以每個像素為節(jié)點,像素之間的連接為邊,形成一個完全無向圖。序列M={M1,M2,M3,…,Mn},T={T1,T2,T3,…,Tn}和標簽Y={Y1,Y2}構(gòu)成一個完全連接的條件隨機場(T,M)。T的大小,小于輸入的Spine序列圖像的大小,代表對應序列圖像的真實標簽,Mj為分配給每個像素的分類標簽。本文通過觀察變量T來推斷像素i對應的類標簽Mi。條件隨機場符合Gibbs 分布,公式如下
圖3 Dense條件隨機場結(jié)構(gòu)
(4)
引入了Dense條件隨機場優(yōu)化方法,更好地考慮了像素與像素之間的關(guān)系[15,16],為相似的像素標記相同的標簽,對差異較大的像素賦予不同類型的標簽[17],這樣像素標簽的分配就更加符合空間一致性,使得脊柱邊界處的分割結(jié)果更加準確。
試驗平臺選擇 GeForce GTX 2080Ti GPU, 顯存為11 GB,內(nèi)存為32 GB,Ubuntu16.0運行系統(tǒng),環(huán)境配置為Python 3.7+Pytorch1.4.0 框架。由于GPU性能及數(shù)量限制,GPU數(shù)量為1。
本文實驗的數(shù)據(jù)來源于中國江蘇省醫(yī)院,共收集了不同病人的1 000組脊椎CT圖像,切片圖像間距為2 mm。數(shù)據(jù)與標注示例如圖4所示,數(shù)據(jù)標注標準是來源于醫(yī)院脊椎影像CT專家標識脊椎部分。為了增強模型魯棒性,將每組CT圖像數(shù)據(jù)按照xyz方向任意角度翻轉(zhuǎn)與隨機水平翻轉(zhuǎn),以增強數(shù)據(jù)多樣性。將1 000份數(shù)據(jù)按照按照8︰2隨機分為兩部分,分別作為訓練數(shù)據(jù)與測試數(shù)據(jù)。
圖4 訓練數(shù)據(jù)樣本
脊柱3D實例分割包含2項任務:1)各節(jié)脊柱3D 關(guān)鍵點檢測; 2)各節(jié)脊柱3D語義分割。本文對1 000例標注數(shù)據(jù)按照8︰2劃分所得的200例數(shù)據(jù)進行測試驗證,通過不同優(yōu)化策略來分析模型性能。
1)各節(jié)脊柱3D關(guān)鍵點檢測實驗與分析
利用第一階段2D實例分割模型求取3D關(guān)鍵點截取各節(jié)脊椎CT 3D圖像,作為第二階段各節(jié)脊柱3D語義分割輸入圖像,因此,第一階段3D關(guān)鍵點直接影響第二階段各節(jié)脊柱3D語義分割性能。3D關(guān)鍵點是根據(jù)2D AI實例分割求得,因此,2D AI實例分割決定了3D關(guān)鍵點優(yōu)劣,同時,考慮到各節(jié)脊柱3D語義分割結(jié)果對3D關(guān)鍵點存在優(yōu)化作用,利用各節(jié)脊柱最終生成的3D掩碼區(qū)域反向求取3D質(zhì)心作為最終3D關(guān)鍵點優(yōu)化因子。利用3D掩碼區(qū)域生成的質(zhì)心與DRR正側(cè)位圖2D關(guān)鍵點擬合生成的3D關(guān)鍵點求均值,修正最終輸出的3D空間脊柱關(guān)鍵點。模型準確率與召回率測試性能如圖5所示,其中,Original為原始Mask RCNN網(wǎng)絡模型,E+L、E+A、L+A、E+L+A分別表示可變感受卷積模塊與損失函數(shù)平衡模塊組合、可變感受卷積模塊與3D掩碼區(qū)域優(yōu)化方法組合、3D掩碼區(qū)域優(yōu)化方法與損失函數(shù)平衡模塊組合、可變感受卷積模塊與損失函數(shù)平衡模塊與3D掩碼區(qū)域優(yōu)化方法三者組合。
圖5 準確率與召回率曲線
圖5為置信度(confidence)與準確率以及置信度與召回率之間變化關(guān)系,E+L+A組合優(yōu)化方法在召回率上表現(xiàn)最優(yōu),最高時達到95 %;原始Mask-RCNN模型準確率相比于加入優(yōu)化方法要低于8 %~10 %。考慮3D掩碼區(qū)域優(yōu)化方法對3D關(guān)鍵點準確率要高于不考慮的情況,說明最終各節(jié)3D分割掩碼區(qū)域?qū)?D關(guān)鍵點定位與分類準確率存在積極作用。E+L、E+A、L+A 3種優(yōu)化組合在準確率上均優(yōu)于原始Mask-RCNN模型。
2)脊柱3D語義分割實驗與分析
第二階段各節(jié)脊柱3D語義分割生成的3D掩碼區(qū)域既對第一階段3D關(guān)鍵點有反向優(yōu)化作用,又決定整體脊柱3D實例分割性能好壞。本文從3個度量標準來對3D分割結(jié)果做出評測,靈敏性、特異性、交叉比。靈敏性是指所有的脊柱區(qū)域得到正確分割的概率;靈敏性一真陽性/(真陽性+假陰性)。特異性是指所有非脊柱區(qū)域得到正確診斷的概率;特異性一真陰性/(真陰性+假陽性)。交叉比是指本文方法分割出的結(jié)果與專家手工標記結(jié)果的交集與并集的比值。實驗對比結(jié)果如表1所示。其中,Original表示原始3 D U-net,C表示加入Dense CRF優(yōu)化方法,A表示加入注意力機制方法,C+A表示加入Dense CRF條件隨機場與注意力機制優(yōu)化方法。
表1 不同優(yōu)化方法分割實驗結(jié)果
由表1看出,C+A優(yōu)化方法效果最優(yōu),Dice可達98.53 %,相比于原始3 D Unet高出近10 %左右。在推理耗時上,加入C+A優(yōu)化方法多出0.3 s。在滿足落地指標要求的前提下,C+A優(yōu)化方法是最佳優(yōu)化策略。如圖6(a)所示,C+A優(yōu)化算法在困難樣本上的分割優(yōu)越表現(xiàn),對脊柱病灶區(qū)、骨刺區(qū)以及創(chuàng)傷區(qū)的分割具備較強的泛化能力與魯棒性。
圖6 分割結(jié)果
3)脊柱3D實例分割實驗與分析
在測試集200例標定脊柱數(shù)據(jù)中隨機選取50例,主要是以加入最優(yōu)方法的3D實例分割技術(shù)方案與原始不加任何優(yōu)化方法技術(shù)方案對比,來說明對多節(jié)脊柱整體3D實例分割優(yōu)化方法的有效性。加入最優(yōu)方法的3D實例分割技術(shù)方案是指第一階段2D實例分割最優(yōu)優(yōu)化方案與第二階段3D語義分割最優(yōu)優(yōu)化方案耦合形成的整體3D實例分割最優(yōu)技術(shù)方案,具體對比結(jié)果如圖7所示。圖7中,橫軸為50例脊柱標識數(shù)據(jù)標號(number),縱軸為2種技術(shù)方案Dice指標差值(dice similarity coefficient)。Dice差值低于原始不加任何優(yōu)化方法技術(shù)方案數(shù)據(jù)量為6例,大約占總數(shù)10 %,加入優(yōu)化方法的3D實例分割技術(shù)方案存在明顯優(yōu)勢,最大Dice差值可達20 %。優(yōu)化后的技術(shù)方案對脊柱病灶區(qū)、骨刺區(qū)以及創(chuàng)傷區(qū)的分割具備較強的泛化能力與魯棒性。
圖7 3D實例分割結(jié)果對比
由圖6(b)可以看出,脊柱CT圖像含有病灶治療植入螺釘,此類數(shù)據(jù)在臨床上比較常見,屬于比較難分割區(qū)域;由圖6(c)可以看出,優(yōu)化后3D實例分割技術(shù)方案能良好計算出治療前脊柱區(qū)域,具備較強區(qū)域還原分割能力。各節(jié)脊柱區(qū)域分割邊界明顯,邊界分割平滑。
本文提出了一種融合2D與3D CNN的2階段脊柱3D實例分割關(guān)鍵技術(shù)。對3D實例分割整體技術(shù)方案性能進行對比試驗,試驗結(jié)果證明了優(yōu)化方法的有效性。該研究較好地解決脊椎CT 3D圖像精確實例分割難與落地應用難的問題,為脊椎手術(shù)導航機器人精準完成術(shù)前與術(shù)中導航與配準提供了有意義的參考價值。