無錫南洋職業技術學院 沈繼云
手骨骨齡作為人類的生物學年齡,可以準確反映生物個體的發育水平及其成熟度。青少年的骨齡評估結果可對其生長發育情況及身高預測提供理論依據。本文提出一種基于細粒度圖像分類原理的深度卷積神經網絡模型。該模型在青少年手骨圖像識別的過程中可自動定位信息豐富區域并提取其局部特征,然后,將提取到的這些局部特征與圖像的全局特征融合在一起,利用融合后的特征進行骨齡分類。該方法不需要借助任何的圖像的標注信息,即可實現端到端的骨齡評估,大大提高了骨齡評估的速度和準確度。通過實驗表明,本文方法在基于弱監督的細粒度圖像分類的骨齡評估方面達到了較好的性能。
骨齡的概念最早是在醫學領域被提出和應用的,用來監測兒童的發育和成長。骨齡一般使用左手和手腕的X射線圖進行骨齡評估(Bone Age Assessment,BAA)[1]。醫生會觀察左手掌骨、指骨、腕骨及橈骨和尺骨下端的骨化中心的發育情況。通過X射線片來確定兒童骨齡[2]。由于處于不同階段的手骨具有不同的形態學特征,因此,BAA可以更準確地反映一個人的生長發育水平和成熟度。它不僅可以確定兒童的生理年齡,還可以了解兒童的生長和發展潛力以及性成熟的趨勢。目前,BAA方法分為TW評分法和G-P圖譜法[3]。TW方法通過分析相關的骨形態特征,對手部的每個部位進行評估和打分,最后將不同區域的分數累積起來,得到最終的骨齡。G-P圖譜法是一種圖像比較方法。該方法將評估的圖像與標準圖像進行比較,以與評估圖像相似度最高的標準圖像的骨齡為其估計值。TW法的評分方法比G-P圖譜法更客觀,因此,TW法被認為比G-P圖集法具有更高的可重復性[4]。
目前現有的文獻所提的自動骨齡評估方法主要有兩類:一類是兩階段方法;另外一類骨齡估計方法是端到端的方法。雖然上述方法都取得了比較不錯的結果,但是也都存在各自的問題,問題主要集中在兩個方面:(1)兩階段的方法雖然使用了卷積神經網絡,但是需要與傳統的機器學習方法相結合,不能實現端到端的骨齡評估,實時性較差;(2)一些研究即使實現了端到端的功能,仍然需要預處理的操作,或者所提的網絡不能聚焦于信息豐富區域,導致網絡不能提取到更深層的特征。
本研究提出一種基于Navigator-Teacher-Scrutinizer(NTS)[5]的弱監督卷積神經網絡模型進行青少年骨齡的自動評估,該網絡在圖像識別的過程中可以自動定位信息豐富區域(Region of Rich Information, RORI),將RORI局部特征與手骨全局特征融合到一起,利用融合的特征來實現骨齡的分類。
骨齡評估的任務可看作是把待評估手骨圖片劃分到某個骨齡值圖像類別中去的過程。主要的難點在于具有不同骨齡的手骨圖像的相似度大,可供卷積神經網絡進行分類的特征只有細節特征,且僅存在于腕骨、掌指骨骺等局部區域。那么,算法如何能夠對這些局部信息豐富的區域實現自動的定位便成為了亟待解決的首要問題。
本研究主要基于NTS-Net網絡,該網絡全稱為Navigator-Teacher-Scrutinizer Network。模型由三部分組成:導航員代理、教師代理和審查員代理。導航員模塊能夠在教師模塊的指導下檢測出信息量最豐富的子區域,之后,審查員模塊仔細分析導航員建議的子區域的特征,并利用這些特征進行最終預測。在NTS-Net網絡模型中,Navigator模型負責找出信息最豐富的區域(RORIs),而教師模型則對Navigator提出的RORIs進行評估并給出反饋。之后,審查員模型仔細檢查分析這些RORIs并做出最終的骨齡預測。
與傳統的卷積神經網絡不同,為了能更好的聚焦于信息豐富的區域,模型的主體采用了殘差網絡(Resnet-50)基線,并在此基礎上設計了一個學習排序模塊。一般的信息量大的區域有助于網絡模型更好地完成目標識別,若將信息量大的區域的特征和圖像的全局特征融合起來,利用融合后的特征進行目標識別,則可以獲得更好的分類性能。因此,該網絡模型的核心是自動定位圖像中的信息豐富區域,并將這些區域按照置信度進行排序。對于輸入圖像X,假設信息豐富區域是矩形區域,信息豐富區域的集合用A表示,則R∈A表示集合中的RORIs。該方法定義了計算RORIs的信息量的函數I,并定義了置信函數C來評估該區域屬于真值的置信度。一般而言,信息量較大的區域應具有較高的置信度,因此應滿足如式(1)所示的條件:

該模型中用導航員模塊代替信息函數I,教師模塊代替置信度函數C。簡單地講,該方法先在區域空間集合A中選擇M個子區域AM,然后,導航員模塊對所選中的M個子區域的信息量I(RM)進行評估,教師模塊對其置信度C(RM)也進行評估。該網絡對Navigator模塊進行優化以使{I(R1),I(R2),…,I(RM)}和{C(R1),C(R2),…,C(RM)}具有相同的順序。
綜上,該網絡將Navigator模塊所預測的信息最豐富的M個子區域表示為R={R1,R2,…,RM},子區域R所對應的信息量表示為I={I1,I2,…,IM},C={C1,C2,…,CM}表示教師模塊預測的置信度。最后,在信息最豐富的M個子區域中,我們選擇信息量最大的前K個子區域,將這K個子區域的特征與手骨片的全局特征一起送入審查員模塊進行分類,從而完成骨齡的預測。
為了使置信度函數C與信息量函數I具有相同的順序,我們需要對這些信息豐富子區域R進行優化。優化過程采用的損失函數有導航員損失和教師損失函數,如式(2)、式(3)所示。
導航員損失函數:

教師損失函數:

其中,函數f是非遞增函數,如果Cs>Ci,則促使 Is>Ii,此處f使用Hinge Loss Function。損失函數對I和C之間的對反向進行懲罰,并鼓勵I和C保持相同的順序。
當導航員模塊導航到信息最豐富的區域{R1,R2,…, RK}時,審查員模塊即給出細粒度的識別結果Pi=S(X, R1,R2,…,RK),并使用交叉熵損失作為分類的損失,如式(4)所示:

式中,N表示類別數,yi表示指示變量,Pi是預測概率。
在基于NTS-Net網絡進行自動骨齡評估的網絡模型體系結構中,首先將手骨圖像X送入特征提取器模塊(Resnet-50),然后由導航員模塊中的FPN(特征金字塔網絡)檢測出信息豐富區域并進行區域的信息量大小的計算。隨后,將這些信息豐富的區域送入教師模塊評估這些區域的置信度,并使區域置信度C和其信息量I保持相同順序,從而實現對信息區域位置的優化。當其大小排序一致時,則將信息區域的特征與原圖的特征一起送入審查員模塊,審查員模塊對這些特征進行融合,并利用融合后的特征完成骨齡的預測。
該數據集由帶有骨齡標簽的手和腕部X光片組成。X射線圖呈現出高度的可變性,包括不同的采集方法,以及亮度、對比度、分辨率,甚至長寬比的變化等。數據集絕大部分圖片是通過計算機放射成像(Computed Radiography, CR)或數字化放射成像(Digital Radiography,DR)獲取的,僅有一小部分圖片是通過膠片獲得的。從膠片獲取的這些圖片除了手部區域外存在大面積的無效區域。這些無效區域對于骨齡識別毫無用處,同時也增加了數據處理的負擔。為了裁剪掉這些無效區域,本文提出了一種基于掃描線的快速掃描算法來提取手骨的有效區域。有效區域的定義如圖1中的白色框所示。

