?

基于YOLOv3 算法的肋骨骨折診斷模型的構建及應用

2023-10-15 08:44白潔孫晶程曉光劉凡劉華王旭
法醫學雜志 2023年4期
關鍵詞:肋骨影像學骨折

白潔,孫晶,程曉光,劉凡,劉華,王旭

1.北京市公安局,北京 100192;2.首都醫科大學附屬北京積水潭醫院,北京 100035;3.中國政法大學證據科學教育部重點實驗室,北京 100088

肋骨骨折是法醫臨床鑒定中的常見損傷,在鈍性胸部損傷患者中,40%~50%的人群存在肋骨骨折[1-2]。對于肋骨骨折損傷,現行法醫臨床學標準主要以骨折數量為判定依據,因此,骨折數量是鑒定的關鍵,對于定罪、量刑、賠償等司法實踐至關重要。典型的完全性肋骨骨折通過影像學檢查較容易診斷,對于肋骨細微結構的骨性損傷,雖然有高分辨率CT,但在實際工作中,一些隱匿性肋骨骨折仍然容易被漏診及誤診。同時肋骨影像學片的判讀需要大量的時間并要求鑒定人具有豐富的閱片經驗,技術門檻高,工作量大。如何快速、準確地對肋骨骨折影像學資料進行判定,是法醫工作者面臨的難題。

人工智能(artificial intelligence,AI)自1956 年在達特茅斯會議被提出后,其研究領域不斷擴展深入[3]。機器學習是AI 領域的重要分支,其子領域深度學習近年來被廣泛應用。深度學習中的神經網絡模型最早嘗試和應用的領域就是圖像分類與目標識別,因其基于語義識別的特點,神經網絡模型逐漸應用于影像學診斷[4],應用深度學習中的神經網絡模型進行肋骨骨折診斷的研究也不斷開展[5-6]。目標檢測是計算機視覺和數字圖像處理的熱門方向,是一種基于目標幾何和統計特征的圖像分割,其可將目標的分割和識別合二為一,能夠快速識別目標。

本研究旨在介紹一種基于熱門目標檢測YOLOv3算法[7]建立的對胸部CT 圖像進行肋骨骨折標定與診斷的方法,以期輔助法醫學鑒定人縮短閱片時間,提高診斷準確性及工作效率。

1 材料與方法

1.1 材料

采集北京積水潭醫院2020 年1 月—7 月門急診外傷患者的肋骨骨折胸部CT 掃描DICOM 格式圖像。經過篩選后選擇884 例數據用于建模,其中801 例(男性438 例、女性363 例,年齡27~81 歲)共計29 388 張骨折圖像作為訓練集和驗證集,83 例(男性47 例,女性36 例,年齡25~78 歲)共計7 752 張圖像作為測試集。

納入標準:(1)胸部外傷患者;(2)原始影像學資料涵蓋兩側所有肋骨;(3)18 歲以上成年人。

排除標準:(1)患有影響骨骼系統的疾病,如腫瘤、骨代謝性疾病等;(2)因依從性差等原因導致的影像學圖像不清晰者。

本研究為回顧性研究,已經獲得北京積水潭醫院倫理委員會的批準(審批文號:積倫科審字第201903-24 號)。

1.2 評判標準

由2 名具有高級職稱的影像學專家(從事肌骨影像診斷工作20 年以上)對801 例患者的胸部CT 圖像進行診斷,意見不一致時,由第3 位更高年資專家進行確認。通過多平面重組、三維重建及復查CT觀察是否有骨質斷裂、骨痂等判定有無骨折,協商后共同在CT 圖像上進行骨折標注,作為模型訓練和驗證的“金標準”數據集,同時記錄骨折具體位置、數目及所在層面。將專家發現的輕微骨折、移位骨折、骨折修復性改變等作為陽性結果,專家未發現骨折為陰性結果。

1.3 建模方法

1.3.1 數據預處理

