冠脈光學相干斷層成像(OCT)圖像斑塊區域分割是冠脈斑塊識別的前提和基礎,對后續斑塊特征分析及易損斑塊識別,進而實現冠脈疾病的輔助診斷分析具有十分重要的意義。本文提出了一種新的算法,使用K-means 算法與圖割算法結合,實現了冠脈 OCT 圖像斑塊準確的多區域分割——纖維化斑塊、鈣化斑塊和脂質池,并較好地保留了斑塊的邊界特征信息。本文實驗中對 20 組具有典型斑塊特征的冠脈 OCT 圖像進行了分割,通過與醫生手動分割結果比較,證明本文方法能準確地分割出斑塊區域,且算法具有較好的穩定性。研究結果證明了本文工作能夠極大減少醫生分割斑塊所消耗的時間,避免不同醫生之間的主觀差異性,或可輔助臨床醫生對冠心病的診斷與治療。
引用本文: 張勃, 楊建利, 王光磊, 王洪瑞, 劉秀玲, 韓業晨. 基于核圖割算法的冠脈光學相干斷層圖像斑塊區域分割. 生物醫學工程學雜志, 2017, 34(1): 15-20. doi: 10.7507/1001-5515.201606010 復制
引言
斑塊和易損斑塊識別對心血管相關疾病的診斷具有十分重要的意義[1-2],特別是隨著冠狀動脈光學相干斷層成像(optical coherence tomography,OCT)技術的出現,使得直觀觀察斑塊的形態成為可能,如圖 1 所示。醫生可以依據肉眼觀察到的斑塊形態變化及自己的臨床經驗進行診斷和治療。然而,對 OCT 圖像的準確解讀需花費醫生大量的時間,且不同的醫生個體之間具有較強的主觀性和個體差異性,為此計算機自動識別和輔助診斷成為精確診斷和治療不可或缺的一部分。

斑塊和易損斑塊識別的前提是準確分割出斑塊區域,進而根據斑塊區域的灰度和紋理特征判斷它的斑塊類型。Athanasiou 等[3]提出了一種鈣化斑塊自動識別方法,他們首先提取血管內膜與冠脈 OCT 圖像最大掃描深度之間的區域,采用 K-means 方法將該區域分成 3 個聚類,將兩個聚類之間夾雜部分且和導管陰影區域具有相似灰度特性的區域認作鈣化斑塊。Wang 等[4]則根據鈣化斑塊區域內外高灰度差異特征,提出了一種結合邊界檢測和基于梯度水平集模型的半自動分割方法分割鈣化斑塊,并將其應用于血管內 OCT 系統。Prakash 等[5-6]提出了基于紋理特征的粥樣動脈硬化斑塊分割方法,通過提取紋理特征和 K-means 聚類方法將圖像特征分為 3 類,并將該 3 類特征空間映射到原始冠脈 OCT 圖像,進而得到斑塊區域。
盡管在斑塊分割方面已經出現了很多算法,并取得了不錯的成果。但是大多數算法僅針對一種斑塊進行分割,不能達到臨床輔助診斷的目的。為此,本文提出了一種基于內核(kernel)圖割模型的多斑塊區域分割方法,實現了纖維化斑塊、鈣化斑塊及脂質化斑塊區域的準確分割。本文方法能夠極大減少醫生分割斑塊所消耗的大量時間,還可避免不同醫生之間的主觀性和個體差異性,有效輔助臨床醫生對冠心病的診斷與治療。
1 數據來源
本文所使用的冠脈 OCT 圖像數據由北京協和醫院提供,采用光學相干斷層掃描儀(ST.JUDE MEDICAL C7)進行采集。從 9 名冠狀動脈粥樣硬化患者(患者為 8 男 1 女)中隨機選擇共 20 幅冠脈 OCT 圖像,包含纖維化斑塊、鈣化斑塊和脂質池。
本文實驗采用 Windows 7 操作系統,以軟件 Matlab 2014 工具實施操作。
2 斑塊區域分割實現
本文算法實現框圖如圖 2 所示,首先對冠脈 OCT 圖像進行預處理,去除圖像干擾和不相關區域;然后基于 K-means 算法對圖像進行聚類分析,得到聚類中心點,并通過 kernel 變換將冠脈 OCT 圖像依據聚類中心變換到高維空間;最后,使用圖割(Graph Cuts)圖像分割方法進行分割,根據斑塊區域的顏色特征將斑塊準確分割出來。

