國
立
交
通
大
學
多媒體工程研究所
碩
士
論
文
利用手術器械的追蹤與動向分析達成腹腔鏡手
術自動化評估系統
Tracking and motion analysis of surgical tools for
the purpose of automated skill evaluation of
laparoscopic surgery
研 究 生:王聖文
指導教授:王才沛 教授
利用手術器械的追蹤與動向分析達成腹腔鏡手術自動化評估系統
Tracking and motion analysis of surgical tools for the purpose of
automated skill evaluation of laparoscopic surgery
研 究 生:王聖文 Student:sheng-wen Wang
指導教授:王才沛 Advisor:Tsaipei Wang
國 立 交 通 大 學
多 媒 體 工 程 研 究 所
碩 士 論 文
A ThesisSubmitted 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 June 2008
Hsinchu, Taiwan, Republic of China
利用手術器械的追蹤與動向分析達成腹腔鏡手術自動
化評估系統
學生:王聖文 指導教授:王才沛 教授 國立交通大學多媒體工程所摘要
腹腔鏡手術有許多種訓練方式,最常被使用的是訓練箱,箱內放置假器官, 箱上有兩小孔可放入攝影機和手術器械。訓練流程就是先讓學員操作一次模擬手 術,再由評估者對錄下的影像做評估,此方法在學員人數稍多的情況下,將非常 耗時,學員不能馬上得到評估結果,雖然可以靠增加評估人員去減少等候的時 間,但每位評估人員各有主觀標準,也容易讓學員產生矛盾。如果能將評估的過 程用一自動化的系統去取代,那麼不僅評估的標準統一,同時也增進評估的效 率,學員越快得到回饋的結果也越快能進行技巧的改進。這篇論文希望研究出一 個手術器械的追蹤與動向分析的方法並降低錯誤率,最後以此探討發展出自動化 評估系統的可能性。 在追蹤器械方面我們利用器械在畫面是長長一條的特性,用霍夫變換(Hough transform)找出畫面中的直線,再將找到的直線兩兩配對,並且為每個配對標記 頭尾,我們假定在所有配對中,正確配對的兩直線夾住的區域即為器械本身,利 用前後張差距不大的關係以高斯機率密度函數(Gaussian probability density function)將每張畫面最可能的配對挑出,再利用挑出的頭尾畫出軌跡,並由軌跡 分析出此操作者的熟練程度。Tracking and motion analysis of surgical tools for the
purpose of automated skill evaluation of laparoscopic
surgery
student:sheng-wen Wang advisor:Tsaipei Wang
Institute of Multimedia Engineering
College of Computer Science
National Chiao Tung University
Abstract
There are many way to train laparoscopic surgery skill, the most used one would be using training box, with some fake organs inside and two little holes on top for camera and surgery equipment. The training procedure will be letting trainees do one simulate surgery first then evaluator evaluates how well the trainee performs
according the video tape recorded during trainees’ simulate surgery procedure. But it will take much times with trainee’s number grows, every trainee cannot get their feedback right away after they finish the simulate surgery, although we can reduce the time waiting by increasing the number of evaluator. But every evaluator has their subjective criterion which will make contradictory if the trainee receives two feedbacks with two totally different suggestions to improve his skill. So if the evaluating procedure can be replaced by an automated system, then not only we can unify the criterion but also reducing the time waiting for feedback. The faster the trainee get their feedback, the faster the trainee improve their skills, the purpose of this paper would be studying a way to do tracking and motion analysis of surgical
tools, and reduce the error rate for bad tracking, finally investigates the probability to build automated system.
We use the fact that equipment used in operation is always to show a long stick in screen. So the Hough transform is used to find straight lines in screen and put every line we find into pairs of two and then mark these pairs the head and the tail. We assume among these pairs, the right pair would include the area of equipment stick. Because of the difference between frame and frame is usually small, the Bayesian classification will find the most probable pair in each frame. So the heads of chosen pairs will form the trajectory of the operation equipment, according the trajectory the system then can give a performance evaluation of how well the operator performs.
誌謝
謹上我的指導教授王才沛博士致上感謝之意,感謝他在這兩年多來在專業上 的指導,以他的學識及經驗,推動著研究的進行,使得本論文得以順利出刊。 另外也感謝實驗室裡一同奮鬥的夥伴建順、詩祐,大家一起為共同的目標而 努力和互相鼓勵,讓這段時間,有笑有淚,更有成就感。 最後要感謝我父母,感謝他們的辛苦栽培,使我在生活上無後顧之憂,得以 將此論文完成,謹以此論文代表我感激的心。目錄
摘要... I Abstract... II 誌謝...IV 目錄...V 圖例...VI 表格...VIII 第一章 簡介...1 1.1 研究目的...1 1.2 論文架構...2 第二章 相關研究...3 2.1 關於腹腔鏡技術的文獻...3 2.2 動向分析的文獻...3 第三章 研究方法...5 3.1 方法簡介...5 3.2 直線偵測...8 3.3 標記頭尾...17 3.4 選出正確的配對...19 3.5 辨別動作軌跡...24 第四章 實驗結果...27 4.1 器械追蹤結果結果範例...27 4.2 器械追蹤結果的統計...29 4.3 辨別類似軌跡...31 第五章 結論與未來展望...35 參考文獻...37圖例
圖1-1 腹腔鏡手術訓練箱。(a) 箭頭指出兩個插入器械的位置。也是本論文的影 像來源所使用的訓練箱。(b)使用者經由監視器看到箱內手術部位,左右 手各操作一隻器械[1]。...2 圖 3-1 流程圖 ...5 圖3-2 希望得到的結果 (a)輸入原圖。(b)找出器械的上緣與下緣,如黃線所示。 找出器械的頭尾部如白色圓圈所示...6 圖3-3 (a)輸入影像。(b)做完邊緣偵測和霍夫變換後重建的直線。(c)(d)從(b)中的 直線挑出可能的配對。(e)為(c)的配對標記頭尾。(f)為(d)的配對標記頭尾 ...7 圖3-4 判斷(a)(b)(c)三者中何者最可能為器械的配對。比較(d)(e)的軌跡相似度.8 圖3-5 將影像分段的示意圖 ...9 圖3-6 Hough transform 的轉換圖...10 圖3-8 配對的條件 (a)兩直線的斜率乘積要大於 0。(b)此配對斜率乘積小於 0 不 符合實際情況。(c)兩直線的夾角。(d)角度太寬,會包含到器械以外的區 域。(e)兩直線尾端的寬。(f)太細,無法包含到整個器械。(g)兩直線的交 點往下延長後可得。(h)交點要往上延長後可得,不符合現實情況,此配 對須捨棄。...16 圖3-9 找頭尾的方法 (a)先求出這組配對的中線(白線)。(b)只需對兩直線內的區 域做處理。(c)白點代表所有灰階值在 0 到 0.2 之間的 pixel。(d)0.2~0.4(e) 0.4~0.6 (f) 0.6~0.8 (g) 0.8~1.0(h)做完 connected component labeling 後,面 積最大的區域與(b)的交集。(i)面積次大的區域與(b)的交集。 ...18 圖3-10 挑選正確配對的路線 ...19 圖3-11 挑選的 3 個特徵 (a)白色+為頭部位置。(b)取白色線上的所有 pixel 的灰 階值,求其平均。(c)2 條白線的夾角 ...22 圖3-12 以較好的配對所算出的 d(w,w) 的統計圖,橫座標為 d(w,w),縱座標為張 數。(a)左側器械。(b)右側器械 ...23 圖3-13 尋找類似的軌跡 ...24圖3-14 樣版軌跡。(a)到(h)為 frame 481~488。(i)左側器械頭部位置的連續圖,以
此為樣版...25 圖4-1 第一組影像的連續圖。(a)frame 75。(b) frame 76。 (c) frame 77。 (d) frame
78。黃線為配對的兩直線,加號為頭尾部位置...27 圖4-2 第一組影像的連續圖。(a)frame 540。(b) frame 541。 (c) frame 542。 (d) frame
543。(c)無任何標記,程式選定此張影像「無配對」 ...28 圖4-3 第二組影像的連續圖。(a)frame 3521。(b) frame 3522。 (c) frame 3523。 (d)
frame 3524。(c)的直線配對與實際器械有偏差...29
總數,K=0 代表無使用 MAD (a)第一組圖。(b)第二組圖...30 圖4-5 (a)以(b)的軌跡作樣版,搜尋 frame250~300 的結果,藍、紅線分別為 x 與 y 座標的 correlation。我們可以看到(b)與(c)的 correlation 很高,也就有相 似的軌跡。(b)與(d) x 座標的 correlation 的值接近-1 也使兩者軌跡有很大 的差距。(b) frame 481~488 的左側器械軌跡,選定的樣版軌跡。(c)frame 260~267 的左側器械軌跡,受測試影像找到的相似軌跡。(d)frame 279~285 的左側器械軌跡...31 圖4-6 一些找到與樣版相似的軌跡 (a)樣版軌跡。(b)第一組 frame260~267,左 側器械。(c)第一組 frame184~191,右側器械。(d) 第一組 frame764~771, 右側器械。(e) 第一組 frame1191~1198,右側器械。(f) 第二組 frame955~962,左側器械 ...32 圖4-7 一些找到與樣版相似的軌跡,其中(f)(i)找得並不理想 (a)樣版軌跡。(b) 第一組frame265~271,左側器械。(c)第一組 frame1104~1110,右側器械。 (d)第一組 frame595~601,右側器械。(e)第二組 frame802~808,左側器械。 (f)第二組 frame1907~1913,左側器械。(g)第二組 frame1269~1275,右側 器械。(h)第一組 frame171~177,右側器械。(i)第一組 frame234~240,右 側器械...33
表格
表4-1 與手點吻合的張數統計圖 ...30
表4-2 以圖 4-5(b)的軌跡作樣版,搜尋兩組的影像中類似軌跡的一些結果 ...32
第一章 簡介
1.1 研究目的
近年醫學進步很快,例如在分子生物、遺傳學、新的診斷工具等,在外科方 面,最重要的發展是微創手術(minimal invasive surgery)的發展。微創手術的 主要目的是以最小的傷口達到治療或診斷的目的。傳統的外科探腹術必須在腹部 切開一個十多公分的傷口,但如以腹腔鏡(laparoscopy)診斷,用一公分的傷口 就可以達到同樣的目的。同樣的,傳統的膽囊切除手術(cholecystectomy),也 要十多公分的傷口,病人需要住在醫院五到七天,傷口很痛,約要一個月後才能 恢復正常活動。以腹腔鏡做膽囊切除手術,衹要三或四個小孔就可以完成,病人 住院縮短到二或三天,在短期內就可以正常活動,其好處是非常明顯的。目前微 創手術在各方面都有飛快的進展,例如腹部手術、心臟手術、脊椎手術、腦部手 術等,各種新的應用也不停地被報導。 腹腔鏡手術與傳統手術不太相同,腹腔鏡手術是透過電視畫面觀看手術部位 也就是眼與手並不在同一方向,手術器械是經過一個小孔,小孔像一個支點,所 以器械的動作與手的動作方向是相反的。這樣的手術操作過程在日常經驗不容易 體驗到,需要長時間的練習才能熟悉。因此腹腔鏡手術的重點訓練之一就是實地 操作,最常被使用的訓練方法為訓練箱,在訓練箱內放置假器官來進行,箱上有 小孔可放入手術器械和攝影機,如圖1-1(a)箭頭所指處。學員必須先執行一次模 擬手術並錄下整個過程,再由評估人員對錄像做評分,並指出學員該改進的地 方。如此一對一的教學方式,在學員數量漸多時,將用掉非常多的時間,不能馬 上拿到評估結果,雖然可以透過增加評估人員去加速評估的效率,但是每位評估 人員都有自己的主觀標準,如此一來也容易讓學員產生矛盾。如果我們能將此訓 練過程中的指導部分用一個自動化的系統來代替,保證系統的統一標準性,同時 也增進評估的效率,學員越快得到評估結果也能更快著手改進缺點,如此也能大
幅加快腹腔鏡手術訓練的過程。 (a) (b) 圖1-1 腹腔鏡手術訓練箱。(a) 箭頭指出兩個插入器械的位置。也是本論文的影像 來源所使用的訓練箱。(b)使用者經由監視器看到箱內手術部位,左右手各操作一 隻器械[1]。
1.2 論文架構
本論文共分五章,第一章為介紹研究背景、研究目標,第二章為相關研究, 第三章為提出的研究方法,第四章為實驗結果,第五章為結論與未來展望。第二章 相關研究
2.1 關於腹腔鏡技術的文獻
有關訓練及客觀評估腹腔鏡技術的研究當中,關於所謂客觀評估的重要文獻 是Derossis 等學者發表的方法,即受評估者進行若干腹腔鏡器械的操作任務,然 後計算完成時間及失誤[2]。該研究沒有真正分析受評者的動作。大部份其他有 關評估技術熟練度的都採取類似方法,例如Derossis 的研究報告發現重覆的訓練 可以使技巧進步,其評估方法就是採用訓練箱,以時間及失誤為評分標準[3]。 其他類以研究也是如[4]。Waxberg 等學者研究電玩與腹腔鏡技巧的關係,也是用 同樣方法[5]。較複雜的任務,例如一完整的手術,就更難有客觀的評分了,通 常僅能由評審主觀評分例如Pamela 等人的研究就是如此[6]。Tarek 的研究報告 分析外科醫師在做腹腔鏡手術時的上臂活動,發現專家醫師的動作較快且可有效 控制,臂關節的活動也較廣[7]。2.2 動向分析的文獻
動向分析大致可分成三種階段detection、tracking、behaviorunderstanding[8],在 detection 階段我們要將器械與背景分開,background subtraction 是一個不錯的方法[9],但考慮到在手術過程中攝影機會移動,也就是 背景會移動,基於此點Karmann 和 Brandt 提出 adaptive background[10],以 Kalman filter 解決突發的天氣現象和亮光。在 tracking 階段,常用的作法有從連續影像中 找出相同的區域,以區域形成物體(region-based tracking),例如分別追蹤人體的 頭部、軀幹、四肢[11],或是找出能代表物體的輪廓並隨著時間動態更新(active contour based tracking)[12],我們依然使用追蹤特徵的作法(feature-based
tracking),特徵可以只是容易辨認出的點或直線甚至是一個物體的中心點[13]。
frame 中的不同配對,這部份能用的數學工具有 Kalman filter[14]、Condensation algorithm[15]。在 behavior understanding 階段,我們建立幾個樣版軌跡,再去從 連續影像中找出與樣版類似的軌跡[16]。
第三章 研究方法
3.1 方法簡介
圖3-1 為我們的研究過程的流程圖。我們採用的方法,是追蹤器械在影像中 的特徵。器械柄在畫面中就像一條長長的棍子且不會變形,如果我們能找出影像 中的所有直線,這些直線之中必有與器械柄的上下緣吻合的可能,再將這些直線 做兩兩配對,那麼其中一配對就能將器械與背景分開。在「直線偵測」中將影像 中的直線找出,並將可能包含器械的直線配對找出,在「標記出配對的頭尾」中 為找出的配對標記頭尾,當作器械的頭尾部。在「選出正確的配對」中,以機率 選出最有可能是器械的配對。在「動作分析」中,以器械的頭部畫出的移動軌跡, 辨別操作器械的類似動作。 我們希望每張影像在經後「選出正確的配對」後,能得到圖3-2 的結果,得 到能代表器械上緣與下緣的直線配對,和一組頭尾,也就是器械柄的兩端。如果 影像中有兩條器械,那麼也要找出兩組直線配對與頭尾。 圖 3-1 流程圖 直線偵測 標記出配對的頭尾 選出正確的配對 動作分析 輸入影像(a) (b)
圖3-2 希望得到的結果 (a)輸入原圖。(b)找出器械的上緣與下緣,如黃線所示。
找出器械的頭尾部如白色圓圈所示
圖3-3、3-4 為我們實作圖 3-1 每個步驟的結果
(1)圖 3-3(a)為一個輸入的影像。
(2)做邊緣偵測(edge detection)和霍夫變換(Hough transform)找出若干直線, 如圖3-3(b)。 (3) 做直線的挑選,將位置相近甚近重疊的直線合併,接著將所有直線以窮 舉法做兩兩配對。圖3-3(c)是一組夠貼近器械的上緣與下緣的配對。圖 3-3(d)不 夠貼近器械邊緣,在後續步驟中會被捨棄。 (4) 為在步驟(3)找出的每個可能的配對標記頭尾部如圖 3-3(e)、(f)。 (5) 我們在每個直線配對裡截取數個特徵,以特徵決定每個配對與其他配對 關連的機率,然後在連續影像中將有包住的器械的配對連結出來(matching),來 達到追蹤(tracking)的效果。如圖 3-4(a)、(b)、(c),選出何者最可能是器械。 (6) 找出類似的器械動作,如夾住某物、移動的方向和迴轉。此步驟我們採 用template matching。事先設定好樣版軌跡,再逐一比較與受測試影像軌跡的 correlation,correlation 越高代表軌跡越像。圖 3-4(d)、(e)是一些動作軌跡的例子。
(a) (b)
(c) (d)
(e) (e)
圖3-3 (a)輸入影像。(b)做完邊緣偵測和霍夫變換後重建的直線。(c)(d)從(b)中
(a) (b) (c) (d) (e) 圖3-4 判斷(a)(b)(c)三者中何者最可能為器械的配對。比較(d)(e)的軌跡相似度
3.2 直線偵測
我們採用下列式子將一整組的影像轉為灰階圖,其中R、G、B 各代表彩色 影像中紅色、綠色和藍色的值。 B G R y x g( , )=0.299⋅ +0.587⋅ +0.114⋅ (3-1) 我們假設一組影像的總張數為Nframe,以 t g 來表轉為灰階的影像內的某一張 影像,因此1≤t≤Nframe。我們對每張 t g 做邊緣偵測(使用 Sobel filter ),即 ) ( t t g SF e = 。並將每張e 做垂直的分割,分成數段,t { 1, 2,..., t} s t t t e e e e = ,s 為一固 定數用來指定每張圖 t g 要被分成幾段。相鄰的分段可以有重疊。我們採取的做 法為每段 50 個 pixel,相鄰的分段重疊 25 個 pixel。如圖 3-5 所示。圖3-5 將影像分段的示意圖
分段的目的是為了提升找出直線的效果。若直接對一整張影像做霍夫變換 (Hough transform),一些較短的直線很容易被忽略掉。相鄰分段有重疊是為了增 加準確度。
Hough transform:
在Hough space 裡每一點(d,θ)都代表平常2 維座標中的一條直線 y=ax+b,d 為直線與原點的最短距離,θ 為從原點到直線最短距離的點的向量的角度,如圖 3-6。如果我們掃過平常 2 維空間的每一條線的每一點就將可能通過此點的線都 算出並換算成(d,θ),然後存到相對應的Hough space 的計數器,整張圖掃完後 數值越高的(d,θ)就越可能是一條線,因為該條線上的每一點都會算出相同的 ) ,
(d θ 。這時取出Hough space 中的所有區域最大值(local maximum)的座標
) , (d θ ,再換算回去得到平常2 維空間上的直線。 et et1 et 2 e t s
……
圖3-6 Hough transform 的轉換圖 我們對每一分段 t i e 分別做霍夫變換(Hough transform)。在事先觀察受測試錄 像後,我們限制θ 在30° 149~ °,我們發現手術器械不會擺到接近垂直的方向, 做此限制不會影響到正確的結果,也能減少計算時間。當然在不同的訓練箱或在 實際手術上也許會有變動,此限制也要跟著改變。 我們將每一分段 t i e 找出的所有直線各用一個集合來表示: { 1, 2,...,ikt} t i t i t i l l l L = , 10 ≤ k 。每一段找出直線數目並不一定一樣,通常靠近影像中間的分段的直線數 目都比影像兩端的分段直線的數目多。 有些直線實際上會跨過數個分段[ , , t] k t j t i e e e ,因此會發生同一條直線被我們分 angle distance 傳統2 維空間 Hough space θ1 d1 θ2 d2 X Y Y X
.
.
(d2,θ2) (d1,θ1)到數個分段去,然後被分別找出。所以必須將這些原本該是同一條直線的線段還
原成一條直線。還原的方法我們採用linear least square。
設組成兩直線的所有點的集合為{(x1,y1),(x2,y2),...,(xm,ym)}。我們定義 ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ = m m y y Y x x X , ... 1 ... ... 1 1 1
若將兩直線的x,y 座標分別代入矩陣 X、Y 則可得到直線參數 A,其中 a、
b 分別是直線的斜率和位移: Y X X X b a A ⎥=( T )−1 T ⎦ ⎤ ⎢ ⎣ ⎡ = (3-2) 我們用來算出此新直線與點集合之間的誤差為:
[
]
m y A x difference m i i i∑
= − = 1 2 ) 1 ( (3-3) 如果兩條線原本屬於同一條線,那麼將此兩條線的x,y 座標代入式(3-3)所 算出的新線誤差會很小,而只要誤差夠小就可歸類成同一條線,也就是用新直線 去取代此兩條線的組合。 合併直線的演算法如下所示,我們以 t C 來代表 t g 裡所有重建並組合的直線 集合。E 設定為誤差的最大容忍值,若超過該值,該則組合不是同一直線,考慮 到還原的直線會產生誤差,本該是同一條直線的數個分段經過我們還原後,端點 不會很完美地接合,在這篇論文我們設定E 為 5 pixel。 Algorithm 3.2.1 合併直線的演算法:End End End } ' { E If 3) -eq.(3 using , and ' between error the Compute 2) -eq.(3 using , ) , ( with ' Compute in every in every For to 2 from For } in lines the all { 1 c C C (c,l) c l c c L l AND C c s i L C t t t i t t t ∪ = < ← ε ε 由於我們先分段再找直線,還原出來的直線也會沿伸到分段邊緣,但實際上 直線也許並不會到分段邊緣,如圖3-7。因此為了不影響之後其它步驟的準確度 必須將還原的直線多餘的部份截掉。只要取每條還原的直線與做完邊緣偵測 (edge detection)的影像的 t e 交集,再找出最末兩端,此即為直線應有的邊緣。 algorithm 3.2.2 截掉多餘的部分: End } , ) ( | { , in ) ( that in ) ( Find , in ) ( that in ) ( Find in points of set the in points of set the line every For 2 1 2 1 j a i a a a j a a j j a i a a i i t t x x x l ,y x l l x x temp ,y x temp ,y x x x temp ,y x temp ,y x SET SET temp e SET l SET C l ≤ ≤ ∈ = ≥ ∀ ≤ ∀ ∩ = ← ← ⊂
圖3-7 原圖與還原圖的差異 (a)原圖中該直線並無達到分段的邊緣。(b)該直線在 各分段的重建圖。(c)將各分段的片段直線組合起來。(d)組合結果,藍色虛線為 產生的多餘長度。 還原的直線過程中,不免會產生一些直線彼此相當接近,這可能歸因於將一 條直線做霍夫變換時(Hough Transform),產生兩組極為相似的(d1,θ2)和 ) , (d2 θ2 ,然後又被我們分別還原,或是因為在將跨分段的直線組合起來而產生 的誤差。為了減少之後步驟的計算量,必須要將相近的直線合併。我們的作法是 (a) (c)
…
…
…
…
(b) (d)…
…
選擇留下較長的直線,底下為實作演算法。 Algorithm 3.2.3 直線的合併 End End line longer the keep and , from line shorter the Remove E If 3) -eq.(3 using , between error the Compute and in , pair line every For j i t j i t C l l j i C l l < ≠ ε ε 最後開始將直線兩兩配對,我們針對手術器械在畫面中不變形的特性,只有 離鏡頭遠近的不同會影響形狀大小,設定幾個配對條件: (1)兩直線的斜率的乘積必須大於 0,如圖 3-8(a)。乘積小於 0 會使兩直線呈 現類似交叉的情況,不符合實際器械的上緣與下緣,如圖3-8 (b)。 (2)兩條線的夾角:angle(l1,l2)< 15°如圖3-8 (c)。太大的角度會包含到器械 以外的區域,並不符要求,如圖3-8(d)。
(3)器械柄的寬度有最小值:width(l1,l2)>15pixel,如圖3-9 (e)。寬度太少
會無法涵蓋到整個器械,如圖3-8 (f)。 (4)還有手術器械頭部都是較細的一端,而且頭部朝下,因此找尋兩直線的 交點,交點必須在兩直線往下延長後才得出,如圖3-8 (g)、(h)。 條件(2)與(3)的門檻值(threshold)都是針對我們的測試錄像中的手術器械所 設計,此限制能在不漏掉任何能符合器械邊緣的配對的情況下,也捨棄許多完全 不符的配對。我們假想一種情況,在某張影像一共找出15 條直線,如果不做任 何限制那麼將有105 種配對,但實際上最多只有 2 組配對是對的(一左一右),因 此設下門檻值,使得不符合實際情況的配對減少,能增進整體效率。當然針對不
同手術操作過程的錄像,也許會使用到不同種類的手術器械,此門檻值須事先調 整過。
條件(1)還可用來分辨此配對是屬於左邊或右邊的器械,配對中任一條直線
(a) (b) (c) (d) (e) (f) (g) (h) 圖3-8 配對的條件 (a)兩直線的斜率乘積要大於 0。(b)此配對斜率乘積小於 0 不符合實際情況。(c)兩直線的夾角。(d)角度太寬,會包含到器械以外的區域。 (e)兩直線尾端的寬。(f)太細,無法包含到整個器械。(g)兩直線的交點往下延長 後可得。(h)交點要往上延長後可得,不符合現實情況,此配對須捨棄。
符合這些條件的所有配對都要記錄下來,但在這步驟我們尚無法決定哪個配 對是真的符合手術器械的上緣和下緣,必須等接下來的步驟做進一步的挑選。
3.3 標記頭尾
將每組配對找出頭尾,也就是器械柄的兩端。我們假設若一組正確配對中的 直線會分別與手術器械的上緣和下緣重疊,所以器械柄會在兩直線包住的區域 內,加上在灰階圖中器械柄的灰階值都趨近相同,因此我們若將圖以灰階值 0~0.2、0.2~0.4、0.4~0.6、0.6~0.8、0.8~1.0 做區分,那麼影像中為器械柄的 pixel 會集中在某一區間,同時也減少不相干的背景和雜訊的干擾。我們的目標是對器 械柄所在的那塊區間找出頭尾。我們的作法如圖3-9,先求出配對的中線。我們 已有配對中兩直線的交點:(x1,y1),也有兩直線的斜率M1與M2,中線的斜率可 由M =(M1+M2)/2求得,那麼中線的方程式就可以用點斜式求出 ) ( 1 1 M x x y y− = ⋅ − (3-4) 圖3-10(a)為所得的中線,圖 3-10(b)顯示配對二直線的包含的區域,我們對 這邊區域以灰階值0~0.2、0.2~0.4、0.4~0.6、0.6~0.8、0.8~1.0 的範圍區分成五張圖,再分別對這五張圖做connected component labeling,將得到數個面積大小不
等的區塊,我們從中挑出面積前3 大的區塊(所有的區塊一起比較,不用再先以 灰階值的區間做區分)。我們找出中線在這 3 個區塊的左右最末兩端,將此定為 直線配對可能的頭尾,也就是每個配對找出3 組頭尾。由於器械柄不一定為最大 區域,所以多找幾組以求不漏掉對的那一組頭尾。在這步驟我們還無法決定哪個 區塊真的是器械柄,因此必須將每組的頭尾與對應的配對記下,也就是視為有3 組資料,它們有同樣的直線配對,但頭尾位置並不同。在3.4 將可以出正確的配 對。
(a) (b) (c) (d) (e) (f) (g) (h) (i) 圖3-9 找頭尾的方法 (a)先求出這組配對的中線(白線)。(b)只需對兩直線內的區域 做處理。(c)白點代表所有灰階值在 0 到 0.2 之間的 pixel。(d)0.2~0.4(e) 0.4~0.6 (f) 0.6~0.8 (g) 0.8~1.0(h)做完 connected component labeling 後,面積最大的區域與(b) 的交集。(i)面積次大的區域與(b)的交集。
3.4 選出正確的配對
在此步驟我們用機率去選出每張frame 最有可能的配對。我們假想如圖 3-10 的情況,將在3.3 節中找出每組頭尾和與它們對應的配對都當作一個節點 (node),而攝影機在過程中一直是對準手術部位的,在開始手術、結束手術和替 換手術器械時,畫面將有一段時間拍不到器械,因此我們需要一個節點「empty」 代表無器械。我們選出配對的過程就像站在時間點t,然後在往時間點 t+1 的路 上,選擇經過機率最高的點 t+1 i ω 。因此這會是條非循環(acyclic)的路徑,而我們 要找出一條路徑通過每張影像,而且此路徑將會是所有可能的路徑中,可能性最 高的。 圖3-10 挑選正確配對的路線 我們現在考慮第 t 個 frame 的其中一節點 t i ω ,假設Q1,t ={q1,q2,...,q}為一個 從第一個到第 t 個 frame 的路徑,其中q (k 1≤k≤t)代表此路徑在第 k 個 frame 所 通過的節點。在所有 t i t q =ω 的路徑Q1,t中,令Q1∗,t為其可能性最大者,且其可能性 t-2 t-1 t t+1 w1t-1empty empty empty empty
w2t-1 w1t w2t w3t w1t+1 w1t+1 w1t+2
為 max( t) i D ω ,則 )) , ( ) ( ( max ) ( 1 1 max 1 , max − − − + = t j t i t j t j t i D d D ω ω ω ω (3-5) 其中 ( , t−1) i t i d ω ω 代表從 t−1 i ω 到 t i ω 的可能性。我們假設所有的ωi1的可能性都是 相同的: 0 ) ( 1 max i = D ω (3-6) 式(3-5)提供我們一個遞迴的方法來求得通過所有 frame 的最佳路徑的可能 性,到最後我們選擇ω∗Nframei 做為終點,
)
(
max
arg
max Nframe i Nframe iD
Nframe iω
ω
ω=
∗ (3-7) 由這個最終節點,我們可以根據其最佳路徑上的節點,往回取得整個有最大 可能性的路徑。 以下討論 ( , t−1) i t i d ω ω 的計算方法,我們以 t−1 j ω 和 t i ω 的差異x來算出兩點之間 的可能性,也就是差異越小機率越高,反之越低。機率的高低以高斯機率密度函 數(Gaussian probability density function)來決定,)) ( ) ( 2 1 exp( | | ) 2 ( 1 ) , | ( 1 2 / 1 2 / 1 u x u x x p tj l T t i − − Σ − Σ = − − π ω ω (3-8) 在此 x 代表兩個節點的特徵值(稍後說明)的差異,u 和Σ 為 x 的平均值(mean) 和covariance matrix。為了減少計算量,我們取對數型式,且省略1/ (2π)l |Σ|(因 為其為常數),得到
) ( ) ( 2 1 ) , | ( ln 1 1 u x u x x p ωit ωtj− =− − TΣ− − (3-9) 式(3-9)即我們使用為 ( , t−1) i t i d ω ω 的值。 因為要追蹤的物體是器械,有固定的形狀,我們也假設每個frame 之間器械 的位置並不會差太遠,所以我們挑選3 個特徵做 feature vector,也就是 x: (1)頭部標記距離(與前一張): 2 1 -t j t i -HeadPosition ) ion (HeadPosit Headoffset= (3-10) (2)頭尾連線灰階值的平均的差: 將頭部與尾部連線上的所有pixel 用一個集合表示:{(x1,y1),...,(xm,ym)},則 GV 為這些點的平均灰階值,此特徵值為: | GV GV | GVdiff t-1 j t i − = (3-11) (3)每條配對的直線的夾角做為 feature vector,如圖 3-11 所示。
(a) (b) (c) 圖3-11 挑選的 3 個特徵 (a)白色+為頭部位置。(b)取白色線上的所有 pixel 的灰階 值,求其平均。(c)2 條白線的夾角 在式(3-8)的Σ (covariance matrix)方面,我們從做到 3.3 為止得到的所有配對 當中,挑出65 組較好的配對,這些配對中的兩直線非常貼近真正器械的上下緣, 標記出的頭尾部也與實際器械的頭尾部相近,以它們的feature vector 建立 covariance matrix。另外因為兩隻器械的操作方式並不相同,右側器械移動得較 頻繁,器械的外觀也有些微地不一樣,因此為左右側器械分別算出covariance matrix,比較能得到精確的結果。 我們還需決定d(ωit,empty)、 ( , t−1) i empty d ω 和d(empty,empty)的值,也就是走 進「empty」、走出「empty」和從「empty」到「empty」的值,這些值可視為門 檻值(threshold),只要 ( , t−1) i t i d ω ω 低於其中之一,就該選擇上述三者之一。在上段 之中我們已挑出數十組較好的配對也有covariance matrix,那麼就可以式(3-8)算
出這數十組的 ( , t−1) i t i d ω ω ,圖3-12 為算出的統計圖。我們將d(ωit,empty)和 ) , ( t−1 i empty d ω 的值設定低於所有算出的 ( , t−1) i t i d ω ω ,不一定要貼近最小值,畢竟 這數十組配對是較好的配對,門檻值太高也使得一些較差但勉強合格的配對不被 選中,最後d(empty,empty)可以比上述兩者再低一些,有時在一連續影像當中, t g 的直線偵測結果不佳,沒有抓到器械,但gt+1的直線偵測結果成功,有抓到器 械,此調整可幫助回到選擇有器械的路上。在本論文裡我們將d( t,empty) i ω 和 ) , ( t−1 i empty d ω 定為-40,d(empty,empty)定為-45。為了得到更精確的路徑挑選結 果,也可考慮左右側器械使用不同的門檻值。 (a) (b) 圖3-12 以較好的配對所算出的 d(w,w) 的統計圖,橫座標為 d(w,w),縱座標為 張數。(a)左側器械。(b)右側器械 到這一步為止,挑選的配對仍容易受背景或雜訊影嚮,錯誤的地方也容易擴
散,例如若在frame t 時挑錯配對會連帶影嚮到 frame t+1、 frame t+2…。我們提
出的解決方法是在此步驟做median absolute deviation(MAD)。將所以做到步驟 3.3
為止得到的所有配對集合稱為 B,將在經過式(3-5)後篩選後的得到的配對集合稱 為B ,求出 '' B 中所有配對的灰階值平均(GV),再求出中位數 ) (GV median MDDIAN = (3-12)
和 )) ( (abs GV MEDIAN median MAD= − (3-13) 之後再對 B 進行篩選,將所有配對符合|MEDIAN−GV |≤K⋅MAD 的集合稱 為B ,K 是一個可調整的系數,越小留下的配對越少,反之越多,我們會在第" 四章秀出在不同K 值的最後結果。最後我們對 "A 的所有配對重做一次式(3-8)。
3.5 辨別動作軌跡
在此步驟將我們希望辨別出操作器械的各種動作,器械的動作可能有移動、 轉向、夾住某部位。由於手術並不是只有一種固定的流程,我們須要將所有手術 動作辨別出。在[10]中做法是為每個動作建立樣版,並設定 windowsize 為 d 張, 如圖3-13。 圖3-13 尋找類似的軌跡 我們從測試影像中挑出數個連續圖組,當作樣版,如圖3-14。在實際手術裡 兩條器械的軌跡有不小的差距,左側器械的作用是固定,有比較多的停留動作。 右側器械較常用來切割,在畫面中較少停留。因此也可為兩側器械設定各自專屬 Dt Dt-1 … Dt-d … D1compute the correlation data sequence Motion template … DNframe Dt Dt-1 … Dt-d Td Td-1 … T1
的樣版軌跡。
(a) (b) (c)
(d) (e) (f)
(g) (h) (i)
圖3-14 樣版軌跡。(a)到(h)為 frame 481~488。(i)左側器械頭部位置的連續圖,
以此為樣版
我們要比較樣版軌跡與受測試影像中第 t-d 張到第 t 張 frame 的軌跡,將兩
者的x 座標和 y 座標分別代入式(3-17),算出 correlation。
u = current figure, t-d
T = template data, D = input data
先求得template data 與 input data 的 variance
2 0 0 2] (1 ) [ 1 ) var(
∑
∑
= = − = d i i d i i T d T d T (3-14)2 0 0 2 ) (1 ) ( 1 ) var(
∑
∑
= + = + − = d i i u d i i u u D d D d D (3-15)再求得template data 與 input data 的 covariance
) 1 )( 1 ( ] [ ) , cov( 0 0 0
∑
∑
∑
= + = = + − = d i i u d i i d i i u i u D d T d d D T D T (3-16)最後求得template data 與 input data 的 correlation
) var( ) var( ) , cov( ) , ( u u u D d T d D T d D T corr ⋅ = (3-17) 我們設定算出的兩個correlation,x 座標的corrx(T,Du)與y 座標的 ) , ( u y T D corr 。兩者的值都要在0.85 以上,那麼就判斷第 t-d 張到第 t 張 frame 的 軌跡與樣版相似。
第四章 實驗結果
4.1 器械追蹤結果結果範例
我們有2 組從台北榮總取得的訓練箱操作過程的錄像,以 10 fps 的頻率截取 每張影像,第一組影像一共有1436 張,第二組影像 4373 張,每張大小皆為 360X240。 部份連續影像中器械追蹤的結果如圖4-1、4-2 和 4-3。 (a) (b) (c) (d) 圖4-1 第一組影像的連續圖。(a)frame 75。(b) frame 76。 (c) frame 77。 (d) frame(a) (b)
(c) (d) 圖4-2 第一組影像的連續圖。(a)frame 540。(b) frame 541。 (c) frame 542。 (d) frame
543。(c)無任何標記,程式選定此張影像「無配對」 圖4-1 呈現出一個成功的追蹤結果,兩側器械都被找到並成功標到頭尾部。 圖4-2(c)右側器械沒有成功被找出,在器械動作過快的情況下,使直線配對都與 實際器械位置產生誤差,也使在所有配對的可能性都過低,程式此張捨棄所有找 出配對,而選擇「無配對」。這部份可以由加入錯誤補正的機制去減少此種錯誤 的發生,在前後兩張影像皆成功找出器械的情況下,中間影像以內插法求出頭尾 部位置。 圖4-3 為另一種錯誤的結果。圖(c)的直線與左側器械上緣並無完全吻合,也 使頭部位置與實際位置有落差
(a) (b)
(c) (d) 圖4-3 第二組影像的連續圖。(a)frame 3521。(b) frame 3522。 (c) frame 3523。 (d)
frame 3524。(c)的直線配對與實際器械有偏差
4.2 器械追蹤結果的統計
我們也須比較整體的結果,對兩組影像各以手動的方式點出器械頭部和尾 部,再與程式做的結果做比較,我們以頭部距離 2 ) on HeadPositi on HeadPositi ( Headdist= P − M (4-1) 其中 P 為程式標出的頭部、M 為手動標出的頭部,和頭尾連線灰階的差 | GV GV | GVdiff = P − M (4-2) 這2 者來決定兩者的結果是否一樣,並將在「無配對」的情形中,將 M on HeadPositi 設為(0,0)、GVM設為0。如果某張影像挑出來的配對符合 Headdist小於10 pixel 且 GVdiff 小於 0.02,那麼判定程式挑出來的配對是對的 跑完驗證的結果如表4-1,第一組圖的兩邊都對的正確率有 92%,第二組圖 則有84%。我們發現最容易出錯的地方為影像模糊如圖 4-2(c),和無直線配對能 完全吻合器械的上緣與下緣,如圖4-3(c)。 表4-1 與手點吻合的張數統計圖 第一組圖 左 右 兩邊都對 吻合的張數 1416 1345 1327 第二組圖 左 右 兩邊都對 吻合的張數 4139 3890 3696
如果我們不做median absolute deviation,可以看出結果會明顯得比較差,如
圖4-4:
(a) (b)
圖4-4 使用不同的 K 做 MAD 得到的統計圖。縱座標為兩邊器械都吻合的張數
總數,K=0 代表無使用 MAD (a)第一組圖。(b)第二組圖
上圖縱座標為兩邊器械都吻合的張數總數,橫座標中0 代表沒做 median
absolute deviation,1 到 6 代表 median absolute deviation 中 K 的值,由此圖表可
看出K 的值設定在 3 到 6 之間,第二組圖可以得到比不做 median absolute deviation
4.3 辨別類似軌跡
圖4-5 是我們設定一個簡單的樣版,然後去搜尋類似軌跡的局部結果,由圖
可知只要找出(藍線) )corrx(T,Du 與(紅線) )corry(T,Du 兩者夠高的時間點就可取 得類似的軌跡。我們在frame 267 處,可看出corrx(T,Du)與corry(T,Du)皆高於 0.85,也找到與圖(b)樣版軌跡相似的軌跡(c)。在 frame 285 處corrx(T,Du)遠低於 0.85,也發現與圖(d)的軌跡與圖(b)不相似。 (a) (b) (c) (d) 圖4-5 (a)以(b)的軌跡作樣版,搜尋 frame250~300 的結果,藍、紅線分別為 x 與y 座標的 correlation。我們可以看到(b)與(c)的 correlation 很高,也就有相似 的軌跡。(b)與(d) x 座標的 correlation 的值接近-1 也使兩者軌跡有很大的差距。 (b) frame 481~488 的左側器械軌跡,選定的樣版軌跡。(c)frame 260~267 的左側 器械軌跡,受測試影像找到的相似軌跡。(d)frame 279~285 的左側器械軌跡 4-6 為我們以圖(a)樣版所找出的一些類似軌跡,表 4-2 為 2 組影像的統計
結果由程式找出類似的軌跡,再以人眼判斷對錯,在不知道醫學上對移動幅度大 小的定義下,僅以大致的整體移動方向判別對錯。 (a) (b) (c) (d) (e) (f) 圖4-6 一些找到與樣版相似的軌跡 (a)樣版軌跡。(b)第一組 frame260~267,左 側器械。(c)第一組 frame184~191,右側器械。(d) 第一組 frame764~771,右側 器械。(e) 第一組 frame1191~1198,右側器械。(f) 第二組 frame955~962,左 側器械 表4-2 以圖 4-5(b)的軌跡作樣版,搜尋兩組的影像中類似軌跡的一些結果 找到總數 對的個數 錯的個數 第一組影像左側 8 7 1 第一組影像右側 7 6 1 第二組影像左側 3 1 2 第二組影像右側 0 0 0 圖4-7 為我們以圖(a)樣版所找出的一些類似軌跡,包含圖(h)與(i)兩個被程式 式挑出來,卻不類似的軌跡。表4-3 為 2 組影像的統計結果由程式找出類似的軌 跡,再以人眼判斷對錯。
(a) (b) (c) (d) (e) (f) (g) (h) (i) 圖4-7 一些找到與樣版相似的軌跡,其中(f)(i)找得並不理想 (a)樣版軌跡。(b) 第一組frame265~271,左側器械。(c)第一組 frame1104~1110,右側器械。(d)第 一組frame595~601,右側器械。(e)第二組 frame802~808,左側器械。(f)第二組 frame1907~1913,左側器械。(g)第二組 frame1269~1275,右側器械。(h)第一組 frame171~177,右側器械。(i)第一組 frame234~240,右側器械 表4-3 以圖 4-7(b)的軌跡作樣版,搜尋兩組的影像中類似軌跡的一些結果 找到總數 對的個數 錯的個數 第一組影像左側 4 4 0 第一組影像右側 6 4 2 第二組影像左側 3 2 1 第二組影像右側 3 3 0 當然這只是個簡單的搜尋,我們希望與醫學院合作,由他們提出何處的軌跡
有意義(在醫學上),以此建立樣版再搜尋受測試錄像中類似的軌跡。再者考慮到
每人操作器械的移動速度不同,例如老手較快,生手較慢,樣版軌跡的windowsize
第五章 結論與未來展望
我們提供一個流程,以霍夫變換偵測影像中的直線,藉由為直線配對和做 connected component labeling 為配對找出可能的器械頭尾,再以機率選出連續影 像中最有可能是器械的配對,也就是將手術器械從連續影像分離出。之後取得器 械頭部移動軌跡,再與樣版軌跡算出彼此的correlation,辨認出類似的操作器械 動作。 我們的做法,欠缺對3 維空間的考慮,雖然錄像是 2 維空間,但實際上手術 是在3 維空間進行。這可以在訓練過程中多加一台攝影機,由兩錄像算出手術器 械的深度。 我們分析的錄像中的手術器械都是黑色,深色器械不易反光或背景影響,若 是淺色器械會降低準確度。可以考慮加入顏色的追蹤,既然手術中使用的器械都 已固定,加入追蹤所有同樣顏色的區塊的條件,可以提高準確度 我們的最終目的是建構一自動化的評估系統,在完成手術器械的追蹤與動向 分析後,我們的構想是拿被評估的錄像與樣版做比較,樣版也是錄像,事先錄下 一經驗豐富的人手術操作過程,並由系統將樣版錄像中的器械的軌跡找出,之後 的評估就以樣版錄像做依據,但我們不能就單純比較兩者的軌跡的不同,因為實 際上手術過程也是由許多小過程組成,這些小過程並不是只能照一種順序去做, 只以一種順序去評估也違背了當初建造客觀的系統的期望,理想的做法是分別找 出各種小過程,再拿去與樣版錄像中同類的小過程做比較。這部分需與醫學院合 作,儘可能找出各種小過程,詳細地記錄下移動速度、軌跡。然後在實際比較受 試者錄像與樣版錄像時,差得越多的小過程,就需要標記出來提醒學員改進。另 外為了讓評估結果更人性化,也可考慮加入評語或建言,這也需要跟醫學院合 作,由他們提出手術過程中容易犯的錯誤,並為每種錯誤提供改進的建議。之後
參考文獻
1. http://www.bioknow.cn/html/pages/664/Paper_15664.htm
2. A.M Derossis, G.M Fried, M Abrahamowicz, et al. Development of a Model for Training and Evaluation of Laparoscopic Skills. Am. J. Surg. (1998);
175:482-487.
3. A.M Derossis, J. Bothwell, H.H. Sigman, G.M. Fried. The effect of practice on performance in a laparoscopic simulator. Surg. (1998); 12:1117-1120.
4. Traxer O, Gettman MT, Napper CA, et al. The impact of intense laparoscopic skills training on the operative performance of urology resident. J. Urol. (2001); 166:1658-1661.
5. Sara L. Waxberg, Steven D. Schwaitzberg, Caroline G.L. Cao. Effects of videogame experience on laparoscopic skill acquisition. Proceedings of the Human factors and ergonomics society 49th annual meeting, 2005, p.1047. 6. Pamela A, Derek W, Birkmeyer J et al. Laparoscopic skills are improved with
LapMentro[TM] training: results of a randomized, double-blined study. Annal of surgery (2006); 243(6):854-863.
7. Tarek A. Emam, George B. Hanna, Chris Kimber, Alfred Cuschieri. Difference between Experts and Trainees in the motion Pattern of the Dominant Upper Limb during Intracorporeal Endoscopic Knotting. Digestive Surgery (2000);
17:120-125.
8. Liang Wang, Weiming Hu, Tieniu Tan. Recent developments in human motion analysis. Pattern Recognition 36 (2003); 585-601.
9. Ahmed Elgammal, David Harwood, and Larry Davis, Non-parametric Model for Background Subtraction, D. Vernon (Ed.): ECCV 2000, LNCS 1843, pp.
751–767, 2000
10. K.P K, A. B, Moving objects recognition using an adaptive background memory, in: V. Cappellini(Ed.), Time-Varying Image Processing and Moving Object Recognition, Vol. 2, Elsevier, Amsterdam, The Netherlands, 1990
11. CR Wren, A Azarbayejani, T Darrell, A.P. Pentland, Pfinder: real-time tracking of the human body, IEEE trans. Pattern Anal. Mach. Intell. 19(7)(1997) 780-782 12. M. Isard, A. Blake, Contour tracking by stochastic propagation of conditional
density, Proceedings of the European Conference on Computer Vision, 1996, pp. 343-356
13. R. Polana, R. Nelson, Low level recognition of human motion, Proceedings of the IEEE CS Workshop on Motion of Non-Rigid and Articulated Objects, Austin, TX, 1994, pp. 77-82.
http://www.cs.unc.edu, UNC-Chapel Hill, TR95-041, November 2000. 15. M. Isard, A. Blake, Condensation-conditional density progaion for visual
tracking, Int. J. Comput. Vision 29(1)(1998) 5-28
16. Jaeyong Chun, Kwanghyun shim, Color object tracking system for interactive entertainment application. Digital content research division, ETRI 161