影像學專家診斷骨折后,根據患者編號以及左、右側肋骨骨折所在層數等信息制作肋骨骨折斷層位置描述表格文件?;颊呃吖菙鄬訏呙璧玫降脑糃T圖像的命名規則為Iabcdefg,其中a~g 均是數字。根據CT 圖像的命名規律構建CT 圖像名與上述肋骨骨折斷層位置描述表格文件中序數之間的映射關系,由此可以得到患者有肋骨骨折圖片的文件名,從而將骨折圖片從患者所有DICOM 格式文件中提取出來。

用基于python編程語言的pydicom工具包將DICOM格式圖像數據讀取到內存之后,像素值的變化范圍為-2 048~2 048,通過設置窗寬與窗位參數的方法將像素值進行變換(窗寬值1 500、窗位值350),將CT 圖像的骨質部分提取出來。

用OpenCV 工具包將DICOM 格式文件轉化成JPG格式,由影像學專家采用與CT 圖像背景顏色差異較大的黃色矩形框進行骨折目標的標記。

對上述JPG 格式文件分別進行處理,得到TXT 格式骨折位置標注文件及歸一化的JPG 圖像。

1.3.1.1 TXT 格式骨折位置標注文件

采用圖像識別中的模板識別原理,運用圖像識別工具包識別骨折標注矩形框,設置圖像中黃色部分像素值的提取條件,得到二值化圖像,黃色矩形框經過二值化處理后得到白色矩形框,其內部為骨折所在區域。

采用OpenCV 的cv2.findContours 函數對二值化圖像骨折位置標注的白色矩形框輪廓進行提取。采用基于python編程語言的圖像處理算法對矩形框的頂點坐標進行識別,得到骨折標記矩形框左上點和右下點的坐標。如圖像中有多個骨折的位置,會得到多個矩形框,提取不同矩形框的左上點和右下點坐標,分別記為(xmin,ymin)和(xmax,ymax),其中xmin表示標記框上所有點的橫坐標的最小值、xmax表示標記框上所有點的橫坐標的最大值、ymin表示標記框上所有點的縱坐標的最小值、ymax表示標記框上所有點的縱坐標的最大值。將上述坐標信息生成TXT 格式骨折位置標注文件。

1.3.1.2 歸一化JPG 圖像

使用基于python 編程語言的PyTorch 模塊中的函數將圖像數據尺寸歸一化成512×512×3 大小,以提高模型構建的計算效率。

1.3.2 基于YOLOv3 算法的模型訓練

YOLOv3算法的訓練階段包括:構建基于YOLOv3算法的目標算法框架,將JPG格式的肋骨骨折圖像數據與標注文件數據導入算法框架中進行模型訓練計算。

1.3.2.1 構建目標算法框架

YOLOv3 算法框架主要由卷積模塊、殘差模塊、上采樣模塊與Darknet53 骨干特征提取網絡構成。

卷積模塊是由計算機隨機生成若干卷積核,不同的卷積核用于提取圖像中不同的特征。卷積核中的權重參數是模型訓練過程中需要優化的參數。

殘差模塊最顯著的特點是使用了快捷路徑機制來緩解神經網絡算法訓練過程中的梯度消失問題,從而使得神經網絡變得更容易優化。其通過恒等映射的方法使輸入和輸出之間建立起一條直接的關聯通道,從而使得網絡集中學習殘差模塊輸入和輸出之間的差值。

上采樣模塊的作用是在后續YOLOv3 網絡中進行相加操作時保證兩個特征圖的寬和高相同。

YOLOv3 使用了具有53 個卷積層的骨干網絡Darknet53。YOLOv3設定每個網格單元都有3個檢測框負責檢測,而且每個檢測框需要有x、y、w、h、confidence 5 個基本參數(其中x為檢測框的中心橫坐標、y為檢測框的中心縱坐標、w為檢測框的寬度、h為檢測框的高度、confidence 為檢測框內有檢測物體的概率),同時還要有80 個類別的概率,因此每個輸出的通道數都是3×(80+5)。將一張416×416 的彩色圖片輸入Darknet53 網絡后得到3 個分支,這些分支在經過一系列的卷積、上采樣以及合并等操作后最終得到3 個特征映射,尺寸分別為[13,13,255]、[26,26,255]和[52,52,255]。

