張婭楠,趙涓涓,武 煒,耿 鑫,侯國(guó)杰
(1.太原理工大學(xué) 信息與計(jì)算機(jī)學(xué)院,太原 030024;2.山西省人民醫(yī)院 醫(yī)學(xué)影像科,太原 030012)
哈??梢詫⒏呔S數(shù)據(jù)變?yōu)榈途S緊湊的二值碼,同時(shí)保留圖像或視頻的相似性,檢索時(shí)直接使用低維的二值碼。用漢明距離計(jì)算距離或相似性時(shí),CPU可以使用一些例如XNOR(異或非)之類的快速指令,這樣既可以減少特征的存儲(chǔ)空間,又可以提高檢索速度,從而可以有效解決“維數(shù)災(zāi)難”的問(wèn)題[1-3]。然而在醫(yī)學(xué)領(lǐng)域,一張肺部圖像包含的信息非常多,在肺部圖像的檢索中,人們通常使用單標(biāo)簽進(jìn)行檢索,這樣做并不能夠充分表達(dá)圖片中的語(yǔ)義。
目前可以把傳統(tǒng)的醫(yī)學(xué)圖像檢索技術(shù)分為兩種,有監(jiān)督方法和無(wú)監(jiān)督方法。無(wú)監(jiān)督方法中典型的是局部敏感哈希(locality sensitive hashing,LSH)。在此基礎(chǔ)上衍生出了很多方法,其中DRIEMEL et al[4]提出了曲線局部敏感哈希(locality-sensitive hashing of curves,LSHC),AJ et al[5]提出使用動(dòng)態(tài)相似度和局部敏感哈希的多視圖檢索(content-based mammogram retrieval methods using multi-view information fusion,MVIF-CBMR).迭代量化(iterative quantization,ITQ)[6]也是典型方法。有監(jiān)督方法中,最著名的方法就是有監(jiān)督核哈希(supervised hashing with kernels,KSH),它通過(guò)相似對(duì)的漢明距離最小化,不相似對(duì)的漢明距離最大化來(lái)獲得哈希碼。HU et al[7]通過(guò)在漢明空間中顯式地最小化原始間距和重建間距之間的偏差來(lái)學(xué)習(xí)哈希函數(shù)。逆轉(zhuǎn)譜哈希(reversed spectral hashing,ReSH)[8]是將哈希的輸入和輸出交換,不同于譜哈希從給定的高維數(shù)據(jù)中估計(jì)相似度結(jié)構(gòu),而是根據(jù)未知的低維哈希碼來(lái)定義數(shù)據(jù)點(diǎn)之間的相似度。但傳統(tǒng)的檢索方法中要求手工提取多種特征,降低了檢索速度。深度哈希的出現(xiàn),解決了這個(gè)問(wèn)題。
2017年,WU et al[9]提出了一種名為結(jié)構(gòu)深哈希(structured deep hashing,SDH)的方法,能夠同時(shí)學(xué)習(xí)適用于哈希任務(wù)的有效的圖像表示以及一組哈希函數(shù)。LAI et al[10]提出了一種新的深度哈希模型框架,設(shè)計(jì)一個(gè)三元組排序損失來(lái)優(yōu)化。近年來(lái),鑒于當(dāng)前海量的醫(yī)學(xué)影像數(shù)據(jù)和哈希方法的優(yōu)勢(shì),已有一些學(xué)者將哈希方法用于醫(yī)學(xué)影像檢索方面。LIU et al[11]提出一種基于AGH(anchor graph hashing)的圖像檢索框架,提高乳腺X射線圖像檢索精度。YAO et al[12]提出一種離散魯棒監(jiān)督哈希(discrete robust supervised hashing,DRSH)算法,融合不同模態(tài)的分類標(biāo)簽和特征,通過(guò)低秩約束學(xué)習(xí)魯棒相似矩陣,在共享的漢明空間中保留基于魯棒相似矩陣的相似度來(lái)生成哈希碼。CHEN et al[13]提出了一種深度學(xué)習(xí)監(jiān)督哈希(deep learning supervised hash,DLSH)方法,該方法采用深度結(jié)構(gòu)學(xué)習(xí)基于深度特征表示的二進(jìn)制代碼,用于大規(guī)模圖像檢索。QI et al[14]提出了一種新型的端到端監(jiān)督深度哈希方法,該方法通過(guò)聯(lián)合優(yōu)化來(lái)進(jìn)行特征提取和二進(jìn)制編碼學(xué)習(xí),實(shí)現(xiàn)肺結(jié)節(jié)的檢索。CAI et al[15]提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)和哈希編碼的基于內(nèi)容的醫(yī)學(xué)圖像檢索框架(content based medical image retrieval,CBMIR).
對(duì)于肺部醫(yī)學(xué)序列圖像的特殊性,三維卷積神經(jīng)網(wǎng)絡(luò)(3D convolutional neural networks,3D-CNN)可以較全面地表征序列圖像的隱含特征信息,更充分地結(jié)合序列圖片上下文信息,因而在特征提取領(lǐng)域得到了廣泛的應(yīng)用。KANG et al[16]利用多視角三維卷積神經(jīng)網(wǎng)絡(luò)對(duì)肺部CT圖像進(jìn)行學(xué)習(xí)和分析,最終實(shí)現(xiàn)肺結(jié)節(jié)的良惡性分類。KHVOSTIKOV et al[17]利用3D卷積神經(jīng)網(wǎng)絡(luò)提取結(jié)構(gòu)磁共振成像(structural magnetic resonance imaging,sMRI)圖像的特征,設(shè)計(jì)了基于SMRI和DTI模式的海馬區(qū)融合算法來(lái)輔助診斷阿爾茲海默病的診斷。DOU et al[18]利用圖像中的空間上下文信息,使用三維卷積神經(jīng)網(wǎng)絡(luò)(3D-CNN)從核磁共振圖像中提取更有代表性的高級(jí)特征,進(jìn)而檢測(cè)出腦部的微出血。
圖像哈希技術(shù)雖然已被廣泛關(guān)注并在醫(yī)學(xué)圖像檢索領(lǐng)域取得了初步成效,但由于醫(yī)學(xué)圖像自身的特點(diǎn),基于深度學(xué)習(xí)的圖像哈希的應(yīng)用研究也還有很多困難,如何利用更全面的圖像信息,特別是針對(duì)序列CT影像的檢索還有很多問(wèn)題亟待解決。因此,本文提出一種基于醫(yī)學(xué)征象的多標(biāo)簽語(yǔ)義監(jiān)督3D肺結(jié)節(jié)圖像相似性檢索方法。
本文提出的基于醫(yī)學(xué)征象的多標(biāo)簽語(yǔ)義監(jiān)督3D肺結(jié)節(jié)圖像相似性檢索方法主要包括3個(gè)模塊:1) 構(gòu)造肺結(jié)節(jié)CT影像ROI區(qū)域3D數(shù)據(jù)塊并利用3D Resnet網(wǎng)絡(luò)提取3D特征;2) 構(gòu)建哈希函數(shù),基于加權(quán)交替正則最小化優(yōu)化方法構(gòu)建緊致哈希碼;3) 利用多級(jí)檢索方法進(jìn)行肺結(jié)節(jié)CT圖像檢索?;卺t(yī)學(xué)征象的多標(biāo)簽語(yǔ)義監(jiān)督3D肺結(jié)節(jié)圖像相似性檢索過(guò)程如圖1所示。
圖1 方法總體框架圖Fig.1 Framework of the method
本文研究的是肺結(jié)節(jié)CT圖像的檢索,首先要對(duì)肺部CT影像進(jìn)行預(yù)處理。根據(jù)DICOM影像中醫(yī)師標(biāo)注的結(jié)節(jié)出現(xiàn)位置到結(jié)束位置,從切片中提取結(jié)節(jié)ROI(region of interest)區(qū)域,利用樣本得到的結(jié)節(jié)區(qū)域,通過(guò)預(yù)處理得到三維體數(shù)據(jù)的體素區(qū)域在4×4×4~60×60×60之間。根據(jù)CT影像數(shù)據(jù)中所使用醫(yī)療設(shè)備不同,導(dǎo)致每個(gè)病例的像素點(diǎn)和層厚不同,根據(jù)DICOM影像中給出的像素點(diǎn)距離和切片厚度,對(duì)得到的樣本數(shù)據(jù)進(jìn)行歸一化,根據(jù)結(jié)節(jié)中心坐標(biāo)點(diǎn)將結(jié)節(jié)區(qū)域進(jìn)行選取,使用雙三次插值將每個(gè)樣本插值為64×64×64的3D數(shù)據(jù)塊。形成序列圖像的過(guò)程如圖2所示。
圖2 構(gòu)建3D肺結(jié)節(jié)數(shù)據(jù)塊Fig.2 Construction of 3D lung nodules data block
本文設(shè)計(jì)了一個(gè)三維殘差網(wǎng)絡(luò)(3D Resnet),目的是利用殘差學(xué)習(xí),從三維CT數(shù)據(jù)中提取更有代表性的特征。ResNet優(yōu)點(diǎn)是殘差塊比其他網(wǎng)絡(luò)小得多。這種差異使得其能夠更容易靈活地拼接和組合成不同的網(wǎng)絡(luò)。例如,循環(huán)一致性生成對(duì)抗網(wǎng)絡(luò)(cycle-consistent generative adversarial networks,CycleGAN)樣式生成器就使用這種結(jié)構(gòu)。對(duì)于醫(yī)學(xué)圖像,更有必要在保證模型性能的前提下提高模型的靈敏度,這就是本文使用Resnet的原因。本文3D-Resnet參數(shù)結(jié)構(gòu)如表1所示。
表1 3D-RESnet參數(shù)結(jié)構(gòu)Table 1 3D-RESnet parameter structure
LIDC肺結(jié)節(jié)診斷信息包括4名放射學(xué)專家對(duì)每張CT片中出現(xiàn)的結(jié)節(jié)的標(biāo)注。其中包括結(jié)節(jié)的九種CT醫(yī)學(xué)征象,有毛刺征(Spiculation)、分葉征(Lobulation)、鈣化(Calcification)、精細(xì)度(Subtlety)、內(nèi)部結(jié)構(gòu)(Internal structure)、邊緣(Margin)、球形度(Sphericity)、紋理(Texture)以及結(jié)節(jié)的惡性度(Malignancy).我們根據(jù)醫(yī)學(xué)征象構(gòu)建多標(biāo)簽相似性矩陣。
對(duì)于樣本集中的兩個(gè)樣本xi,xj,它們的語(yǔ)義相似性rij可以表示為它們擁有相同標(biāo)簽的數(shù)量,最相似的兩個(gè)樣本對(duì)于數(shù)據(jù)集中的九種醫(yī)學(xué)征象都具有相同的標(biāo)簽,即rij=9,最不相似的兩個(gè)樣本不具有相同的標(biāo)簽,即rij=0.
本文構(gòu)建標(biāo)簽相似性矩陣方法的具體步驟為:
表2 九種肺結(jié)節(jié)征象Table 2 9 signs of pulmonary nodules
圖3 構(gòu)建標(biāo)簽相似矩陣Fig.3 Construction of label similarity matrix
1.3.1相似性測(cè)量
(1)
兩者內(nèi)積小,漢明距離就大。相反,若是內(nèi)積大,漢明距離就小。因此不同哈希碼的內(nèi)積可以用來(lái)衡量不同樣本之間的相似性。
給定標(biāo)簽矩陣后,哈希碼的最大后驗(yàn)評(píng)估(MAP)可以表示為:
p(B|S)∝p(S|B)p(B)=
∏Sijp(Sij|B)p(B) .
(2)
其中p(S|B)代表似然函數(shù),p(B)是先驗(yàn)概率,對(duì)于每一個(gè)圖片對(duì),p(Sij|B)是在Sij條件下求得的哈希碼B,可以有如下定義:
(3)
1.3.2損失函數(shù)優(yōu)化
根據(jù)公式(3)相似性度量,可以得到損失函數(shù):
J=-log2p(S|B)=-∑Sij∈Slog2p(Sij|B) .
(4)
根據(jù)公式(2),p(Sij|B)可以寫(xiě)成
p(Sij|B)=σ(Φij)Sij(1-σ(Φij))1-Sij.
(5)
將其結(jié)合公式(3),可以得到
J=-log2p(S|B)=
-∑Sij∈S(ΦSij-log2(1+eΦ)-Φ) .
(6)
即使根據(jù)公式(5)用標(biāo)簽矩陣來(lái)學(xué)習(xí)哈希函數(shù),標(biāo)簽信息也并沒(méi)有被充分利用。最近的一些有關(guān)多標(biāo)簽分類的工作是在多任務(wù)學(xué)習(xí)框架下進(jìn)行的,受此啟發(fā),在哈希層后又加了一層分類層,用簡(jiǎn)單的線性分類器來(lái)模擬學(xué)習(xí)到的哈希碼與標(biāo)簽信息之間的關(guān)系:
Y=WTB.
(7)
其中,W=[w1,w2,…,wk]是分類權(quán)重,Y=[y1,y2,…,yk]是1.2求出的標(biāo)簽向量,可以求出損失函數(shù)如下:
(8)
其中,L(·)是損失函數(shù),λ是正則化參數(shù),‖·‖F(xiàn)是Frobenius參數(shù),結(jié)合公式(6)和(8)可以得到如下公式:
(9)
其中,μ是權(quán)衡參數(shù),v=λμ,對(duì)于線性分類我們選擇L2損失,這樣做意義是使哈希碼盡可能地接近Sij,并且對(duì)于線性分類器來(lái)說(shuō),能夠得到最好的分類效果,公式(9)可以近似為:
(10)
hi=MTΘ(xi,θ)+n.
(11)
其中,θ是全連接層之前的參數(shù),M∈R4 096×K代表權(quán)重矩陣,n∈RK×1為偏置項(xiàng)。引入輔助變量的好處是可以將方程(10)分解為兩個(gè)子優(yōu)化問(wèn)題,通過(guò)交替極小化方法迭代求解。交替優(yōu)化哈希碼算法如下所示:
輸入bi,W,M,n,Θ
輸出 優(yōu)化好的哈希碼B
Step1 當(dāng)固定bi,W時(shí),有如下公式
(12)
然后按照公式(13),通過(guò)反向傳播(BP)更新權(quán)值M,n,Θ
(13)
Step2 當(dāng)固定M,n,Θ,M,可以通過(guò)如下方式更新W.
(14)
Step3 當(dāng)固定M,n,Θ,W,公式(13)變?yōu)?/p>
(15)
Step4 采用位置坐標(biāo)下降法迭代逐行求解B
在檢索時(shí),本文首先將檢索圖像的二值碼與圖像庫(kù)中的二值碼用漢明距離進(jìn)行相似性度量,降序選出最相似的k個(gè)圖片;然后再用提取特征時(shí)全連接層的特征,進(jìn)行歐氏距離的衡量,更細(xì)致地找到k個(gè)圖片中最相似的圖片,由此提高檢索效率,方法如圖4所示。
圖4 肺結(jié)節(jié)圖像檢索框架Fig.4 Image retrieval framework for pulmonary nodules
肺結(jié)節(jié)精準(zhǔn)圖像檢索算法如下:
輸入 查詢圖像的哈希碼Hq={hq1,…,hqk}
輸出 相似肺結(jié)節(jié)圖像
Step1 從哈希碼庫(kù)中通過(guò)漢明距離計(jì)算,篩選出m個(gè)相似圖像
Step2 forj=l:m
計(jì)算查詢圖像與第j幅圖像在全連接層圖像的歐氏距離DE
End for
Step3 將歐氏距離進(jìn)行升序排序,選取前k個(gè)歐式距離較小的圖像作為候選集.
{x1,x2,…,xk}←sort(DE,′descend′) .
本文實(shí)驗(yàn)部分所使用的肺部CT影像一共709例,分別來(lái)自LIDC數(shù)據(jù)集和合作醫(yī)院。同時(shí),在專業(yè)放射醫(yī)師的指導(dǎo)下,對(duì)所有實(shí)驗(yàn)病例進(jìn)行了相應(yīng)的標(biāo)記。將LIDC數(shù)據(jù)集中獲取的圖像作為訓(xùn)練集,將合作醫(yī)院肺結(jié)節(jié)數(shù)據(jù)作為整個(gè)方法的測(cè)試集以驗(yàn)證本文方法的有效性。
以往的檢測(cè)實(shí)驗(yàn)經(jīng)驗(yàn)表明,多個(gè)類之間樣本大小的不平衡可能導(dǎo)致一個(gè)偏向于包含更多樣本的類的訓(xùn)練偏倚模型。在模型訓(xùn)練中,訓(xùn)練和驗(yàn)證集中樣本的質(zhì)量和數(shù)量對(duì)模型訓(xùn)練有重要影響。一般情況下,樣本集應(yīng)該只包含放射科醫(yī)生標(biāo)注的區(qū)域,否則訓(xùn)練過(guò)的模型可能不穩(wěn)定。同時(shí),應(yīng)該收集盡可能多的樣品來(lái)訓(xùn)練模型?;谝陨辖?jīng)驗(yàn),在三維空間中通過(guò)多方向體素平移來(lái)擴(kuò)充標(biāo)注樣本。每一組數(shù)據(jù)旋轉(zhuǎn)90°,180°,270°,然后再將旋轉(zhuǎn)后的數(shù)據(jù)做鏡面反射,進(jìn)行數(shù)據(jù)增強(qiáng)。數(shù)據(jù)擴(kuò)增如表3所示。
表3 數(shù)據(jù)擴(kuò)充Table 3 Data expansion
對(duì)于訓(xùn)練,我們使用動(dòng)量0.9的隨機(jī)梯度下降和權(quán)重衰減為5×10-4,批量大小為32的參數(shù)進(jìn)行學(xué)習(xí)。一開(kāi)始學(xué)習(xí)速率被設(shè)定為10-4,20個(gè)epoch后降低到10-5.訓(xùn)練一個(gè)監(jiān)視器驗(yàn)證數(shù)據(jù)集的損失,如果損失增加太多,它會(huì)提前停止。實(shí)驗(yàn)是在一個(gè)8 GB內(nèi)存的NVIDIA GeForce GTX 1080 GPU上進(jìn)行的。
為了驗(yàn)證本文所提出方法的性能,使用平均準(zhǔn)確率MAP(mean average precision),查準(zhǔn)率P@K,召回率R@K3個(gè)指標(biāo),通過(guò)7種常用的哈希算法(包括:LSH、ITQ、KSH、JKSH、CBMIR)對(duì)本文提出的方法進(jìn)行評(píng)價(jià)。對(duì)于優(yōu)化方法,本文對(duì)比了松弛優(yōu)化(Relaxed Optimization)離散循環(huán)坐標(biāo)下降(discrete cyclic coordinate descent,DCC).對(duì)于特征提取方法,對(duì)比了傳統(tǒng)2D CNN特征與3D Resnet特征。
MAP指標(biāo)是檢測(cè)模型檢索能力,相似結(jié)節(jié)在檢索中的排序越靠前,MAP值就越大。P@K反映的是在檢索到的前K個(gè)結(jié)節(jié)中,和查詢結(jié)節(jié)相似的結(jié)節(jié)出現(xiàn)的概率。R@K反映的是相似結(jié)節(jié)在檢索到的前K個(gè)結(jié)節(jié)中,與所有相似結(jié)節(jié)的比值。相關(guān)公式的定義如下:
(16)
(17)
(18)
由于哈希碼的長(zhǎng)度對(duì)檢索效果有重要影響,為了比較不同長(zhǎng)度的哈希碼的檢索效果,使用查全率-查準(zhǔn)率(Recall-Precision)來(lái)衡量本文所提出方法的性能。設(shè)定哈希碼長(zhǎng)度為12、24、32、48、64、和72位。結(jié)果如圖5所示,圖5(a)-(f)展示了在不同的哈希碼長(zhǎng)度下不同方法的P-R曲線,可以看出不同的方法檢索性能都隨著哈希碼長(zhǎng)度的增加而提高,當(dāng)r=64 bits時(shí),性能逐漸趨于穩(wěn)定。這是因?yàn)?D Resnet提取的是肺結(jié)節(jié)空間的信息特征,對(duì)肺結(jié)節(jié)的信息提取越全面,檢索準(zhǔn)確性就越高;雖然隨著返回圖像數(shù)目的增加,整體的模型檢索精度有明顯下降的趨勢(shì),但是仍然優(yōu)于其他哈希碼位數(shù)下的檢索效果。
圖5 不同哈希碼下不同方法的查全率-查準(zhǔn)率曲線圖Fig.5 Recall-precision curves of different methods under different Hash codes
表4列出了不同的哈希檢索方法在不同特征下隨著編碼長(zhǎng)度的增加,所對(duì)應(yīng)的平均準(zhǔn)確率(MAP)實(shí)驗(yàn)結(jié)果。
表4 不同編碼長(zhǎng)度下兩種特征的MAP值Table 4 MPA values of the two features under different coding lengths
對(duì)比表4中CNNs特征與3D Resnet特征的實(shí)驗(yàn)結(jié)果,可以看出基于3D Resnet特征的MAP值具有明顯優(yōu)勢(shì)。本文使用3D Resnet特征在不同編碼長(zhǎng)度下一直擁有最高的MAP值,與傳統(tǒng)2D CNNs相比,效果分別提升了7.9%,7.2%,12.5%,13%,15.6%,18.5%.進(jìn)一步驗(yàn)證了從肺結(jié)節(jié)單張圖像特征到高層空間語(yǔ)義中逐層提取的3D Resnet特征對(duì)檢索結(jié)果的有效性。
為了評(píng)估本文優(yōu)化方法的有效性,使用P@K比較檢索結(jié)果中前5個(gè)相似結(jié)節(jié)的精確度。
表5所示是本文優(yōu)化方法與其他優(yōu)化方法在不同編碼長(zhǎng)度下,所對(duì)應(yīng)的平均準(zhǔn)確率(MAP)實(shí)驗(yàn)結(jié)果。
表5 不同優(yōu)化方法比較Table 5 Comparison of different optimization methods
根據(jù)3種方法在不同編碼長(zhǎng)度下的Precision和MAP對(duì)比,可以看出,隨著比特?cái)?shù)的升高,差距越來(lái)越大,本文提出的優(yōu)化方法比傳統(tǒng)的優(yōu)化方法對(duì)檢索的精確度有著顯著的提高,離散優(yōu)化對(duì)于哈希本身十分重要。
圖6展示了當(dāng)哈希碼位數(shù)為64時(shí),本文方法與最新的哈希算法的檢索效果。從中可以看出,使用了3D Resnet網(wǎng)絡(luò)提取肺結(jié)節(jié)特征并利用交替最小化正則優(yōu)化方法,會(huì)達(dá)到更高的平均檢索精度,相比較傳統(tǒng)2D網(wǎng)絡(luò)和優(yōu)化方法,平均提高了5%~8%左右,同時(shí)也證實(shí)了本文提出的基于醫(yī)學(xué)征象的多標(biāo)簽語(yǔ)義監(jiān)督3D肺結(jié)節(jié)圖像相似性檢索方法可以產(chǎn)生更精確的檢索結(jié)果,在檢索前5張肺結(jié)節(jié)圖像時(shí)的準(zhǔn)確度可以達(dá)到94.83%.
圖6 不同方法的檢索精度比較Fig.6 Comparison of retrieval accuracy of different methods
本文提出一種基于醫(yī)學(xué)征象的多標(biāo)簽語(yǔ)義監(jiān)督3D肺結(jié)節(jié)圖像相似性檢索方法,用于實(shí)現(xiàn)相似肺結(jié)節(jié)CT圖像ROI區(qū)域的快速檢索。本文方法的主要貢獻(xiàn)有:1) 利用基于醫(yī)學(xué)征象的多標(biāo)簽語(yǔ)義3D Resnet網(wǎng)絡(luò)提取肺結(jié)節(jié)的重要空間語(yǔ)義特征,能更有效地表示肺結(jié)節(jié)含有的征象信息;2) 通過(guò)構(gòu)造準(zhǔn)確的哈希碼并利用交替最小化正則方法進(jìn)行優(yōu)化;3) 為了進(jìn)一步提高檢索精度,使用多級(jí)檢索方法由粗到精進(jìn)行檢索。本文利用合作醫(yī)院數(shù)據(jù)集和公共數(shù)據(jù)集LIDC進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)證明本文方法在肺結(jié)節(jié)圖像檢索過(guò)程中的有效性和準(zhǔn)確性。未來(lái)的工作將研究基于深度哈希的肺結(jié)節(jié)圖像快速檢索,在提高結(jié)節(jié)圖像的檢索精度的同時(shí),保證檢索的速度,從而進(jìn)一步為醫(yī)師診斷肺部病灶提供輔助和支撐。