王磊,張耀楠,,何穎,唐亮,趙金龍
1.東北大學 中荷生物醫學與信息工程學院,遼寧 沈陽 110169;2.西安思源學院 電子信息工程學院,陜西 西安 710038
頸靜脈穿刺在臨床應用廣泛,如急救時的加壓輸液、輸血或采血標本等。由于穿刺部位血管分布密集,并靠近其他重要人體器官,對手術人員的技能有著很高的要求[1-2]。傳統的訓練方法是利用動物活體進行,不但訓練資源短缺,而且不能夠重復進行試驗。虛擬現實手術輔助系統通過采集并處理各類醫學圖像信息,結合虛擬現實技術在計算機中創建一個虛擬的手術仿真環境。醫生借助該系統中的三維立體場景進行手術路徑規劃、訓練,以及在實際手術過程中引導手術的進行。運用虛擬現實手術輔助系統能夠使操作人員沉浸于虛擬的手術場景中,通過視覺、聽覺和觸覺認知并學習各種手術動作,熟悉并掌握如何處理臨床的各類突發狀況。虛擬現實手術輔助系統不僅能夠解決傳統手術訓練的資源有限、訓練成本高、手術規劃困難等問題,還可以避免用動物活體實驗所引起的道德問題,同時極大地提高外科手術的學習效率,使用戶更好地在培訓期間掌握更高水準的手術技能,最大程度上避免了手術可能引起的并發癥[3-14]。
近年來,國內也逐步開展了虛擬手術系統的研究,取得了不少進展,但對虛擬手術中的基本模塊如碰撞檢測,軟組織形變,模型的有限元剖分算法等領域的研究仍和國外有一定的差距。重慶大學和第三軍醫大學聯合開發的肝臟外科手術計劃系統具有較強的交互功能,運行速度快,可用于術前制定手術方案,有利于降低手術風險,保證手術的安全性,并在臨床上得到了初步的應用[15]。
東南大學主要致力于研究觸覺再現,吳涓等[16]提出了一種用于柔性體的受力形變及實施觸覺響應的同心圓分割算法,該算法基于質點—彈簧/阻尼器模型。離散的質點由沿著法線方向和徑向分布的彈簧相連接,彈簧內部受到的合力等于物體表面的接觸力,該算法具有速度快,實時性強等優點。香港理工大學虛擬現實研究中心對軟組織的蠕變、形變間的非線性特性及遲滯與載荷進行了理論分析,開發出基于質點彈簧模型的“力傳播”算法,并開發出一種低成本白內障晶體狀超聲乳化手術訓練系統[17]。
虛擬手術系統是復雜的系統,從頭開始用底層軟件構建虛擬手術系統需要較長的時間和強大的團隊。而在一個合適的虛擬現實平臺基礎上構建虛擬手術系統會大大加快實現時間、減少錯誤、減少費用、有助于相關理論的研究。在前期工作中,我們對可能的虛擬現實平臺進行調研,并且選擇用OpenGL、Unity3D、Spring System、GiPSi System和SOFA(Simulation Open Framework Architecture)平臺進行了體驗,最后選擇了SOFA作為我們的平臺。本文在虛擬平臺中采用有限元建模的方法構建人體頭頸部和手術器械的體模型,為了得到兩個三維物體的體模型,在創建物體三維面模型的基礎上,采用SOFA對手術場景實現繪制,利用AABB算法構建場景中的碰撞檢測,最后利用隱式歐拉法和共軛梯度算法對碰撞后皮膚的變形進行有限元求解,以證明利用SOFA構建頸靜脈穿刺虛擬手術系統的可行性。
SOFA是一個基于物理仿真的開源框架,可應用于各類仿真應用,但其主要針對醫學實時仿真。其理念最早是由美國波士頓的醫療和創新技術綜合中心在2000年提出,其主要研發團隊有法國國家信息與自動化研究所、蘇黎世聯邦理工學院和澳大利亞聯邦科學與工業研究組織等,它具有以下幾個優點:
(1)多模型表示方法。對于手術仿真中的同一個三維模型,可以在場景中具有多種表達方式,如表面可視化模型,行為模型,碰撞模型等。SOFA通過映射機制將同一個物體的多種表達方式連接起來形成一個完整的物理模型。在不必考慮其他模型受到影響的前提下,我們可以對同一物體的不同模型進行獨立設計,這種多模型的映射機制使得模型的建立和仿真場景的實現變得更加高效靈活。
(2)高度模塊化。因為每個物體具有的組件在場景中是相互獨立的,所以這個設計是高度模塊化的。在場景中,一個物理模型可以簡單地通過改變一個組件被另一個取代。以同樣的方式,一個顯式的歐拉方程也可以通過修改場景文件中的XML一行被換成一個隱式的集成方案。這樣高度模塊化的框架由下面訪問者機制實現。
(3)場景圖層次結構。在SOFA里,模擬的過程被描述成一種具有內在的廣義層次結構的場景。這個場景是由節點組成,這些節點被組織成一個樹或一個有向無循環圖。模擬場景中的不同對象用彼此互相獨立的節點進行組織,可以在一個物體的子節點中構建出該物體的不同表達方式。場景從一個被叫做根節點的父結點開始,其它節點都從這個主節點繼承,其他這些節點被稱作子節點。在不同的仿真步驟(初始化、系統組裝、解決可視化),信息需要從所有圖節點中恢復過來。基于訪問者的一個隱式的機制使數據實現恢復。你可以在Sofa Simulation包中找到抽象訪問者類(Visitor)。訪問者自頂向下和自底向上遍歷場景,并在每個遍歷到的圖節點調用相應的虛函數。因此,通過調用相關的虛函數(如動畫仿真、積累力量),Visitors用于觸發行動。模擬的物體上的算法操作是通過得到Visitor類并且重載它的虛函數top Down( )和bottom Up( )被執行的。
SOFA具有良好的軟件操作界面,能夠提供大多數的三維圖形格式文件的導入,并且在框架內部集成了大量的求解器和有限元分析方法,能夠快速地與力反饋設備實現連接,使開發者只需要關心手術場景中軟組織的形變計算,不需要從基礎的三維模型導入著手。在框架內部提供了彈簧—質點和有限元的行為模型,可以通過設置參數,實現三角形,四面體和六面體形式的彈簧—質點模型,有利于快速構建出軟組織變形仿真場景。
常見的三維表面網格模型(面模型)的建模軟件有ZBrush、MAYA、3D Max、Blender、Silo等,其中Blender不僅具有開源跨平臺的優點,而且能夠提供從建模、材質、動畫、渲染、到音頻與視頻剪輯處理等一系列專業的三維建模和動畫短片制作解決方案。本文采用Blender 2.7.4.0對人體頭部和穿刺針進行幾何模型的構建。
本文在SOFA中已有的人體頭部模型的基礎上,在Blender中對其網格結構進行調整,刪除多余的頂點和重復的面,并對其網格進行三角面片化,得到人體頭部的表面模型在3d max中打開的模型效果,見圖1。