1.3.2.2 導入數據

將TXT 格式骨折位置標注文件以及從DICOM 格式數據轉化成的JPG 格式的圖像數據導入YOLOv3算法框架,將模型得到的檢測框信息轉化為原圖上的坐標信息,通過交并比閾值檢測及非極大值抑制處理,清除冗余的預測框。

經過第1 次模型構建后,得到肋骨骨折識別圖像,識別出的骨折位置以藍色矩形框標記,同時在矩形框上方標注此處骨折的識別概率,如圖1 所示。

圖1 第1 次建模得到的肋骨骨折標注及識別圖像Fig.1 Rib fracture labeling and recognition images obtained by the first modeling

第1 次建模后,識別的準確率不理想,為優化模型,進行了第2 次建模(圖2)。通過不斷調整模型的參數,最小化損失函數,提高了模型的預測能力。

圖2 第2 次建模得到的肋骨骨折識別圖像Fig.2 Rib fracture recognition images obtained by the second modeling

1.3.3 模型測試

為測試模型的準確性和泛化性,將測試集數據輸入模型進行判別,根據模型的精確率(precision rate,PR)、召回率(recall rate,RR)、F1 分數評價模型的訓練效果。其中,精確率是指所有被預測為陽性(即骨折)的樣本中實際為陽性的樣本比例;召回率是指所有實際為陽性的樣本中被預測為陽性的樣本比例;F1 分數是精確率和召回率的調和平均值。公式如下:

式中,TP為真陽性,即模型預測為骨折而實際也為骨折的樣本數量;FP為假陽性,即模型預測為骨折而實際非骨折的樣本數量;FN為假陰性,即模型預測為非骨折而實際為骨折的樣本數量。

使用配置為NVIDIA GeForce GTX 1080Ti 顯卡、英特爾?至強?處理器E5-2630 v3(2.40 GHz)的服務器對測試集DICOM 格式數據進行識別,同時記錄模型閱片時間。

1.4 案例應用

王某,女,50 歲,被人致傷胸部。受傷當日就診病歷記載:胸部可及壓痛,左側胸廓擠壓痛。胸部CT顯示:左側第4 前肋骨皮質局部走行扭曲,欠規整。診斷證明書記載:左側第4 前肋疑似骨折。經閱片,王某胸部CT 顯示左側第4 前肋骨皮質欠規整,僅依靠人工判讀影像學資料明確診斷有一定難度。法醫建議王某于傷后3 個月復查胸部CT,并由辦案單位調取王某胸部CT 的DICOM 格式數據,采用AI 肋骨骨折診斷模型進行輔助診斷。

2 結果

2.1 模型訓練情況

模型訓練過程的損失函數曲線見圖3。隨著迭代次數的增加,損失函數逐漸降低,識別準確率逐漸升高。當迭代次數在10 以內時,損失函數下降較快,模型快速收斂;當迭代次數在10~50 時,損失函數下降緩慢,趨于常值;當迭代次數大于50 時,損失函數穩定。最終選擇100 作為模型的最大迭代次數,模型達到最優狀態。

圖3 第2 次建模的損失函數曲線Fig.3 The loss function curve of the second modeling

2.2 模型測試情況

該模型存在將滋養孔、神經血管溝、肋骨局部不完全性鈣化及因掃描容積效應造成的局部高密度影誤診為骨折的現象(即假陽性,圖4),對修復期骨折、無明顯移位的肋骨骨折及骨皮質損傷較輕的不完全性骨折存在漏診現象(即假陰性,圖5)。

圖4 假陽性結果Fig.4 Results of the false positive

圖5 假陰性結果Fig.5 Results of the false negative

在83 例測試集的胸部CT 圖像中,準確判定骨折(即真陽性)845 張,假陽性89 張,真陰性6 542 張,假陰性276 張。經計算,本模型的精確率為90.5%,召回率為75.4%,F1 分數為0.82。

2.3 閱片時間