使用 Graph Cuts 方法對圖像進行分割是由于:① 圖論是一門研究比較早而且已經發展成熟的學科,具有較好的數學基礎。針對某個特定的問題,圖論中有多個方法可以解決;② 圖像和圖之間非常相似。在圖像映射為圖之后,便可以利用圖論中的各種理論和數學工具進行圖像分割,能夠較為有效地提供不同特質的斑塊區域。
2.1 圖像預處理
如圖 3 所示,原始的冠脈 OCT 圖像中,除了包含有冠脈血管的橫截面圖(左圖上)和縱向視圖(左圖下)外,在橫截面圖中還包含一些干擾,如:外圍的文字標注、中心斜線、導管圓環等。在斑塊分割中主要考慮橫截面圖中大的圓形區域,因此其他干擾在預處理時去除。在冠脈 OCT 圖像中,縱向視圖和導管圓環的圖像坐標是可知的,因此很容易根據坐標分布去除,中心斜線經過 Hough 變換去除,這樣就得到了如圖 3 所示的右側圖像。

2.2 K-means 聚類
K-means 是一種簇的聚類方法,它會根據事物的不同屬性將事物分成不同的聚類,并給出每一個聚類的中心[7]。本文采用 K-means 聚類方法將預處理后的冠脈 OCT 圖像依據顏色分布分成不同的聚類,并得到聚類中心 C。本文使用最小化函數
$ arg S\;{\rm {min}}\sum\limits_{l = 1}^K {\sum\limits_{{x_l} \in {S_i}} {{{\left\| {{x_l} - {\mu _i}} \right\|}^2}} } $ |
其中 μi 表示 Si 中的平均值,K 就是聚類時將醫學圖像分割出的區域數目。
2.3 kernel 變換
kernel Graph Cuts 算法是將圖像映射成加權圖,然后把圖像像素看作圖的頂點,鄰接像素之間的關系看作圖的邊,鄰接像素之間的相似性看作邊的權值,根據邊的權值設計能量函數,最后通過最小化能量函數完成對圖的分割,從而實現圖像分割。
經過 K-means 聚類確定圖像聚類中心 C,再使用式(2)的徑向基函數核變換,將圖像 Im 變換到高維空間。
$ K(Im,C) = {\rm {exp}}( - \frac{{{{\left\| {{\mathop{Im}\nolimits} - C} \right\|}^2}}}{{{{{β}} ^2}}}) $ |
其中,β 為徑向基函數的寬度參數,控制函數徑向作用范圍,取 β=0.5。
2.4 Graph Cuts 分割
Graph Cuts 是將圖像的分割問題轉化為圖像中每一個像素點標簽的放置問題[8]。
根據圖像特征構建一個能量函數,通過最小化該能量函數達到標簽的最優配置。本文中,Graph Cuts 能量函數由兩部分組成,一是計算分割區域內顏色相似性的數據項 D(f),另一個是使邊界平滑的正則項 R(f),其可表示為:
$ H(f) = D(f) + {{α}} R(f) $ |
其中,f 表示像素點到標簽空間的映射, 為一正數,控制邊界平滑程度。
本文采用 kernel 空間中的非歐氏距離作為數據項,則數據項 D(f)進一步演化為:
$ D(f) = \sum\limits_{l \in L} {\sum\limits_{x \in {S_l}} {{{(\varphi ({u_l}) - \varphi ({m_x}))}^2}} } $ |
其中,x 和 l 分別為像素點和對應的標簽,Sl和 L 為區域集合和標簽集合。φ(·)為 kernel 非線性映射,ul為分段常數模型的模型參數,mx為圖像的顏色向量。
正則項 R(f)進一步演化為:
$ R(f) = \sum\limits_{\left\{ {x,y} \right\} \in N} {r(f(x),\;f(y))} $ |
其中,x,y 為臨近點集 N 中的一對臨近點,,A 為一固定常數。
3 實驗結果與討論
把經過預處理的圖像采用 K-means 算法進行處理,分成 6 個區域(k=4,5,7,8 也進行實驗),能夠有效地分割出目標區域,不會產生較多小區域或缺失。
在 Graph Cuts 分割算法中,正則項 R(f)前的參數 α 控制斑塊區域邊界的光滑度。它即影響斑塊區域的完整度,也影響斑塊區域分割的準確性。如圖 4 所示,給出了在不同 α 值下得到的斑塊區域。從圖中可以看出,隨著 α 增大,得到的斑塊邊界變得光滑,但連續性也受到了影響。經過對所選圖像進行反復實驗驗證,最終我們選擇 α=0.6,此時得到的斑塊區域最精確。

