基于Pinnacle计划系统的直肠癌VMAT计划自动生成方法_2

文档序号:9471809阅读:来源:国知局
>[0080] Store. FloatAt. Bladdei^EUDUp二0? 007 ;
[0081] Store. FloatAt. Bladde:rEUDDn二0? 005 ;
[0082] Store. FloatAt. SmlintDoseUp二0? 005 ;
[0083] Store. FloatAt. SmlintDoseDn二0? 003 ;
[0084] Store. FloatAt. SmlintEUDUp二0? 007 ;
[0085] Store. FloatAt. SmlintEUDDn二0? 005 ;
[0086] PluginManager.InversePlanningManager.民efreshObjectiveValues = "民ecompute Values";
[0087] Store. I^reeAt. CompositeOBJV二"";
[0088] Store. At. CompositeOBJV. Value二
[0089] PluginManager. InversePlanningManager. Ob j e c t i v eManag er. OrbitObjectives. TrialOb jectiveList. Current. Function. ValueDescr ;
[0090] Store. I^reeAt. SubIterNum二"";
[0091] Store. FloatAt. SubIterNum二2;
[0092] Store. I^reeAt. Firstiter二"";
[0093] Store. FloatAt. Firstiter二 1;
[0094] //Judge whether the InvPlanning is ready
[0095] IF. Store. At. CompositeOBJV. Value. GREATERTHAN?冉"冉0? or. T皿N. Script. ExecuteNo w = Vhome/p3rtp/InvPlanningMainLoop. Script";
[0096] Store. RreeAt. SubIterNum二"";
[0097] Store. I^reeAt. Firstiter二"";
[009引代码段3 :
[0099] PluginManager. InversePlanningManager. CombinedObjectiveList.冉''冉3". Dose 二"508(T;
[0100] PluginManager. InversePlanningManager.CombinedObjectiveList.冉"冉3". Wei組t二"100";
[0101] PluginManager. InversePlanningManager. CombinedObjectiveList.冉''冉4". Dose 二"508(T;
[0102]PluginManager. InversePlanningManager.CombinedObjectiveList.冉"冉4". Wei組t二"100";
[0103] ImrtTemplateLayout = "Optimization";
[0104] WindowList. IMRTTemplate. Oeate二"IMRT Parameters. ;
[0105] PluginManager. InversePlanningManager.OptimizationManager. Current. Trial List. Current. M过xlter过tions = ^22^ ;
[0106] PluginManager. InversePlanningManager. TrialList. Current. Doselteration 二"11";
[0107] PluginManager. InversePlanningManager. TrialList. Current. ComputeFinalDose = 1;
[0108] WindowList. IMRTTemplate. Uncrealize二"Close Window";
[0109] //Start Optimization
[0110] PluginManager. InversePlanningManager. Initialize = "Start Optimization";
[0111] Store. RreeAt. CompositeOBJV二"";
[0112] Store. I^reeAt. BladderDoseUp二"";
[0113] Store. RreeAt. BladderDoseDn二"";
[0114] Store. I^reeAt. BladderEUDUp二"";
[0115] Store. RreeAt. BladderEUDDn二"";
[0116] Store. I^reeAt. SmlintDoseUp二"";
[0117] Store. RreeAt. SmlintDoseDn二"";
[011引Store. I^reeAt. SmlintEUDUp二"";
[0119] Store. RreeAt. SmlintEUDDn二"";D
[0120] 优选的,所述主优化子函数InvPlanningMainLoop. Script采用双弧逆向优化。
[0121] 本发明按照Nnnacle计划设计的流程,完成了整个计划设计的所有步骤,包括定 位信息检查、辅助轮廓生成、计划中屯、点生成、添加射野、设置剂量及分次、添加指定剂量显 示线及逆向计划优化。在逆向计划优化步骤中,通过总结资深计量师的计划设计经验,合 理设计算法控制流程,使得Pinnacle逆向优化参数能够得到合理的动态调整,获得高质量 的放射治疗计划。
[0122] 本发明所有操作的实现,均通过Nnnacle脚本进行,因此该方法的可移植性强, 该计划自动生成系统可在任意Pinnacle商用计划系统上执行。
【附图说明】
[0123] 图1为本发明的流程图;
[0124] 图2为主初始化优化的流程图;
[0125] 图3为主优化的流程图。
【具体实施方式】
[0126] 为了使本发明的目的、技术方案及优点更加清楚明白,下结合附图,对本发明进 行进一步详细说明。
[0127] 如图1、图2、图3所示,在放疗计划设计开始之前,患者的放疗计划CT应导入到 Nnnacle系统中,并由放疗医师勾画好直肠癌放疗靴区PTV及相应的危及器官左右股骨 头(命名为Lfemoralhead和Rfemoralhead)、膀脫(命名为Bladder)、小肠(命名为 Smallintestine),给出临床分次治疗剂量McGy和分次数N,由剂量师在Nnnacle系统中 患者放疗计划的CT图像上根据科室情况进行去床和锁床操作,框定需要进行放疗计划计 量计算的CT图像范围,标记定位CT扫描时固定于患者体表前方、左侧和右侧兰个标记点, 在兰个标记点同时出现的CT层面,设置能连接兰个标记点并贯穿左右前后两个方向的十 字线,记十字线交叉处为CT图像空间的坐标原点,并记为"locref"。
[0128]( 一)直肠癌VMAT计划I^innacle脚本的编写;
[0129] 1、定位信息检查及主函数构建;
[0130] 1. 1)编写并保存脚本Se化pQieckandStart.Script:通过文本编猜器新建一个空 白文本文件,将文件保存在Pinnacle工作站系统目录/home/p3^p/路径下,将文件名命名 为"SetupQieckandStart.Script",并在其中录入如下脚本代码:
[0131]WindowList.CTSim.PanelList. GotoPanel二"F'unctionLayoutIconO";
[013引ViewWindowList. 本"?CineOnOff二"0";
[0133]TrialList.Current.CtToDensityName二"$";
[0134]TrialList.Current.Patient民epresentation.CtToDensityTableAccepted= "(T;
[0135]Store.I^reeAt.Flag二"";
[0136]Store.FloatAt.Flag二 1 ;
[0137]Store.I^reeAt.TempString二"";
[0138]Store.StringAt.TempString二"0";
[0139]Store.I^reeAt.tempFloat二"";
[0140]Store.FloatAt.tempFloat二0;
[0141]AskYesNoRrompt二"Thecouchhasnotremoved!Pleasecheck!";
[0142]IF.TrialList.Current.民emoveCouchFromScan.EQUALTO.Store.At.tempFloat.
[0143]T肥N.AskYesNo;
[0144] IF.TrialList.Current.民emoveCouchFromScan.EQUALTO.Store.At.tempFloat.
[0145]T肥N.Store.At.Flag二0;
[0146]AskYesNoRrompt二"Thecouchhasnotlocked!Pleasecheck!";
[0147]IF.TrialList.Current.LaserLocalizer.LockCouch.EQUALTO.Store.At.Temp String.THEN.AskYesNo;
[0148] IF. TrialList. Current. LaserLocalizer. LockCouch. EQUALTO. Store. At. Temp String. THEN. Store. At. Flag = 0;
[0149] Store. RreeAt. TempString二"";
[0150] Store. RreeAt. tempFloat二"";
[0151] Store. RreeAt. Continue二"";
[0152] Store. StringAt. Continue二"";
[0153] IF. Store. At. Flag. Value. T皿N. Store. At. Continue. String二Vhome/p3rtp/ Main. Script";
[0154] ExecuteNow = Store. At. Continue. String ;
[0155] Store. I^reeAt. Continue二"";
[0156] Store. RreeAt. Flag二"";
[0157] 上述脚本代码指定了命名为"的CT密度曲线,并检查了移床和锁床操作,当都 满足条件时,则调用Main. Script进行放疗计划设计;
[0158] 1. 2)编写脚本Main. Script :通过文本编辑器新建一个空白文本文件,将文件保 存在Pinnacle工作站系统目录A〇me/p3;rtp/路径下,将文件名命名为"Main. Script",并 在其中录入如下脚本代码:
[0159]代码段1 :Store. RreeAt. TempReloadScript =;
[0160] Store. At. TempReloadScript. String = "/home/p3;rtp/ Y. Script";
[0161] ExecuteNow = Store. At. TempReloadScript. String;
[0162] ......
[0163] 上述代码表明调用的是命名为"Y.Script"的脚本。Main.Script调用执行 了多个脚本W完成整个放疗计划设计,其中调用的脚本名依次为CleanSmallRegion. Script、CreatingContours. Script、ISOPointGeneration. Script、AddBeam. Script、 DosePrescription. Script、MainlnvPlanning. Script。即在"......"符号标示的位置进行 多次代码段1的复制扩充,每次将调用脚本名称"Y. Script"填写为具体脚本名称即可;
[0164] 2、勾画轮廓杂点的清除;
[0165] 2. 1)编写脚本CleanSmallRegion. Script:通过文本编辑器新建一个空白文本 文件,将文件保存在Pinnacle工作站系统目录/home/p3Kp/路径下,将文件名命名为 "CleanSmallRegion. Script",并在其中
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1