測試集的83 例患者共計7 752 張圖像,模型完成全部圖像的識別耗時1 761 s,每秒可識別4.4 張圖像,對每位患者的數據識別花費時間平均為21 s。

2.4 案例應用

將王某受傷當日和傷后3 個月的胸部CT 數據導入模型,模型識別左側第4 肋骨的骨折概率分別為73%和59%。前后兩次CT 片的模型識別結果見圖6。影像學專家閱傷后3 個月復查片:左側第4 肋骨局部硬化,骨痂形成,為陳舊性骨折。最終法醫根據閱片及AI 識別結果認定被鑒定人左側第4 肋骨骨折。

圖6 實際肋骨骨折案例的模型識別結果Fig.6 Model recognition results of the practical rib fracture case

該案例運用本研究構建的模型對可疑肋骨骨折進行識別和診斷,兩次影像學資料均識別為骨折,對此結果雙方當事人未有異議。

3 討論

3.1 YOLO 概述

YOLO(You Only Look Once)系列算法于2015 年由REDMON 等[8]首次提出,是當前目標檢測領域較為熱門的算法之一,是目標檢測算法的經典代表,其核心思想是直接對Bbox 進行回歸,然后進行類別的預測,將目標邊界定位問題轉換成回歸問題,不需要分別訓練各個部分的網絡,可以實現端對端的訓練,只需要一次完整的過程即可完成目標識別及定位,是典型的一階段(one-stage)算法。相比兩階段(two-stage)算法,如區域卷積神經網絡(region-convolutional neural network,R-CNN)、Fast R-CNN、Faster R-CNN 等,YOLO的檢測速度大大提升,是R-CNN的1 000倍、Fast R-CNN 的100倍[9]。為克服YOLOv1框坐標定位不準、召回率較低、對小目標或比較密集的目標檢測效果欠佳等缺點,YOLOv2[10]及YOLOv3 版本[7]對此進行了改進。YOLOv3 采用Darknet53 網絡進行圖像的特征提取,較之前的v2 版本(使用Darknet19)準確率更高[7]。研究[11]認為YOLOv3 算法結構簡單,魯棒性好,檢測速度快,精度較高。YAO 等[12]對YOLOv3 算法和Fast RCNN、Faster R-CNN 的性能進行了評估,認為YOLOv3算法的精確率、召回率、F1 分數、陰性預測值均高于其他兩種算法。

3.2 模型應用

本研究基于YOLOv3 算法構建了AI 輔助肋骨骨折診斷模型,該模型實現了網絡端到端的完全自動化的肋骨骨折影像學診斷,并提供骨折識別概率,避免了因經驗不足等原因引起的人工判讀造成的漏診、誤診;該模型可識別CT 影像通用DICOM 格式文件,普適性高;所使用的訓練集涵蓋多種類型骨折,具有一定的差異度,模型精確率較高;該模型操作簡單、便捷,識別速度快,輔助法醫進行肋骨骨折診斷不僅可以提高鑒定效率,同時計算機判讀結果不受人為因素影響,作為客觀證據更具有信服力,容易被當事雙方接受。通過實際案例的應用及測試,該模型識別結果與影像學專家判定結果一致,可靠性高,重復性好,有助于解決法醫臨床鑒定實踐中隱匿性骨折診斷困難等問題,可輔助鑒定人進行肋骨骨折診斷,具有良好的應用前景。

有研究[13]顯示,肋骨骨折人工判讀的召回率為63.5%,本研究模型的召回率為75.4%,高于人工判讀。召回率越高,說明模型識別骨折的假陰性率越低。對于輸入骨折圖片但模型輸出結果為陰性的漏診現象,分析認為主要有以下原因:(1)相同部位連續的骨折圖片存放在同一文件夾內,僅標注少數圖片,默認其他圖片相應位置也為骨折,這個標注方法對大部分圖片適用,但是部分圖片在標記框對應位置并沒有骨折特征,因此造成模型識別性能降低;(2)受算法的限制,特征不能百分之百被識別并訓練,加之部分特征區分度低,較難訓練,影響了模型的識別效率;(3)訓練樣本中涵蓋不同類型的骨折,但部分類型骨折數據量較少,有效訓練不足,使得模型識別效率降低;(4)部分骨折輕微,無移位,僅表現為骨皮質的改變,特征不明顯,不易被訓練。

