• 沒有找到結果。

由心臟電腦斷層掃描自動擷取分析冠狀動脈

N/A
N/A
Protected

Academic year: 2021

Share "由心臟電腦斷層掃描自動擷取分析冠狀動脈"

Copied!
51
0
0

加載中.... (立即查看全文)

全文

(1)

多媒體工程研究所

由心臟電腦斷層掃描自動擷取分析冠狀動脈

Automatic Extraction of the Coronary Artery from MDCT

研 究 生:徐崇桂

指導教授:王才沛 教授

(2)

由心臟電腦斷層掃描自動擷取分析冠狀動脈

Automatic Extraction of the Coronary Artery from MDCT

研 究 生:徐崇桂 Student:Chung-Kuei Hsu

指導教授:王 才沛 Advisor:Tsaipei Wang

國 立 交 通 大 學

多 媒 體 工 程 研 究 所

碩 士 論 文

A Thesis

Submitted to Institute of MultimediaEngineering College of Computer Science

National Chiao Tung University in partial Fulfillment of the Requirements

for the Degree of Master

in

Computer Science

July 2010

Hsinchu, Taiwan, Republic of China

(3)

由心臟電腦斷層掃描自動擷取分析冠狀動脈

學生:徐崇桂 指導教授:王才沛

國立交通大學多媒體工程研究所 碩士班

摘要

近年來,由於多切面電腦斷層掃描(Multi-Detector Computed Tomography,簡稱 MDCT)的快速發展,電腦斷層影像變的更精確、解析度更高,而被廣泛的使用。因此 近年來許多學者希望能夠發展出一套自動預診系統,來輔助人工診斷。然而預診要成功 的前提,是要能夠自動化的找出我們要診斷的部分,也就是冠狀動脈。所以我們的論文 就是希望能夠自動化的找出冠狀動脈,提供給後續預診系統來使用。首先我們運用影像 處理的方式,來分割出心臟部位並找出屬於冠狀動脈的部分,再使用距離轉換(distance transform)找出冠狀動脈的中心當作代表點,接著再根據冠狀動脈分布的方向、密度來 判斷代表點之間的連通性,來找出大略的冠狀動脈樹狀結構。接著我們藉由找出主動脈 來求出冠狀動脈的起點,並根據這個起點來執行一系列的圖形演算法(graph theory)來 取出正確的冠狀動脈樹狀結構。

(4)

Automatic Extraction of the Coronary Artery from MDCT

Student:Chung-Kuei Hsu

Advisor:Tsaipei Wang

Institute of Multimedia Engineering

College of Computer Science

National Chiao Tung University

Abstract

In recent years, due to the rapid development and expanded use of MDCT (multi-detector computed tomography), it becomes much easier than before to obtain more accurate and high-resolution image data of the heart. Many scholars have attempted to develop algorithms for the automatic extraction to find the coronary arteries from the MDCT images to facilitate the screening and diagnosis. This is also the purpose of this thesis. First we use morphological image processing to find the heart region and coronary artery candidate points. Next we use distance transform to find the centers of the coronary artery candidate points as prototypes. We then utilize the distribution and density of candidate points around each prototype to link the prototypes into coronary artery trees. The starting points of the coronary arteries are identified by finding the location of aorta. Finally we use some algorithms of the graph theory to select the correct coronary artery trees.

(5)

誌謝

這篇論文能夠順利完成,首先我要感謝我的指導教授王才沛老師,對於非本科系的 我耐心的指導與教誨,在研究上老師提供了許多寶貴的建議與解決方向,讓我在論文研 究上更加的順利,在此非常感謝老師的栽培。也要感謝莊仁輝教授與陳祝嵩教授擔任我 們的口詴委員,在論文口詴中提供了許多寶貴的建議,使得本論文更加的完備,特此致 謝。也要感謝交通大學提供了我們充分的資源與硬體設備,讓我們在實驗的過程更加的 順暢,也讓我在這兩年的研究所生涯學習到了很多東西。 接下來我要感謝我的家人,感謝你們的支持與鼓勵,讓我可以毫無顧慮的專心做研 究,以達成研究所的學歷。也要感謝遠方的馬哥,有了你的經驗與鼓勵,讓我可以克服 許多研究上的挫折。感謝和我一起努力的偉誌與俞邦,讓我在準備論文的這條路上並不 孤單。也要感謝實驗室的學弟良佑、俞丞、裕傑、俊予,感謝你們帶來的歡樂,讓我的 研究生涯多了些樂趣,在此衷心的謝謝你們跟指導教授王才沛老師

(6)

目錄:

摘要...i Abstract...ii 誌謝...iii 目錄...iv 圖例...vi 表格...viii 第一章 簡介...1 1.1 研究動機...1 1.2 論文結構...3 第二章 文獻縱覽...4 2.1 冠狀動脈擷取...4 2.2 血管擷取...6 第三章 冠狀動脈擷取...7 3.1 前處理...7 3.2 估計心臟範圍...9 3.3 擷取冠狀動脈...10 3.4 代表點的選取...14 3.5 連結代表點...18 3.6 擷取冠狀動脈樹狀結構...21 3.7 調整代表點...29 第四章 實驗結果...32

(7)

第五章 結論與未來展望...39 參考文獻...41

(8)

圖例:

圖1-1 : 上中下層的MDCT影像...2 圖3-1:前處理前後結果...8 圖3-2:估計心臟範圍...9 圖3-3:估計心臟範圍...10 圖3-4:擷取冠狀動脈候選點...11 圖3-5:不同切面的電腦斷層掃描圖...12 圖3-6:冠狀動脈候選點...13 圖3-7:距離轉換...14 圖3-8:距離轉換找代表點...15 圖3-9:某支冠狀動脈上的代表點...16 圖3-10:不同切面得到的代表點...17 圖3-11:冠狀動脈代表點...18 圖3-12:代表點連結條件...20 圖3-13:冠狀動脈的連結圖...20 圖3-14:偵測冠狀動脈起點過程...21 圖3-15:偵測動脈起點...22 圖3-16:冠狀動脈起點...23 圖3-17:冠狀動脈樹狀結構...24 圖3-18:主動脈中心與代表點...25 圖3-19:冠狀動脈樹狀結構...26 圖3-20:冠狀動脈樹狀結構...28

(9)

圖3-21:縱軸切面與正確切面...30 圖3-22:找出正確的血管中心...31 圖4-1:擷取失敗的例子...35 圖4-2:血管狹窄的例子...36 圖4-3:冠狀動脈候選點...37 圖4-4:錯誤的例子...38 圖5-1:第07組資料失敗的部分...40

(10)

表格:

表4-1:電腦斷層詳細資料...32 表4-2:評估調整方法...33 表4-3:擷取演算法的成功率...34

(11)

第一章 簡介

1.1 研究動機:

心血管疾病在現代社會上算是很常見的疾病,再加上近年來由於多切面電腦斷層掃 描 Multi-Detector Computed Tomography(MDCT)的快速發展,提供了一套非侵入式的 診斷,大大的降低了心臟診斷的風險。MDCT 與 Computed Tomography(CT)相比,掃 描速度較為快速,因此能夠減少心臟跳動的干擾,準確性也大大的提升,而被廣泛的使 用於心臟診斷。然而 MDCT 心臟掃描圖,動輒上百張的影像,若以人工方式來診斷, 所耗費的時間成本非常龐大,所以近年來有許多的研究者,都在發展出可以全自動診斷 的演算法,使用這些演算法預先將有問題的血管、鈣化點、狹窄的區域找出來,接著再 進一步的用人工做細部的診斷,可以減少人工做整體掃描圖的診斷成本。而要做到自動 化診斷的前提,是要先能夠從電腦斷層圖中自動擷取出冠狀動脈,再從這些已知的冠狀 動脈來診斷鈣化、狹窄等症狀,進而標示出來以利後續人工診斷。因此自動化擷取冠狀 動脈就顯得特別重要,診斷的成果完全取決於自動擷取演算法的結果,所以在於自動化 擷取的部分就希望能夠完整、正確的找出冠狀動脈。 電腦斷層掃描圖是經由病人注射顯影劑進入血管,再由機器拍攝下來,藉由顯影劑 的幫助能夠分辨出血液的位置。而電腦斷層掃描圖,是一個大略的心臟範圍,所以不可 避免的圖中會包含到許多非心臟的組織,例如骨骼、肺血管、橫膈膜等等,如圖 1-1 所 示,因此擷取冠狀動脈的演算法容易受到這些組織的干擾而產生擷取錯誤。而另外的問 題是冠狀動脈的末端,動脈末端的直徑與前端相比,變的非常細小,且在電腦斷層圖中 的強度也會變的比較小,所以很容易遺失掉末端的血管,再加上血管分支處的不規則形 狀等等。因此要克服以上問題來達到完整的擷取冠狀動脈是我們這篇論文所要探討的事 情。

(12)

(a) (b)

(c)

圖 1-1 : 上中下層的 MDCT 影像。(a)心臟上層;圈起來的部分為胸骨、脊椎骨。(b)心臟中層; 圈起來為肺血管。(c)心臟下層;此時心臟已經碰觸到了橫膈膜,即使用肉眼也不容易分辨出心 臟範圍。

目前許多學者大多採用形態學影像處理(morphological image processing)來偵測冠 狀動脈,接著再連接冠狀動脈成為一個完整的動脈樹狀結構,但很多現有的方法在於動 脈分支與末端的地方容易產生錯誤或遺失。

本篇論文中,我們要提供的是一個自動化擷取冠狀動脈的演算法,能夠從電腦斷層 的影像中自動找出心臟部位的血管並避免骨骼、肺血管等等的干擾,找出冠狀動脈,並 提出了利用距離轉換(distance transform)找出血管中心的方法,有了這些血管中心代

(13)

表點,就可以去計算代表點之間的關係來決定是否可以連接起來,接著再採用一系列的 圖形演算法來得到一個血管中心線的樹狀結構,再來以此樹狀結構為基礎,設法將血管 末端這些細小的部分、強度較低的部分給找出來,即使遇到狹窄的血管也不會失敗,進 而得到一個完整的冠狀動脈樹狀結構。

我 們 使 用 的 電 腦 斷 層 資 料 為 Rotterdam Coronary Artery Algorithm Evaluation

