韋韞韜, 周軼冰, 周東航, 李春潔
(1.佳木斯大學(xué),黑龍江 佳木斯 154007;2.佳木斯市中心醫(yī)院,黑龍江 佳木斯 154002)
在計算機(jī)輔助肝臟手術(shù)中,精確的空間配準(zhǔn)算法有著重大意義,也是一項非常重要的技術(shù)難點.有了良好的空間配準(zhǔn)技術(shù),醫(yī)生可以在手術(shù)之前確定具體的病灶位置,做好相近的手術(shù)計劃,從而為患者選擇最佳的手術(shù)方案,還可以把患者的個體差異作為主要因素考慮進(jìn)去.在術(shù)中,配準(zhǔn)技術(shù)可以幫助術(shù)者避開重要的組織結(jié)構(gòu),盡量降低手術(shù)風(fēng)險,減少手術(shù)給患者帶來的損傷和痛苦,使手術(shù)更加高效、更加安全和可靠.另外,目前醫(yī)院廣泛使用的影像設(shè)備有很多種,例如:常用的CT、MRI、DAS以及PET,先進(jìn)的手術(shù)空間配準(zhǔn)技術(shù)和圖像處理技術(shù)的配合應(yīng)用,可以這些醫(yī)學(xué)影像進(jìn)行精確配準(zhǔn)、多組融合、重新整合甚至通過計算機(jī)技術(shù)三維重構(gòu)這些影像,使醫(yī)生能夠更加精準(zhǔn)地觀察到病灶并且準(zhǔn)確定位,大大地提高了手術(shù)的安全性和可靠性.為了更加有效地檢索和查詢患者信息,醫(yī)院使用計算機(jī)技術(shù)來統(tǒng)一管理患者的治療計劃、醫(yī)療影像等各種資料,也更加便于病人回訪[1].
空間配準(zhǔn)算法在計算機(jī)輔助肝臟手術(shù)中的研究已經(jīng)有10多年,但原有配準(zhǔn)技術(shù)的使用必須在術(shù)前對患者的影像資料進(jìn)行特殊處理,所以需要高精度的術(shù)前影像掃描設(shè)備和高水準(zhǔn)的手術(shù)設(shè)備相配合,即使這樣,配準(zhǔn)的效果仍然有些差強人意,因此并沒有得到廣泛的應(yīng)用.本文介紹了一種空間配準(zhǔn)算法—最近點迭代(ICP,iterative closest point)算法,這種配準(zhǔn)算法克服了以上這些技術(shù)缺點,可以用來進(jìn)行精確配準(zhǔn).這種空間配準(zhǔn)算法通過反復(fù)迭代最小化誤差來實現(xiàn)醫(yī)學(xué)影像和實際空間的精準(zhǔn)拼合,主要被用于計算機(jī)中醫(yī)學(xué)深度圖像與實際空間的配準(zhǔn).
圖1 P,Q兩個空間點集
已知P,Q兩個空間點集,其中P表示圖像空間點集,Q表示手術(shù)空間點集,空間配準(zhǔn)是通過變換找到一個P和Q之間的轉(zhuǎn)換規(guī)則Tp-q,使得P中任意一點px經(jīng)過Tp-q轉(zhuǎn)換后都有唯一一點qx與之對應(yīng),即 P、Q內(nèi)的點滿足 qx=Tp-q(px),其中轉(zhuǎn)換規(guī)則Tp-q可以被分解成一個旋轉(zhuǎn)矩陣R和一個平移向量t,則有Tp-q=min(∑(qx- (R(px)+T))2),即當(dāng)此式取最小值時,R、T為最佳的轉(zhuǎn)換矩陣和向量[2].
圖2 實驗用的肝臟模型
具體步驟如下:
①確定P集合中任意點所對應(yīng)的近距離點集.對于P中任意一點px,在Q中找到距離該點最近的對應(yīng)點的集合Q’.
②計算最小誤差平方和.利用ICP數(shù)學(xué)模型變換方法,找到使得∑(qx-(R(px)+T))2最小的旋轉(zhuǎn)矩陣R和平移向量T.
③利用R,T進(jìn)行點集轉(zhuǎn)換.對于已知集合的所有點通過R,T進(jìn)行變換,從而得到新的點集P'={px'|px'=R(px)+T ,x=1、2……}.④計算誤差.利用P'和Q'兩個點集計算誤差,如果誤差小于預(yù)設(shè)的閥值e,則停止;否則,用P'代替P,重復(fù)上述步驟.
ICP算法的目的是找到圖像數(shù)據(jù)和手術(shù)數(shù)據(jù)之間的旋轉(zhuǎn)矩陣R和平移向量T,為了減少迭代次數(shù),消除局部收斂,在ICP算法中可以使用SVD法和四元數(shù)法來初步確定R.
1.2.1 SVD 法
SVD是一種以誤差平方和最小值為基礎(chǔ),設(shè)定初始旋轉(zhuǎn)矩陣和平移向量的方法,可以選擇使用matlab中的SVD函數(shù)來進(jìn)行計算.具體代碼如下[3]:
SVD算法的使用非常簡單,但是計算時間長,在后期的仿真實驗中比較得出,四元數(shù)法比SVD法效果更好.
圖3 配準(zhǔn)過程流程圖
1.2.2 四元數(shù)法
首先利用四元數(shù)法找到旋轉(zhuǎn)矩陣R,假設(shè)r是一個三維的向量,因此需要一個標(biāo)量和三個矢量來表示,令r=r0+r1i+r2j+r3k,其中=1,可以由 r0,r1,r2,r3來表示旋轉(zhuǎn)矩陣 R 為:
其次借助P,Q兩個點集構(gòu)造協(xié)方差矩陣以及兩點集的質(zhì)心,通過一系列變形計算可以得到旋轉(zhuǎn)矩陣R,則平移向量t=q-Rp.
在matlab仿真實驗中,使用四元數(shù)法操作函數(shù)如下所列:
①模(Modulus):quatmod(p)
②范數(shù)(Norm):quatnorm(p)
③單位化(Normalize):quatnormalize(p)
④求逆(Inverse):quatinv(p)
⑤四元數(shù)除法:quatdivide(q,p)
⑥四元數(shù)乘法:quatmultiply(p,q)
⑦共軛四元數(shù):quatconj(p)
另外還有旋轉(zhuǎn)函數(shù)quatrotate、四元數(shù)和歐拉角互換的函數(shù)quat2euler、euler2quat
以肝臟模型作為實驗對象,實驗前對其進(jìn)行CT掃描,采用GE MEDICAL SYSTEM HISpeed螺旋CT設(shè)備.具體掃描參數(shù)如下[4]:管電壓120kVp,管電流*曝光時間250mAs,層厚5mm,層距的選擇與層厚同步,旋距1,窗寬150~200Hu,窗位40~50Hu,CT 視野(FOV)35cm*35cm -40cm*40cm.將CT數(shù)據(jù)利用DICOM3.0標(biāo)準(zhǔn)的讀取模塊導(dǎo)入,進(jìn)行層間插值處理,獲得各向同性分辨率的圖像.
表1 特征點誤差 mm
由表中數(shù)據(jù)計算出平均誤差為0.65mm,在可接受范圍內(nèi).
為了更好地模擬仿真實驗過程,首先分割CT圖像,利用區(qū)域生長算法確定肝臟曲面的離散點坐標(biāo),從而分割出肝臟輪廓.其次利用基于肝臟輪廓線的曲面重建算法,三維重構(gòu)肝臟模型.然后根據(jù)肝臟的生理解剖結(jié)構(gòu),利用探針獲取五個仿真實驗用的特征點.最后將肝臟模型上的五個特征點通過配準(zhǔn)算法映射到模型空間,測量映射點的三維誤差,計算這些點與實際對應(yīng)點之間的誤差.具體的配準(zhǔn)流程見圖3.
配準(zhǔn)結(jié)束后,測量映射點的三維坐標(biāo),計算誤差,預(yù)設(shè)的五個特征點與實際位置的誤差值如表1所示.
本文提出一種計算機(jī)輔助肝臟手術(shù)中基于ICP的空間配準(zhǔn)算法,利用四元數(shù)法確定迭代初始值,通過模擬的仿真實驗可以得出,配準(zhǔn)誤差基本控制在1mm以內(nèi),精度較高,可以廣泛推廣.
[1]Peters T M.Image-guided Surgery and Therapy:Current St At Us and Future Directions[A].Proceedings of SPIE the International Socie ty for Optical Engineering[C].London:The MUT Press,2001:1- 12.
[2]Gunkel A R,Thunmf art W F,F(xiàn)reysinger W.Computer Aided 3- Navigation Systems[J].Survey and Location Determination,2000,48(3):75- 90.
[3]計算機(jī)輔助導(dǎo)航系統(tǒng)與脊柱外科:數(shù)字化技術(shù)更安全[J].中國組織工程研究與臨床康復(fù),2010(26).
[4]王田苗,劉文勇,胡磊,等.醫(yī)用機(jī)器人與計算機(jī)輔助手術(shù)MRCAS進(jìn)展[J].中國生物醫(yī)學(xué)工程學(xué)報,2008(01).