本研究模型在測試集上的精確率為90.5%,有學者研究醫療公司的uAI EasyTriage-Rib 軟件及uAIBoneCare軟件得到的精確率分別為91%[14]及89.3%[15],周清清等[16]構建Faster R-CNN 模型診斷不同類型的肋骨骨折,精確率最高為90.2%,本研究所建立模型的精確率與其基本相同。精確率越高,模型識別骨折的假陽性率越低,考慮本研究模型存在假陽性結果的主要原因是:(1)部分類型骨折數量較少,在學習過程中特征學習不足,導致模型在訓練過程中對無骨折的圖像與本類骨折圖像有所混淆,對無骨折部位進行了識別,造成假陽性;(2)模型會對放入相同文件夾的多個連續層面的陽性圖片進行學習,在標注過程中僅標注少量圖片,其他層面在標注的相同位置上可能為非骨折結構,模型默認相同位置的特征為骨折,因此出現識別錯誤;(3)由于CT 的容積效應或者鈣化等原因,正常骨組織結構內出現了局部高密度影,與骨折的修復性改變相似,從而被模型判定為骨折;(4)在模型的實際應用過程中,會將被鑒定人胸部CT 的全部DICOM 格式數據輸入模型,其中部分矢狀位層面肋骨呈現出與橫斷面肋骨相似的走行及形態特征,因而被識別為骨折。

在閱片時間上,本研究模型每秒可識別4.4 張圖像,對每位患者的數據識別僅平均花費21 s 即可給出診斷及骨折概率,而臨床上結合容積再現、多平面重組等后處理技術診斷用時分別平均為7.6 min 及8.2 min[17],模型比人工識別用時更短。尤其對于隱匿性骨折,因骨折比較輕微,人工識別往往需要花費更多時間,對于此類骨折的判讀,模型的優勢更加凸顯。更換先進的硬件設備及優化算法,閱片速度還有進一步提升的空間。

本研究亦有一定的局限性:(1)骨折判定標準基于高年資影像學專家的診斷,而非病理結果,也存在誤診或漏診的可能,因此可能對模型的整體效能產生影響;(2)該模型目前僅能識別骨折,尚無法完成骨折的分類任務;(3)本研究排除了因依從性差導致的圖像不清晰病例,但實際工作中,此類病例并不少見;(4)本研究的主要樣本為CT 橫斷面圖片,未結合多平面重組、曲面重組、容積再現等重組圖像,不利于肋骨骨折的檢出。在今后的研究中,應通過加大樣本量、細化骨折分類、改進標注方法、優化算法等手段,不斷提高模型的整體效能,為司法鑒定提供有力的技術支撐。

3.3 展望

目前國內外學者利用AI 技術對肋骨骨折進行診斷的研究不斷開展,AI 與醫師聯合閱片檢出肋骨骨折的敏感度優于單獨醫師閱片[13]。同時在AI 的輔助下,醫生的診斷效率顯著提高,診斷時間縮短,召回率提高,減少了誤診[12]。筆者認為,在以下幾個方面還有進一步深入研究的可能:

(1)骨折分類方面。法醫學鑒定實際工作需要區分骨折與非骨折、是否為完全性骨折、新鮮與陳舊骨折、是否有二次骨折、不同時期的骨折等,后續研究可繼續細化分類,提高骨折分類的診斷能力。