分別使用本文方法和 K-means 方法對 9 個患者的冠脈 OCT 圖像進行程序分析,實驗中給出了兩個患者的分割結果,其斑塊包括鈣化斑塊、纖維化斑塊和脂質斑塊,如圖 5、圖 6 所示。


如圖 5、圖 6 所示,本文算法明顯優于 K-means 方法,特別是對于鈣化斑塊的分割。由于脂質斑塊和鈣化斑塊對光的衰減系數較為相似[9],顏色較為接近,且分布位置相近,鈣化斑塊往往湮滅在脂質斑塊當中,不易分割出來。本文算法對鈣化斑塊分割具有很好的效果。
為了更加準確地評估斑塊區域分割的準確度,以醫生手動分割的斑塊區域作為“金標準”,使用 Jaccard 系數分別測量了手動分割的斑塊區域和本文算法及 K-means 算法分割得到斑塊區域的重合度,結果如表 1 所示。

如表 1 所示,纖維化斑塊平均分割精度在 75%以上,是所有斑塊類型中分割精度最高的,這主要是因為纖維化斑塊為圖像中最亮的區域,與其他類型斑塊的顏色區分度較大,容易識別。而對于鈣化斑塊其在顏色上和脂質斑塊類似,分割時很容易和脂質斑塊混在一起,造成分割邊界不清晰。相比于 K-means 分割方法,本文算法在區分鈣化斑塊和脂質斑塊上,具有明顯的優勢。
為了進一步證明本文算法的有效性,又與 Athanasiou 等[10]算法在重合面積上進行了對比。重合面積的計算公式如下所示:
$ {\text{準確度}} = \frac{{A \cap B}}{B} \times 100\% $ |
其中,A 代表分割結果,B 代表醫生手動分割(金標準)。
實驗對比結果如 表 2 所示,從表中可以看出,本文算法在鈣化斑塊、脂質斑塊分割上優于Athanasiou 等 [10] 的算法。但在纖維化斑塊分割方面則略低于Athanasiou 等 [10] 的算法。原因是在分割脂質斑塊與纖維化斑塊時,兩者結合部位較為模糊不清,本文方法在分割脂質斑塊與纖維化斑塊的邊界時有部分差異。