圖1 人體頭部的幾何模型
在通過圖形界面的三維建模軟件構建出人體頭部和手術器械的三維體模型的基礎上,需要將面模型的網格分割成具有內部結構信息的體模型,常見的體模型的基本構成單元包括四面體,六面體,由于SOFA內部采用四面體網格作為物體的行為模型,所以本文將利用四面體剖分算法,對人體頭部和穿刺針的三維面模型網格進行四面體剖分。推動波前法(Advancing Frontal Technique,AFT)能夠很好地滿足SOFA對四面體網格剖分的需求。生成的手術器械的四面體網格模型,見圖2。

圖2 穿刺針的四面體網格模型
SOFA可以通過3種方法實現手術場景的構建:C++、XML、圖形化用戶界面Modeler。本文采用第二種方法對手術場景進行構建,XML是一種可擴展的標記性語言(Extensible Markup Language),可用于數據的跨平臺交互。XML構造虛擬場景的部分代碼,見圖3。

圖3 構造場景的部分XML文件示意圖
按照慣例,場景文件擴展名“.scn”。一個場景文件都包含一個各節點,封裝了整個場景圖,在根節點內部定義了一些方正的總體屬性(如重力,背景顏色,燈光效果等)。節點能夠用XML形成嵌套式的屬性節都,根節點內部的每一個節點都可以在場景中被分成不同的部分。在沒有添加SOFA內部的組件時,節點本身是無用的。所謂的葉節點,意味著他們不可再分,葉子節點必須包含在根節點或其他場景中的節點之內。XML屬性被稱為數據,一個節點可以激活或不激活通過設置布爾數據字段激活“true”或“false”的方式允許使用者訪問和更改組件的不同屬性,構建仿真場景和實現各個模型的不同組件是非常復雜的,SOFA通過引入場景圖層次結構和訪問者機制使得遍歷場景圖變得十分簡單,其高度模塊化的特性也利于用戶隨時改變仿真的整體結構。SOFA具有的映射機制能夠在同一物體的多模型之間建立連接關系,使被仿真的物體建立完整的物理屬性,如可視化模型實現三維物體的繪制并實時更新物體的位置和形變等信息,行為模型完成軟組織的有限元網格上的受力情況分析,碰撞模型則實時監測物體之間的相對位置關系。
SOFA對常見的三維數據格式如VTK,STL,MSH和OBJ等提供了多種加載器,要使用這些特定的加載器,必須在XML場景文件手動連接數據依賴關系。本文首先利用記事本編輯scn文件實現場景的層次節點結構,仿真場景有根節點(Root)、人體頭部節點(Head)和穿刺針節點(Needle)組成,其中頭部節點和穿刺針節點均是根節點的子節點。在根節點中定義場景的重力場,燈光的位置,背景顏色和碰撞檢測的閾值與方式等基本仿真模塊。人體頭部和手術器械節點均由可視化模型,行為模型(有限元模型)和碰撞模型組成,其中可視化模型中定義了人體頭部和穿刺針的幾何數據拓撲關系,并通過兩者的質心分別映射到各自的行為模型。利用SOFA中的三維模型加載器MeshObjLoader將2.1節中利用Blender構建的穿刺針和人體頭部的OBJ文件導入仿真場景中,并利用MeshGmshLoader完成兩個體模型msh文件的導入。
在SOFA框架中實現了人體頭部的行為模型,生成的四面體有限元分析網格,見圖4。在這里實現了對虛擬手術系統物理模塊的建立。

