苗俊杰,符貴山,牛傳猛,劉志強(qiáng),田源,張可,李明輝,戴建榮
國(guó)家癌癥中心/國(guó)家腫瘤臨床醫(yī)學(xué)研究中心/中國(guó)醫(yī)學(xué)科學(xué)院北京協(xié)和醫(yī)學(xué)院腫瘤醫(yī)院,北京100021
C 型臂類型的醫(yī)用直線加速器治療病人時(shí),機(jī)頭在旋轉(zhuǎn)過(guò)程中存在與治療床、病人碰撞的風(fēng)險(xiǎn)。隨著放療新技術(shù)容積旋轉(zhuǎn)調(diào)強(qiáng)、圖像引導(dǎo)及立體定向放射治療的開(kāi)展,加速器治療系統(tǒng)及附屬結(jié)構(gòu)越來(lái)越復(fù)雜[1-2],這在一定程度上增大了碰撞風(fēng)險(xiǎn)[3]。此外,對(duì)于偏中心照射、特殊固定體位以及使用特殊體位固定裝置等情況,機(jī)架旋轉(zhuǎn)時(shí)碰撞風(fēng)險(xiǎn)增大,結(jié)果會(huì)導(dǎo)致計(jì)劃不能執(zhí)行,延誤病人治療,甚至產(chǎn)生嚴(yán)重的碰撞事故,造成病人受傷和機(jī)器損壞[4-6]。雖然有些加速器治療機(jī)在實(shí)際治療時(shí)有防碰撞連鎖,但當(dāng)觸發(fā)碰撞連鎖時(shí)往往計(jì)劃已經(jīng)照射了一定的劑量,而此時(shí)病人已經(jīng)躺在治療床上,重新更改計(jì)劃又需要較長(zhǎng)的時(shí)間,這在一定程度上增加了醫(yī)患矛盾。另外,二次計(jì)劃設(shè)計(jì)時(shí)要考慮已經(jīng)執(zhí)行部分的劑量,增大了計(jì)劃設(shè)計(jì)的難度。因此,在較早期的治療計(jì)劃設(shè)計(jì)階段及時(shí)檢測(cè)治療計(jì)劃是否存在潛在的碰撞風(fēng)險(xiǎn)是十分必要的。
針對(duì)加速器治療過(guò)程中可能發(fā)生的碰撞,有研究通過(guò)構(gòu)建復(fù)雜模型等方法判斷是否有碰撞風(fēng)險(xiǎn)[7-13]。但這些方法大都需要導(dǎo)出整個(gè)計(jì)劃到另外的系統(tǒng),過(guò)程復(fù)雜費(fèi)時(shí),并且對(duì)一些使用特殊體位和擺位裝置的病人缺乏個(gè)體針對(duì)性[14-15]。目前很多主流的計(jì)劃系統(tǒng)都缺少碰撞警告的內(nèi)置模塊,主要依靠放療計(jì)劃設(shè)計(jì)者的個(gè)人經(jīng)驗(yàn)進(jìn)行粗略估計(jì)。由于計(jì)劃治療中心、體位固定裝置、治療床位置等參數(shù)對(duì)于不同的病人差別很大,依靠經(jīng)驗(yàn)估算結(jié)果往往并不可靠?;诖耍狙芯繑M設(shè)計(jì)并實(shí)現(xiàn)一種可以在計(jì)劃設(shè)計(jì)過(guò)程中隨時(shí)可調(diào)用的腳本程序,當(dāng)在計(jì)劃系統(tǒng)中調(diào)用此腳本時(shí),會(huì)在CT 圖像上自動(dòng)生成機(jī)頭轉(zhuǎn)動(dòng)過(guò)程的臨界安全位置軌跡感興趣區(qū)(ROI),使計(jì)劃設(shè)計(jì)者在計(jì)劃設(shè)計(jì)時(shí)就能直觀判斷當(dāng)前計(jì)劃是否存在碰撞風(fēng)險(xiǎn)。
本研究采用的計(jì)劃系統(tǒng)為Pinnacle3V9.10(Philips Medical System,USA)。該系統(tǒng)在國(guó)內(nèi)放療界應(yīng)用十分廣泛,提供了豐富的腳本(Script)功能,可以在計(jì)劃系統(tǒng)內(nèi)實(shí)現(xiàn)批量、規(guī)范、快速的數(shù)據(jù)處理,提高工作效率和工作規(guī)范性。同時(shí)該Script 還可以直接調(diào)用python、C 等高級(jí)語(yǔ)言程序及操作系統(tǒng)(Solaris)命令,實(shí)現(xiàn)復(fù)雜的數(shù)據(jù)分析和處理功能。
加速器安裝后,機(jī)頭旋轉(zhuǎn)1周所經(jīng)過(guò)的空間軌跡是確定的,不隨病人的擺位而變化。加速器機(jī)頭旋轉(zhuǎn)一周,機(jī)頭上的點(diǎn)會(huì)形成一個(gè)圓形軌跡,如圖1所示。取加速器機(jī)頭上的點(diǎn)到治療中心最近距離為r(為保證安全,r取值通常比最小值小1 cm),治療機(jī)頭在進(jìn)出床方向的長(zhǎng)度為L(zhǎng)。為保證治療安全,在治療床進(jìn)出方向取相同的安全距離r,則安全邊界形成的軌跡為圓筒面。
圖1 加速器機(jī)頭防碰撞示意圖Fig.1 Schematic diagram of collision-free space of an accelerator gantry
加速器選擇Varian Edge、Novalis、Unique 和Elekta Versa HD、Synergy(Agility 機(jī)頭),經(jīng)測(cè)量并考慮安全冗余距離,選擇r=37 cm、L=72 cm(Varian);r=42 cm、L=76 cm(Elekta),加速器治療床面與CT定位室的床面寬度相同,都為54 cm。
(1)建立move_path.Script腳本,該腳本首先保存當(dāng)前計(jì)劃設(shè)置,將計(jì)劃設(shè)計(jì)參數(shù)寫入病人對(duì)應(yīng)的計(jì)劃目錄文件里。然后獲取當(dāng)前計(jì)劃射野的治療中心位置、床面位置、加速器型號(hào)、病案號(hào)、計(jì)劃文件位置等信息。通過(guò)調(diào)用python 程序,將獲取的這些計(jì)劃信息以參數(shù)的形式傳遞給python,以保證不同計(jì)劃、不同病人的獨(dú)特性。對(duì)應(yīng)部分代碼如下:
(2)建立move_path.py 程序,在該python 程序中首先接收并解析move_path.Script腳本傳遞過(guò)來(lái)的計(jì)劃參數(shù)信息并將其轉(zhuǎn)化為python 內(nèi)的變量。通過(guò)判斷加速器的類型確定設(shè)置參數(shù)r和L值。通過(guò)讀取病人文件目錄下計(jì)劃對(duì)應(yīng)的主圖像文件ImageSet_x.header(通常為ImageSet_0.header),確定該病人計(jì)劃的圖像坐標(biāo)信息,如3 個(gè)方向的維度信息x_dim、y_dim、z_dim,兩個(gè)像素點(diǎn)間的距離信息x_pixdim、y_pixdim、z_pixdim,起始位置坐標(biāo)信息x_start、y_start、z_start 等。再結(jié)合床位置等參數(shù)確定式(1)及圖2中各參數(shù)的值。最后結(jié)合治療中心的位置及對(duì)應(yīng)的軌跡方程生成mrn.roi 文件。mrn 為病人的病案號(hào),mrn.roi 文件的格式與計(jì)劃文件夾下plan.roi 的格式相同,主要由文件頭信息和ROI的三維坐標(biāo)點(diǎn)集構(gòu)成。
(3)在move_path.Script 腳本中讀取經(jīng)過(guò)python數(shù)據(jù)處理后生成的mrn.roi 文件,將mrn.roi 文件的ROI坐標(biāo)信息導(dǎo)入到計(jì)劃系統(tǒng),生成加速器機(jī)頭旋轉(zhuǎn)過(guò)程中的最小安全軌跡ROI,腳本關(guān)鍵語(yǔ)句如下:
mrn.roi 文件信息讀入系統(tǒng)后,其作為中間過(guò)程文件將被腳本刪除。在Pinnacle 計(jì)劃系統(tǒng)中,根據(jù)新生成ROI 與CT 影像中治療床、病人的相對(duì)位置關(guān)系判斷放療計(jì)劃是否存在碰撞風(fēng)險(xiǎn)。
在Pinnacle計(jì)劃系統(tǒng)中生成輔助的ROI如圖2所示。在CT 影像橫斷面上,輔助ROI 為以射野治療中心為中心的圓。在Pinnacle 計(jì)劃系統(tǒng)的REV 視圖中可見(jiàn)輔助ROI 整體為圓筒面結(jié)構(gòu),在不同的CT 層面上輔助ROI是半徑和中心相同的圓形結(jié)構(gòu)。
圖2 在Pinnacle計(jì)劃系統(tǒng)中產(chǎn)生的安全區(qū)域ROI圖Fig.2 ROI images of the safe region generated in Pinnacle planning system
圖3給出了幾種可能發(fā)生碰撞的常見(jiàn)情況,當(dāng)病人使用俯臥板進(jìn)行定位治療時(shí),由于俯臥板的厚度比仰臥板的大,治療中心設(shè)置偏上時(shí),會(huì)發(fā)生碰撞。圖3c 為肝癌計(jì)劃,由于靶區(qū)偏向病人的右側(cè),當(dāng)治療中心選擇過(guò)于靠右時(shí),會(huì)導(dǎo)致機(jī)架與治療床發(fā)生碰撞。圖3d 為一個(gè)大腿部位的放射治療計(jì)劃,加速器治療時(shí)機(jī)架會(huì)與病人的健測(cè)腿發(fā)生碰撞。
圖3 放療計(jì)劃碰撞檢查示例Fig.3 Examples of collision detection for radiotherapy plans
計(jì)劃設(shè)計(jì)時(shí),只需一次鼠標(biāo)點(diǎn)擊調(diào)用腳本,即可快速(約2 s)生成輔助ROI。在ROI 與CT 的疊加圖像上可以逐層清楚直觀地判斷加速器機(jī)頭與治療床、病人身體是否存在碰撞風(fēng)險(xiǎn),避免等到計(jì)劃實(shí)際執(zhí)行時(shí)才發(fā)現(xiàn)問(wèn)題甚至發(fā)生碰撞事故。該腳本在本科室應(yīng)用已有一年多時(shí)間,對(duì)數(shù)百例病人進(jìn)行了碰撞風(fēng)險(xiǎn)檢查,經(jīng)過(guò)該腳本程序檢查后的放療計(jì)劃基本杜絕了碰撞風(fēng)險(xiǎn)的發(fā)生。
Philips 公司的Pinnacle 計(jì)劃系統(tǒng)提供了“HotScripts”模塊,允許用戶編寫腳本、調(diào)用python/C高級(jí)語(yǔ)言程序及Solaris 操作系統(tǒng)命令。在一定程度上,用戶可根據(jù)自己的需求制定腳本,完成特定的批處理操作,既可以顯著提升治療計(jì)劃設(shè)計(jì)的工作效率,也能很大程度保證計(jì)劃設(shè)計(jì)的安全性[16-20]。本腳本程序通過(guò)調(diào)用外部python 程序,針對(duì)不同病人CT圖像和治療中心位置動(dòng)態(tài)生成有針對(duì)性的輔助ROI輪廓文件,為了避免多個(gè)計(jì)劃同時(shí)調(diào)用腳本程序時(shí)相互影響,新生成的輪廓文件命名為mrn.roi(mrn 為病人的病案號(hào))。
本腳本程序在Pinnacle V9.10 計(jì)劃系統(tǒng)內(nèi)實(shí)現(xiàn),但是其設(shè)計(jì)理念和方法在支持腳本功能的其它計(jì)劃系統(tǒng)同樣適用。為增加腳本的通用性,可以將python生成的ROI 寫成標(biāo)準(zhǔn)DICOM 格式的文件,再通過(guò)計(jì)劃系統(tǒng)的“Dicom Import”功能導(dǎo)入到系統(tǒng)中。經(jīng)過(guò)實(shí)際測(cè)試,寫成DICOM 格式整個(gè)調(diào)用時(shí)間會(huì)比本文采用的方法長(zhǎng)約5 s 的時(shí)間(主要原因?yàn)橄到y(tǒng)的導(dǎo)入模塊加載時(shí)掃描DICOM 文件目錄所需時(shí)間的增加),需要增加一定等待時(shí)間。另外,使用標(biāo)準(zhǔn)DICOM 格式導(dǎo)入時(shí)要注意病人采用的體位,在外部程序處理時(shí)要根據(jù)所選系統(tǒng)和病人固定體位提前做好坐標(biāo)系變換。在Pinnacle V9.10中坐標(biāo)變換為:
其中,XP、YP、ZP為Pinnacle 計(jì)劃系統(tǒng)中的坐標(biāo),單位cm;XD、YD、ZD為DICOM 坐標(biāo)系中的對(duì)應(yīng)坐標(biāo),單位mm;Xsign、Ysign、Zsign為符號(hào)參數(shù),取決于病人的擺位方向(例如病人體位是頭先進(jìn)仰臥時(shí),Xsign=1、Ysign=-1、Zsign=-1)。使用DICOM 格式的ROI 文件并結(jié)合系統(tǒng)自帶的導(dǎo)入模塊可以使本方法在多種計(jì)劃系統(tǒng)中適用。
本腳本程序不但可以用于檢查加速器機(jī)頭與治療床、體位固定裝置是否會(huì)發(fā)生碰撞,還可以用于特殊體位(如四肢、腹股溝等部位腫瘤)照射時(shí),檢查加速器機(jī)頭與病人身體其它部位是否有碰撞風(fēng)險(xiǎn),保證治療安全。通常為保證劑量計(jì)算的準(zhǔn)確和重復(fù)一致性,病人進(jìn)行CT 定位和加速器治療時(shí),采用的定位裝置和病人體位應(yīng)該是一致的。如果特殊情況下,治療體位、固定裝置與定位時(shí)不一致,則本腳本程序不適用,實(shí)際治療時(shí)仍然有碰撞風(fēng)險(xiǎn),需要計(jì)劃設(shè)計(jì)實(shí)施人員小心判斷。
在實(shí)際使用過(guò)程中,如果靶區(qū)、治療中心偏向病人的一側(cè)身體(如乳腺癌計(jì)劃),本腳本程序可能會(huì)判斷出治療機(jī)頭與病人身體健側(cè)方向的床板會(huì)發(fā)生碰撞,但根據(jù)就近布野原則,如果治療野實(shí)際執(zhí)行時(shí)不需要機(jī)架轉(zhuǎn)過(guò)該碰撞角度,則不會(huì)發(fā)生碰撞,原計(jì)劃仍然可以正常執(zhí)行。對(duì)于這種情況,建議計(jì)劃設(shè)計(jì)者在計(jì)劃報(bào)告單上注明標(biāo)記,提醒技師治療時(shí)仍然要小心,掃描CBCT時(shí)應(yīng)該采用先挪床再回位或非全弧的策略,治療時(shí)注意加速器機(jī)頭的起始位置,避免碰撞發(fā)生。
本研究建模時(shí)使用中國(guó)醫(yī)學(xué)科學(xué)院腫瘤醫(yī)院加速器的幾何結(jié)構(gòu),由于不同公司、不同型號(hào)、不同附屬結(jié)構(gòu)的加速器結(jié)構(gòu)尺寸有一定的差別,使用時(shí)應(yīng)根據(jù)自己?jiǎn)挝患铀倨鞯膶?shí)際情況確定r和L等參數(shù)。本研究只考慮了共面治療的情況,非共面治療時(shí)治療床要旋轉(zhuǎn)一定的角度,計(jì)劃參數(shù)設(shè)置更復(fù)雜,加速器機(jī)頭與治療床及病人的碰撞風(fēng)險(xiǎn)加大。另外,針對(duì)不同治療床角度,加速器機(jī)頭可使用的旋轉(zhuǎn)角度也受到嚴(yán)格限制,值得進(jìn)一步的研究討論。
綜上所述,在Pinnacle 計(jì)劃系統(tǒng)上實(shí)現(xiàn)加速器機(jī)頭的碰撞檢測(cè)具有臨床可行性,在計(jì)劃設(shè)計(jì)階段可及時(shí)判斷放療計(jì)劃是否存在碰撞風(fēng)險(xiǎn),避免重復(fù)計(jì)劃延誤治療時(shí)間,保證治療安全。