(2)骨折定位方面。應用AI 輔助診斷肋骨骨折,在準確定位方面還存在問題:一是目前研究多采用橫斷面CT 圖像進行模型構建,一名患者完整的胸部CT圖片有幾百張,每張圖片會顯現2~16 根肋骨,除了個別不完全性骨折,常見的骨折都會連續出現在幾張圖片中,需要采取一定的措施避免出現在多張圖片上的一處骨折被識別為多處骨折;二是如何對一張圖片中顯示的肋骨進行解剖學準確定位,明確骨折具體位置。為解決第一個問題,有學者[16]設計了結果合并程序,將1~2 mm 薄層CT 圖像的多個預測框合并成一個骨折病灶,并輸出包含肋骨骨折的相應層數的結構化報告,使用骰子函數來判斷不同層面或同一層面不同部分的檢測結果是否屬于同一骨折。徐傳冰等[18]使用了AI 全自動肋骨骨折檢測系統,可自動切換骨窗并對圖像上的肋骨進行計數。解剖學定位方面,目前關于椎體的研究[19-20]較多,而對于CT 橫斷面圖像上的肋骨進行解剖學定位的問題,還需要大量算法的研究。解決定位問題,可以準確、快速地判定骨折部位,幫助法醫預判可能存在的其他損傷,同時可以一定程度上減少本模型存在的假陽性問題。

(3)診斷的準確性方面。隱匿性骨折在初次檢查中常不易被發現,是法醫學鑒定中的難點問題。如有大量后期復查影像學資料,可將前后CT 圖像輸入模型進行比對以提高初次影像學檢查的診斷準確率,為法醫學診斷提供依據,幫助鑒定人對血管或神經溝等易與隱匿性骨折混淆的表現進行鑒別診斷。為消除AI 輔助診斷過程中的假陽性,對于肋骨不完全性鈣化、呼吸運動產生的偽影、滋養孔、神經血管溝等可能誤判為骨折影的影像學表現,可搜集數據,增加訓練的樣本量,進一步提高模型的準確性。利用本方法已能對部分隱匿性骨折進行預判,希望后期能夠進一步提高識別概率。

(4)算法方面。從深度學習的角度看,肋骨骨折診斷被定義為一個目標檢測問題,不同的學者采用不同的深度學習算法。在YOLOv3 之后,Ultralytics 公司相繼推出v4、v5 等版本,目前已推出v8 版本。相比單一的模型和算法,羅鑫等[21]提出了基于多重注意力機制的深度學習模型,利用圖像技術對肋骨進行定位,縮小目標識別區域,并提出殘差通道雙注意力模塊(residual channel bi-attention module,RCBM),同時使用通道注意力模塊(channel attention module,CAM)與RCBM,相較于只使用CAM 模塊,準確率和F1 分數均大幅提升。由此可見,隨著科技的進步,可進一步優化算法或使用更為先進、適宜的模型及方法,以提高模型的精確度和泛化性。

(5)應用范圍方面。目前應用AI 輔助診斷肋骨骨折的模型多采用CT 橫斷面圖像數據進行構建,后期可結合多種重組方法,如橫斷面圖像結合多平面重組、容積再現、曲面重組等后處理數據進行模型訓練;也可利用其他影像學方法如MRI 來提高診斷的準確性。對于胸部CT 影像學資料,除了肋骨骨折,也期待利用AI 方法識別更多對法醫學鑒定有意義的鄰近組織損傷,如氣胸、縱隔損傷、鎖骨骨折、椎體骨折、肩胛骨骨折等。如能對上述損傷進行準確判定,對CT 片上可能呈現的損傷進行全面、系統的診斷,將會大大提高法醫的工作效率,也有望進一步拓寬AI 輔助CT診斷技術在法醫臨床學中的應用前景。

猜你喜歡
肋骨影像學骨折
GM1神經節苷脂貯積癥影像學表現及隨訪研究
不可忽視的“一點點”骨折
64排CT在腦梗死早期診斷中的應用及影像學特征分析
特殊部位結核影像學表現
顱內原發性Rosai-Dorfman病1例影像學診斷
同時伴有Tillaux-Chaput和Volkmann骨折的成人踝關節骨折的治療
迷人肋骨
切開復位內固定與有限內固定聯合外固定治療脛骨Pilon骨折的對比觀察
一例犬骨盆骨骨折病的診治
肋骨帶外固定加外敷萬傷接骨膏治療單純性肋骨骨折的臨床分析
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合