賀楨,石蘊(yùn)玉,劉翔,楊少玲,牛嘉豐
1.上海工程技術(shù)大學(xué)電子電氣工程學(xué)院,上海 201620;2.上海市第八人民醫(yī)院超聲醫(yī)學(xué)科,上海 200235
據(jù)《中國心血管健康與疾病報(bào)告2019》顯示,中國心血管病患病率處于持續(xù)上升階段,推算心血管病現(xiàn)患人數(shù)3.30 億[1]。動(dòng)脈粥樣硬化指患者脂質(zhì)代謝出現(xiàn)問題,脂質(zhì)和復(fù)合糖類在動(dòng)脈內(nèi)膜積聚形成纖維脂質(zhì)斑塊,最終導(dǎo)致血管壁中內(nèi)中膜厚度(Intima Media Thickness,IMT)增加的現(xiàn)象,它是心血管病的病理基礎(chǔ)[2]。早期檢測(cè)和診斷頸動(dòng)脈斑塊對(duì)患者后期治療至關(guān)重要,目前超聲檢查已經(jīng)廣泛地應(yīng)用于心血管病的臨床診斷[3]。但是超聲圖像自身分辨率低,并且有斑塊噪聲,導(dǎo)致判讀圖像難度增大,且判讀的主觀性強(qiáng),易出現(xiàn)漏診或誤診現(xiàn)象。對(duì)于早期診斷和治療與頸動(dòng)脈相關(guān)疾病,已經(jīng)在不同的研究中嘗試了各種方法,這些研究主要使用不同的機(jī)器學(xué)習(xí)算法對(duì)不同數(shù)量的患者醫(yī)療圖像進(jìn)行分析處理。1986年P(guān)ignoli等首次使用計(jì)算機(jī)輔助測(cè)量IMT,自此許多學(xué)者對(duì)IMT 分割算法進(jìn)行研究,提出不同方案和算法代替手工實(shí)現(xiàn)自動(dòng)測(cè)量IMT[4-7]。通過分析已有的測(cè)量方案和算法,可知目前常規(guī)思路為兩步:首先獲取感興趣區(qū)域(ROI),其次在初始輪廓線的基礎(chǔ)上獲得最終輪廓線并測(cè)量IMT。
深度學(xué)習(xí)這個(gè)概念在2006年第一次被提出[8]。目前,深度學(xué)習(xí)已經(jīng)被用在醫(yī)學(xué)領(lǐng)域進(jìn)行了不同的研究,它的出現(xiàn)為醫(yī)學(xué)圖像輔助診斷提供了新思路和研究手段。本研究提出利用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)獲得穩(wěn)健可靠的頸動(dòng)脈斑塊檢測(cè)模型,對(duì)頸動(dòng)脈斑塊進(jìn)行輔助檢測(cè),減輕放射科醫(yī)師負(fù)擔(dān)。實(shí)驗(yàn)結(jié)果證實(shí)該模型對(duì)頸動(dòng)脈斑塊輔助檢測(cè)有顯著意義。
檢測(cè)頸動(dòng)脈斑塊可分為兩個(gè)部分:①ROI 提取:采用圖像處理算法對(duì)待測(cè)的頸動(dòng)脈超聲圖像進(jìn)行自動(dòng)分割,獲得ROI,以便提高圖像分類的效率。②斑塊檢測(cè):將分割好的圖像輸入到訓(xùn)練好的CNN 模型進(jìn)行檢測(cè),得出檢測(cè)結(jié)果。流程圖見圖1。
圖1 頸動(dòng)脈斑塊檢測(cè)流程圖Figure 1 Flow chart of carotid plaque detection
ROI提取可以提高圖像分類的效率,方便圖像處理。本研究使用的方法利用血管形態(tài)信息、IMT以及高斯混合模型(Gaussian Mixture Models,GMM)[9],具體步驟見圖2。
圖2 ROI提取流程圖Figure 2 Flow chart of region of interest(ROI)extraction
頸動(dòng)脈超聲圖像的尺寸為800×600,對(duì)其進(jìn)行裁剪,去除包含如日期、器械名稱、參數(shù)設(shè)置等很多無用信息的區(qū)域,只保留與頸動(dòng)脈血管信息相關(guān)區(qū)域。裁剪后的超聲圖像尺寸為400×400。醫(yī)學(xué)超聲圖像雖然有實(shí)時(shí)、廉價(jià)、無損傷、無侵入等優(yōu)點(diǎn),但其易受超聲儀器型號(hào)、本身成像原理等原因限制,導(dǎo)致超聲圖像分辨率不高。為了改善這個(gè)問題,本文采用圖像超分辨生成對(duì)抗網(wǎng)絡(luò)(SR-GAN)[10]提高超聲圖像的質(zhì)量。SR-GAN 由生成器和判別器構(gòu)成,判別器的主體是VGG(Visual Geometry Group Network)[11],包含8個(gè)卷積層,選取帶泄露修正線性單元作為激活函數(shù),最終通過兩個(gè)全連接層和Sigmoid 激活函數(shù)得到預(yù)測(cè)概率;生成器由多個(gè)殘差塊組成,每個(gè)殘差塊中包含卷積層、批量歸一化和參數(shù)修正線性單元激活函數(shù),同時(shí)在模型后部加入了亞像素卷積層用于增加圖像分辨率,使得提升分辨率的同時(shí)減少了計(jì)算量。將超聲圖像轉(zhuǎn)為一維數(shù)據(jù)點(diǎn)作為聚類的元素,使用GMM 算法將圖像中所有點(diǎn)分為3 類,最后將數(shù)據(jù)點(diǎn)轉(zhuǎn)換為圖像并顯示。
GMM 是一種常用的變量分布模型,以概率模型為基礎(chǔ)進(jìn)行聚類,在數(shù)理統(tǒng)計(jì)領(lǐng)域有著廣泛的應(yīng)用。GMM分布為:
其中k為類別數(shù),xi表示第i個(gè)對(duì)象,qk為像素屬于k類的概率,μk為第k類對(duì)應(yīng)的多元高斯分布的均值向量,φk為第k類對(duì)應(yīng)的多元高斯分布的協(xié)方差矩陣。
由期望最大化算法(EM)算法估計(jì)。
EA 算法是一種統(tǒng)計(jì)學(xué)方法,也是一種極大似然估計(jì)方法,可以幫助計(jì)算數(shù)學(xué)模型參數(shù)。這里用來計(jì)算GMM參數(shù),具體步驟如下:
初始化模型參數(shù)qk(0)、μk(0)、φk(0)。
E步:
M步:
其中,
迭代以上步驟直到參數(shù)收斂。
以灰度值0~5為頸動(dòng)脈管腔,灰度值180~190為頸動(dòng)脈外膜[12],按照血管的灰度值特性對(duì)聚類后的頸動(dòng)脈超聲圖像進(jìn)行灰度分級(jí),計(jì)算3張圖像像素值的平均值,值最低的圖像灰度值映射到0,另外2張灰度值映射到255,并將3張圖像進(jìn)行圖像融合。
最后對(duì)圖像進(jìn)行閉運(yùn)算。它可以封閉融合后的圖像中細(xì)微連在一起的圖塊,從而填補(bǔ)圖像,與此同時(shí)能保持圖像內(nèi)容的位置和形狀不變。超聲圖像拍攝過程中,探頭掃描時(shí)遠(yuǎn)端血管壁因?yàn)槭艿叫〉脑鲆嬗绊?,圖像會(huì)比較清晰,血管壁分層明顯,而近端由于被超聲波散射原理,內(nèi)中膜容易被影響,成像會(huì)變暗模糊,所以本實(shí)驗(yàn)選取遠(yuǎn)端血管壁作為ROI[13]。由于近端和遠(yuǎn)端在形態(tài)上是連通的,保留近端遠(yuǎn)端兩個(gè)大的連通域,刪除圖像上過小的連通域。依據(jù)遠(yuǎn)端血管壁的質(zhì)心大的特點(diǎn),刪去近端連通域,獲取最終ROI。
VGG 是CNN 中經(jīng)典模型之一,它是由牛津視覺幾何小組聯(lián)合谷歌人工智能公司共同研發(fā)的,并在2014年大規(guī)模視覺識(shí)別挑戰(zhàn)賽中獲得第2 名[14]。VGGNet 包含6 種CNN 框架,由卷積層、池化層和全連接層反復(fù)堆疊形成16~19 層的CNN,其特點(diǎn)為:卷積核為(3×3)或(2×2),池化核為(2×2);網(wǎng)絡(luò)的整體不僅層數(shù)更深,而且特征圖更寬;測(cè)試階段可以輸入任意尺寸圖像進(jìn)行測(cè)試??偟膩碚f,VGGNet泛化能力更好,是CNN中提取圖像特征的首選之法[15-16]。
本研究提出了一種基于CNN 的斑塊檢測(cè)算法(Detection of Carotid Plaque Based on Convolutional Neural Network,簡稱DCP),見圖3。DCP由VGGNet原始結(jié)構(gòu)改進(jìn)得來,其中包含9 個(gè)卷積層,它們每個(gè)卷積核的大小都是3×3,并在它們每層后面添加“ReLU”激活函數(shù),將激活結(jié)果作為新層的輸入。添加4 個(gè)最大池化層防止過擬合,大小為2×2。最后把全部特征通過全連接層連接產(chǎn)生輸出值,并把輸出值輸入到給分類器得到最終分類結(jié)果。DCP 網(wǎng)絡(luò)的超參數(shù)經(jīng)過反復(fù)實(shí)驗(yàn)和分析得以確定。
圖3 DCP網(wǎng)絡(luò)結(jié)構(gòu)Figure 3 DCP structure
將超聲圖像進(jìn)行標(biāo)定,其中有斑塊的ROI標(biāo)定為“1”,其余標(biāo)定為“0”,標(biāo)定完成之后,提取ROI并將分辨率調(diào)整為統(tǒng)一大?。?00×120),隨機(jī)混合存儲(chǔ)標(biāo)定圖像順序以防止模型記憶數(shù)據(jù)并提高模型準(zhǔn)確性。將標(biāo)定后的圖像作為DCP 的輸入進(jìn)行訓(xùn)練并提取特征。采用五折交叉驗(yàn)證方法進(jìn)行訓(xùn)練,并且迭代50次,獲得最終頸動(dòng)脈斑塊檢測(cè)模型。
本研究實(shí)驗(yàn)環(huán)境為Window10 操作系統(tǒng),處理器為AMD Ryzen Threadripper 1900X 8-Core Processor,內(nèi)存為8 GB,GPU 顯卡為NVIDIA GeForce GTX 1080Ti。本研究DCP 模型使用Python Keras[17]編寫,使用TensorFlow[18]作為后端框架。在配置環(huán)境下,網(wǎng)絡(luò)訓(xùn)練時(shí)長為2 min。
使用的超聲圖像由上海市奉賢區(qū)中心醫(yī)院提供,包含45 位患者的頸動(dòng)脈超聲圖像,共有467 張,尺寸為800×600。實(shí)驗(yàn)儀器為GE Vivid E9(美國)超聲診斷儀,9L-D 探頭,探頭頻率(4~8)MHz。由兩位專家手動(dòng)標(biāo)定,其中有斑塊樣本251 張,無斑塊樣本216 張。訓(xùn)練驗(yàn)證集為416 張,其中有斑塊224 張,無斑塊192 張。測(cè)試集為51張,其中有斑塊27張,無斑塊24張。
ROI 提取可以提高圖像分類效率,方便圖像處理。本文超聲圖像獲取ROI 見圖1。通過五折交叉驗(yàn)證訓(xùn)練網(wǎng)絡(luò)[19],ROC曲線見圖4。模型訓(xùn)練準(zhǔn)確度已經(jīng)達(dá)到99.25%,最終采用的batch-size為32,學(xué)習(xí)率為0.001,迭代次數(shù)為50次。
圖4 五折交叉驗(yàn)證訓(xùn)練過程ROC曲線Figure 4 ROC curves of 5-fold cross-validation
以病理結(jié)果為金標(biāo)準(zhǔn),在測(cè)試集中分類器預(yù)測(cè)無斑塊為23次,有斑塊預(yù)測(cè)28次,實(shí)際樣本中有27張圖像有斑塊,24張無斑塊。檢測(cè)頸動(dòng)脈斑塊分類器準(zhǔn)確度為94.12%(48/51)、敏感度為96.30%(26/27)、特異性為91.67%(22/24)、假陽性率為8.33%(2/24)。
Sava?等[20]同樣通過CNN檢測(cè)頸動(dòng)脈斑塊,截去超聲圖像無關(guān)信息進(jìn)行預(yù)處理,通過7 層CNN 進(jìn)行訓(xùn)練。搭建文獻(xiàn)[20]的網(wǎng)絡(luò),同時(shí)按照其方法對(duì)圖像預(yù)處理,只去除頸動(dòng)脈超聲圖像中與頸動(dòng)脈無關(guān)的信息,見圖1(截取冗余信息圖),將兩種ROI 分別用本文網(wǎng)絡(luò)和文獻(xiàn)[20]的網(wǎng)絡(luò)進(jìn)行訓(xùn)練。不同網(wǎng)絡(luò)、ROI對(duì)應(yīng)的訓(xùn)練準(zhǔn)確度見表1,準(zhǔn)確度和損失值每5個(gè)輪次變化見圖5。
圖5 模型損失收斂過程和精確度變化Figure 5 Model loss convergence process and changes in accuracy
表1 模型最終準(zhǔn)確度和損失值Table 1 Final accuracies and loss values of different models
研究顯示分別將本研究的ROI 和文獻(xiàn)[20]ROI作為DCP 網(wǎng)絡(luò)的訓(xùn)練集,使用本研究ROI 的模型得到的準(zhǔn)確度高于使用文獻(xiàn)[20]ROI的模型;同時(shí)分別將本研究ROI 和文獻(xiàn)[20]ROI 作為文獻(xiàn)[20]的斑塊檢測(cè)網(wǎng)絡(luò)的訓(xùn)練集,本研究ROI的模型得到的準(zhǔn)確度高于文獻(xiàn)[20]ROI的模型。綜上所述,本研究方法準(zhǔn)確率高于文獻(xiàn)[20]的方法,與之相比利用超聲血管形態(tài)的信息截取的圖像ROI提高了模型的準(zhǔn)確度,使模型具有更好的魯棒性。
本研究提出一種自動(dòng)、高效的檢測(cè)超聲圖像頸動(dòng)脈斑塊分類方法,以便輔助早期診斷和治療心血管疾病,該算法采用SR-GAN 網(wǎng)絡(luò)提高超聲圖像質(zhì)量,利用超聲血管形態(tài)信息結(jié)合GMM 算法提取ROI,既能保留血管自身形態(tài)信息,又能提高斑塊分類效率,采用CNN 檢測(cè)頸動(dòng)脈斑塊,模型魯棒性好。然而頸動(dòng)脈斑塊有兩種,其中一種是易損斑塊,它容易發(fā)生破裂,很可能會(huì)栓塞腦動(dòng)脈,繼而引起中風(fēng)等臨床事件,需要對(duì)篩選出來的頸動(dòng)脈斑塊進(jìn)一步分類,以提高實(shí)用性,這是下一步的研究方向。