圖4 一個頭部的行為模型
SOFA中的碰撞模型用于實現虛擬手術系統中碰撞檢測模塊,在SOFA框架中實現了人體頭部和虛擬手術穿刺針之間的點線碰撞模型,并在虛擬手術器械做定向移動的過程中構建出軸向層次包圍樹(AABB tree),完成了對虛擬手術系統碰撞模塊的建立,見圖5。

圖5 一個頭部的碰撞模型
由于穿刺針的質量相對于人體頭部較小,在穿刺過程中人體頭部的整體位移可以忽略不計,所以將其四面體網格的外圍頂點和頸部以上部分的自由度設置為零。場景中的穿刺針能夠沿著z軸方向勻速刺入人體頸部。至此,完成了頸靜脈穿刺仿真場景的建立。下面將討論對變形的求解過程。通過對場景中可視化模型、行為模型和碰撞檢測模型的定義,我們構建出頸靜脈穿刺仿真手術的場景圖,見圖6。

圖6 頸部穿刺虛擬手術仿真場景定義
整體的仿真界面,見圖7。

圖7 基于SOFA的頸部穿刺虛擬手術界面
通過對場景中人體頭部的行為模型設置約束點,使人體頭部頸部以上的網格頂點在受針穿刺力的作用時,不產生位置上的改變,而未經過約束處理的頸部皮膚,在針尖刺入皮膚的過程中,會隨著刺入深度的增加而產生明顯的形變。虛擬手術場景中的人體頭部與穿刺針的相關參數,見表1。