本文方法可代替醫生進行手動分割斑塊,大大減少了醫生處理冠脈 OCT 圖像的時間,而且對不同醫生間的分割結果有指導作用。
4 總結
本文提出了一種基于 kernel Graph Cuts 模型的冠脈 OCT 圖像多斑塊區域分割算法,較好地實現了纖維化斑塊、鈣化斑塊和脂質化斑塊的分割。并和前面研究使用的 K-means 方法的分割結果進行了對比分析,本文算法明顯優于 K-means 方法,特別是在鈣化斑塊區域的分割上優勢明顯。又與Athanasiou 等 [10] 的算法對比,在鈣化斑塊和脂質化斑塊分割上具有明顯優勢。本文提出的多斑塊區域分割算法為醫生提供了斑塊區域特征信息,節約了醫生診斷時間,同時也為醫生分析斑塊對患者的危險程度評估提供了輔助。由于斑塊區域分布廣泛,且缺乏連續性,致使醫生很難準確標記所有斑塊區域,這也是影響本文算法準確度評價的主要因素。未來我們將采用多組醫生手動標記的斑塊區域對算法進行評價分析。
引言
斑塊和易損斑塊識別對心血管相關疾病的診斷具有十分重要的意義[1-2],特別是隨著冠狀動脈光學相干斷層成像(optical coherence tomography,OCT)技術的出現,使得直觀觀察斑塊的形態成為可能,如圖 1 所示。醫生可以依據肉眼觀察到的斑塊形態變化及自己的臨床經驗進行診斷和治療。然而,對 OCT 圖像的準確解讀需花費醫生大量的時間,且不同的醫生個體之間具有較強的主觀性和個體差異性,為此計算機自動識別和輔助診斷成為精確診斷和治療不可或缺的一部分。

斑塊和易損斑塊識別的前提是準確分割出斑塊區域,進而根據斑塊區域的灰度和紋理特征判斷它的斑塊類型。Athanasiou 等[3]提出了一種鈣化斑塊自動識別方法,他們首先提取血管內膜與冠脈 OCT 圖像最大掃描深度之間的區域,采用 K-means 方法將該區域分成 3 個聚類,將兩個聚類之間夾雜部分且和導管陰影區域具有相似灰度特性的區域認作鈣化斑塊。Wang 等[4]則根據鈣化斑塊區域內外高灰度差異特征,提出了一種結合邊界檢測和基于梯度水平集模型的半自動分割方法分割鈣化斑塊,并將其應用于血管內 OCT 系統。Prakash 等[5-6]提出了基于紋理特征的粥樣動脈硬化斑塊分割方法,通過提取紋理特征和 K-means 聚類方法將圖像特征分為 3 類,并將該 3 類特征空間映射到原始冠脈 OCT 圖像,進而得到斑塊區域。
盡管在斑塊分割方面已經出現了很多算法,并取得了不錯的成果。但是大多數算法僅針對一種斑塊進行分割,不能達到臨床輔助診斷的目的。為此,本文提出了一種基于內核(kernel)圖割模型的多斑塊區域分割方法,實現了纖維化斑塊、鈣化斑塊及脂質化斑塊區域的準確分割。本文方法能夠極大減少醫生分割斑塊所消耗的大量時間,還可避免不同醫生之間的主觀性和個體差異性,有效輔助臨床醫生對冠心病的診斷與治療。
1 數據來源
本文所使用的冠脈 OCT 圖像數據由北京協和醫院提供,采用光學相干斷層掃描儀(ST.JUDE MEDICAL C7)進行采集。從 9 名冠狀動脈粥樣硬化患者(患者為 8 男 1 女)中隨機選擇共 20 幅冠脈 OCT 圖像,包含纖維化斑塊、鈣化斑塊和脂質池。
本文實驗采用 Windows 7 操作系統,以軟件 Matlab 2014 工具實施操作。
2 斑塊區域分割實現
本文算法實現框圖如圖 2 所示,首先對冠脈 OCT 圖像進行預處理,去除圖像干擾和不相關區域;然后基于 K-means 算法對圖像進行聚類分析,得到聚類中心點,并通過 kernel 變換將冠脈 OCT 圖像依據聚類中心變換到高維空間;最后,使用圖割(Graph Cuts)圖像分割方法進行分割,根據斑塊區域的顏色特征將斑塊準確分割出來。