Framework 所提供( http://coronary.bigr.nl/index.php )。我們採用這組資料是因為其中 不只提供電腦斷層掃描資料,也包括了每組資料對應的血管座標,也就是所謂的“標準 答案”(ground truth),此座標是經由數位醫學方面的專家以人工的方式來標記,並且提 供了一套評分系統,可以讓研究者依據這個系統來評估自己的演算法,來加強評估的客 觀性。該網站上也提供了不少篇文獻供我們參考,了解到目前技術的發展程度。而在 Schaap 等人的文獻[1]中,很清楚地介紹這組資料的相關資訊,包括標準答案的選取、 演算法的分類、評分系統等等。

1.2 章節概要:

在第二章,我們會介紹一些前人所作的冠狀動脈擷取演算法,與一些其他器官的血 管擷取演算法。第三章介紹本篇論文所提出的自動化擷取冠狀動脈的演算法。第四章藉 由標準答案來對我們的演算法作評分的動作。第五章總結本篇論文以及討論未來可以再 加強的部分。

(14)

第二章 文獻縱覽

2.1 冠狀動脈擷取:

擷取冠狀動脈的演算法大多針對其管狀結構的特性,由於要在三維的掃描圖中要直 接找出此結構較為困難,所以大多數的文獻都是從二維平面來擷取冠狀動脈,再將每張 影像所擷取的動脈組合起來而達到完整的冠狀動脈。在此許多文獻都有採用的就是形態 學影像處理,找出每張影像中的冠狀動脈候選點,接著再採用不同的方式來組合這些冠 狀動脈,並找出血管的中心線。另外的做法是採用區域成長(region growing)演算法, 藉由成長的方式來找出冠狀動脈,但使用這個方法需要一個起點當作種子點(seed point) 來執行區域成長,因此有的文獻會採用人工選取的方式,也有文獻會自動偵測冠狀動脈 起點。 二維影像: 在 Eiho 等人的文獻[2]中,運用了許多形態學影像處理中的演算法,但在當時的心 臟影像是採用 X 光攝影,所以是在二維影像中找出冠狀動脈分支,首先使用頂-帽轉換 (top-hat operation) 將冠狀動脈強度增強,接著再將背景給大略去除並且將分支給細 化,再去除小分支與雜訊。由於這時候的技術還不發達,並沒有所謂三維的影像,僅是 單純的二維影像,但在擷取冠狀動脈的概念上與三維影像並沒有太大的差異。 三維影像: 而在 Wesarg 等人的文獻[3],使用的資料已經是三維的影像了,而在擷取冠狀動脈 的部分仍然是一樣的採用形態學影像處理,只是變成要以單張影像為基準作擷取的動作, 再將擷取到的動脈給組合成三維。這些作法已經變成標準的前處理了,幾乎每位研究者 都會採用此策略。這時已經有了這些三維動脈候選點,但可能會有部分動脈的遺失,或

(15)

包含一些雜訊干擾、錯誤分支,所以還要做連結動脈的動作。接著採用了人工選取起、 終點的方式,由起點開始做連結的動作,直到連接到終點,連接方式就是根據那些三維 動脈候選點的分布。但這個方法如果遇到了血管分支,則容易連接到錯誤的分支,而變 成了找不到終點的結果而失敗。 在 Luengo-Oroz 等人的文獻[4]中,是先經由人工選取一個種子點,此點就是冠狀動 脈的起點,由這個起點開始作二維的形態學影像處理擷取冠狀動脈,接下來的影像就根 據前一張影像的結果當作種子點作相同的動作,直到找不到為止,換句話說這個方法就 是從冠狀動脈的起點根據形態學影像處理的方式”長”出來。雖然此方法可以解決血管分 支所遇到的問題,但仍有可能因為血管的狹窄而導致長出來的血管不完整。 另外,陳建順[5]所提出來的論文為一個自動化擷取演算法,採用的仍是形態學影像 處理來取得三維的動脈候選點。在此他採用了 hard C-means 演算法,將動脈分成許多的 群聚,將各個群聚中心當作冠狀動脈代表點,接著再根據動脈候選點的分布來連接代表 點,但在連接的時候容易因為血管狹窄等原因,而導致找出來的冠狀動脈呈現不該有的 斷裂,而使得連接的時候容易遺失一些冠狀動脈的分支,使得整個樹狀結構並不完整。 接著,在 Kitslaar 等人的文獻中[6],仍是採用形態學影像處理的方式,作用於二維 影像再經由區域成長演算法將二維的動脈組成三維的動脈。擷取演算法藉由偵測主動脈 的位置來找出冠狀動脈的起點,並偵測出每層影像的動脈候選點,再分析是否為血管或 雜訊,此時再由動脈起點、各影像中的血管成分來做區域成長演算法,藉此將完整的冠 狀動脈給組合出來。此演算法為一全自動擷取血管演算法。而 Tek 等人的文獻[7]也是採 用類似的做法,首先找出主動脈,接著依照血管切面的特性來偵測血管,之後使用一系 列圖形演算法來偵測出血管的正確切面,就可以找出較正確的血管中心,接著再使用模 擬的方式來找出血管中心線。 另外,在 Bauer 等人的文獻[8]中,採用了不同於上面文獻的方法。他採用了一個偵 測管狀的濾波器來偵測血管,並偵測出血管的中心線,接著再將這些血管組合成一個完 整的樹狀結構,再根據一些既有的知識來判斷偵測出來的血管是否為真的血管,來得到 正確的動脈中心線。

(16)

2.2 血管擷取:

以上的文獻都是針對冠狀動脈的擷取,但仍有許多的文獻其目標並不是冠狀動脈, 而是針對其他臟器的血管,比較常見的就是視網膜血管擷取。雖然視網膜的影像通常為 二維影像,但仍有值得我們參考的部分。如同冠狀動脈擷取一樣,從影像中找出血管, 依照血管的特性、呈現的形狀、強度來找,實作上大部分的研究者也都是採用形態學影 像處理,來找出這些血管結構,接著再發展一些獨特的方法來做連結血管的動作,或加 強血管的對比與背景區隔出來等等,來達到擷取血管的目標。 在 Elena 等人的文獻[9]中,使用維度空間(scale-space)的概念,利用不同的 scale-kernel 來產生不同 scale 的影像,根據這些影像再去作一系列血管擷取的動作。在 這邊作者採用 edge、ridge 檢測,找出血管輪廓與極值,再根據不同 scale 的影像作比較, 找出對應的極值。之所以使用這個方法,是因為血管直徑的差異,若只使用單一的 scale 容易忽略掉其他直徑差異較大的血管,所以用不同 scale 來確保所有的血管都能成功擷 取。根據這個方法,我們也可以用來估計血管的直徑,運用不同 scale 的影像再加上擷 取到的冠狀動脈候選點,來估計不同候選點的血管直徑,再經過統計可以得到一個大略 的血管直徑範圍。 另外在 Yang 等人的文獻[10]中,也是採用形態學影像處理的方式,來加強視網膜血 管的部分,並去除背景與雜訊,接著採用 Fuzzy C-means 演算法來做分群的動作,然後 再使用一系列的去模糊化演算法來擷取出視網膜血管。但這個方法可能較不適用於心臟 掃描影像,因為三維影像中找出來的血管候選點數量非常龐大,所以基於速度與記憶體 考量可能較不適合。Ricci 的文獻[11]中,是採用一連串不同角度的直線來找出目標點周 圍灰階的分布方向,並且根據分布方向的法向量來找出血管寬度,有了這些資訊後再使 用 support vector machine 進行分類,來找出正確的視網膜血管。

(17)

第三章 冠狀動脈擷取

本章說明了我們的冠狀動脈擷取演算法。3.1 節中介紹了一些前處理(preprocessing) 的方法,來達到平滑(smooth)與去雜訊的效果。3.2 節中利用形態學影像處理方式, 來估計大略的心臟範圍。3.3 節同樣利用影像處理的方式找出冠狀動脈候選點。3.4 節中 介紹如何用距離轉換來找冠狀動脈代表點,以減低直接使用候選點的計算量。3.5 節中 我們利用候選點的分布來連接代表點,來得到一個暫時的冠狀動脈連結圖。3.6 節中我 們採用一系列的圖形演算法(graph theory)來找出完整的冠狀動脈中心線的樹狀結構。 3.7 節中我們要對代表點作一些調整,使其更接近血管中心。

3.1 前處理:

我們的實驗是從電腦斷層掃描中擷取出冠狀動脈,所以一開始我們對此資料作一些 前處理,來達到平滑與去雜訊的目的。在此我們採用雙向濾波器(bilateral filter)來實 作。它是一個非線性的濾波器,能在影像中有效地將雜訊平滑化,且又可以把重要的邊 界保留著,因此可以達到去雜訊且不遺失血管分支。方程式如下: (1) 其中wix  的函數, 。 (2) 在此 f 為原始的三維資料,fs為處理後的三維資料,wivoxeli計算後的權重值。由(2) 可以看出,權重值是根據距離與灰階值的差距來定,差距越大其權重越小,其中d是 根據濾波器的大小來決定,因為我們採用 26-neighbor 的濾波器來實作,在此d取一個

i i i i i s

w

p

f

w

x

f

)

(

)

