謝 凱,盧光躍 (長江大學電子信息學院,湖北荊州434023)
整形外科手術難度高,危險性大,而且必須容貌與功能兼顧。整形外科對影像學提出了較高的要求,要求術前必須準確診斷,確定病變范圍,提供三維立體視覺,顯示復雜的空間結構,準確測量三維形態參數,設計手術路徑和方案,模擬手術,預測手術對面容的影響等。為了滿足整形外科的臨床需求,CT三維重建輔助整形手術系統開始出現,它是最近的十多年間興起的新興交叉學科,一直是國內外研究與應用的熱點[1~3]。
筆者對整復外科虛擬手術技術進行深入研究,提出了面向整復外科虛擬手術的三維切割模擬算法。
基于表面重建的三維切割模擬流程如圖1所示。

圖1 基于表面重建的三維切割模擬流程圖
構造合適的切割體,如立方體、球、NURBS曲面等,將曲面放置在合適的切割位置上,得到曲面相對于模型的位置。根據選定的切割體和切割體與模型的相對位置,利用體數據空間隱函數來表達切割體。
在模型空間,用隱函數表示切割體。假設表示切割體的隱函數為f(X),其中X=(x,y,z)T為模型空間中的坐標,那么P={X|f(X)=0}表示切割體表面上的所有點的集合;P={X|f(X)>0}表示切割體內部的所有點的集合;P={X|f(X)<0}表示切割體外部所有點的集合。
得到切割體在模型空間的隱函數表達以后,必須將隱函數表達從模型空間轉換為體數據空間。從體數據空間到模型空間經歷了2次變換,第1次變換為縮放變換(由于體數據在x,y,z方向的間距不同),以恢復數據的原始比例,假設變換矩陣為:

式中,Xspacing、Yspacing、Zspacing為體數據在x,y,z方向上的網格間距。第2次變換為在模型空間的幾何變換(旋轉,平移變換),變換矩陣用Mg。假設體數據空間內坐標為 X′=(x′,y′,z′)T在模型空間的對應點的坐標為那么:

因此在體數據空間切割體對應的隱函數為:

如果切割體形狀比較復雜,不能用單個函數表示,那么可以通過函數的組合表示,例如如果切割體為一個半球,就可以用一個完整的球和一個平面組合而成。下面給出一部分通用的隱函數組合規則。
假設有2個切割體在體數據空間可以用隱函數F1(X)和F2(X)表示。
切割體的交集為:

那么對應的隱函數為:

切割體的并集為:

對應的隱函數為:

切割體的補集為:

對應隱函數為F(X)=-F′(X)。
得到切割體在體數據空間的隱函數表達之后,利用已知的切割體隱函數處理原始體數據。對于體數據網格上的每一點計算隱函數的值,如果值小于0,那么該點位于切割體的外部,如果值大于0,那么該點位于切割體的內部,根據隱函數的值判斷當前點是否應該被切除。如果當前點應當被切除,那么將該點的值設為數據允許的最小值,否則保留原來的數值。這樣就可以把需要的體數據部分保留了下來。
利用表面重建算法[4],從處理過的體數據重建等值面[5~6],然后采用合適光照模型就可以得到切割后的效果圖。

圖2 三維整形手術模擬平臺
顱面部結構復雜,是多個重要器官集中區,同時又關系到容貌,涉及顱面部的外科手術難度高,危險性大,而且必須容貌與功能兼顧。顱面部整形外科對影像學提出了較高的要求,要求術前必須準確診斷,確定病變范圍,提供三維立體視覺,顯示復雜的空間結構,準確測量三維形態參數,設計手術路徑和方案,模擬手術,預測手術對面容的影響等。基于CT圖像的三維手術模擬是當今的一大熱點,因為它克服了以前方法的局限性。以人機交互方式即利用鼠標移動截骨塊,截骨塊可在三維坐標方向上同時進行移動和旋轉,系統可以自動輸出相應截骨塊在三維方向變化的數據 (見圖2)。
該系統采用基于CT圖像的三維手術模擬,系統平臺采用Visual C++6.0來實現,用到了Pixel Shader 2.0[7~8],在配有Pentium4 2.4GHz CPU、NVIDIA Geforce 6600顯卡 (128M)的PC機上進行測試。手術模擬是在接近真實解剖形態的立體模型上施行,截骨手術模擬與實際手術操作大致相同。根據測量診斷結果選擇整形模式,并預設截骨段在三維軸向上的移動距離和旋轉的角度。系統即按預設參數自動模擬經典的顱面外科截骨整形手術。
下面利用一個眶距增寬癥的病例說明三維整形手術模擬平臺的應用。
眶距增寬癥 (orbital hypertelorism)是一種嚴重的顱面部畸形,矯形手術是唯一的治療方法。截骨方式如圖3(a)和圖3(b),矯正后患者內側眶距為20mm。