表1 仿真模型參數
SOFA提供了多種用于仿真求解的運算器,本文使用行為模型中定義的隱式歐拉求解器和共軛梯度求解器實現軟組織的有限元變形。虛擬場景中穿刺針以恒定速度v=2 mm/s沿z軸運動,頸部皮膚變形,見圖8。

圖8 穿刺變形前(a)穿刺變形后(b)
在SOFA中通過對虛擬手術場景中的相關物理變量賦予真實人體皮膚參數后,可以得到頸部皮膚變形效果。通過調整各個參數的值,設計不同的實驗來獲得穿刺過程中的仿真數據,能夠在虛擬場景中觀察到不同參數設置對皮膚變形效果的影響。
(1)不同軟組織楊氏模量對實驗的影響。根據楊氏模量所具有的物理意義可知,其取值的大小決定著軟組織的變形能力的強弱。通過設置不同的楊氏模量可以觀察到軟組織在穿刺針行進相同位移時,產生不同幅度的形變量,見圖9。這里我們選取具有典型意義的4個楊氏模量的值,體現出皮膚在受到穿刺力時,形變量的大小隨著楊氏模量取值的增加而呈現出減小的趨勢。

圖9 皮膚形變量在受到穿刺力時隨著楊氏模量取值增加而呈現出減小的趨勢
皮膚的楊氏模量決定了它在受到相同大小的作用力時,所產生形變量的大小,圖9中選取了不同的皮膚楊氏模量,穿刺針選用的是剛性穿刺針,在穿刺時保持泊松比、行進時間和剛度系數等其他物理量的大小相同,系統中能夠實現不同的形變量大小的顯示與更新,可以完成不同楊氏模量對形變量的影響,將現實中的人體皮膚的楊氏模量賦予虛擬人體頭部,使實際手術場景中的物理變量和現實保持一致,有利于讓用戶體驗到真實的手術場景。
(2)泊松比對實驗的影響。泊松比是研究物體在受力方向上產生變形的同時,與載荷垂直的方向上的形變情況的物理量。當穿刺針沿著z軸方向運動時,受到沿著z軸的反向切割力的作用,在垂直于z軸的方向x和y方向上會產生形變,由于穿刺部位在頸部且關于z軸在x軸方向上對稱,受到來自于x軸正負兩個方向上的力相差不大,所以穿刺針在x軸方向上的形變量較小,可忽略不計,由于在y軸方向上,穿刺部位以上的四面體單元明顯多于穿刺點以下的四面體數量,在重力以及切割力的共同作用下會產生較為明顯的形變。如果選取的泊松比不夠恰當的話,會使穿刺針在與軟組織發生碰撞以后,形成病態的穿刺效果,見圖10。
本文初步實現的頸部穿刺虛擬手術系統是現代醫學與虛擬現實技術相結合產生的重要研究領域,本文使用多模型物理實時仿真的開源框架SOFA,構建了用于頸靜脈穿刺手術的虛擬現實手術輔助系統。本文充分了解SOFA框架的內部機制,利用三維可視化建模軟件構建人體頭部和手術器械的幾何面模型,使用推動波前法在中實現了人體頭部和穿刺針的幾何面模型的四面體網格剖分,并實現了XML語言對虛擬場景的構建,本文實現的基于有限元物理模型的皮膚變形效果可以推廣到各類柔性物體受力變形的仿真中。 在SOFA虛擬手術場景中,添加力的約束并對模型的各個模塊設置相應的參數,并利用真實人體皮膚參數實現了逼真的有限元變形效果。