(

2 2 2 2 2 )| ( ) ( | 2 ) , ( g i d i f x f p p x d i

e

e

w

       

(18)

像素距離,而g則是根據影像的 noise level 來決定,由以下式子來計算, (3) s

f

為原始影像用一個五乘五的濾波器作平滑化後的結果,其中 k 為電腦斷層影像的張 數。就可以得到g的值。實際用於我們的八組電腦斷層掃描,結果大約落在 4~10 之間。 接著就可以得到處理後的結果,可以參考圖 3-1。 (a) (b) 圖 3-1:前處理前後結果。(a) 為原始影像。(b)前處理後的影像。 觀察圖 3-1 我們可以發現,影像變的較為平滑,而影像中的邊界並沒有因此變的模 糊,這也就是我們為什麼採用雙向濾波器的原因,就是為了避免過度平滑導致血管邊界 變的模糊不清。

   

k x f x f median k i s g

   1 2 i [ ]  

(19)

3.2 估計心臟範圍:

由於電腦斷層掃描資料中,帶有顯影劑的血液與鈣也就是骨骼的部分,在影像中皆 呈現高強度,而一組資料圖中或多或少一定會包含到心臟以外的部分,例如胸骨、脊椎 骨、肺血管、橫膈膜等等,因此我們在找冠狀動脈的時候,很容易被這些非心臟部分的 組織給干擾,因此如何避免掉這些干擾是我們首先要做的研究。由於冠狀動脈是附著在 心臟周圍的血管,所以我們如果要避開其他血管的干擾,首先要做的就是把心臟給找出 來,有了心臟就可以判斷血管是否為環繞心臟的冠狀動脈了。 由於心臟只有前後可能會與胸骨與脊椎骨接觸到,其餘地方可以很明顯的看出心臟 的輪廓,如圖 3-2(a),所以我們可以取一個適當的臨界值(threshold)將影像轉成二元 影像(binary image),在此我們使用 700 來當作臨界值,結果如圖 3-2(b)。再來我們使 用形態學影像處理中的斷開(opening)來處理,這裡我們取一個直徑 60mm 的圓當作結 構元素(structuring element),如圖 3-2(c)右下方的圓,對電腦斷層掃描圖的每一張影像 作處理,即可得到一個大略的心臟估計範圍。 (a) (b) (c) 圖 3-2:估計心臟範圍。(a)心臟上層影像。(b)根據臨界值做出的二元影像。(c)估計出來的心臟 範圍與結構元素。 但並不是整個電腦斷層圖都可以這麼容易的取出心臟範圍。例如心臟下層的影像, 因為已經接觸到橫膈膜了(參考圖 3-3(a)),即使以肉眼來看也不容易分辨出心臟範圍, 再加上不同病人的心臟大小、胸腔厚度、骨骼大小等等,變因很多,所以我們才會說是

(20)

估計“大略”的心臟範圍,目的只是為了達到減少非冠狀動脈的血管干擾,這一點的誤差 還算可以接受。 以上步驟都是以單張影像為基礎來做運算,換句話說,一組電腦斷層掃描資料以縱 軸切面來看,共有數百張影像,我們的演算法就是從這些影像依序作處理,處理完再將 結果拼成三維的資料。同理,我們接下來要找冠狀動脈候選點也是如此。 (a) (b) 圖 3-3:估計心臟範圍。(a)下層心臟的影像。(b)估計出來的心臟範圍,脊椎骨也被包含進去。

3.3 擷取冠狀動脈:

現在我們有了大略的心臟範圍,接下來就是要從這個範圍內找出冠狀動脈候選點。 由於冠狀動脈是環繞著心臟成長,因此以電腦斷層圖的縱軸切面來看,上層動脈呈現橢 圓與長條狀,而中間大約呈現圓形狀,若遇到動脈分支則呈現不規則狀,到了心臟下層 則呈現長條狀,根據這些特性我們採用了形態學影像處理中的斷開來找出這些結構。由 於冠狀動脈的直徑大約在 5mm 到 6mm 間,因此我們選擇一個直徑為 7mm 的圓形當作 結構元素,接著就從電腦斷層的每一張灰階影像做處理,將這些直徑小於 7mm 的結構 給平滑掉,再以原始未經過斷開的影像減去斷開後的影像,就可以得到那些被平滑掉的 結構,這個步驟在形態學影像處理中稱作:頂-帽轉換(top-hat transform): h: f (fb) ,

(21)

其中 f  為斷開(opening)b ,b 為結構元素(structuring element)。之後再取適當的臨界 值就可以得到冠狀動脈候選點,整個流程如圖 3-4 所示。 (a) (b) (c) (d) (e) (f) 圖 3-4:擷取冠狀動脈候選點。(a)原始影像,左上角為結構元素。 (b)作完斷開後的影像。(c) 頂-帽轉換後的結果,圓形框框中為正確的冠狀動脈。(d)原始影像的心臟範圍。 (e)心臟範圍中 的冠狀動脈。(f)取臨界值後的二元影像,也就是冠狀動脈候選點。 經過以上一系列的計算,我們可以得到冠狀動脈候選點,在這邊我們臨界值的選取 為 200。這個數字是我們經由實驗得來的結果,取太高則容易遺失部分的動脈,取太低 則容易包含到一些不是動脈的雜訊。 到目前為止,我們所使用的影像皆是電腦斷層的縱軸切面,也就是由上往下看的切 面,而我們實驗過程中,也曾詴過另外兩個方向的切面(參考圖 3-5(b)、(c))來找冠狀 動脈候選點,但可能是電腦斷層掃描的硬體因素,導致另外兩個方向的切面效果都不盡 理想,因此這方面就只能當作參考而不加以使用。 再來我們可以將這些候選點畫出來,呈現一個三維的冠狀動脈圖。如圖 3-6 所示,

(22)

主要的冠狀動脈都有被偵測出來,但是圖中的雜訊仍非常多,圖的右邊甚至有找到骨頭, 這表示我們大略的心臟範圍有一些誤差,但仍在可接受的範圍內。目前這些候選點的數 量非常龐大,大約數萬到數十萬,因此我們下一節就是要討論由這些候選點找出代表點, 來取代這些候選點以降低計算量。 圖 3-5:不同切面的電腦斷層掃描圖。(a)縱軸切面。(b)人體左右切面。(c)人體前後切面。其 中 XYZ 為電腦斷層掃描的三個軸,其中 Z 軸就是我們所謂的縱軸。

(23)
(24)

3.4 代表點的選取:

在 3-3 節中,我們從電腦斷層掃描中找出了冠狀動脈候選點,但由於候選點的數量 過於龐大,並不適合做運算,因此我們提出了一個找代表點的方法,藉由找出血管中心 當作代表點,並根據代表點周圍的候選點,在代表點上加入一些資訊,例如周圍候選點 的密度、方向性等等,以便後續使用。 目前我們所擁有的是每張影像的候選點,在這裡我們也是從縱軸切面來處理,這裡 我們使用距離轉換來找代表點。距離轉換是影像處理中的一種方法,也就是輸入一張二 元影像,然後對每一個像素為 1 的點去計算到最近的 0 像素的距離,此距離就變成這個 像素的新值,所以得到的新影像就不是原本的二元影像而是灰階影像。圖 3-7 是一個例 子,圖 3-7(a)是原始的二元影像,經過轉換得到圖 3-7(b)的結果,可以看出得到的值都 是此點到最近的 0 的距離,在此是用歐式距離(Euclidean distance)來計算。我們根據 距離轉換的特性,可以得到一個結論,就是值越大的像素越有可能出現在這些非 0 像素 的中心,所以我們可以用這個方法來找出候選點的中心,也就是血管的中心,來當作我 們的代表點。 (a) (b) 圖 3-7:距離轉換(a)原始二元影像。(b)轉換後的影像,不再是二元影像。 接著,我們將 3-3 節的結果,也就是取完臨界值的候選點影像(參考圖 3-8(a))來 做處理。首先,為了降低雜訊,我們將影像上的候選點做一個篩選,將候選點分成獨立 的連通區域(connected component),再去計算這些區域各自的面積,然後再將面積小於 某個臨界值的區域給暫時捨去(未來還是會使用到),實作上我們是捨棄面積小於九個

(25)

像素的區域,來達到去雜訊的目的。接著我們對縱軸影像做距離轉換,再針對每一個連 通區域找最大值當作代表點(圖 3-8(b))。對所有縱軸切面的影像做完上述處理後,我們 就可以得到所有的代表點座標,如圖 3-8(c)。 (a) (b) 圖 3-8:距離轉換找代表點。(a)冠狀動脈候選點。(b)候選點與代表點(紅色)。(c)將代表點依其坐 標繪成三維圖。其中藍色的細線為標準答案。 由於我們只採用縱軸切面的影像來找代表點,但血管在縱軸切面的形狀並不固定, 有橢圓狀、長條狀等等,所以這樣做會有個風險,如圖 3-8(b)所示,中間的部分冠狀動 脈的連通區域最大,但只會找出一個代表點,要以這個代表點去表示這一段血管似乎有 點困難。圖 3-9 為右冠狀動脈分支,其中顏色表示該代表點距離轉換後的值,偏藍則值

(26)

越小,反之偏紅值越大。觀察後就會發現問題所在,在縱軸切面的地方,因為一個代表 點就表示了一大段的血管,所以我們呈現三維圖的時候,會發現有些地方會有斷掉的現 象,但其實只是因為代表點的距離較大的因素。會造成這個問題的最大原因是血管切面 取的不恰當,若能正確的取出血管切面,找出來的代表點就會比較恰當;反之取出來的 切面若平行血管的方向,截出來的形狀就會是長條形,取出來的代表點自然會造成代表 點斷裂的問題,如圖 3-9 紅色圈圈所示。 圖 3-9:某支冠狀動脈上的代表點。不同的顏色表示代表點所對應的值,即距離轉換後的值(單 位 mm),可以把它當作血管直徑來看待。越偏藍色則表示這個值越小,反之越偏紅則越大。紅 色的圈沒有代表點,如同血管斷掉。 為了克服上述問題,我們利用另外兩個切面的影像來找代表點,再將三個方向取出 來的代表點合併。取另兩個方向代表點的流程與上面使用縱軸切面的影像相同,只是一 開始輸入的影像是另外兩個切面的影像。 圖 3-10 是右冠狀動脈在不同切面下找出來的代表點。我們可以發現三組代表點有 某種程度的互補性,這是因為血管的方向性不同,取的切面不同所造成的,因此我們可 以將這三組代表點給合併起來當作新的代表點。 2.51 2.40 2.29 2.17 2.05 1.77 1.62 1.45 1.25 1.02 0.73 0.72

(27)

(a) (b) (c) 圖 3-10:不同切面得到的代表點。(a)縱軸切面的代表點。(b)人體左右切面的代表點。(c)人體前 後切面的代表點 合併的方法如下:依序對三組代表點來計算三個像素範圍內,是否存在其餘兩組代 表點。若存在則將直徑較大的代表點留下,其餘捨棄。接著將三組留下來的代表點取聯 集(union),即為我們要的代表點。而圖 3-11 畫出完整的合併後代表點。

(28)

圖 3-11:冠狀動脈代表點。

3.5 連結代表點:

目前我們有了候選點與代表點,接下來就要找出冠狀動脈的樹狀結構。首先我們要 做的就是根據候選點的分布來連結代表點,在這邊我們是依據候選點的密度與方向性來 考量代表點是否連結起來。 首先,我們針對每個代表點去計算它的方向性,這裡我們使用主成分分析(principal component analysis),也就是我們對每個代表點取一個適當的範圍,然後去計算這個範

圍內候選點分布的方向性,也就是 first principal component。而圖 3-12(a)的紅線即為我 們算出來的代表點方向。我們是根據冠狀動脈的直徑來挑選範圍,由於血管直徑介於 5~6mm,因此我們選擇 10mm 的範圍來計算血管的方向性。接著依序由每個代表點去找 附近的代表點來做連結。是否連結起來有兩個條件: 第一,連結起來的方向要合理,不能有大角度的轉向,如圖 3-12(b)(c)所示,紅色 的點為代表點,藍色表示代表點的方向性,綠色表示要連結的線段,而兩個銳角的部分 皆要小於 30 度,超過就捨棄這條線段;

(29)

第二,代表點間的候選點密度要高於某一個設定值,圖 3-12(d)所示為一個二維示意 圖,也就是紅色範圍內的候選點要占紅色範圍面積的某個設定的比例。實際三維的實作, 取兩個代表點的中心,長寬高分別取兩個代表點所框出來的矩形長寬高的一半來畫出紅 色的區域,而密度的選取為原始矩陣體積的四分之一,換句話說也就是紅色範圍內的候 選點所佔的體積要大於紅色範圍體積的四分之一。雖然紅色區域為一立方體,並不符合 血管的形狀,但為了程式撰寫方便,我們才選擇使用。而由於代表點間的距離很小,因 此我們的誤差並不會很大,還在可以接受的範圍內。 以上兩個條件都符合就可以連結這個線段。之所以這麼設定是為了要符合正確的冠 狀動脈,也就是血管不會大角度轉向。而密度的選取就是判斷代表點間的相關性,密度 越高相關性越大,越有可能是同一條血管。 這裡我們的用意是先繪出一個大略的冠狀動脈樹狀結構,並避免因為血管狹窄而遺 失,所以我們在密度的選取較為寬鬆,寧願多找出一些假的分支,也不願遺失任何一個 可能的分支。而我們實際的步驟為:對每一個代表點我們找出臨近的五個代表點,接著 計算方向性與密度判斷是否可以連結起來,直到所有代表點都執行完。而圖 3-13 為整 個冠狀動脈的連結圖,可以發現雜訊仍非常多,骨骼的干擾還是看的出來,接下來我們 要討論的就是如何去掉這些干擾,得到一個正確的樹狀結構。

(30)

(a) (b) (c) (d) 圖 3-12:代表點連結條件。(a)代表點的方向。(b)角度選取示意圖,此圖銳角部分皆大於 30 度, 所以這個連線不成立。 (c) 此圖銳角部分皆小於 30 度,連線成立。(d) 密度選取示意圖。 圖 3-13:冠狀動脈的連結圖

(31)

3.6 擷取冠狀動脈樹狀結構

在上一節中,我們得到了一個冠狀動脈的連結圖,圖 3-13 中可以看到有許多的雜 訊干擾、迴圈(Loop)等等,在此我們希望藉由找到正確的冠狀動脈起點,由這些連結 中找出正確的樹狀結構。 而我們要如何找冠狀動脈起點呢?我們可以知道冠狀動脈都是從主動脈分支出來 的血管,所以我們從主動脈下手來找出正確的動脈起點。主動脈是人體中一大血管,它 發自左心室,直徑有 2.5~3.5 公分,從縱軸切面的電腦斷層掃描中,可以很清楚地發現 它呈現圓形的結構。根據這個特性,我們使用一系列不同直徑的圓形濾波器來偵測這個 圓形結構的中心。圖 3-14(a)是此濾波器的示意圖,中間為正值,黑色的圈為負值,其餘 為零,且整個濾波器的和為零。使用的直徑為 3.54、3.41、3.26、3.12、2.97、2.83、2.68、 2.54 公分。藉由在影像上移動這八個濾波器來計算每一個位置對應的八個值,再從這八 組影像的值中找出最大的,而其所對應的位置就是我們要的圓心,也就是主動脈中心(見 圖 3-14(b)中的紅點)。接著取出紅點的灰階值假設為 X,我們留下灰階值在 X-120 到 X+120 間的像素,再以此紅點當作種子點做區域成長演算法,來找出整個主動脈。 (a) (b) 圖 3-14:偵測冠狀動脈起點過程。(a)圓形濾波器。(b)偵測出來的主動脈中心(圖中的紅點)。 找出該影像中的主動脈後,我們接下來就是要判斷,我們先前找出來的代表點有沒 有出現在主動脈上面,參考圖 3-15,其中(a)(b)為不同層的影像,(b)中可以看出來主動

(32)

脈有包含到一個代表點(圖中綠色圈內的紅點),因此這個點就是我們要找的動脈起點。 此時我們為了確保起點的正確性,限制找到的代表點必須在主動脈分支的地方。我們不 直接使用原始的主動脈來找起點,我們以一個直徑 7mm 的圓當作結構元素,對主動脈 (也就是圖 3-15 中的(a)(b))作頂-帽轉換,得到圖 3-15(c)(d)的結果,然後再找是否有 代表點存在。若找不到則計算主動脈的重心,當作下一層影像的種子點再重複上述的步 驟,並且利用代表點的位置與主動脈中心做比較,來判斷找出來的起點是出現在右邊還 是左邊,藉此來找出左右冠狀動脈起點。其中頂-帽轉換在這裡的用意是,確保找出來 的代表點一定會出現在主動脈分支出來的地方,觀察圖 3-15(b)(d),就可以發現頂-帽轉 換後,剩下來的部分就是主動脈分支出來的地方,也就是冠狀動脈的起點。 (a) (b) (c) (d) 圖 3-15:偵測動脈起點。(a)區域成長找到主動脈。(b) 區域成長找到主動脈。(c) (a)作頂-冒轉換 後的結果。(d)(b) 作頂-冒轉換後的結果,並且找到起點。紅點為我們的代表點。 經過上述步驟,我們可以找到大略的冠狀動脈起點(圖 3-16),雖然還不是非常的 正確,但我們不急著調整,而是希望使用這個起點來找出正確的血管結構,因為在圖 3-13

(33)

中我們可以發現,有許多不相干的連線、雜訊,甚至血管上也會有很多無意義的迴圈。 為了可以避免掉血管以外的組織,我們由左右動脈起點來找出連通的代表點,將沒有與 起點相連通的代表點通通捨棄,來找出左右動脈的樹狀結構。為了要去掉血管上無意義 的迴圈,我們使用最小生成樹(minimum spanning tree)來達到這個目的。我們採用普 林演算法(Prim’s algorithm)來實作,可以得到圖 3-17 的結果。與圖 3-13 相比,已經 將一些不是血管的部分給去掉了,且血管上也沒有多餘的迴圈。

(34)

圖 3-17:冠狀動脈樹狀結構。藍色的線段為我們找到的冠狀動脈;紅色的線段為標準答案。 此時我們已經有了一個暫時的冠狀動脈樹狀結構,接下來我們要做的是找出正確的 動脈起點。先前我們使用一系列圓形濾波器找到了不同影像中的主動脈中心,現在就要 使用這些主動脈中心來找出正確的動脈起點。首先找出大略起點(圖 3-16 箭頭處)周 圍 2 公分(大約三倍的血管直徑,沒有必要計算離大略起點太遠的節點)距離內的節點, 然後去計算該節點到同一張影像的主動脈中心的距離,若該影像上沒有主動脈中心,則 計算該節點到最下層的主動脈中心的距離,接著再找出距離最小的節點當作新的起點。 可以參考圖 3-18,紅色的點為樹狀結構上的節點,藍色的點為一系列的主動脈中心,箭 頭處是我們找到的新起點,比圖 3-16 的起點還來的正確。

(35)

圖 3-18:主動脈中心(藍)與代表點(紅),箭頭處為新起點。紅線為標準答案。

接著我們使用廣度優先演算法(breadth-first search)由起點開始執行,來找出兩條 最長路徑(圖 3-19(a))。有了最長路徑,我們就可以找出樹狀結構上的每個端點到最長 路徑的連線數,再將連線數小於 3 的分支給捨棄掉。這樣做的目的是為了刪除一些假分 支,最後得到的結果就是我們要的冠狀動脈樹狀結構(圖 3-19(b))。

(36)

(a) (b) 圖 3-19:冠狀動脈樹狀結構(a)找出最長路徑(綠色),紅色的圈為假分支。(b)將假分支捨棄後的 結果。紅色細線為標準答案。 此時,我們已經將主要的冠狀動脈給找出來了,但我們觀察圖 3-19 可以發現有些 分支的末端並沒有找出來,因此我們現在所要做的事就是設法找出這些遺失的分支。此 時,先回顧一下本論文 3.4 節,我們在取代表點的時候,為了降低雜訊將一些面積較小 的冠狀動脈候選點找出來的代表點捨棄,現在我們要將這些捨去的代表點給加回來。這 裡讀者或許會懷疑,為何我們一開始要捨棄這些代表點。原因是那時候我們除了候選點, 其他什麼資訊都沒有,若使用全部的代表點,很容易被一些不是血管的雜訊給干擾,所 以我們一開始的策略就是先找出最有可能是血管的代表點,來找出冠狀動脈樹狀結構。 找到樹狀結構後,再將這些捨棄的代表點加回來,然後根據存在的樹狀結構來做連結的 動作,換句話說,就是從現有的樹狀結構繼續往下長出新的分支,而往下長的條件如同 先前我們在連結代表點的規則一樣,仍是根據候選點的方向性與密度。而整個實作流程 如下:

(37)

經過上述流程,我們可以得到新的冠狀動脈樹狀結構,如圖 3-20(b)。和圖 3-20(a) 比較,我們可以發現有些分支可以朝末端再延伸一些,但有些則不行。可能是因為冠狀 動脈的末端過於細小,所以我們在找冠狀動脈候選點的時候就沒有找到,才會導致現在 找不到分支。此外,由於已經出現了不正確的分支(參考圖 3-20(b)的紅色圈圈),此時 若再將低候選點臨界值也不見得能夠將樹狀結構往下延伸,反而會出現更多的錯誤分支。 我們在 3.3 節中使用的臨界值為 200,若再降低到 150 則很多不是血管的組織、雜訊就 會非常的多,與正確血管完全不成比例,反而不利於我們找正確的樹狀結構,因此我們 選擇不再降低臨界值。 將捨棄掉的代表點,當作新增的點。 For all 冠狀動脈樹狀結構上的節點 1.將節點當作起點 2.尋找最近的新增點,並計算與起點的距離 3.若距離大於兩倍血管直徑(1.5 公分)則 GOTO 6 4.判斷方向與密度是否符合我們先前提到的條件 (夾角小於 30 度與密度大於該區域體積四分之一) 5.條件符合:記錄此點,並將此點當作起點 GOTO 1. 6.若記錄的點大於三個,才正式的將這些連線加入樹狀結構 反之捨棄這些點 End for

(38)

(a)

(b)

圖 3-20:冠狀動脈樹狀結構。(a)未增加代表點前的樹。(b)新增代表點後的結果(綠色部分),紅 色圈圈中已經出現了錯誤的分支。紅色細線為標準答案

(39)

3.7 調整代表點

到目前為止,我們都是使用縱軸切面,只有在找代表點的時候有用上另外兩個切面, 但血管並不是只有這幾種方向,因此找出來的血管切面是不規則的,才會出現橢圓形、 長條形等等奇怪的形狀,也會導致我們計算出來的代表點,可能會與實際的血管中心有 點誤差,造成樹狀結構的不正確。所以在這個章節,我們是想要藉由找出正確的血管切 面來求出正確的血管中心當作新代表點。 我們已有了代表點與樹狀結構,因此我們可以根據代表點的前後連線來計算出血管 的方向,並計算代表點的中心當作心臟中心點 h。接下來我們就可以開始找正確的血管 切面了。針對我們要計算切面的代表點 p,算出 p到 h的向量,令為 v,而代表點的方 向向量令為 z,接者我們就可以去計算對應的 xy 軸了,而該 xy 平面就是我們要的血管 切面:

z

v

x

 

5

y

z

x

 

6 因此我們可以計算切平面上的點對應到原三維資料的座標:

X

Y

Z

p

x

x

y

y

,

,

 

7 ,x與 y 為 xy 平面上的座標。如圖 3-21 所示,箭頭左邊為縱軸切面下的血管,箭頭右 邊是我們找出來的正確切面。 因為我們是根據代表點的連線方向來找血管的切面,因此能否找出正確的切面完全 是依據我們代表點的連線,如果代表點間的連線並不恰當就會導致我們取出來的血管切 面不正確。另一個可能是遇到血管分支處,也會使我們擷取出來的血管切面看起來不太 正確。圖 3-21 就可以看出來有些切面仍然不太正確。

(40)

縱軸切面 調整後的切面 縱軸切面 調整後的切面 圖 3-21:縱軸切面與調整後的切面。每個方塊的中心點為代表點的位置。 接下來我們就要找出正確的血管中心來取代原本代表點的位置,在這裡我們提出了 兩個方法來實作:第一,首先由原始代表點的位置做區域成長來找出血管,接著對找出 來的血管作距離轉換找出最大值當作血管中心。第二,類似於先前我們找主動脈的方式, 使用一系列的圓形濾波器直接來偵測血管中心。範例見圖 3-22。在第四章我們會再評估 調整的成效,來決定最後要使用何種調整方法。

(41)

(a) (b) (c) (d) (e) 圖 3-22:找出正確的血管中心。(a)正確切面下的原始影像。(b)區域成長後的結果。(c)距離轉換 後的結果。(d)找出(c)中的最大值。 (e)由(a)中找圓心。

(42)

第四章 實驗結果

在這一章,我們要將演算法實際使用在八組病人的心臟電腦斷層圖上,而此八組資 料來源為 Rotterdam Coronary Artery Algorithm Evaluation Framework 所提供,並且附上 了“標準答案”,是由三位醫學方面的專家以人工的方式標示出來的冠狀動脈中心線與對 應位置的血管半徑。以下就是我們使用的八組資料的詳細資料: 表 4-1:電腦斷層詳細資料 編號 張數 Millimeter per voxel (Z 軸) Millimeter per voxel (XY 軸) 影像大小 (pixel) 00 272 0.40 0.3632 512*512 01 338 0.40 0.3632 512*512 02 288 0.40 0.3339 512*512 03 276 0.40 0.3710 512*512 04 274 0.40 0.3164 512*512 05 274 0.40 0.3222 512*512 06 268 0.40 0.3203 512*512 07 304 0.40 0.2871 512*512 標準答案的格式為一系列的座標與對應的半徑,並且將冠狀動脈分為四個主要的分 支個別儲存。 首先,我們在 3.7 節中有提到兩個調整代表點的方法,現在我們要利用標準答案來 評估這些方法。以下為我們的評估方法。(A) 針對每個代表點我們去計算它到最近的血 管座標的距離,最後再算出每個代表點平均距離;(B) 計算距離超過標準答案的半徑範 圍的代表點個數,也就是去算有幾個代表點超出了正確血管的半徑範圍。我們將結果呈 現於表 4-2,其中框起來表示較佳的調整方法。

(43)

表 4-2:評估調整方法 編號 (A) (B) 編號 (A) (B) 00 原始 1.883 29 04 原始 1.205 22 (a) 2.251 44 (a) 1.438 31 (b) 2.091 31 (b) 1.530 21 01 原始 1.150 7 05 原始 1.760 27 (a) 1.323 17 (a) 2.174 49 (b) 1.447 12 (b) 2.020 27 02 原始 1.069 6 06 原始 1.168 11 (a) 1.163 13 (a) 1.299 18 (b) 1.339 6 (b) 1.410 13 03 原始 1.307 13 07 原始 2.321 42 (a) 1.606 28 (a) 2.131 43 (b) 1.573 13 (b) 2.488 52 (a)3.7 節中調整代表點的第一個方法。也就是距離轉換找血管中心。(b)第二個方法。使用圓形 濾波器找圓心。原始:表示未經調整的代表點。(A)所在的行對應的是平均距離,單位是像素。 (B)所在的行對應的是偏移半徑的個數。加粗的部分為較佳的方法。 觀察後發現,未經過調整的代表點不管是在偏移量或偏移個數上的表現都較佳。因 此我們就使用原本的代表點,而不經過任何調整。 接著我們就要做冠狀動脈樹狀結構的評分,去計算每個標準答案中的血管座標半徑 範圍內是否有我們擷取出來的代表點,接著就可以計算自動擷取演算法的成功率。我們 計算血管座標半徑內找到代表點的比例,如下: 並根據標準答案的四個分支,分別計算個別的成功率。下表為我們八組電腦斷層掃描的 成功率:

(44)

表 4-3:擷取演算法的成功率 編號 整體成功 率 個別成功 率 編號 整體成功 率 個別成功 率 00 0.76 0.75 04 0.61 0.79 0.72 0.63 0.82 0.26 0.77 0.67 01 0.79 0.94 05 0.78 0.95 0.76 0.79 0.61 0.68 0.69 0.58 02 0.80 0.97 06 0.83 0.88 0.47 0.99 1 0.55 0.85 0.71 03 0.66 0.98 07 0.56 0.82 0.46 0.37 0.28 0.54 0.86 0.40

在表 4-3 中,四個分支分別為右冠狀動脈(Right Coronary Artery)、左前降支(Left

Anterior Descending Artery)、左迴旋動脈(Left Circumflex Artery)與另外挑的一支大分

支。可以發現右冠狀動脈的成功率較為穩定,最低也有七成。而左邊的冠狀動脈的成功 率就比較不穩定,最低的只有兩成,而最高可以達到百分之百。可能是因為左邊的分支 較為複雜所導致。 而實際觀察我們找出來的樹狀結構,可以發現尾端的部分最容易遺失(參考圖 4-1(a)),可能的原因是末端血管過於細小,在找候選點的時候就沒有能夠找出來,又或 者是因為血管中間出現狹窄等狀況(參考圖 4-1(b)),讓我們找出來的樹狀結構在這裡出 現斷裂等原因,導致動脈的末端都不容易找出來。雖然如此我們還是有成功連結的例子, 圖 4-2 所示,其中動脈出現了狹窄的現象,但最後仍有成功的連結起來。

(45)

(a)

(b)

圖 4-1:擷取失敗的例子。(a)末端擷取失敗(第 01 組)。(b)因為狹窄的關係導致連結失敗(第 04 組)。紅線為標準答案。

(46)

圖 4-2:血管狹窄的例子。但最後有成功連結(第 06 組)。紅線為標準答案 以上兩個例子就是我們演算法最大的問題所在,我們在連結代表點的時候,已經將 密度的條件放的很寬鬆了,但仍然會出現血管狹窄導致連結失敗的例子,但若再降低密 度的條件,雖然這裡可能會因此連結起來,但在血管分岔的地方,或血管相近的地方都 會造成更大的錯誤。因此這個部分仍然需要再進一步的研究。而動脈末端的部分也是如 此,若在擷取動脈候選點的時候臨界值再取低一點,雖然末端可能會被偵測出來,但額 外多出來的雜訊干擾則又會變得太多而影響結果,可以參考圖 4-3,為不同臨界值下的 冠狀動脈候選點,可以發現降低臨界值後雜訊變的非常多。 然而我們觀察標準答案發現,冠狀動脈的尾端直徑已經變得非常的小,動脈前半部 直徑還有 4~5mm,然而到了尾端只剩下 1mm 左右,換算成像素只剩下 2、3 個像素。 又因為直徑變小,電腦斷層顯示出來的強度也減弱不少。這些因素對電腦自動判斷是血 管還是雜訊還是有點困難,因此我們的演算法在尾端才會遇到這種找不到血管的狀況。

(47)

(a) (b) (c) 圖 4-3:冠狀動脈候選點。(a)臨界值取 200。(b)臨界值取 175。(c)臨界值取 150。 另外一個問題就是血管分支的地方,這時候縱軸切面下的影像會呈現不規則的形狀, 所以導致我們在找代表點的時候會不太準確。代表點不準確後面連結自然也會出問題, 如圖 4-4 所示,箭頭處的地方就沒有成功的找出代表點,以至於後面連結的時候產生錯 誤,而變成有一小段分支遺失了,以這個例子來看雖然發生了錯誤,但還算有拉回到正 確的分支上。

(48)
(49)

第五章 結論與未來展望

本論文我們提出了一個自動擷取冠狀動脈中心線的演算法,由電腦全自動的由心臟 電腦斷層中取出冠狀動脈中心線,而不需要人工參與。我們使用形態學影像處理來擷取 冠狀動脈,接著對於不同切面的影像使用距離轉換來找代表點,接著根據主動脈位置來 找出冠狀動脈起點,再來運用一系列的圖形演算法來找出中心線。 實作上整體來說還算成功,只是在冠狀動脈的尾端容易遺失掉。這可能是我們在一 開始擷取動脈候選點的時候就出現的失誤,前半段直徑較大、強度較大的動脈,都可以 很容易的取出來,而末端直徑變小相對的強度也變小,我們的演算法就容易失敗。這個 部分我們可能要再研究一下形態學影像處理的使用方式,或是單純的再降低臨界值,然 後再研究出可以分辨是血管還是雜訊的方法,或許就能成功的找出動脈末端的中心線。 然而我們觀察了我們的成功率,發現我們的演算法在找右冠狀動脈時成功率較高,應該 說成功率較穩定至少都有七成,然而其他三支分支成功率就較不穩定。以第 07 組而言, 右冠狀動脈成功率達到八成,但其餘三支僅三到五成,可能的原因就是這組資料的影像 品質較差,找出來的候選點包含太多的雜訊,導致左冠狀動脈分支的地方容易出錯、斷 裂甚至整個中心線被雜訊干擾連結到錯誤的地方(參考圖 5-1),而造成遺失掉末端的動 脈中心線。而右冠狀動脈因為沒有分支,所以出錯的機會較小,因此成功率都能保持在 一定水準之上。 雖然我們一開始就知道會有因為血管狹窄的問題而出現斷裂。但圖 5-1 的這個例子, 斷裂的部分太大了,若是硬要調整演算法讓它連結起來,所要付出的代價會很大,整個 樹狀結構就會因此大亂,越是無法正確找出正確的樹狀結構。而這部分也就是我們未來 需要研究的地方,除了方向性與密度看是否能夠再想出別的變因,來評估兩個代表點是 否可以連結起來,或是採用一系列的臨界值來找候選點,找出來的代表點就可以加上權 重值,然後連結的時候再去考慮不同權重的代表點要如何連結,連結的條件也就隨的權 重的不同而有所調整,不再是一個固定的條件來做連結,就變成動脈前半部連結條件較 嚴苛,而到了後半部條件變鬆一點,這樣說不定可以克服尾端找不到的情況。

(50)

(a) (b)

圖 5-1:第 07 組資料失敗的部分(a)箭頭處出現斷裂,而後端的血管有找出來可是受到雜訊干擾, 導致連結錯誤。(b)因此後半部整個失敗。

(51)

參考文獻

[1] M. Schaap, C. T. Metz, and T. VanWalsum et al., “Standardized evaluation methodology and reference database for evaluating coronary artery centerline extraction algorithms,” Med. Image Anal., vol. 13, pp. 701-714, 2009.

[2] S. Eiho and Y. Qian, “Detection of coronary artery tree using morphological operator,” IEEE Computers in Cardiology, vol. 24, pp. 525-528, 1997.

[3] S. Wesarg and E. Firle, “Segmentation of vessels: The corkscrew algorithm,” Proc. SPIE Conference on Medical Imaging, vol. 3, pp. 1609-1620, 2004.

[4] M. A. Luengo-Oroz, M. J. Ledesma-Carbayo, J. J. Gómez-Diego, M. A. García-Fernández, M. Desco and A. Santos, “Extraction of the coronary artery tree in cardiac computer tomographic images using morphological operators,” 4th International Conference on Functional Imaging and Modeling of the Heart (FIMH 2007). Lecture Notes in Computer Science, vol. 4466, pp. 424-432, 2007.

[5] 陳建順, “自動化冠狀動脈分割及註冊方法 ”,交通大學資訊工程與科學研究所碩士論 文,2009.

[6] P. H. Kitslaar, M. Frenay, E. Oost, J. Dijkstra, B.Stoel, and J. H.C. Reiber, “Connected component and morphology based extraction of arterial centerlines of the heart,” The Midas Journal. In: 2008 MICCAI Workshop – Grand Challenge Coronary Artery Tracking. <http://hdl.handle.net/10380/1460>.

[7] H. Tek, M. A. Gulsun, S. Laguitton, L. Grady, D. Lesage, and G. Funka-Lea, “Automatic coronary tree modeling,” The Midas Journal. In: 2008 MICCAI Workshop – Grand Challenge Coronary Artery Tracking. <http://hdl.handle.net/10380/1426>.

[8] C. Bauer and H. Bischof, “Edge based tube detection for coronary artery centerline extraction,” The Midas Journal. In: 2008 MICCAI Workshop – Grand Challenge Coronary Artery Tracking. <http://hdl.handle.net/10380/1403>.

[9] M. E. Martinez-Perez, A. D. Hughes, A. V. Stanton, S. A. Thom, A. A. Bharath, and K. H. Parker, “Retinal blood vessel segmentation by means of scale-space analysis and region growing,” Proc. 2nd MICCAI, Lecture Notes in Computer Science, vol. 1679, pp. 90–97, 1999.

[10] Y. Yang, S. Huang, and N. Rao, “An automatic hybrid method for retinal blood vessel extraction,” International Journal of applied Mathematics and Computer Science, vol. 18, pp.

399-407, 2008.

[11] E. Ricci, and R. Perfetti, “Retinal blood vessel segmentation using line operators and support vector classification,” IEEE Trans. Med. Imag. vol. 26, pp. 1357-1365, 2007.

數據

圖 1-1 :  上中下層的 MDCT 影像。(a)心臟上層;圈起來的部分為胸骨、脊椎骨。(b)心臟中層;
圖 3-6:冠狀動脈候選點。
圖 3-11:冠狀動脈代表點。  3.5    連結代表點:  目前我們有了候選點與代表點,接下來就要找出冠狀動脈的樹狀結構。首先我們要 做的就是根據候選點的分布來連結代表點,在這邊我們是依據候選點的密度與方向性來 考量代表點是否連結起來。  首先,我們針對每個代表點去計算它的方向性,這裡我們使用主成分分析(principal  component  analysis) ,也就是我們對每個代表點取一個適當的範圍,然後去計算這個範 圍內候選點分布的方向性,也就是 first  principal  compo
圖 3-16:冠狀動脈起點(箭頭處)。其中紅色細線為標準答案。
+7

參考文獻

相關文件

Choi, “A Hybrid Query Tree Protocol for Tag Collision Arbitration in RFID systems”, IEEE International Conference on Communications (ICC-07), pp.24–28, 2007. Cole, “THE

in Proceedings of the 20th International Conference on Very Large Data

Kyunghwi Kim and Wonjun Lee, “MBAL: A Mobile Beacon-Assisted Localization Scheme for Wireless Sensor Networks,” The 16th IEEE International Conference on Computer Communications

C., “Robust and Efficient Algorithm for Optical Flow Computation,” Proceeding of IEEE International Conference on Computer Vision, pp. “Determining Optical Flow.” Artificial

[16] Goto, M., Muraoka, Y., “A real-time beat tracking system for audio signals,” In Proceedings of the International Computer Music Conference, Computer Music.. and Muraoka, Y.,

Godsill, “Detection of abrupt spectral changes using support vector machines: an application to audio signal segmentation,” Proceedings of the IEEE International Conference

Jones, &#34;Rapid Object Detection Using a Boosted Cascade of Simple Features,&#34; IEEE Computer Society Conference on Computer Vision and Pattern Recognition,

Dragan , “Provably good global buffering using an available buffer block plan”, IEEE International Conference on Computer-Aided Design, pp.. Cong, “Interconnect performance