圖1 有效區域提取方法示意 Fig.1 Valid region extraction method
(頂行:原始數據;底行:通過掃描算法提取的有效區域)
基于掃描線的快速掃描算法的步驟如下:
(1)輸入一張原始圖像I和閾值T;
(2)確定掃描方向(行或列);
(3)開始掃描;
(4)計算掃描線上每個像素的強度L;
(5)計算該掃描線上的最大灰度差Llim;
(6)將Llim與T進行比較,如果Llim>T則返回(7),否則返回(3);
(7)停止掃描;
(8)記錄掃描線的位置(Xleft,Xright,Ytop,Ybottom);
(9)計算中心X0,Y0和有效區域的高度H,寬度W;
(10)輸出具有有效區域的圖像Ivr。
這個預處理算法的目的用來驗證簡單的裁剪預處理是否能夠提高本文模型的性能。
(1)數據獲取。本研究使用RSNA 2017的兒科骨齡數據集為研究對象。該數據集共包含6833張男性和5778張女性的X光手骨圖片,年齡范圍從1個月到228個月。每張圖片都由專家手工標注。這些數據中有一小部分圖片是由膠片獲得的。我們挑選出其中帶有無效區域的樣本,用于后續的預處理算法的必要性分析。其中,包括男性150張,女性157張。故最終用于訓練和測試的數據集共包含男性手骨圖像6683幅和女性手骨圖像5621幅。
RSNA數據集中的手骨圖片樣本在不同年齡類別上的數量分布是不平衡的,有些月齡的樣本數僅為1張,而最多的達718張,這樣的分布使得模型的分類準確度大大降低。因此,需要對該數據集進行增強以擴充數據,達到樣本均衡的目的。
(2)圖像數據增強。深度學習是一種標準的數據驅動模型的方法,作為黑箱的深度網絡嚴重依賴于大量的數據來解決問題,而本研究中的圖片樣本分布不均衡,因此,需要對該數據集進行擴展。
分類網絡的數據集擴展的方法通常有平移、旋轉等仿射變換法、鏡像法、彈性形變法[6]等。由于手骨圖像具有高度的一致性,如手所擺放的位置以及背景顏色等,如果隨意選擇數據增強的方法會破壞這種一致性。經仔細研究,本實驗選擇了縮放、位移、旋轉、剪切以及彈性形變5種方式將每個年齡的圖片樣本增加到約60個。最終,得到男性手骨圖像12501幅和女性手骨圖像10461幅。如圖2所示給出了數據增強方法及其增強的結果。

圖2 數據增強方法及結果Fig.2 Data augmentation method and results
我們將增強后數據的80%作為訓練集,其余的20%的樣本用于測試。采用隨機策略生成訓練/測試集分割樣本,共進行了5次訓練/測試的實驗并取平均值,以最大化地利用樣本。數據增強內容包括從-45°~45°范圍內的圖像旋轉,0-0.1比例內的圖像平移,0.8-1.1比例內的圖像縮放,-8°~8°范圍內的圖像剪切,以及α為90°~105°、σ為20的圖像彈性變形。如表1所示給出了增強后的整個數據集的分布情況。

表1 增強后的實驗數據集分布情況Tab.1 Distribution of augmentation dataset images
本實驗在AMAX深度學習工作站中完成,深度網絡模型的參數設置如下:局部區域的數目K=4,即將4個局部信息豐富區域的特征和全圖像特征送入到最后的分類網絡進行分類。加載預訓練模型ResNet-50,設置Pretrained= True。訓練過程中Batch Size設置為16,權重衰減率設置為WD=10-4以防止過擬合,學習率設置為0.001。經過預訓練的ResNet-50作為特征提取器,利用SGD進行算法優化,訓練過程中每一輪保存一次測試模型,模型大小約113MB左右,本實驗共計訓練100輪次。
(1)骨齡的估計精度。本實驗采用Top1準確率、平均絕對誤差(MAE)及標準差等評價指標來評估實驗結果。骨齡估計的結果如表2所示,表中數據是訓練/測試執行5次的平均值。

