呂夢(mèng)雅,韓育芳,唐 勇
(1.燕山大學(xué)信息科學(xué)與工程學(xué)院,河北秦皇島066004;2.燕山大學(xué)河北省計(jì)算機(jī)虛擬技術(shù)與系統(tǒng)集成重點(diǎn)實(shí)驗(yàn)室,河北秦皇島066004)
虛擬手術(shù)是虛擬現(xiàn)實(shí)技術(shù)在醫(yī)學(xué)領(lǐng)域的重要應(yīng)用。它可以使醫(yī)生沉浸在虛擬的環(huán)境中進(jìn)行手術(shù)培訓(xùn)和手術(shù)規(guī)劃,與傳統(tǒng)訓(xùn)練方法相比,不僅可以節(jié)約手術(shù)訓(xùn)練的時(shí)間和費(fèi)用,而且降低了實(shí)習(xí)手術(shù)的風(fēng)險(xiǎn),對(duì)促進(jìn)醫(yī)學(xué)水平的發(fā)展具有重要意義。
早期對(duì)虛擬手術(shù)系統(tǒng)的研究主要集中在軟組織形變算法的研究上,對(duì)縫合算法的研究起步較晚。1998年,法國(guó)國(guó)家信息與自動(dòng)化研究所的Delingette[1]提到了虛擬手術(shù)中縫合模擬并說(shuō)明了它的重要性,激發(fā)了人們對(duì)縫合模擬研究的熱情。2001年,米勒斯維爾大學(xué)的Roger等[2]做了一個(gè)初步的皮膚縫合模擬,但縫合線僅僅是簡(jiǎn)單的從縫合點(diǎn)到針眼的直線繪制,沒(méi)有對(duì)縫合線與軟組織的交互模擬。2001年,斯坦福大學(xué)的Joel等[3]對(duì)血管縫合進(jìn)行模擬,用質(zhì)點(diǎn)彈簧建模血管,跟蹤頭結(jié)點(diǎn)(Follow The Leader,F(xiàn)TL)方法計(jì)算縫合線的運(yùn)動(dòng)軌跡,但是由于FTL方法是基于幾何的方法,所以無(wú)法對(duì)縫合線進(jìn)行受力分析。2002年,英屬哥倫比亞大學(xué)的Dinesh[4]用Cosserat Rod理論建立細(xì)長(zhǎng)柔性體的模型并對(duì)縫合線進(jìn)行了建模,但是幾何線性導(dǎo)致縫合線發(fā)生較大的形變時(shí)易產(chǎn)生失真現(xiàn)象。2003年,西蒙菲沙大學(xué)的Matt等[5]對(duì)兩個(gè)面片進(jìn)行縫合,用質(zhì)點(diǎn)彈簧模型建模面片和縫合線,并提到了縫合過(guò)程中出現(xiàn)的摩擦力,但并沒(méi)有對(duì)摩擦力作出計(jì)算。2004年,Moll等[6]根據(jù)能量最小原理提出柔性線路徑規(guī)劃的算法。通過(guò)定義線的旋轉(zhuǎn)應(yīng)力的方程來(lái)計(jì)算線的新位置。2007年,波蘭羅茲大學(xué)的Blazej等[7]將質(zhì)點(diǎn)彈簧方法與基于位置的布料模擬方法相結(jié)合來(lái)模擬線的運(yùn)動(dòng),體現(xiàn)了線的扭曲,但是因?yàn)榕まD(zhuǎn)和彎曲運(yùn)動(dòng)不能耦合,許多扭曲效果不能重復(fù)。2008年,西蒙菲沙大學(xué)的Shi等[8]用有限元模型對(duì)縫合線進(jìn)行建模,實(shí)現(xiàn)了兩塊皮膚的縫合模擬,但是縫合線建模精度高導(dǎo)致計(jì)算開(kāi)銷(xiāo)大。2010年,Payandeh等[9]用質(zhì)點(diǎn)彈簧建模皮膚并進(jìn)行了皮膚的縫合模擬,實(shí)驗(yàn)中主要模擬了縫合線對(duì)皮膚的撕裂現(xiàn)象,但是在皮膚的同一個(gè)地方撕裂,會(huì)造成許多小的三角面片,影響皮膚的重新繪制。2012年,Choi等[10]利用物理引擎PhysX模擬了傷口的縫合,運(yùn)用物理引擎使工作變得簡(jiǎn)單,但PhysX是面向游戲產(chǎn)業(yè)的商業(yè)物理引擎,用它來(lái)開(kāi)發(fā)虛擬手術(shù)系統(tǒng)具有一定的局限性。
綜上,本文采用質(zhì)點(diǎn)彈簧方法對(duì)皮膚進(jìn)行建模?;谖锢淼馁|(zhì)點(diǎn)彈簧對(duì)交互過(guò)程中出現(xiàn)的摩擦力進(jìn)行計(jì)算,基于幾何的FTL方法重建縫合線的構(gòu)型。設(shè)置標(biāo)記來(lái)記錄縫合點(diǎn)信息,以方便計(jì)算連續(xù)縫合過(guò)程中軟組織的形變。
有限元法和質(zhì)點(diǎn)彈簧法是虛擬手術(shù)中常用的兩種基于物理的軟組織建模方法。有限元法將軟組織離散成若干單元,其優(yōu)勢(shì)是模型參數(shù)易于調(diào)節(jié),且采用描述建模對(duì)象結(jié)構(gòu)特性的本構(gòu)方程越精細(xì)和離散單元越多,建模精度就會(huì)越高,得出的結(jié)果越真實(shí),但會(huì)造成求解過(guò)程復(fù)雜,運(yùn)算量大,難以達(dá)到實(shí)時(shí)仿真交互的要求。而質(zhì)點(diǎn)彈簧法對(duì)軟組織質(zhì)點(diǎn)離散化,具有易于實(shí)現(xiàn)、實(shí)施簡(jiǎn)單、計(jì)算效率高等優(yōu)點(diǎn),因此質(zhì)點(diǎn)彈簧法更適合對(duì)皮膚建模(見(jiàn)圖1)。
由于皮膚的質(zhì)量分布相對(duì)均勻,所以采用質(zhì)點(diǎn)均勻分布的四邊形作為靜態(tài)模型的拓?fù)浣Y(jié)構(gòu)。
圖1 基于質(zhì)點(diǎn)彈簧模型建立的皮膚軟組織Fig.1 The skin model based on spring-massmodel
對(duì)任何一個(gè)質(zhì)點(diǎn)i,滿足以下動(dòng)力學(xué)方程
式中:mi為質(zhì)點(diǎn)i的質(zhì)量;ai為加速度;Fs和Fd為質(zhì)點(diǎn)i受到的彈簧力和阻尼力,由方程(2)和(3)計(jì)算得出;Fext為質(zhì)點(diǎn)i受外力的合力。
式中:Fij為計(jì)算質(zhì)點(diǎn)i和j間的彈力函數(shù);σ(i)為與質(zhì)點(diǎn)i鄰接的所有質(zhì)點(diǎn)的集合;xi和vi是i的坐標(biāo)和速度;f為引入的內(nèi)摩擦力系數(shù)。
式中:dij為質(zhì)點(diǎn)i和j的當(dāng)前距離,rdij為初始距離;uij為i到j(luò)的單位矢量;k為彈簧勁度系數(shù);通過(guò)調(diào)節(jié)k和f獲得理想的軟組織形變效果。
通過(guò)不斷更新質(zhì)點(diǎn)的位置,實(shí)現(xiàn)軟組織的形變模擬。經(jīng)過(guò)Δt后,即在t+Δt時(shí)刻,質(zhì)點(diǎn)i的速度和位置如下
用鼠標(biāo)對(duì)皮膚模型施加拉力時(shí),對(duì)于力的作用點(diǎn)不是皮膚模型質(zhì)點(diǎn)的情況,我們采用改進(jìn)的方法尋找受力作用點(diǎn)。本文中模型的基本元素是一個(gè)中心質(zhì)點(diǎn)與和它相連的四個(gè)鄰接點(diǎn),所以,我們先將作用點(diǎn)位置與整個(gè)模型的中心質(zhì)點(diǎn)的位置作對(duì)比。假設(shè)計(jì)算所得距離為l0,依次計(jì)算它與中心質(zhì)點(diǎn)的四個(gè)鄰接質(zhì)點(diǎn)的距離l1,l2,l3,l4,將這四個(gè)距離與l0作比較,將其中距離值最小的點(diǎn)作為新的中心質(zhì)點(diǎn)。重復(fù)上述過(guò)程,直到找到與之距離最小的模型中的質(zhì)點(diǎn),這時(shí),就可以將這個(gè)質(zhì)點(diǎn)作為受力作用點(diǎn)。本文中,因?yàn)閷?duì)每個(gè)質(zhì)點(diǎn)都設(shè)了索引值,所以,通過(guò)中心質(zhì)點(diǎn)的索引很容易找到它的四個(gè)相鄰的質(zhì)點(diǎn)。知道質(zhì)點(diǎn)的索引值便可以確定質(zhì)點(diǎn)在三維世界中的位置。使用這種方法計(jì)算受作用力的質(zhì)點(diǎn)有效的減少了尋找范圍和比較的次數(shù),提高了形變計(jì)算效率。
圖2展示了鼠標(biāo)拉動(dòng)模型中的一個(gè)質(zhì)點(diǎn)和多個(gè)不同質(zhì)點(diǎn)發(fā)生形變的效果,圖2(c)、(d)是對(duì)應(yīng)的加紋理后側(cè)面觀察到的皮膚形變效果。鼠標(biāo)接觸到物體表面上的質(zhì)點(diǎn)時(shí),采用改進(jìn)的方法尋找模型中的受力作用點(diǎn),對(duì)該點(diǎn)賦予沿鼠標(biāo)方向的拉力,該點(diǎn)將隨著鼠標(biāo)移動(dòng),帶動(dòng)模型中其它質(zhì)點(diǎn)運(yùn)動(dòng),引起軟組織形變。
圖2 軟組織模型的形變效果Fig.2 Deformation of the soft tissuemodel
本文的質(zhì)點(diǎn)彈簧模型建模的縫合線,用一些長(zhǎng)為l的線段將模型中的質(zhì)點(diǎn)連接起來(lái),以表示一條完整的縫合線。僅用依次連接的線段表示縫合線,雖然能夠表示線的特性,卻不能表示線的寬度。為了避免這個(gè)問(wèn)題,本文繪制了與縫合線線段數(shù)目相同的圓柱體,將這些圓柱體加在每個(gè)縫合線線段的表面上,以顯示出縫合線的立體感??梢酝ㄟ^(guò)在程序中改變對(duì)應(yīng)的參數(shù)調(diào)整縫合線的長(zhǎng)度、粗細(xì)、顏色等信息,以達(dá)到逼真的縫合線建模。為了避免質(zhì)點(diǎn)彈簧模型發(fā)生大形變時(shí)難以控制的缺點(diǎn),使用FTL計(jì)算各個(gè)縫合線質(zhì)點(diǎn)的新位置,得到縫合線的新構(gòu)型,實(shí)現(xiàn)縫合線軌跡跟蹤(見(jiàn)圖3)。每次用FTL更新縫合線各質(zhì)點(diǎn)位置前,比較交互點(diǎn)最大靜摩擦力與當(dāng)前摩擦力的大小,決定是否發(fā)生相對(duì)滑動(dòng)??刂泣c(diǎn)j受外力作用從Pj.old運(yùn)動(dòng)到 Pj.new,則它相鄰質(zhì)點(diǎn) j+1的新位置就是沿 Pj+1.old到 Pj.new方向移動(dòng)一個(gè)單位長(zhǎng)度。
圖3 縫合線運(yùn)動(dòng)效果Fig.3 M ovement of the suture
當(dāng)縫合線通過(guò)軟組織時(shí)會(huì)在軟組織上形成一個(gè)洞,實(shí)驗(yàn)過(guò)程中用質(zhì)點(diǎn)彈簧模型中的網(wǎng)格形成一個(gè)洞,會(huì)造成縫合線與皮膚的交互模擬過(guò)于復(fù)雜。我們采用將縫合線上的質(zhì)點(diǎn)與軟組織上的質(zhì)點(diǎn)相連,縫合線由于靜摩擦力帶動(dòng)皮膚模型中的質(zhì)點(diǎn)一起運(yùn)動(dòng),由胡克定律可知,隨著質(zhì)點(diǎn)被拉動(dòng),它受到來(lái)自皮膚模型中相鄰質(zhì)點(diǎn)的拉力越來(lái)越大,導(dǎo)致縫合線與皮膚質(zhì)點(diǎn)發(fā)生相對(duì)滑動(dòng)。為了真實(shí)地表現(xiàn)這一過(guò)程,我們對(duì)交互點(diǎn)的受力情況進(jìn)行分析。圖4中,實(shí)心點(diǎn)為軟組織結(jié)點(diǎn),空心點(diǎn)為縫合線結(jié)點(diǎn),F(xiàn)1,F(xiàn)2為彈簧的拉力,f12,f23為線兩端的張力。
當(dāng)1,3之間的縫合線處于拉伸狀態(tài)時(shí),交互點(diǎn)的靜摩擦力方向,即相對(duì)運(yùn)動(dòng)方向,與縫合線拉伸的方向相同,則有
圖4 縫合線與軟組織交互Fig.4 interaction between suture and soft tissue
式中:p1,p2為結(jié)點(diǎn)1和2的位置。壓力方向與相對(duì)運(yùn)動(dòng)方向垂直,設(shè)為v。壓力等于四個(gè)力的合力在v方向上的投影,則有:
于是得最大靜摩擦力為
靜摩擦力的大小為合力在u方向上的投影
完成一次縫合后,下一次縫合由于拉動(dòng)軟組織產(chǎn)生形變,已縫合質(zhì)點(diǎn)會(huì)因受力不同而分離。為了避免這種情況,使每個(gè)已縫合的質(zhì)點(diǎn)位置在多次縫合過(guò)程中保持一致,對(duì)每個(gè)皮膚質(zhì)點(diǎn)設(shè)標(biāo)記stitch,若兩個(gè)質(zhì)點(diǎn)發(fā)生縫合,stitch記錄對(duì)應(yīng)縫合點(diǎn)的索引,形變計(jì)算過(guò)程中讓對(duì)應(yīng)的值位置保持一致。圖5展示了多次隨機(jī)縫合后軟組織及其相應(yīng)的網(wǎng)格模型形變效果。實(shí)際縫合中,每完成一次縫合,要打結(jié)作為結(jié)束,再移動(dòng)縫合線進(jìn)行下一次縫合。實(shí)驗(yàn)中由于沒(méi)有手術(shù)器械的運(yùn)動(dòng)模擬,所以圖5中縫合線只停留在當(dāng)前縫合處。
圖5 連續(xù)縫合過(guò)程中的軟組織形變Fig.5 Soft tissue deformation in a continuous pattern suture
實(shí)驗(yàn)硬件平臺(tái)為Intel(R)Pentium(R)D CPU 3.0GHz 1.0GB內(nèi)存,軟件平臺(tái)為OpenGL與VS2005。圖6展示了完成一次縫合過(guò)程。
圖7(a)、(b)展示了文獻(xiàn)[7]和本文的縫合效果。文獻(xiàn)[7]中線性有限元建模的縫合線形變大時(shí)易失真。
而本文采用FTL算法計(jì)算縫合線各質(zhì)點(diǎn)的位置,使其更接近真實(shí)線的形態(tài),符合縫合線的剛體特征。
圖6 一次縫合過(guò)程Fig.6 The procedure of a single stitch
圖7 不同方法建模的縫合線效果對(duì)比Fig.7 comparison of suture based on differentmethod
本文采用質(zhì)點(diǎn)彈簧方法對(duì)皮膚進(jìn)行了建模并用改進(jìn)的方法尋找受力作用點(diǎn);物理和幾何相結(jié)合的方法建模真實(shí)感縫合線,對(duì)縫合線與軟組織間的力學(xué)交互過(guò)程進(jìn)行了研究與實(shí)現(xiàn);引入縫合標(biāo)記真實(shí)地實(shí)現(xiàn)了連續(xù)縫合過(guò)程中軟組織形變。實(shí)驗(yàn)中沒(méi)有對(duì)手術(shù)器械及縫合線打結(jié)過(guò)程做出模擬,故手術(shù)器械的運(yùn)動(dòng)及打結(jié)模擬將是以后的主要研究?jī)?nèi)容。
[1]Delingette H.Towards realistic soft tissue modeling in medical simulation[J].Proc.of the IEEE:Special Issue on Surgery Simulation,1998,86(3):512-523.
[2]Roger W Webster,Dean IZimmerman,Betty JMohler,et al.A prototype haptic suturing simulator[C]//Medicine Meets Virtual Reality 2001,Amsterdam:IOSpress,2001:567-569.
[3]Joel Brown,Kevin Montgomery,Jean-Claude Latombe,et al.A microsurgery simulation system[C]//Proceedings of the 4th International Conference on Medical Image Computing and Computer-Assisted Intervention,London:Springer-Verlag,2001:137-144.
[4]Dinesh K Pai.Strands:Interactive simulation of thin solids using cosserat models[J].Computer Graphics Forum,2002,21(3):347-352.
[5]Matt LeDuc,Shahram Payandeh,JDill.Toward modeling of a suturing task[C]//Graphics Interface’03.Natick,Massachusettes:A K Peters,2003:273-279.
[6]Moll M,Kavraki L E.Path planning forminimal energy curves of constant length[C]//in Proc.2004 IEEE Intl.Conf.On robotics and Automation.2004:2826-2861.
[7]Blazej Kubiak,Nico Pietroni,F(xiàn)abio Ganovelli,et al.A robustmethod for real-time thread simulation[C] // Proc.of the 2007 ACM Symposium on Virtual Reality Software and Technology,New York:ACM Press,2007: 85-88.
[8]Shi Fu-h(huán)an,Shahram Payandeh.On suturing simulation with haptic feedback[C]//Proceedings of the 6th International Conference on Haptics:Perception,Devices and Scenarios,Berlin:Springer-Verlag,2008:599-608.
[9]Payandeh S,Shi F.Interactive multi-modal suturing[J].Virtual Reality,2010,14(4):241-253.
[10]Choi K,Chan S,Pang W.Virtual suturing simulation based on commodity physics engine formedical learning[J].Journal of Medical Systems,2012,36(3):1781-1793.