圖10 不同穿刺針泊松比對頸部形變的影響
本文所涉及的課題仍可以進一步加以完善,主要體現在以下幾點:
(1)醫學模型的構建。本文中的模型可進一步優化或通過醫學影像數據重建具有頸部內部結構的三維面模型,提高視覺上的展示效果。
(2)仿真參數的選取。雖然離體的肝臟組織和頸部皮膚都屬于人體的軟組織,但是兩者的物理屬性在一定程度上存在著差異性。為了使本文中創建的虛擬手術場景更加適用于真實頸部穿刺手術,在進一步的研究中可以由具有豐富經驗的醫生對頸部的皮膚物理參數加以標定,并對手術穿刺位置的選取和穿刺過程中的行進方向做出科學的統一規劃,為虛擬手術輔助系統制定更加符合真實手術場景的學習方案。從而,能夠為操作者提供一個具有高精度、高準確度的學習平臺。
[1]Kawai N,Minamiguchi H,Sato M,et al.Evaluation of vascular puncture needles with specific modifications for enhanced ultrasound visibility: In vitro study[J].World J Radiol,2012,4(6):273-277.
[2]Inoue T,Okumura F,Mizushima T,et al.Assessment of factors affecting the usefulness and diagnostic yield of core biopsy needles with a side hole in endoscopic ultrasound-guided fineneedle aspiration[J].Gut Liv,2016,10(1):51-57.
[3]Shenai MB,Tubbs RS,Guthrie BL,et al.Virtual interactive presence for real-time, long-distance surgical collaboration during complex microsurgical procedures[J].J Neurosurg,2014,121:277-284.
[4]Piromchai P,Avery A,Laopaiboon M,et al.Virtual reality training for improving the skills needed for performing surgery of the ear, nose or throat[J].Cochrane Database Syst Rev,2015,(9):CD010198.
[5]Generoso JR Jr,Latoures RE,Acar Y,et al.Simulation training in early emergency response (STEER)[J].J Contin Educ Nurs,2016,47(6):255-263.
[6]Moglia A,Ferrari V,Morelli L,et al.A systematic review of virtual reality simulators for robot-assisted surgery[J].Eur Urol,2016,69:1065-1080.
[7]Badash I,Burtt K,Solorzano CA,et al.Innovations in surgery simulation: a review of past, current and future techniques[J].Ann Transl Med,2016,4(23):453.
[8]Endo K,Sata N,Ishiguro Y,et al.A patient-specific surgical simulator using preoperative imaging data: an interactive simulator using a three-dimensional tactile mouse[J].J Comput Surg,2014,1:1-8.
[9]Alaker M,Wynn GR,Arulampalam T.Virtual reality training in laparoscopic surgery: A systematic review & meta-analysis[J].Int J Surg,2016,29:85-94.
[10]Chen GC,Lin CH,Li CM,et al.Virtual-reality simulator system for double interventional cardiac catheterization using fractional-order vascular access tracker and haptic force producer[J].Sci World J,2015.
[11]Liu M,Curet M.A review of training research and virtual reality simulators for the da Vinci surgical system[J].Teach Learn Med,2015,27:12-26.
[12]Fortmeier D,Mastmeyer A,Schr?der J,et al.A Virtual reality system for PTCD simulation using direct visuo-haptic rendering of partially segmented image data[J].IEEE J Bio Heal Infor,2016,20(1):355-366.
[13]Valentine R,Padhye V,Wormald PJ.Simulation training for vascular emergencies in endoscopic sinus and skull base surgery[J].Otolaryngol Clin North Am,2016,49:877-887.
[14]Zevin B,Aggarwal R,Grantcharov TP.Surgical simulation in 2013: why is it still not the standard in surgical training[J].J Am Coll Surg,2014,218:294-301.
[15]陳剛,王翊,張桂華,等.肝臟外科手術虛擬系統的建立與初步應[J].中華肝膽外科雜志,2010,16(8):612-615.
[16]吳涓,宋愛國,李建清.用于虛擬力覺再現的彈簧—質點力/變形模型研究[J].系統仿真學報,2006,18(11):3152-3156.
[17]Choi KS.Toward realistic virtual surgical simulation: using heuristically parameterized anisotropic mass-spring model to simulate tissue mechanical responses[A].International Conference on Education Technology and Computer[C].2010:446-450.