管駿
(四川大學視覺合成圖形圖像技術國防重點學科實驗室,四川 成都610064)
目前, 國內主流的骨齡預測方式還是主要依賴于人工對于X 光照片的解讀,根據骨骼生長的一般規律進行分析,臨床醫學上用于骨齡評價所依據的方法主要有兩種,分別是圖譜法和計分法。而目前國內,中華05 計分法相比于其它的骨齡評價方法,具有更高的使用率,計分法分期具有明確的量化概念,相對于其他骨齡評估方法準確度更高,可重復性較強。但缺點是需提前掌握相關知識并需要進行繁瑣的操作。
計數法是人為估計骨齡的一種方法,其通過觀察骨化中心隨時間在一定年齡出現的數目、測量骨化中心面積以及骨與骨之間的比例,同時觀察骨骺的融合時間來進行骨齡的判斷,但是這種系統誤差較大,又會導致x 射線對人體的照射量大從而導致對人體的損害,現在已很少出現在臨床。
圖譜法是將手骨x 射線照片與醫學骨齡標準照片進行逐項比對的方法,由Todd 制定了較為完善的骨骼成熟圖譜后開始進行流傳,主要依據青少年不同年齡手腕部骨化中心和干骺的出現,消失順序,建立男女骨齡標準的圖譜[7],手骨射線圖譜包括男子31 張標準片,年齡范圍0-19 歲;女子27 張標準片,年齡范圍0-18 歲。評價時只需將手骨圖片與圖譜對照,找出其中最相近者,如果結余兩個相鄰年齡譜之間,取均值進行估算,即可確定未知片的骨齡。G-P 圖譜法簡便明確,在國際上廣泛使用。
TW 計分法,它通過將左手腕的20 塊手腕骨的發育過程進行分級,根據各骨按不同的發育狀況分為8-9 期,賦予不同的分值,最后將各個評分進行相加得到總分,最后依據各個年齡的骨成熟度得分中位數曲線得出評估結果[4],制定出判定骨齡的計分方法。在1972 年正式制定TW2 標準,TW2 與TW1 的不同之處在于各骨齡等級和性別的計分方面,TW2 方法共有20 個感興趣區,每個感興趣區包括骨骺、干骺端、骨干3 個部分,并根據成熟程度劃分成不同的等級。此外,男性和女性采用不同的權重計分。
該研究采用的是2017 年由RSNA 北美放射學會舉辦的兒童骨齡挑戰賽比賽的公開集,這來自于斯坦福兒童醫院和科羅拉多兒童醫院的無償提供[6],這些手骨圖片是在不同的時間、不同的條件下拍攝到的關于Kaggle 的數據集,為使其更容易實驗和做教育演示,整個RSNA 數據集選用6823 例男性、5767 例女性共12590 例手骨圖片數據進行訓練,而RSNA 數據測試集包括男性、女性分別100 例共計200 例額外手骨圖片,不包括在訓練集內,無需從訓練集中進行選取。
2.2.1 目標檢測預處理
在使用深度學習方法的過程中,數據預處理是所有后續步驟的重要基石。而該方案的第一步則是對目標檢測的部分數據進行標注并訓練,目標檢測的準確性關乎后續分類訓練所需數據的完整性,在目標檢測網絡訓練開始之前需要耗費一定的時間去標注數據。
數據處理:

圖1 數據標注
數據標注主要參考了中華05 法和TW2 法,將兩種方法中重要的關鍵部位進行標注,最終統計有16 個具體框體,并且分為七個類,分別包含手掌數據,橈骨,尺骨,掌骨,近節手骨,中節手骨和遠節手骨等,其中數據標定如圖1 所示, 利用YOLOv3-SPP 訓練已有的手骨數據集檢測手骨的關鍵區域并進行截取,將這些關鍵區域進行姿態調整后進行融合。目標檢測的框架為YOLOv3-SPP,整個框架使用的是python 語言。總共進行隨機標注了1000 例手骨圖片,訓練時按照9:1 的比例進行劃分訓練集和驗證集。
2.2.2 骨齡評價網絡設計
骨齡評價使用的網絡為改進的reanet18,ResNet 網絡提出殘差結構,并且使用Batch Normalization 加速訓練。相比于傳統的卷積神經網絡,Resnet 可以搭建超深的網絡結構,可以突破1000 層,傳統的卷積神經網絡都是通過將一系列卷積層與池化層進行堆疊得到的,但是網絡堆疊到一定深度時,會出現兩個問題:a.梯度消失或者梯度爆炸,也就是當每一層的誤差梯度小于1,反向傳播時,網絡越深,梯度越趨近于0;反之,若每一層的誤差梯度大于1,反向傳播時,網絡越深,梯度越來越大。b.退化問題,解決了梯度消失、爆炸問題后,仍然存在深層網絡的效果可能比淺層網絡差的現象。
解決梯度消失或者梯度爆炸的方式可以通過數據的預處理以及在網絡中使用Batch Normalization 層來解決,而殘差結構人為地讓神經網絡某些層跳過下一層神經元的連接,隔層相連,弱化每層之間的強聯系,可以用于減輕退化問題,所以在進行骨齡評價的網絡設計中,選用ResNet 網絡相較于其它傳統卷積神經網絡能得到更好的效果。
而關于傳統的ResNet 網絡,本文在訓練過程中修改了其中的Relu 激活函數為隨機糾正線性單元(RReLU),ReLU 是將所有的負值都設為零,而RReLU 是給所有負值賦予一個非零斜率,而且負值的斜率在訓練中是隨機的,在之后的測試中就變成了固定的,RReLU 的亮點在于,在訓練環節中,aji是從一個均勻的分布U(I,u)中隨機抽取的數值,RReLU 從數學的形式表示為以下公式:

使用RReLU 后,訓練結果的準確率提高了3 個百分點。
2.2.3 評估結果
將預測結果進行回歸預測,按性別分別統計測試集所有數據誤差在±1 歲以內的準確率,并計算平均絕對誤差(MAE)[2]。公式如下:



表1 RSNA 不同性別訓練結果
本文利用opencv 計算機視覺庫和目標檢測算法以及深度學習框架封裝的接口,且同時利用了QT 編程框架實現了集成本文檢測組合ROI 和骨齡評價方法的端到端的桌面應用軟件,相較于國內其他同類研究,本軟件環境更加易搭建、易使用。
3.1.1 通過點擊QT 應用軟件主界面按鈕選擇并打開手骨X光圖像所在文件夾并顯示手骨X 光圖像在程序主界面中。
3.1.2 選擇待檢測圖像的性別并點擊檢測按鈕,程序加載運行封裝好的目標檢測算法接口和模型,對輸入的手骨X 光圖像進行ROI 檢測,并在軟件界面中顯示檢測出的ROI 框體。
3.1.3 程序根據上一步檢測出的ROI,自動提取歸一化并合成三通道的數據在本機緩存文件夾中。
3.1.4 加載封裝好的接口和骨齡識別網絡模型,將合成數據輸入網絡中得出模型預測的骨齡并顯示在軟件界面中,程序檢測識別骨齡的流程圖如圖2。

圖2 程序識別骨齡流程
如圖3 所示為集成本研究方法的桌面應用軟件UI,該桌面應用軟件UI 十分簡潔,在主界面左上角為選擇檢測文件夾按鈕和路徑顯示標簽。用戶首先通過點擊該按鈕進行待檢測手骨圖像所在文件夾選擇,程序會將文件夾包含的圖像數顯示在按鈕緊鄰的右側,同時將文件名列表顯示在主界面左側。在主視圖中會顯示當前文件夾的第一張圖像,在圖片個數顯示框右側為兩個性別的選擇按鈕,選擇性別后點擊檢測即可自動檢測全部ROI 并標注在圖像上,同時檢測下方的textlabel 將會輸出預測的骨齡。圖3 所示的骨齡為使用了混合性別訓練的MultiBoneNet 回歸模型預測出的結果轉換為年為單位的年齡。

圖3 骨齡評價系統
本算法應用中的檢測算法接口和深度學習框架接口均有CPU 和GPU 兩種版本,可視具體應用場景選擇軟件所需要的接口版本。檢測算法和接口中均包含了加載模型,預測結果的功能函數。經測試,本軟件使用的兩種版本接口在配置GPU 為20708G、CPU 為i58300H、內存8G、操作系統為WIN10 的PC 上能夠流暢運行。CPU 版每個樣例檢測識別速度平均在0.8 秒左右,而GPU 版每個樣例檢測識別速度平均在500 毫秒左右。
本文介紹骨齡評價的現狀,針對骨齡評價方法使用卷積神經網絡的方式,在RSNA 公開數據集取得較好結果,表現出較強的魯棒性。在骨齡評價速度和準確率方面均具有很大優勢,減少了骨齡識別的人工成本,并設計出了全自動的骨齡評價系統,在耗時上遠遠低于人工評價所需時間。