使用 Graph Cuts 方法對圖像進行分割是由于:① 圖論是一門研究比較早而且已經發展成熟的學科,具有較好的數學基礎。針對某個特定的問題,圖論中有多個方法可以解決;② 圖像和圖之間非常相似。在圖像映射為圖之后,便可以利用圖論中的各種理論和數學工具進行圖像分割,能夠較為有效地提供不同特質的斑塊區域。
2.1 圖像預處理
如圖 3 所示,原始的冠脈 OCT 圖像中,除了包含有冠脈血管的橫截面圖(左圖上)和縱向視圖(左圖下)外,在橫截面圖中還包含一些干擾,如:外圍的文字標注、中心斜線、導管圓環等。在斑塊分割中主要考慮橫截面圖中大的圓形區域,因此其他干擾在預處理時去除。在冠脈 OCT 圖像中,縱向視圖和導管圓環的圖像坐標是可知的,因此很容易根據坐標分布去除,中心斜線經過 Hough 變換去除,這樣就得到了如圖 3 所示的右側圖像。

2.2 K-means 聚類
K-means 是一種簇的聚類方法,它會根據事物的不同屬性將事物分成不同的聚類,并給出每一個聚類的中心[7]。本文采用 K-means 聚類方法將預處理后的冠脈 OCT 圖像依據顏色分布分成不同的聚類,并得到聚類中心 C。本文使用最小化函數
$ arg S\;{\rm {min}}\sum\limits_{l = 1}^K {\sum\limits_{{x_l} \in {S_i}} {{{\left\| {{x_l} - {\mu _i}} \right\|}^2}} } $ |
其中 μi 表示 Si 中的平均值,K 就是聚類時將醫學圖像分割出的區域數目。
2.3 kernel 變換
kernel Graph Cuts 算法是將圖像映射成加權圖,然后把圖像像素看作圖的頂點,鄰接像素之間的關系看作圖的邊,鄰接像素之間的相似性看作邊的權值,根據邊的權值設計能量函數,最后通過最小化能量函數完成對圖的分割,從而實現圖像分割。
經過 K-means 聚類確定圖像聚類中心 C,再使用式(2)的徑向基函數核變換,將圖像 Im 變換到高維空間。
$ K(Im,C) = {\rm {exp}}( - \frac{{{{\left\| {{\mathop{Im}\nolimits} - C} \right\|}^2}}}{{{{{β}} ^2}}}) $ |
其中,β 為徑向基函數的寬度參數,控制函數徑向作用范圍,取 β=0.5。
2.4 Graph Cuts 分割
Graph Cuts 是將圖像的分割問題轉化為圖像中每一個像素點標簽的放置問題[8]。
根據圖像特征構建一個能量函數,通過最小化該能量函數達到標簽的最優配置。本文中,Graph Cuts 能量函數由兩部分組成,一是計算分割區域內顏色相似性的數據項 D(f),另一個是使邊界平滑的正則項 R(f),其可表示為:
$ H(f) = D(f) + {{α}} R(f) $ |
其中,f 表示像素點到標簽空間的映射, 為一正數,控制邊界平滑程度。
本文采用 kernel 空間中的非歐氏距離作為數據項,則數據項 D(f)進一步演化為:
$ D(f) = \sum\limits_{l \in L} {\sum\limits_{x \in {S_l}} {{{(\varphi ({u_l}) - \varphi ({m_x}))}^2}} } $ |
其中,x 和 l 分別為像素點和對應的標簽,Sl和 L 為區域集合和標簽集合。φ(·)為 kernel 非線性映射,ul為分段常數模型的模型參數,mx為圖像的顏色向量。
正則項 R(f)進一步演化為:
$ R(f) = \sum\limits_{\left\{ {x,y} \right\} \in N} {r(f(x),\;f(y))} $ |
其中,x,y 為臨近點集 N 中的一對臨近點,,A 為一固定常數。
3 實驗結果與討論
把經過預處理的圖像采用 K-means 算法進行處理,分成 6 個區域(k=4,5,7,8 也進行實驗),能夠有效地分割出目標區域,不會產生較多小區域或缺失。
在 Graph Cuts 分割算法中,正則項 R(f)前的參數 α 控制斑塊區域邊界的光滑度。它即影響斑塊區域的完整度,也影響斑塊區域分割的準確性。如圖 4 所示,給出了在不同 α 值下得到的斑塊區域。從圖中可以看出,隨著 α 增大,得到的斑塊邊界變得光滑,但連續性也受到了影響。經過對所選圖像進行反復實驗驗證,最終我們選擇 α=0.6,此時得到的斑塊區域最精確。