表2 骨齡評估實驗結果Tab.2 Experimental results of bone age assessment
測試模型選擇訓練過程中精度達到最高的epoch所對應的模型。實驗過程中的損失值變化情況、測試準確率變化情況分別如圖3、圖4、圖5、圖6所示。圖中標號①的線表示損失率Loss,標號②的線表示Top1準確率Accuracy。圖中曲線均為5次訓練/測試所得的平均值。

圖3 訓練集損失和準確率的變化曲線(男性)Fig.3 Loss and accuracy curve of training set (male)

圖4 測試集損失和準確率的變化曲線(男性)Fig.4 Loss and accuracy curve of test set (male)

圖5 訓練集損失和準確率的變化曲線(女性)Fig.5 Loss and accuracy curve of training set (female)

圖6 測試集損失和準確率的變化曲線(女性)Fig.6 Loss and accuracy curve of test set (female)
本實驗在測試數據集上實現了男性66.38%、女性68.63%的Top1準確率以及3.71和3.81個月的平均絕對誤差。相比于其他的研究,本模型表現出了最佳的性能,這也說明了基于NTS-Net網絡引入這種訓練范式的有效性。
(2)不規范樣本的骨齡估計精度。上面提到的不規范樣本可能是由于對膠片拍照角度不合適造成的,這些樣本中存在大面積的無效區域,給骨齡識別帶來一定的困難。本文采用掃描線快速掃描算法去除了這些無效區域,之后對有效區域樣本進行骨齡估計,以驗證圖像預處理的必要性。測試模型仍然采用上面(1)中的模型。研究中分別對預處理前和預處理后的不規范樣本進行了測試,測試結果如表3所示。表中數據亦是用5個不同的測試模型進行測試,結果取平均值。
由表3可知,與未作任何預處理的原始圖片相比,經過預處理的男性和女性的骨齡估計的MAE值分別提高了13.83%和17.53%。本研究表明,僅僅增加一個簡單的預處理步驟(掃描線掃描算法)就能提高本文模型對骨齡的估計精度。
作為算法比較,本研究與文獻中公開報道的與深度學習相關的骨齡評估算法的結果進行了對比。對比結果如表4所示。
從表4的實驗結果可以看出,本文方法在骨齡評估方面的性能高于現有的文獻所提的方法。本文所提方法是一種端到端的方法,模型直接接收原始圖像作為輸入,輸出骨齡的類別,且不需要對原始圖像作任何的預處理。本文方法屬于典型的基于弱監督的端到端的骨齡估計算法,算法的效率較高。同時,也證明了這種自我監督的訓練范式對細粒度圖像分類的有效性。
本文使用基于細粒度圖像識別的深度卷積神經網絡對青少年的骨齡進行了評估研究,該網絡能夠自動提取手骨X光圖像的局部特征并結合手骨全圖特征進行骨齡評估,是一種端到端的骨齡評估方法。本文模型采用固定比例(8:2)下的隨機策略生成訓練/測試集,共得到5次不同劃分下的測試模型,通過執行5次訓練/測試實驗取平均值以確保實驗結果的可靠性。最終,該網絡模型在RSNA公開數據集中男性的預測準確率為66.38%、女性的預測準確率為68.63%,平均絕對誤差分別為3.71和3.81個月,其結果優于現有引用[7]-引用[12]中的結果。本文算法收斂速度快,骨齡評估準確度較高,平均每張圖像的骨齡估計用時約為35ms,大大節省了測試時間。從應用的角度看,如果將本研究成果應用于青少年骨齡評估的實際部署中,該方法可以實現青少年骨齡的快速實時評估,能夠滿足臨床的需求。
但是在研究過程中發現該方法還存在一些問題。(1)該數據集的骨齡樣本分布嚴重不均衡。在男性131個骨齡類別(0-228月)中最少的樣本只有1張圖片,而最多的樣本達700多張,如果能收集到各個類別均衡分布的數據,則模型的泛化能力將進一步提高。(2)對于特征提取網絡的選擇問題。本文模型中使用的殘差網絡雖然已經有很好的特征提取能力,但是50層的殘差網絡訓練時產生的參數量比同樣擁有良好特征提取能力的DenseNet網絡大,在以后的研究中可以考慮用DenseNet網絡替代模型中的殘差網絡。(3)本文探討了對原始手骨圖片進行預處理的必要性。如果僅僅對原始圖片做簡單的裁剪預處理(如快速掃描算法)對于骨齡識別是有效的。不幸的是,可供裁剪預處理的不規范樣本數過少(男性和女性各約150幅),只占總數的3%左右。因此,本文將這些樣本單獨取出進行實驗,以驗證預處理技術是否能夠改善本文模型的骨齡估計的性能。(4)不同的骨齡估計方法所使用的數據集不盡相同,難以進行公平地比較。即使是使用相同的數據集時(RSNA),由于數據增強方法的不同,訓練/測試集劃分比例不同以及對異常樣本的處理情況,也很難做到完全公平地比較。
引用
[1]MUGHAL A M,HASSAN N,AHMED A.Bone Age Assessment Methods:A Critical Review[J].Pak J Med Sci,2014,30(1):211-215.
[2]張玉青.淺談骨齡在兒童體質研究中的應用[J].體育教學,1988 (3):55-56.
[3]GREULICH W W,PYLE S I T.Wingate Todd Radiographic Atlas of Skeletal Development of the Hand and Wrist[M].Stanford University Press:Stanford,California,USA,1959.
[4]SATOH M.Bone Age:Assessment Methods and Clinical Applications[J].Clinical Pediatric Endocrinology,2015,24(4):143-152.
[5]YANG Z,LUO T G,WANG D,et al.Learning to Navigate for Fine-Grained Classification[C]//European Conference on Cmputer Vision,2018:438-454.
[6]LI J,WANG D S,LI S,et al.Deep Learning Based Adaptive Sequential Data Augmentation Technique for the Optical Network Traffic Synthesis[J].Optics Express,2019,27(13):18831-18847.
[7]REN X H,LI T T,YANG X J,et al.Regression Convolutional Neural Network for Automated Pediatric Bone Age Assessment From Hand Radiograph[J].IEEE J.Biome Health Informatics,IEEE Journal of Biomedical and Health Informatics,2019,23(5):2030-2038.
[8]LIU B,ZHANG Y,CHU M C,et al.Bone Age Assessment Based on Rank-Monotonicity Enhanced Ranking CNN[J].IEEE Access, 2019(7):976-983.
[9]SPAMPINATO C,PALAZZO S,GIORDANO D,et al.Deep Learning for Automated Skeletal Bone Age Assessment in X-Rag Images[J].Medical Image Analysis,2017(36):41-51.
[10]SOUZA D,OLIVEIRA M M.End-to-End Bone Age Assessment with Residual Learning[C]//31st SIBGRAPI Conference on Graphics, Patterns and Images (SIBGRAPI),2018,197-203.
[11]IGLOVIKOV V,RAKHLIN A,KALININ A.et al.Pediatric Bone Age Assessment Using Deep Convolutional Neural Networks in Deep Learning in Medical Image Analysis and Multimodal Learning for Clinical Decision Support[M].Springer:Cham,Switzerla nd,2018,300-308.
[12]Hyunkwang Lee,Shahein Tajmir,Jenny Lee,et al.Fully Automated Deep Learning System for Bone Age Assessment[J].Journal of Digital Imaging,2017,30(4):427-441.