圖3 截骨前(a)與截骨整形后(b)的顱骨示意
在己經建立的三維顱面模型的基礎上,進行顱面三維截骨手術的模擬。考慮患者的畸形特征,由醫生根據測量的數據和臨床經驗進行模擬手術方案設計。患者顱面圖像顯示于圖像終端,操作者按手術類型選取標志點,劃出截骨線,位于截骨線上的所有邊界像素構成 “切割線”輸入并存儲于系統;所有邊界像素均予以標記,使 “截骨段”由邊界像素切割線界定為獨立、有確定大小和厚度的多面體操作塊。該切割線的所有輪廓點都經過世界坐標到屏幕坐標的轉換并標記到頭顱圖像上,輪廓線不連續之處則予以插值。通過設定骨塊的參數,可以將骨塊移動到任何預定位置,如果效果不滿意可以重復操作,直到滿意為止。
與上海第九醫院合作,對眶距增寬癥的三維截骨手術進行了模擬,眶距增寬癥的三維截骨手術模擬示意圖如圖4所示。從術前骨組織畸形情況,可以看到患者眶間、鼻骨、梨狀骨中央廣泛骨組織增生,眶間距49.06mm(正常人不超過28mm);另外,此患者兩側眶向外、向后、向下扭轉,眶橫徑與標準平面夾角分別為-0.8°和-1.5°(正常人為+4~+8°)。因此,手術的目的就在于截除中央多余的骨質,并將兩側眶扭轉回正常形態。圖4(b)中將眶周分為3塊,中間部分拿下來另外用。圖4(c)把中間那塊骨頭縱向劈開。圖4(d)把兩側的骨塊移動到中間,中間劈開的骨頭,墊在兩邊的眼眶和顴骨、殘余的眶外側緣之間,這樣就基本上完成設計了。圖5為眶距增寬癥矯正手術前后病人的正面圖和側面圖,可以看到患者的外觀得到了極大的改善。

圖4 眶距增寬癥三維截骨手術模擬示意圖

圖5 眶距增寬癥矯正示意圖
筆者提出了一種基于表面重建的三維醫學切割模擬方法,并在該方法的基礎上設計并實現了三維整形手術模擬平臺,該平臺包含基于表面重建的三維切割模擬、三維移動造型、三維標定測量等功能。實際病例表明,該平臺能夠有效的完成整形手術規劃、模擬等功能,有著極大的醫學實用價值。利用該系統成功對眶距增寬癥的三維截骨手術進行了模擬,也可以很方便的進行顱面部其它虛擬手術,可對任意部位隨意進行切割、分離、移動等操作,并可將不同的部分進行偽彩色染色。所有操作均可交互式反復進行。并且可以將虛擬手術過程以動畫和視頻的形式供醫生或病人及其家屬觀看。
[1]Durst M J.Letters:Additional Reference to Marching Cubes[J].Computer Graphics,1988,22(2):72~73.
[2]Lorensen W,Chine H E.Marching Cubes:A high resolution 3D surface construction alg orithm[J].Computer Graphics,1987,21(4),163~169.
[3]Xie Kai,Yang Jie,Zhu Y M.Interactive volume cutting of medical data[J].Computers in Biology and Medicine,2007,37(8),1155~1159.
[4]Xie Kai,Yang Jie.Real-time and Precise Collision Detection based on Surgery Simulation[J].Lecture Notes in Computer Science,2006,4091:164~170.
[5]Xie Kai,Yang Jie,Zhu Y M.Real-time rendering of 3D medical data sets[J].Future Generation Computer Sy stems,2005,21(4):573~581.
[6]Xie Kai,Yang Jie,Zhu Y M.Real-time visualization of large volume datasets on standard PC hardware[J].Computer Methods and Programs in Biomedicine,2008,90(2):117~123.
[7]Kessenich J,Baldwin D,Rost R.T he OpenGL shading language[EB/O L].http://www.opengl.org,2004.
[8]Fernando R,Kilgard M.The Cg Tutorial-The Definitive Guide to Programmable Real-Time Graphics[M].Addison Wesley,2003.