分別使用本文方法和 K-means 方法對 9 個患者的冠脈 OCT 圖像進行程序分析,實驗中給出了兩個患者的分割結果,其斑塊包括鈣化斑塊、纖維化斑塊和脂質斑塊,如圖 5、圖 6 所示。


如圖 5、圖 6 所示,本文算法明顯優于 K-means 方法,特別是對于鈣化斑塊的分割。由于脂質斑塊和鈣化斑塊對光的衰減系數較為相似[9],顏色較為接近,且分布位置相近,鈣化斑塊往往湮滅在脂質斑塊當中,不易分割出來。本文算法對鈣化斑塊分割具有很好的效果。
為了更加準確地評估斑塊區域分割的準確度,以醫生手動分割的斑塊區域作為“金標準”,使用 Jaccard 系數分別測量了手動分割的斑塊區域和本文算法及 K-means 算法分割得到斑塊區域的重合度,結果如表 1 所示。

如表 1 所示,纖維化斑塊平均分割精度在 75%以上,是所有斑塊類型中分割精度最高的,這主要是因為纖維化斑塊為圖像中最亮的區域,與其他類型斑塊的顏色區分度較大,容易識別。而對于鈣化斑塊其在顏色上和脂質斑塊類似,分割時很容易和脂質斑塊混在一起,造成分割邊界不清晰。相比于 K-means 分割方法,本文算法在區分鈣化斑塊和脂質斑塊上,具有明顯的優勢。
為了進一步證明本文算法的有效性,又與 Athanasiou 等[10]算法在重合面積上進行了對比。重合面積的計算公式如下所示:
$ {\text{準確度}} = \frac{{A \cap B}}{B} \times 100\% $ |
其中,A 代表分割結果,B 代表醫生手動分割(金標準)。
實驗對比結果如 表 2 所示,從表中可以看出,本文算法在鈣化斑塊、脂質斑塊分割上優于Athanasiou 等 [10] 的算法。但在纖維化斑塊分割方面則略低于Athanasiou 等 [10] 的算法。原因是在分割脂質斑塊與纖維化斑塊時,兩者結合部位較為模糊不清,本文方法在分割脂質斑塊與纖維化斑塊的邊界時有部分差異。

本文方法可代替醫生進行手動分割斑塊,大大減少了醫生處理冠脈 OCT 圖像的時間,而且對不同醫生間的分割結果有指導作用。
4 總結
本文提出了一種基于 kernel Graph Cuts 模型的冠脈 OCT 圖像多斑塊區域分割算法,較好地實現了纖維化斑塊、鈣化斑塊和脂質化斑塊的分割。并和前面研究使用的 K-means 方法的分割結果進行了對比分析,本文算法明顯優于 K-means 方法,特別是在鈣化斑塊區域的分割上優勢明顯。又與Athanasiou 等 [10] 的算法對比,在鈣化斑塊和脂質化斑塊分割上具有明顯優勢。本文提出的多斑塊區域分割算法為醫生提供了斑塊區域特征信息,節約了醫生診斷時間,同時也為醫生分析斑塊對患者的危險程度評估提供了輔助。由于斑塊區域分布廣泛,且缺乏連續性,致使醫生很難準確標記所有斑塊區域,這也是影響本文算法準確度評價的主要因素。未來我們將采用多組醫生手動標記的斑塊區域對算法進行評價分析。