多组件同步运动的轨迹优化方法、系统、装置及存储介质与流程

文档序号:17431135发布日期:2019-04-17 03:30阅读:256来源:国知局
多组件同步运动的轨迹优化方法、系统、装置及存储介质与流程

本申请要求2017年12月29日提交的pct专利申请pct/cn2017/120051的优先权,所述申请以全文引用的方式并入本文中。

本申请描述的实施例涉及同步运动优化,更具体地,涉及用于对放射治疗装置或系统中的多个组件的同步运动进行优化的方法、系统、装置及存储介质。



背景技术:

当代放射治疗系统可提供用于传递辐射剂量,例如个性化辐射剂量,的专门治疗。在治疗过程中,例如机架、准直器、多叶光栅的一个或两个以上叶片、病床等多个组件可以与辐射剂量的传递同步运动。为了使放射治疗系统的各组件同步运动,可以其运动轨迹进行规划。但这个过程可能耗费很长时间,并且可能导致传递给患者的辐射剂量较大。因此,需要一种方法和系统来优化多个组件的同步运动并传递辐射剂量,以减少轨迹优化时间和辐射。



技术实现要素:

针对上述轨迹优化时间过长,治疗期间传递辐射剂量较大的问题,本发明在于提供一种用于对具有可运动组件的设备进行同步运动优化的方法和系统,可以减少轨迹优化时间,同时减少治疗时间,并准确传递辐射剂量,增加治疗精准度。

为了达到上述发明的目的,本发明提供的技术方案如下:

一种多组件同步运动的轨迹快速优化方法。所述方法可以包括以下一个或多个操作。可以获取装置多个组件的多组位置,所述多个组件的每组位置对应于一个控制节点,两个相邻的控制节点限定一个子野。可以基于所述多个组件的多组位置确定每个组件在每个控制节点处的速度。可以基于每个组件在每个控制节点处的速度,确定每个组件执行至少一个子野的每个子野的最小时长。可以基于每个组件执行至少一个子野的每个子野的最小时长,确定对应于每个子野的优化时长。可以基于对应于每个子野的优化时长,确定每个子野中的每个组件的运动参数。

在本发明中,所述运动参数使得根据运动参数运动的多个组件同时到达由控制节点限定的位置。

在本发明中,所述装置包括放射治疗设备,所述多个组件包括以下至少一个:一个机架、多叶光栅(mlc)的一个或两个以上叶片、一个钨门和辐射剂量。

在本发明中,每个组件的运动参数包括以下至少一个:加速运动时长、匀速时长、减速运动时长和匀速速度。

在本发明中,基于所述多个组件的多个位置确定每个组件在每个控制节点处的速度可以包括以下操作中的一项或多项。对于当前控制节点处的每个组件,可以基于所述多个组件的多个位置确定参考控制节点和先前控制节点之间的第一位移。可以基于所述多个组件的多个位置确定参考控制节点和当前控制节点之间的第二位移。可以基于所述多个组件的多个位置确定参考控制节点和当前控制节点之后的控制节点之间的第三位移。可以基于第一位移、第二位移和第三位移,确定当前控制节点处组件的速度。

在本发明中,基于第一位移、第二位移、第三位移,确定所述当前控制节点处所述组件的速度可以包括以下操作中的一项或多项。确定第一位移、第二位移和第三位移不符合随时间的单调变化;响应于第一位移、第二位移和第三位移不符合随时间的单调变化的判定,将当前控制节点处所述组件的速度指定为零。确定第一位移、第二位移和第三位移符合随时间的单调变化。响应于第一位移、第二位移和第三位移符合随时间的单调变化的判定,将所述当前控制节点处所述组件的速度指定为非零。

在本发明中,基于每个组件在每个控制节点处的速度,确定每个组件执行至少一个子野的每个子野的最小时长可以包括以下操作中的一项或多项。对于至少一个子野的每个子野中的每个组件,获得所述组件的一组运动约束。基于每个控制节点处所述组件的速度,确定所述组件的速度模型。基于所述速度模型和所述一组运动约束,确定所述组件执行所述子野的最小时长。

在本发明中,所述速度模型包括一个加速-匀速-减速模型,一个加速-匀速模型,一个匀速-减速模型以及一个匀速模型。

在本发明中,基于每个组件执行至少一个子野的每个子野的最小时长,确定对应于每个子野的优化时长可以包括以下操作中的一项或多项。对于至少一个子野的每个子野,基于每个组件通过每个子野的最小时长,确定对应于每个子野的候选最小时长。基于对应于至少一个子野的至少一个候选最小时长,确定对应于每个子野的优化时长。

在本发明中,基于每个组件执行至少一个子野的每个子野的最小时长,确定对应于每个子野的优化时长可以进一步包括:对于至少一个子野的每个子野,可以基于每个组件执行每个子野的最小时长,确定对应于每个子野的候选最大时长,所述候选最小时长和所述最大时长组成一个确定所述优化时长的范围。

在本发明中,基于对应于至少一个子野的至少一个候选最小时长,确定对应于每个子野的优化时长还可以包括以下操作中的一项或多项。基于对应于至少一个子野的至少一个候选最小时长,确定所述多个组件在子野的开始控制节点处的起始速度和结束控制节点处的终点速度。可以基于在每个子野的开始控制节点处的起始速度和结束控制节点处的终点速度,确定所述多个组件在子野中的多个最大有效位移。可以基于所述多个组件的多个位置确定所述多个组件在子野中的多个位移。基于所述多个最大有效位移和多个位移确定对应于子野的优化时长。

在本发明中,基于所述多个最大有效位移和多个位移确定对应于每个子野的优化时长还可以包括以下操作中的一项或多项。确定所述多个组件的位移小于所述最大有效位移。响应于所述多个组件的位移小于所述最大有效位移的判定,可以将所述候选最小时长指定为子野的优化时长。

在本发明中,确定所述多个组件的位移小于所述最大有效位移可以包括以下操作中的一项或多项。确定所述多个组件的位移在所述最大有效位移和最小有效位移之间,所述最小有效位移是所述多个组件在候选最小时长内达到的位移。

在本发明中,基于所述多个最大有效位移和多个位移确定对应于每个子野的优化时长还可以包括以下操作中的一项或多项。确定所述多个组件的中的至少一个组件的位移大于所述最大有效位移。响应于所述多个组件的中的至少一个组件的位移大于所述最大有效位移的判定,可以在一个或两个以上的迭代中更新对应于子野的候选最小时长。

在本发明中,每个所述一个或两个以上的迭代可以包括基于所述多个组件的多个位移,所述多个组件的最大有效位移和所述多个组件的最小有效位移更新所述候选最小时长。

在本发明中,确定对应于每个子野的优化时长还可以进一步包括从所述多个组件中识别一个或两个以上的组件,在对其他组件执行用于确定优化时长的一个或两个以上的迭代之前针对所述识别后的一个或两个以上组件执行用于确定优化时长的一个或两个以上的迭代

在本发明中,识别后的一个或两个以上组件可以包括相较于其他组件具有更大的最小时长的第一组件,在以第一速度模型执行子野的多叶光栅的叶片中具有最大位移的多叶光栅的第一叶片,在以第二速度模型中执行子野的多叶光栅的叶片具有最大位移的多叶光栅的第二叶片,以及在以第三速度模型执行子野的多叶光栅的叶片下具有最大位移的多叶光栅的第三叶片。

在本发明中,确定对应于每个子野的优化时长还可以包括以下操作中的一项或多项。确定所述一个或两个以上组件中至少一个组件的位移大于所述最大有效位移。响应于所述一个或两个以上组件中至少一个组件的位移大于所述最大有效位移的判定,确定对应于在时间上在该子野之前发生的另一子野的优化时长。

在本发明中,确定对应于每个子野的优化时长还可以包括在确定第一子野的优化时长之后,执行对于第二子野的优化时长的确定,所述第一子野的时间在所述第二子野的时间之前。

一种多组件同步运动的轨迹快速优化系统。所述系统包括一个获取模块和一个处理模块。所述获取模块用于获得装置的多个组件的多组位置,所述多个组件的每组位置对应于一个控制节点,两个相邻的控制节点限定一个子野。所述处理模块包括速度确定单元,时长确定单元和运动参数确定单元。所述速度确定单元用于基于所述多个组件的多组位置确定,确定每个组件在每个控制节点处的速度。所述时长确定单元用于基于每个组件在每个控制节点处的速度,确定每个组件执行至少一个子野的每个子野的最小时长,以及基于每个组件执行至少一个子野的每个子野的最小时长,确定对应于每个子野的优化时长。所述运动参数确定单元用于基于对应于每个子野的优化时长,确定每个子野中的每个组件的运动参数。

一种多组件同步运动的轨迹快速优化装置。所述装置包括至少一个处理器。所述处理器用于执行如上所述任一项用于多组件同步运动的轨迹快速优化方法。

一种计算机可读存储介质。存储介质存储计算机程序,当计算机读取存储介质中的计算机程序后,计算机运行如上所述任一项用于多组件同步运动的轨迹快速优化方法。

附加的特征将在下面的描述中部分地阐述,并且对于本领域技术人员来说,通过查阅以下内容和附图将变得显而易见,或者可以通过实例的产生或操作来了解。本发明的特征可以通过实践或使用以下详细实例中阐述的方法、工具和组合的各个方面来实现和获得。

与现有技术相比,本发明的有益效果如下:

可快速获得系统各组件同步运动的最优轨迹曲线,确保计划执行时间的最小化,减少了患者的治疗时间,同时保证了患者在治疗过程中每个预定位置都能准确地接收特定的辐射剂量,增加治疗的准确度。

附图说明

根据示例性实施例可以进一步描述本申请。参考附图可以详细描述所述示例性实施例。所述实施例并非限制性的示例性实施例,其中相同的附图标记代表附图的几个视图中相似的结构,并且其中:

图1是根据本发明的一些实施例所示的一个示例性放射治疗系统的示意图;

图2是根据本发明的一些实施例所示的一个示例性计算设备的示例性硬件组件和/或软件组件的示意图;

图3是根据本发明的一些实施例所示的一个示例性移动设备的示例性硬件组件和/或软件组件的示意图;

图4是根据本发明的一些实施例所示的一个示例性处理设备的框图;

图5是根据本发明的一些实施例所示的用于生成控制多个组件运动的控制指令的一个示例性流程图;

图6是根据本发明的一些实施例所示的一个示例性处理模块的框图;

图7是根据本发明的一些实施例所示的用于确定多个组件的运动参数的示例性流程图;

图8是根据本发明的一些实施例所示的用于确定优化时长的示例性流程图;

图9是根据本发明的一些实施例所示的示例性计划数据;

图10是根据本发明的一些实施例所示的一个组件的示例性轨迹曲线;

图11是根据本发明的一些实施例所示的一个组件的示例性速度模型;

图12是根据本发明的一些实施例的所示的一个组件的示例性速度模式;

图13是根据本发明的一些实施例所示的一个组件在一个子野中的最大有效速度、最小有效速度、最大有效位移和最小有效位移的示意图;

图14是根据本发明的一些实施例所示的在一个组件的轨迹上的示例性子节点;

图15是根据本发明的一些实施例所示的用于控制多个组件的运动的示例性控制模型的示意图。

具体实施方式

在下面的详细描述中,为了提供对相关申请的透彻理解,通过实施例阐述了本申请的具体细节。对本申请的实施例的各种修改对于本领域技术人员将是显而易见的,并且在不脱离本申请的精神和范围的情况下,本申请定义的一般原理可以应用于其他实施例和应用场景中。因此,本申请不限于所示的实施例,而是符合与权利要求一致的最广范围。

本申请使用的术语仅用于描述特定示例性实施例的目的,而不是限制性的。如本申请所使用的,除非上下文明确提示例外情形,单数形态的“一”,“一个”和“该”也可以包括复数。应当进一步理解的是,在本说明书中使用的术语“包括”和/或“包含”时,指存在所述特征、整形常量、步骤、操作、元素和/或组件,但不排除存在或添加一个或多个其他特征、整形常量、步骤、操作、元件、组件和/或其组合。

应当理解的是,本申请使用的术语“系统”、“引擎”、“单元”、“模块”和/或“区块”是一种以升序的形式来区分不同组件、元件、部件、部件或组件的级别方法。然而,如果其他表达方式达到相同的目的,则这些术语可能被其他表达方式所取代。

通常,如本申请所使用的“模块”、“单元”或“区块”是指以硬件或固件或软件指令的集合体现的逻辑。本申请描述的模块、单元或区块可以在软件和/或硬件上被执行,并且可以被存储在任何类型的非暂时性计算机可读介质或其他存储设备中。在一些实施例中,软件模块、单元、区块可以被编译并连接到可执行程序中。应当理解的是,软件模块可以从其他模块、单元、区块或其自身调用和/或可以响应于检测到的事件或中断而被调用。配置用于在计算设备上执行的软件模块/单元/区块(例如,如图2所示的处理器210)可以被提供在计算机可读介质上,诸如光盘、数字视频盘、闪存驱动器、磁盘或任何其他有形介质或作为数字下载(并且可以原始地以压缩或可安装的格式存储,在执行之前需要安装、解压缩或解密)。软件代码可以部分或全部存储在执行计算设备的存储设备上供计算设备执行。软件指令可以被嵌入到固件当中,例如eprom。应当理解的是,硬件模块、单元或区块可以包括在连接的逻辑组件中,例如门和触发器和/或可以包括在诸如可编程门阵列或处理器之类的可编程单元中。本申请描述的模块、单元、区块或计算设备功能可以被实现为软件模块/单元/区块,但是可以用硬件或固件来表示。通常,这里描述的模块、单元、区块是指可以与其他模块、单元、区块组合或者分成子模块、子单元、子区块的逻辑模块、单元、区块,尽管它们的物理组织或存储。所述描述可以适用于系统、引擎或其一部分。

应当理解的是,当单元、引擎、模块或区块被称为“在...上”、“连接到”或“耦合到”另一单元、引擎、模块或区块时,其可以直接在另一单元、引擎、模块或区块通信、或者可以存在单元、引擎、模块或区块,除非上下文明确提示例外情形。如本申请所使用的,术语“和/或”包括一个或多个相关所列项目的任何一种和所有的组合。

参照附图并考虑以下描述,本申请的这些和其他特征以及相关的结构元件以及制造的部件和经济的结合的操作和功能的方法可以变得更加明显,且都构成本申请的一部分。然而,应当明确地理解,附图仅仅是为了说明和描述的目的,并不意图限制本申请的范围。应当理解附图不是按比例的。

本文提供的是具有多个可运动组件的系统,所述多个可运动组件用于医疗或工业应用,例如用于疾病治疗、疾病诊断、同步运动控制、研究的目的等。在一些实施例中,该系统可以是放射治疗(rt)系统、计算机断层扫描(ct)系统、超声波检查系统、x射线摄影系统等中的一种或多种的组合。参照rt系统提供以下描述出于说明的目的,并不旨在限制本发明的范围。

在一个方面,本发明涉及用于同步运动优化的系统和方法。可以使用放射治疗系统中的多个组件的位置信息来确定多个组件从一个位置到另一个位置同步运动的时长。所述时长可以在多次迭代中被优化以达到最小值。

图1是根据本发明的一些实施例所示的一个示例性放射治疗系统的示意图。如图1所示,放射治疗系统100包括放射治疗设备110、网络120、一个或多个终端130、处理设备140以及存储设备150。

放射治疗设备110可将辐射束传送到目标对象(例如,患者或体模)。在一些实施例中,放射治疗设备110可以包括一个线性加速器(也可被称为直线加速器)111。直线加速器111可以从治疗头112产生并发射辐射束(例如,x射线束)。该辐射束可以穿过一个或多个具有特定形状的准直器(例如,多叶光栅)并传递到目标对象。在一些实施例中,所述辐射束可以包括电子,光子或任何其他类型的辐射。在一些实施例中,所述辐射束呈现的能量在兆伏特范围(即>1mev)内,因此可以被称为兆伏特辐射束。治疗头112可以与机架113耦合安装。机架113可以旋转,例如,围绕机架旋转轴线114顺时针或逆时针旋转。治疗头112可以与机架113一同旋转。在一些实施例中,放射治疗设备110可以包括成像组件115。成像组件115可以接收穿过目标对象的辐射束,并且可以在放射治疗或校正过程之前、期间和/或之后获取患者或模体的投影图像。成像组件115可以包括模拟检测器、数字检测器或其任意组合。成像组件115可以以任何方式附接到机架113上,包括可伸缩的壳体。因此,旋转机架113可使得治疗头112和成像组件115同步旋转。在一些实施例中,放射治疗设备110还可以包括工作台。工作台116可以在放射治疗或成像期间支撑患者,和/或在放射治疗设备110的校正过程中支撑模体。所述工作台可以根据不同的应用场景进行调整。

网络120可以包括能够促进放射治疗系统100的信息和/或数据交换的任何合适的网络。在一些实施例中,放射治疗系统100的一个或多个组件(例如,放射治疗设备110、终端130、处理设备140、存储设备150等)可以通过网络120与放射治疗系统100的一个或多个组件之间交换信息和/或数据。例如,处理设备140可以通过网络120从放射治疗计划系统(treatmentplanningsystem,tps)获取计划数据。网络120可以包括公共网络(如互联网)、私人网络(例如,局域网(lan)、广域网(wan))等)、有线网络(如以太网)、无线网络(例如,802.11网络、无线wi-fi网络等)、蜂窝网络(例如,长期演进(lte)网络)、帧中继网络、虚拟专用网络(vpn)、卫星网络、电话网络、路由器、集线器、服务器计算机等其中一种或几种组合。例如,网络120可以包括有线网络、光纤网络、电信网络、局域网、无线局域网(wlan)、城域网(man),公用电话交换网(pstn)、蓝牙tm网络,zigbeetm网络、近场通信(nfc)网络等其中一种或几种的组合。在一些实施例中,网络120可以包括一个或多个网络接入点。例如,网络120可以包括有线和/或无线网络接入点,例如基站和/或因特网交换点,通过所述接入点,放射治疗系统100的一个或多个组件可以连接网络120以交换数据和/或信息。

终端130可以包括移动设备131、平板电脑132、笔记本电脑133等或其任意组合。在一些实施例中,移动设备131可以包括智能家居装置、可穿戴设备、移动装置、虚拟现实装置、增强现实装置等或其任意组合。在一些实施例中,智能家居装置可以包括智能照明装置、智能电器控制装置、智能监控装置、智能电视、智能摄像机、对讲机等或其任意组合。在一些实施例中,在一些实施例中,可穿戴设备可以包括手链、鞋袜、眼镜、头盔、手表、衣服、背包、智能附件等或其任意组合。在一些实施例中,移动装置可包括移动电话、个人数字助理(pda)、游戏装置、导航装置、pos装置、笔记本电脑、平板电脑、台式机等或其任意组合。在一些实施例中,该虚拟现实装置和/或增强现实装置可包括虚拟现实头盔、虚拟现实眼镜、虚拟现实补丁、增强现实头盔、增强现实眼镜、增强现实补丁等或其任意组合。例如,该虚拟现实装置和/或增强现实装置可包括googleglasstm、oculusrifftm、hololenstm或gearvrtm等。在一些实施例中,终端130可以是处理设备140的一部分。

处理设备140可以处理从放射治疗设备110、终端130和/或存储设备150获得的数据和/或信息。例如,处理设备140可以处理计划数据,并确定用于控制放射治疗设备110的多个组件运动的运动参数。在一些实施例中,处理设备140可以是单个服务器或服务器组。服务器组可以是集中式的,也可以是分布式的。在一些实施例中,处理设备140可以是本地的或远程的。例如,处理设备140可以通过网络120从放射治疗设备110、终端130和/或存储设备150访问信息和/或数据。又例如,处理设备140可以直接连接放射治疗设备110、终端130和/或存储设备150以访问信息和/或数据。在一些实施例中,处理设备140可以在云平台上实现。例如,云平台可以包括私有云、公共云、混合云、社区云、分布式云、跨云、多云等其中一种或几种的组合。在一些实施例中,处理设备140可以由图2所描述的具有一个或多个组件的计算装置200实现。

存储设备150可以存储数据、指令和/或任何其他信息。在一些实施例中,存储设备150可以存储从处理设备140和/或终端130获得的数据。在一些实施例中,存储设备150可以存储处理设备140可以执行或使用的数据和/或指令,以执行本申请中描述的示例性方法。在一些实施例中,存储设备150可包括大容量存储器、可移除存储器、易失性读写存储器、只读存储器(rom)等其中一种或几种的组合。大容量存储可以包括磁盘、光盘、固态硬盘、移动存储等。可移除存储器可以包括闪存驱动器、软盘、光盘、存储卡、zip磁盘、磁带等。易失性读写存储器可以包括随机存取存储器(ram)。ram可以包括动态随机存储器(dram)、双数据率同步动态随机存取存储器(ddr-sdram)、静态随机存取存储器(sram)、可控硅随机存取存储器(t-ram)、零电容随机存取存储器(z-ram)等。rom可以包括掩模只读存储器(mrom)、可编程的只读存储器(prom)、可擦除可编程只读存储器(eprom),电可擦除可编程只读存储器(eeprom)、光盘只读存储器(cd-rom)、数字多功能光盘的光盘等。在一些实施例中,存储设备150可以通过本申请中描述的云平台实现。例如,云平台可以包括私有云、公共云、混合云、社区云、分布式云、跨云、多云等其中一种或几种的组合。

在一些实施例中,存储设备150可以连接网络120,以与放射治疗系统100中的一个或多个组件(例如,处理设备140、终端130等)之间实现通信。放射治疗系统100中的一个或多个组件可以通过网络120读取存储设备150中的数据或指令。在一些实施例中,存储设备150可以是处理设备140的一部分。

图2是根据本发明的一些实施例所示的可以实现处理设备140的示例性计算设备200的硬件和/或软件组件的示例性示意图。如图2所示,计算装置200可包括处理器210、存储器220、输入/输出(i/o)230和通信端口240。

处理器210可以执行计算机指令(例如,程序代码)并可以根据申请中描述的技术执行处理设备140的功能。所述计算机指令可以用于执行本申请中描述的特定功能,所述计算机指令可以包括例如程序、对象、组件、数据结构、程序、模块和功能。例如,处理器210可以处理从存储设备150、和/或放射治疗系统100的任何其它组件获取的计划数据。在一些实施例中,处理器210可以包括一个或多个硬件处理器,例如微控制器、微处理器、精简指令集计算机(reducedinstructionsetcomputer(risc))、特定应用集成电路(applicationspecificintegratedcircuit(asic))、应用程序特定的指令集处理器(application-specificinstruction-setprocessor(asip))、中央处理单元(centralprocessingunit(cpu))、图形处理单元(graphicsprocessingunit(gpu))、物理处理单元(physicsprocessingunit(ppu))、数字信号处理器(digitalsignalprocessor(dsp))、现场可编程门阵列(fieldprogrammablegatearray(fpga))、先进的risc机器(advancedriscmachine(arm))、可编程逻辑器件(programmablelogicdevice(pld))、能够执行一个或多个功能的任何电路或处理器等其中一种或几种的组合。

仅用于说明,在计算设备200中仅描述一个处理器。然而,需要说明的是,计算装置200也可以包括多个处理器。由本申请中描述一个处理器执行的操作和/或方法也可以由多个处理器共同或分别执行。例如,如果本申请中描述的计算设备200的处理器执行操作a和操作b,应当理解的是,操作a和操作b也可以由计算装置中的200中的两个或两个以上不同处理器共同或分别执行(例如,第一处理器执行操作a和第二处理器执行操作b,或第一处理器和第二处理器共同执行操作a和b)。

存储器220可以存储从放射治疗设备110、终端130、存储设备150、和/或放射治疗系统100的任何其它组件获取的数据/信息。在一些实施例中,存储器220可包括大容量存储器、可移除存储器、易失性读写存储器、只读存储器(rom)等其中一种或几种的组合。大容量存储可以包括磁盘、光盘、固态硬盘、移动存储等。可移除存储器可以包括闪存驱动器、软盘、光盘、存储卡、zip磁盘、磁带等。易失性读写存储器可以包括随机存取存储器(ram)。ram可以包括动态随机存储器(dram)、双数据率同步动态随机存取存储器(ddrsdram)、静态随机存取存储器(sram)、可控硅随机存取存储器(t-ram)、零电容随机存取存储器(z-ram)等。rom可以包括掩模只读存储器(mrom)、可编程的只读存储器(prom)、可擦除可编程只读存储器(eprom),电可擦除可编程只读存储器(eeprom)、光盘只读存储器(cd-rom)、数字多功能光盘的光盘等。在一些实施例中,存储器220可以存储一个或多个程序和/或指令,用于执行本申请中描述的示例性方法。例如,存储220可以存储程序,所述程序可以用于处理设备140确定多组件的运动参数。

输入/输出230可以输入和/或输出信号、数据、信息等。在一些实施例中,输入/输出230可以实现用户与处理设备140之间的交互。在一些实施例中,输入/输出230可以包括输入设备和输出设备。输入设备可以包括键盘、鼠标、触摸屏、麦克风等其中一种或几种的组合。输出装置可以包括显示装置、扬声器、打印机、投影仪等其中一种或几种的组合。所述显示装置可以包括液晶显示器(lcd)、发光二极管(led)显示器、平板显示器、弧形屏幕、电视装置、阴极射线管(crt)、触摸屏等其中一种或几种的组合。

通信端口240可以连接网络(例如,网络120),以便于数据通信。通信端口240可以在处理设备140和放射治疗设备110、终端130和/或存储设备150之间建立连接。所述连接可以是有线连接、无线连接、任何能够实现数据传输和/或接收的连接等其中一种或几种的组合。所述有线连接可以包括例如电缆、光缆、电话线等其中一种或几种的组合。所述无线连接可以包括,例如,蓝牙tm链接、wi-fitm链接、wimaxtm链路、无线局域网链接、zigbeetm链接、移动网络链接(例如,3g、4g、5g等)其中一种或几种的组合。在一些实施例中,通信端口240可以是和/或包括标准化通信端口,如rs232、rs485等。在一些实施例中,通信端口240可以是专门设计的通信端口。例如,通信端口240可以根据医学数字成像和通信(dicom)协议来设计。

图3是根据本发明的一些实施例所示的可以实现终端130的示例性移动设备300的硬件和/或软件组件的示例性示意图。如图3所示,移动设备300可包括通信平台310、显示器320、图形处理器(gpu)330、中央处理器(cpu)340、输入/输出350、内存360和存储器390。在一些实施例中,移动设备300也可以包括任何其它合适的组件,包括但不限于系统总线或控制器(图中未显示)。在一些实施例中,移动操作系统370(例如,iostm,android,windowsphonetm等)和一个或多个应用程序380可以从存储器390装载入内存360,以便能够由中央处理器340执行。应用程序380可以包括浏览器或任何其他合适的移动应用程序,用于从处理设备140接收和呈现与图像处理或其他信息相关的信息。信息流的用户交互可以通过输入/输出350实现,并且通过网络150提供给处理设备140和/或放射治疗系统100的其他组件。

为了实现本申请中描述的各种模块、单元及其功能,计算机硬件平台可以用作本申请中描述的一个或多个元素的硬件平台。具有用户界面元素的计算机可用于实现个人计算机(pc)或任何其他类型的工作站或终端设备。如果适当编程,计算机也可以充当服务器。

图4是根据本发明的一些实施例的示例性处理设备140的框图。处理设备140可以包括获取模块410、处理模块420、控制模块430和存储模块440。

获取模块410可以获取数据。获取模块410可以从放射治疗设备110、网络120、终端130、存储设备150或本申请中公开的能够存储数据的任何设备或组件中的一个或两个以上获取数据。所获取的数据可以包括多个组件的位置、用户指令、算法等中的一种或多种的组合。所述多个组件的位置可以包括多个组件在轨迹上的多组位置。在一些实施例中,所述多个组件的每组位置可以对应于一个控制节点。所述控制节点与多个组件到达该组位置的时间点相关。每个控制节点分别对应不同时间点。在一些实施例中,两个相邻的控制节点可以限定一个子野。在一些实施例中,所述多个组件的位置可以根据计划数据确定。所述计划数据可以指与某一计划(例如,放射治疗计划、扫描计划等)有关的数据。所述计划数据可以包括多个离散的控制节点。对于放射治疗计划,计划数据的每个控制节点可以包括在一个时间点的多个组件的位置信息以及在一段时间内(例如,治疗期间)传递的累积辐射剂量。所述多个组件可以包括机架113、mlc的一个或两个以上叶片、工作台116等。在一些实施例中,所述位置信息可以用于确定多个组件的运动参数。在一些实施例中,辐射剂量可以用于确定放射治疗设备110传递辐射剂量的剂量率。如本文所使用的,剂量率可以指单位时间内传递的辐射剂量。在一些实施例中,辐射剂量可以被认为是放射治疗系统100中的多个组件中的一个组件。在一些实施例中,在两个相邻的控制节点之间的转换,即从一个控制节点转换至后续控制节点,可以被限定为一个子野。在一些实施例中,所述计划数据可以包括至少一个子野。

在一些实施例中,获取模块410可以通过传感器获得信息,例如位置信息、速度信息、时间。示例性的传感器可以包括位置传感器、角度位置传感器、计时器、速度传感器、加速度传感器等。例如,为了基于根据计划数据确定的运动参数来控制多个组件在放疗期间的运动,获取模块410可以获取实时信息(例如,一个或两个以上组件的实时位置、实时速度、实时加速度等),并且将实时信息馈送到控制模块430以在放疗期间控制或调整一个或两个以上组件的运动。

在一些实施例中,获取模块410可以将获取的数据存储在存储器150和/或存储模块440中。在一些实施例中,获取模块410可以将所获取的计划数据传输到用于确定多个组件的运动参数的计算设备(例如,处理模块420)或用于控制多个组件运动的控制设备(例如,控制模块430)。

处理模块420可以处理由处理设备140的各个模块提供的数据。例如,处理模块420可以处理由获取模块410获取的或者从存储模块440获取的计划数据。处理模块420可以通过确定与计划数据有关的多个参数或值来处理所获得的数据。例如,处理模块420可以确定控制节点处一个组件的速度,多个组件中的每个组件执行一个子野的时长,和/或装置(例如,具有或不具有成像组件的放射治疗设备110)的多个组件的运动参数。所述运动参数可以用于控制多个组件的运动。在一些实施例中,处理模块420可以将多个组件的运动参数传输到控制模块430以控制多个组件的运动。

控制模块430可以控制放射治疗系统100的模块或组件的操作。在一些实施例中,控制模块430可以从处理模块420接收运动参数,并根据运动参数控制多个组件的运动。多个组件的运动可以包括例如线性运动、往复运动、圆周运动等中的一种或多种的组合。在一些实施例中,控制模块430可以包括一个位置控制单元和一个速度控制单元。位置控制单元可配置为基于组件的轨迹曲线来控制一个组件在整个运动过程中的实时位置。在一些实施例中,所述轨迹曲线可以基于运动参数、放射治疗设备110的机械结构中的一个或多个的组合来确定。关于位置控制单元的细节在本申请的其他地方进行了描述。例如,参见图15及其描述。速度控制单元可配置为基于组件的速度曲线来控制一个组件在在整个运动过程中的实时速度。在一些实施例中,可以基于运动参数来确定所述速度曲线。

存储模块440可以存储数据。在一些实施例中,存储模块440可以存储可以由处理设备140的(多个)处理器执行以实现在本申请中描述的示例性方法的一个或两个以上程序和/或指令。例如,存储器440可以存储可以由处理设备140的(多个)处理器执行的(多个)程序和/或(多个)指令,以确定多个组件的速度,每个组件执行过一个子野的最小时长,对应于一个子野的优化时长,和/或多个组件的运动参数。

在一些实施例中,图4所示的一个或两个以上模块可以在图1所示的放射治疗系统100的至少一部分中实现。例如,获取模块410、处理模块420、控制模块430和/或存储模块440可以集成到一个控制台(未示出)。通过控制台,用户可以设置用于实现在本申请其他位置所描述的操作(例如,用于对患者进行治疗的计划数据)的参数。在一些实施例中,控制台可以通过处理设备140和/或终端130来实现。

应当理解,图4所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、cd或dvd-rom的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本申请的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。

需要注意的是,以上描述,仅为描述方便,并不能把本申请限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可以在不背离这一原理的情况下,对实施上述方法和系统的应用领域进行形式和细节上的各种修正和改变。例如,处理模块420和控制模块430可以集成在一起成为一个模块,同时实现数据处理以及组件运动控制的功能。又例如,处理设备140还可以包括用于促进放射治疗系统100和用户之间的交互的i/o模块。然而,这些变化和修改不脱离本申请的范围。

图5是根据本发明的一些实施例的用于生成控制多个组件的运动的控制指令的流程500的一个示例性流程图。流程500和此处描述的其它流程可以通过任何硬件、软件、或手动方式的合适的组合方式来执行。体现这些流程的软件可以由任何非暂时性有形介质存储,包括硬盘、软盘、光盘、数字化视频光盘、闪存或磁带。

在502,可以获取一个系统中多个组件的位置。例如,可以通过获取模块410获取所述位置。在一些实施例中,所述多个组件的位置可以包括所述多个组件的运动轨迹上的多组位置。在一些实施例中,每组位置对应于一个控制节点。所述控制节点与多个组件到达该组位置的时间点相关。每个控制节点分别对应不同时间点。在一些实施例中,两个相邻的控制节点可以限定一个子野。所述控制节点可以预先确定,例如,根据计划数据确定。所述计划数据可以涉及放射治疗计划、扫描成像计划等中的一种或多种的组合。本申请中的系统可以是医疗系统,例如,放射治疗(rt)系统100、计算机断层扫描(ct)系统、超声波检查系统、x射线摄影系统等中的一种或多种的组合。以放射治疗(rt)系统100为例,所述多个组件可以包括机架113、多叶光栅(mlc)的一个或两个以上叶片、工作台116等中的一种或多种的组合。在一些实施例中,所述组件的实时位置可以由连接到获取模块410或与获取模块410通信的传感器确定或测量。

在504中,可以基于所述位置来确定多个组件的运动参数。例如,可以通过处理模块420来确定多个组件的运动参数。在一些实施例中,组件在子野中的运动参数可以指所述组件执行子野的参数。所述执行子野可以是指组件从限定子野的一个控制节点对应的位置和时间点出发,按运动轨迹(例如,计划运动轨迹、优化运动轨迹等)运动,在子野的另一控制节点对应的时间点到达另一控制节点对应的位置。所述运动参数可以包括加速时长、匀速时长、减速时长、匀速速度、加速度等中的一个或两个以上。在一些实施例中,处理模块420可以基于所述位置来确定每个组件的运动参数以执行子野。在一些实施例中,运动参数可以使多个组件以协调的方式运动。更具体地说,运动参数可以使多个组件能够在相同(或大致相同)的时间点到达由计划数据的控制节点限定的预定位置。

在506中,可以基于所述运动参数来生成用于控制所述多个组件的控制指令。在一些实施例中,可以由控制模块430生成控制指令。在一些实施例中,所述控制指令可以包括用于控制多个组件的速度和/或实时位置的指令。用于控制多个组件的实时速度和/或实时位置的指令可以被传输到速度环和/或位置环。所述位置环可基于组件的轨迹曲线来控制一个组件在整个运动过程中的实时位置。在一些实施例中,所述轨迹曲线可以基于所述运动参数来确定。所述速度环可基于组件的速度曲线来控制组件在多个控制节点处或多个控制节点之间的速度。在一些实施例中,可以基于所述运动参数来确定所述速度曲线。

需要注意的是,以上描述,仅为描述方便,并不能把本申请限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可以在不背离这一原理的情况下,对实施上述方法和系统的应用领域进行形式和细节上的各种修正和改变。例如,流程500还可以包括用于确定多个组件通过多个子野的多个优化时长的操作。所述多个组件的运动参数可以基于优化时长来确定。然而,这些变化和修改不脱离本申请的范围。

图6是示出了根据本发明的一些实施例的一个示例性处理模块420的框图。处理模块420可以包括一个速度确定单元610、一个时长确定单元620、一个运动参数确定单元630和一个组件选取单元640。

速度确定单元610可以确定一个组件在一个控制节点处的速度。速度确定单元610可以获得与控制节点相关联的一个或两个以上控制节点的位置(例如,计划数据),并且基于所述位置确定所述组件在所述控制节点处的速度。在一些实施例中,速度确定单元610可以确定一个组件在一个控制节点处的速度是否为零。在一些实施例中,速度确定单元610可以确定所述控制节点处的速度的值。在一些实施例中,速度确定单元610可以将组件的速度传输到时长确定单元620和/或运动参数确定单元630以进行进一步处理,或者传输到本发明中公开的任何存储设备(例如,存储模块440、存储设备150)进行存储。

时长确定单元620可以确定一个组件执行一个子野的时长。在一些实施例中,时长确定单元620可以获取一个组件在一个子野的两个相邻的控制节点处的速度,并且基于两个相邻的控制节点处的速度来确定所述组件在所述子野中的速度模型。所述速度模型可以是组件在子野中的速度曲线的表征。例如,可以在速度模型中表征速度曲线的一个或两个以上阶段(例如,加速阶段、减速阶段、匀速阶段等)。在一些实施例中,时长确定单元620可以基于速度模型和一组约束确定组件执行所述子野的最小时长。所述一组约束可以涉及组件在子野中的最大速度、最大加速度、最大加加速度、位移和/或机械结构。

在一些实施例中,时长确定单元620可以基于多个组件执行一个子野的最小时长来进一步确定对应于所述子野的优化时长。在一些实施例中,时长确定单元620可以基于多次迭代确定对应于所述子野的优化时长。在一些实施例中,时长确定单元620可以将对应于所述子野的优化时长传输到运动参数确定单元630以确定组件在子野中的运动参数,和/或传输到本发明中公开的任何存储设备(例如,存储模块440、存储设备150)用于存储。

运动参数确定单元630可以确定组件在子野中的运动参数。在一些实施例中,运动参数确定单元630可以从时长确定单元620获得与子野对应的时长(例如,优化时长),并基于所述时长来确定组件在子野中的运动参数。运动参数可以包括例如加速时长、匀速时长、减速时长、匀速速度、加速度等中的一个或多个。例如,运动参数确定单元630可以使用双s速度模型确定子野中组件的运动参数。运动参数可以被传输到控制模块430以控制放射治疗设备110的多个组件的运动,和/或传输到本发明中公开的任何存储设备(例如存储模块440、存储设备150)进行存储。

组件选取单元640可以从多个组件中选择一个或两个以上组件。针对一个子野,决定其对应的优化时长可以是一个或多个关键运动部件。所述关键运动部件在子野中的运动距离较大,很大程度上决定了子野的优化时长。在获得了基于关键运动部件而确定的优化时长后,可以再对其他部件进行评估。如果满足条件,即,其他部件也可以同步地从子野的起点运动到终点,则基于关键运动部件所确定的优化时长可以被指定为对应与子野的优化时长。这样可以减少轨迹优化时间。组件选取单元640可以在时长确定单元620确定对应于每个子野的优化时长之前,选择一个或两个以上组件。可以基于一个或两个以上所选组件而非多个组件中的所有组件通过多次迭代确定优化时长。仅出于说明的目的,所述一个或两个以上所选组件可以包括与其他组件相比具有更大的最小时长的第一组件,在以加速-匀速-减速模型在子野中运动的所有多叶光栅的叶片中,具有更大的位移的叶片,在以加速-匀速模型或匀速-减速模型在子野中运动的所有多叶光栅的叶片中,具有更大的位移的叶片,和/或在以匀速模型在子野中运动的所有多叶光栅的叶片中,具有更大位移的叶片。

需要注意的是,以上描述,仅为描述方便,并不能把本申请限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可以在不背离这一原理的情况下,对实施上述方法和系统的应用领域进行形式和细节上的各种修正和改变。例如,处理模块420中的一个或多个单元可以包括一个独立的存储块(未示出)。又例如,任意两个或多个单元可以组合成一个独立的单元来实现多种功能。还例如,任意一个单元可以分成两个或多个子单元。然而,这些变化和修改不脱离本申请的范围。

图7是根据本发明的一些实施方式所述的用于确定多个组件的运动参数的示例性流程图。流程700和此处描述的其它流程可以通过任何硬件、软件、或手动方式的合适的组合方式来执行。体现这些流程的软件可以由任何非暂时性有形介质存储,包括硬盘、软盘、光盘、数字化视频光盘、闪存或磁带。

在702中,可以获得多个组件的位置。所述位置可以通过获取模块410获取。在一些实施例中,用于获取702中的多个组件的位置的操作可以与流程500中的502的操作相同或相似,这里不再重复描述。

在704中,可以基于所述位置来确定每个组件在每个控制节点处的速度。在一些实施例中,可以通过速度确定单元610来确定每个组件在每个控制节点处的速度。在一些实施例中,可以确定每个组件在每个控制节点处的速度是否为零。

为说明方便,下面将阐述确定一个组件在当前控制节点处的速度的示例。在一些实施例中,可以基于对应于当前控制节点之前或之后的一个或两个以上控制节点的一个或两个以上位移来确定当前控制节点处的速度。在一些实施例中,所述一个或两个以上控制节点可以包括在一个先前控制节点和一个后续控制节点。如本申请所使用的,所述先前控制节点可以指在当前控制节点之前紧邻当前控制节点的控制节点,所述后续控制节点可以指在当前控制节点之后紧邻当前控制节点的控制节点。仅仅是为了说明,以当前控制节点cpi为例,控制节点cpi-1将被定义为当前控制节点cpi的先前控制节点,控制节点cpi+1将被定义为当前控制节点cpi的后续控制节点。在一些实施例中,可以基于计划数据中的位置的信息来确定一个或两个以上位移。例如,由当前控制节点cpi和先前控制节点cpi-1构成的子野的位移可以是上述两个控制节点的位置之间的差值确定。一个或两个以上。在一些实施例中,所述位移可以指控制节点和参考控制节点之间的位移。仅作为示例,参考控制节点可以是计划数据的起始控制节点、计划数据的结束控制节点、当前控制节点的先前控制节点、当前控制节点的后续控制节点等。如本文所使用的,所述起始控制节点可以指计划数据的控制节点在时间上的第一控制节点,所述结束控制节点可以指计划数据的控制节点在时间上的最后一个控制节点。例如,对于包括m+1个控制节点(例如,cp=[cp0,cp1,cp2,cp3,...,cpm])的计划数据,cp0可以是起始控制节点,并且cpm可以是结束控制节点。在一些实施例中,所述一个或两个以上位移可以是在一个或两个以上控制节点与它们各自的先前控制节点之间的位移。

在一些实施例中,可以确定一个或两个以上位移是否符合随时间的单调变化。如果一个或两个以上位移符合随时间的单调变化,则控制节点处的速度可以为非零。如果一个或两个以上位移不符合随时间的单调变化,则控制节点处的速度可以被指定为零。

以控制节点cpi为例,速度确定单元610可以确定分别对应于控制节点cpi-1,cpi和cpi+1的位移ε(cpi-1)、ε(cpi)和ε(cpi+1)。控制节点cpi的速度可以基于位移ε(cpi-1)、ε(cpi)和ε(cpi+1)来确定。所述位移ε(cpi-1)、ε(cpi)和ε(cpi+1)可以分别表示控制节点与参考控制节点cp0之间的位移。如果位移ε(cpi-1)、ε(cpi)和ε(cpi+1)符合随时间的单调变化(例如,ε(cpi-1)≥ε(cpi)之ε(cpi+1)或ε(cpi-1)≤ε(cpi)≤ε(cpi+1)),则控制节点ε(cpi)的速度可以是非零的。如果位移ε(cpi-1)、ε(cpi)、和ε(cpi+1)不符合随时间的单调变化(例如,ε(cpi-1)>ε(cpi)并且ε(cpi)<ε(cpi+1),或者ε(cpi-1)<ε(cpi)并且ε(cpi)>ε(cpi+1)),则控制节点cpi的速度可以被指定为零。

在706中,可以基于每个组件在每个控制节点处的速度确定每个组件执行至少一个子野的每个子野的最小时长。在一些实施例中,最小时长可以由时长确定单元620确定。在一些实施例中,可以为每个子野确定每个组件的速度模型,并且可以基于速度模型确定每个组件执行每个子野的最小时长。在一些实施例中,速度模型可以包括一个或两个以上运动模式(例如,加速、匀速或减速)。所述匀速可以表示组件的速度不发生变化,以稳定速度进行运动。示例性速度模型可以包括但不限于加速-匀速-减速模型、匀速模型、加速-减速模型、加速-匀速模型、匀速-减速模型、减速-匀速-加速模型、减速-加速模型等或其任意组合。加速-匀速-减速模型可以包括一个加速阶段、一个匀速阶段和一个减速阶段。加速-匀速模型可以包括一个加速阶段和一个匀速阶段。匀速-减速模型可以包括一个匀速阶段和一个减速阶段。匀速模型可以包括一个匀速阶段。加速-减速模型可以包括一个加速阶段和一个减速阶段。在一些实施例中,组件可以以不同的速度模型执行不同的子野。

在一些实施例中,可以基于两个控制节点处的组件的速度来确定组件可以执行由两个控制节点限定的子野的速度模型。仅作为示例,对于由控制节点cpj-1和cpj限定的子野sj,如果组件在两个控制节点cpj-1和cpj处的速度均不为零,则组件可以以匀速模型、加速-匀速-减速模型、加速-减速模型、减速-匀速-加速模型或减速-加速模型执行子野sj。又例如,如果组件在两个控制节点cpj-1和cpj处的速度均为零,则组件可以以加速-匀速-减速模型或加速-减速模型执行子野sj。

在一些实施例中,可以基于所述组件在子野中的速度模型,确定一个组件执行一个子野的最小时长。在一些实施例中,可以确定对应于速度模型中的每个运动阶段的时长。可以通过确定速度模型中对应于每个运动阶段的时长的总和来获取所述组件执行所述子野的最小时长。关于基于速度模型确定最小时长的细节可以在本发明的其他地方找到。例如,见图12及其描述。

在一些实施例中,可以基于加速-匀速-减速模型确定一个组件执行一个子野的最大时长。例如,如果一个组件在子野的两个控制节点处速度均为零(即,每个组件在该子野的起始速度等于0(venter=0),终点速度等于0(vexit=0)),基于加速-匀速-减速模型确定的一个组件执行子野的时长可以被指定为该组件执行子野的最大时长。

在708中,可以基于每个组件执行至少一个子野中的每个子野的最小时长,确定对应于每个子野的优化时长。在一些实施例中,对应于一个子野的优化时长可以指所述多个组件全部执行该子野的最小时长,在所述优化时长的结尾,多个组件全部到达由所述子野的结束控制节点限定的位置。例如,对于由控制节点cpj-1和cpj限定的子野sj,,如果优化时长为10秒,那么在10秒之后,所有组件都已经到达由控制节点cpj限定的位置。

在一些实施例中,可以基于每个组件执行子野的最小时长,确定对应于子野的候选最小时长。所述候选最小时长可以被指定为当对应与该子野的优化时长可以被确定时的下限。对应与该子野的优化时长可以等于或大于所述候选最小时长。

在一些实施例中,可以基于多次迭代确定优化时长。在多次迭代的每一次迭代期间,可以更新候选最小时长(例如,在每次迭代中增加一个增量)。在一些实施例中,当满足终止条件时,迭代可以终止,并且可以将更新或未更新的候选最小时长指定为优化时长。关于确定对应于一个子野的优化时长的细节可以在本发明的其他地方找到。例如,见图8及其描述。在一些实施例中,可以基于每个组件执行子野的最大时长确定对应于该子野的候选最大时长。例如,当某个组件通穿过子野的最大时长大于其他组件执行该子野的最大时长,该组件执行子野的最大时长可以被指定为对应于该子野的候选最大时长。所述候选最大时长可以被指定为对应于子野的优化时长的上限。所述优化时长可以从所述候选最小时长和所述候选最大时长组成的范围内确定。在一些实施例中,当确定优化时长时,可以忽略最大时长和候选最大时长。

在710中,可以基于对应于每个子野的优化时长,确定每个子野中的每个组件的运动参数。在一些实施例中,运动参数可以用于控制多个组件从每个子野的起始控制节点到结束控制节点的同步运动。运动参数可以包括但不限于加速时长、匀速时长、减速时长、匀速速度、加速度等。在一些实施例中,可以基于所述子野的优化时长,确定所述子野中组件的运动参数。例如,在确定至少一个子野的优化时长之后,可以确定每个控制节点处的每个组件的速度。在一些实施例中,每个组件在每个控制节点处的速度可以根据公式(1)确定:

其中,cpj表示当前控制节点,vcp(j)表示当前控制节点处的组件的速度,vav(j)表示由控制节点cpj-1和cpj限定的子野sj中所述组件的平均速度,vav(j+1)表示由控制节点cpj和cpj+1限定的子野sj+1中所述组件的平均速度,不单调表示组件在控制节点cpi-1,cpi和cpi+1的目标位移ε(cpi-1)、ε(cpi)和ε(cpi+1)不符合随时间的单调变化(例如,ε(cpi-1)>ε(cpi)并且ε(cpi)<ε(cpi+1),或者ε(cpi-1)<ε(cpi)并且ε(cpi)>ε(cpi+1)),单调表示组件在控制节点cpi-1,cpi和cpi+1的目标位移ε(cpi-1)、ε(cpi)和ε(cpi+1)符合随时间的单调变化(例如,ε(cpi-1)≥ε(cpi)≥ε(cpi+1)或ε(cpi-1)≤ε(cpi)≤ε(cpi+1))。所述平均速度vav(j)可以通过公式(2)确定:

vav(j)=(ε(cpj)-ε(cpj-1))/hj(2)

其中,ε(cpj)和ε(cpj-1)分别表示对应于控制节点cpj和cpj-1的位移,hj表示所述组件执行子野sj的时长(例如,708中的优化时长)。在一些实施例中,可以利用每个控制节点处的每个组件的速度,基于每个组件在每个子野中的速度模型和其他技术(例如,双s模型)来确定每个子野中的每个组件的运动参数。

在一些实施例中,可以基于运动参数来生成控制指令。可以根据控制指令来控制所述多个组件的同步运动。在一些实施例中,所述控制指令可以包括但不限于多个组件的速度曲线和位置曲线等。在一些实施例中,组件的速度曲线可以包括多个速度和所述组件达到多个速度的对应时间点。在一些实施例中,组件的位置曲线可以包括多个位置和组件达到多个位置的对应时间点。

在一些实施例中,对应于子野的运动参数取决于所述子野本身以及其他子野。例如,在一个子野的结束控制节点处组件的位置、终点速度等是紧邻该子野的后续子野的起始控制节点处该组件的位置,起始速度等。子野的运动参数(例如,对应于子野的优化时长)可以基于子野本身的参数,以及其他子野的参数(例如,其他子野的候选最小时长)确定。

需要注意的是,以上描述,仅为描述方便,并不能把本申请限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可以在不背离这一原理的情况下,对实施上述方法和系统的应用领域进行形式和细节上的各种修正和改变。例如,过程700可以进一步包括用于生成控制至少一个子野中的多个组件的运动的控制指令的操作,以及将控制指令传输到控制模块430的操作。然而,这些变化和修改不脱离本申请的范围。

图8是示出了根据本发明的一些实施例的用于确定优化时长的示例性流程800的流程图。流程800和此处描述的其它流程可以通过任何硬件、软件、或手动方式的合适的组合方式来执行。体现这些流程的软件可以由任何非暂时性有形介质存储,包括硬盘、软盘、光盘、数字化视频光盘、闪存或磁带。

在802中,获取每个组件执行所述至少一个子野的每个子野的最小时长。在一些实施例中,每个组件执行每个子野的最小时长可以通过例如执行706中的操作来确定,这里不再重复描述。

在804中,确定对应于每个子野的候选最小时长。对于包括m个子野的计划数据,可以确定m个候选最小时长。所述候选最小时长可以被指定为当对应于子野的优化时长被确定时的下限。

在一些实施例中,可以基于对应于子野的多个组件的最小时长,确定对应于子野的候选最小时长。在一些实施例中,当一个组件执行一个子野的最小时长大于其他组件的最小时长时,该组件的最小时长可以被指定为所述子野的候选最小时长(也被称为“初始候选最小时长”)。对应于所述子野的候选最小时长可以是确定对应于所述子野的优化时长的范围的下限。例如,如果机架执行一个子野的最小时长大于其他组件(例如,mlc的叶片、准直器和工作台)的最小时长,则机架执行所述子野的最小时长可以被指定为所述子野的候选最小时长。

在一些实施例中,可以基于每个组件执行至少一个子野中的每个子野的最小时长,确定对应于至少一个子野的至少一个候选最小时长。在一些实施例中,至少一个候选最小时长可以是矩阵或向量的形式。例如,所述至少一个候选最小时长可以是以公式(3)表示的行矩阵的形式:

h=[h1,h2,h3,…,hm](3)

其中,m表示子野的数量,h表示行矩阵,并且h1至hm分别表示与m个子野中的每一个相对应的候选最小时长。又例如,所述至少一个候选最小时长可以以一个一维向量的形式表示。

在806中,可以基于对应于所述至少一个子野的所述至少一个候选最小时长,确定一个子野的起始控制节点处的一个或两个以上组件的起始速度以及在结束控制节点处的一个或两个以上组件的终点速度。对于由两个控制节点限定的一个子野,在所述子野起始控制节点处的速度可以指起始速度,在结束控制节点处的速度可以指终点速度。子野的起始控制节点可以指所述子野开始处的控制节点。子野的结束控制节点可以指所述子野结束处的控制节点。仅出于说明的目的,对于由控制节点cpj-1和cpj限定的子野sj,可以将控制节点cpj-1称为子野sj的起始控制节点,并且可以将控制节点cpj称为子野sj的结束控制节点。起始速度可以指在起始控制节点处的一个或两个以上组件的速度。终点速度可以指在结束控制节点处的一个或两个以上组件的速度。在一些实施例中,可以基于至少一个候选最小时长,确定起始控制节点处的一个或两个以上组件的起始速度以及在结束控制节点处的一个或两个以上组件的终点速度。例如,起始速度终点速度可以通过将至少一个候选最小时长代入公式(1)和(2)中来确定起始速度和终点速度。

在一些实施例中,可以在多次迭代中更新子野的候选最小时长,以确定子野的优化时长。为了提高效率,可以从多个组件中选择一个或两个以上组件,从而针对所选组件而不是所有组件执行用于确定子野的优化时长的多次迭代。仅仅是为了说明,可以首先在迭代过程中考虑所述一个或两个以上组件(例如,806至816)。如果关于选择的一个或两个以上组件的预设条件不被满足,则可以执行另一轮迭代。如果关于选择的一个或两个以上组件的预设条件被满足,则可以确定该子野的潜在优化时长。然后,可以针对所述多个组件的其他组件测试该子野的潜在优化时长。如果对于所有的组件预设条件都被满足,则可以将该子野的潜在优化时长制定为该子野的优化时长。如果其他组件中的至少一个组件的预设条件未能得到满足,则可以执行另一轮迭代,重新从所选一个或两个以上组件开始。所述一个或两个以上所选组件可以通过组件选取单元640确定。仅出于说明的目的,可以为每个子野确定包括第一组件、第二组件、第三组件和第四组件的四个组件。

在一些实施例中,对于一个子野,与其他组件相比具有更大的最小时长的组件被称为第一组件。在一些实施例中,可以例如通过执行过程700的706来确定每个组件执行子野的最小时长。

在一些实施例中,mlc可以具有多个叶片(例如,120个叶片),并且可以分别将mlc的每个叶片确定为一个组件。在一些实施例中,确定一个或两个以上组件时可以考虑各种速度模型。仅出于说明的目的,对于在一个子野中具有相同的位移的mlc的两个叶片,如果两个叶片根据不同的速度模型执行所述子野,则最小时长可以是不同的。在一些实施例中,对于以零起始速度和零终点速度执行子野的一个或两个以上的叶片,可以将这些叶片中具有最大位移的叶片确定为第二组件。在一些实施例中,对于以零起始速度和非零终点速度,或以非零起始速度和零终点速度执行子野的一个或两个以上的叶片,可以将这些叶片中具有最大位移的叶片确定为第三组件。在一些实施例中,对于以非零起始速度和非零终点速度执行子野的一个或两个以上的叶片,可以将这些叶片中具有最大位移的叶片确定为第四组件。

在808中,可以基于多个组件的起始速度和终点速度,确定所述多个组件在子野中的最大有效位移。在一些实施例中,可以基于所述组件在子野中的最大有效速度,确定所述组件在所述子野中的最大有效位移。所述最大有效速度可以指在候选最小时长内执行一个子野时组件能够达到的峰值速度。组件在子野中的最大有效位移可以指在候选最小时长内所述组件能够以最大有效速度达到的位移。在一些实施例中,可以基于所述多个组件的起始速度和终点速度,确定所述多个组件的最小有效位移。在一些实施例中,可以基于组件在子野中的最小有效速度,确定所述组件在所述子野中的最小有效位移。所述组件在子野中的最小有效速度可以指在候选最小时长内执行所述子野时组件能够达到的最小速度。所述最小有效位移可以指在候选最小时长内组件能够以最小有效速度达到的位移。在一些实施例中,组件在子野中的的最大有效速度和/或最小有效速度可以在多次迭代中确定。关于确定一个子野中组件的最大有效位移和最小有效位移的细节可以在本发明的其他地方找到。例如,见图13及其描述。

在810中,可以基于所述计划数据,确定所述子野中一个或两个以上组件的位移。在一些实施例中,可以基于计划数据中的位置信息,确定组件在子野中的位移。在一些实施例中,可以基于起始控制节点处的组件的位置和结束控制节点处的组件的位置,确定组件在子野中的位移。例如,如果子野的两个相邻的控制节点处的机架的旋转角度分别是10度和15度,则所述子野中的机架的位移是5度。又例如,如果一个子野的两个相邻的控制节点处的mlc的叶片的位置分别是-1厘米和1厘米,则所述子野中叶片的位移是2厘米。

在812中,可以确定是否满足预设条件。如果满足预设条件,则过程800可以进行到814,其中可以将候选最小时长指定为优化时长。如果不满足预设条件,则过程800可以进行到816以将候选最小时长增加一个增量,并且可以执行包括806到812的另一轮迭代。

在一些实施例中,所述预设条件可以是所述多个组件中的每个组件的位移小于最大有效位移。仅出于说明的目的,对于一个子野,如果每个组件的位移都小于最大有效位移,这可能表明多个组件中的所有组件都可以在候选最小时长内执行所述子野,则可以认为预设条件得到满足。在一些实施例中,所述预设条件可以是所述多个组件中的每个组件的位移在该组件的最大有效位移和最小有效位移之间。仅出于说明的目的,对于一个子野,如果每个组件的位移都在最大有效位移和最小有效位移之间,这可能表明多个组件中的所有组件都可以在候选最小时长内执行所述子野,则可以认为预设条件得到满足。在一些实施例中,所述预设条件可以是候选最小时长的预设阈值,当候选最小时长经过迭代更新后大于所述预设阈值时,迭代将终止。在一些实施例中,所述预设阈值可以由用户和/或根据放射治疗系统100的默认设置来设定。在一些实施例中,如果所述多个组件中某一组件在子野的控制节点处的速度均为零(即,该组件的起始速度venter=0和终点速度vexit=0),且该组件执行子野的最小时长大于其他组件的最小时长,那么该组件的最小时长(即,最大的最小时长)可以被指定为子野的预设阈值。

在814中,可以确定候选最小时长作为所述子野的优化时长。所述子野的优化时长可以用于确定子野中的多个组件的运动参数。

在816中,候选最小时长可以增加一个增量。如果至少一个组件的位移大于其最大有效位移,这表明所述至少一个组件无法在候选最小时长内执行整个子野,则候选最小时长可以增加一个增量,并且可以获取候选时长(即,更新后的候选最小时长)。所述增量可以是根据放射治疗系统100的默认设置或由用户设置的值(例如,2秒、15秒、1分钟等)。仅出于说明的目的,对于子野sj,如果不满足预设条件,则可以根据公式(4)确定子野sj的候选时长:

h′j=hj+δh(4)

其中,δh表示增量,h′j表示更新的候选最小持续时间,hj表示候选最小时长。可以理解,当执行另一轮迭代时,hj也表示上一轮迭代中经过更新的候选最小时长。在一些实施例中,可以确定对应于至少一个子野的一组新的候选最小时长。可以使用所述一组新的候选最小时长来确定对应于子野sj-1的优化时长。子野sj-1在时间上可以在子野sj之前。仅出于说明的目的,如果子野sj的候选最小时长改变了(例如,增加了一个增量),所述多个组件在子野sj的起始速度、终点速度、最大有效位移以及最小有效位移将进行相应的改变。根据公式(1)与公式(2),多个组件在子野sj的起始速度的改变,将影响组件在相邻的子野sj-1的终点速度。因此,子野sj的候选时长的改变将使得子野sj-1的优化时长发生变化,需要重新确认子野sj-1的优化时长。例如,执行流程800。对于子野sj,所述一组新的候选最小时长可以用公式(5)表示:

hn=[h1,h2,h3,…,h′j,…,hm](5)

其中,n表示迭代次数,即当前执行的是哪一轮迭代。

需要注意的是,以上描述,仅为描述方便,并不能把本申请限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可以在不背离这一原理的情况下,对实施上述方法和系统的应用领域进行形式和细节上的各种修正和改变。例如,对于连续的两个子野,可以重复806到816中的迭代操作,以在确定对应于第一多次迭代中的至少一个子野的第一子野的第一优化时长之后,在第二多次迭代中确定对应于至少一个子野的第二子野的第二优化时长,其中第一子野可以在第二子野之前。仅出于说明的目的,对于包括m个子野(例如,s=[s1,s2,s3,...,sj,sj+1,...sm,])的计划数据,子野sj+1的优化时长的确定可以在子野sj的优化时长确定之后开始。又例如,可以用其他用于评估候选最小时长的操作(例如,确定候选最小时长是否可以是子野的优化时长)来替代806至812中的操作。然而,这些变化和修改不脱离本申请的范围。

图9是根据本发明的一些实施例所示的示例性计划数据。所述计划数据可以对应于一个计划(例如,用于提供辐射束序列的辐射治疗计划),其包括多个组件的一系列的位置(例如,机架,多叶光栅(mlc)的一个或两个以上的叶片等)。在一些实施例中,计划数据可以包括多个离散的控制节点。所述控制节点中的每个控制节点可以包括在多个组件的位置以及传递的累积辐射剂量。两个相邻的控制节点之间的转换可以被定义为一个子野。在一些实施例中,计划数据可以包括至少一个子野。如图9所示,计划数据可以包括m+1个控制节点cp0至cpm。控制节点cp0至cpm中的每个控制节点包括机架的位置(例如,以机架的角度测量)、多叶准直器(mlc)的每个叶片的位置以及所传递的(在辐射传感器中测量的)累积辐射剂量。在一些实施例中,待传递的辐射剂量也可以被确定为组件。更多关于计划数据或多个组件的位置的描述可以在美国专利us8,503,608b2中找到,其内容通过引用并入本文。

图10是根据本发明的一些实施例所示的一个组件的示例性轨迹曲线。横轴表示时间或子野时间,纵轴表示组件的位置。由虚线表示的理想轨迹曲线1001可以由包括多个特征的轨迹生成框架生成。所述特征可以包括但不限于速度模型、最小时长以及一组约束。所述一组约束包括但不限于加加速度、加速度、速度等。在一些实施例中,组件的理想轨迹曲线1001可以基于根据流程700中的710确定的运动参数来生成。。在一些实施例中,所述组件可以是mlc的叶片。轨迹曲线1001可以包括多个经过点,例如经过点1003。经过点可以表示组件可能在一个时间点到达的位置。在一些实施例中,每个经过点可以对应于一个控制节点。两个相邻的控制节点之间的时间间隔可以表示组件可以执行由两个相邻的控制节点限定的子野的时长。

在一些实施例中,组件可以通过由图10中所示的实线表示的实际轨迹1002中的子野。在一些实施例中,理想轨迹曲线1001和实际轨迹1002之间可能存在偏差。更多数量的控制节点可能使偏差减小。在一些实施例中,可以对控制节点的数量进行优化以减小偏差,并且提高在流程700中确定多个组件的优化时长和运动参数方面的效率。

图11是根据本发明的一些实施例所示的一个组件的示例性速度模型。在图11(a)至图11(d)中,横轴表示时间或子野时间,纵轴表示组件的位置。在一些实施例中,所述速度模型可以包括加速-匀速-减速模型1110、加速-匀速模型1120、匀速-减速模型1130、匀速模型1140等。在一些实施例中,可以基于组件在子野中的起始速度(即,在子野的起始控制节点处的速度)和终点速度(即,在子野的结束控制节点处的速度),确定所述组件在所述子野中的速度模型。

在一些实施例中,如果起始速度和终点速度都为零,则组件运动的速度模型符合所述加速-匀速-减速模型1110。根据加速-匀速-减速模型1110,组件可以在加速时间段内从起始速度加速到匀速速度,在匀速时间内以匀速速度匀速,然后在减速时间段内从匀速速度减速到终点速度。如本文所使用的,加速时间段可以指组件的速度从起始速度变为匀速速度的时长。减速时间段可以指组件的速度从匀速速度变为终点速度的时长。可以根据公式(6)确定组件执行子野的最小时长:

其中,v(t)表示组件执行子野中的速度函数,ventry表示组件的起始速度,vcruise表示匀速速度,vexit表示组件的终点速度,vmax表示组件的速度的上限,t表示时间,表示速度函数v(t)的导数,a(t)表示组件在所述子野中的加速度函数,amax表示组件的加速度的上限,ten表示加速时间段,tentry表示进入时刻,tcurise表示匀速时间,tex表示减速时间段,texit表示退出时刻,d表示组件在子野中的位移,hmin表示最小时长。组件执行所述子野的最小时长可以是加速时间ten,匀速时间tcurise和减速时间tex的之和。在一些实施例中,与加加速度有关的限制也会被考虑。例如,与加加速度有关的限制可以由公式(7)表示:

其中,表示速度函数v(t)的二阶导数,j(t)表示加加速度,jmax表示加加速度的上限。

在一些实施例中,如果起始速度为零,并且终点速度为非零,则组件运动的速度模型符合所述加速-匀速模型1120。根据加速-匀速模型1120,组件可以在加速时间段内从起始速度加速到匀速速度,然后在匀速时间内以匀速速度匀速。如果起始速度为非零且终点速度为零,则组件的速度模型符合子所述匀速-减速模型1130。根据匀速-减速模型1130,组件可以在匀速时间内以匀速速度匀速,然后在退出稳定时间内从匀速速度减速到终点速度。以加速-匀速模型1120为例,可以根据公式(8)确定所述组件执行所述子野的最小时长:

所述组件执行所述子野的最小时长可以包括加速时间ten和匀速时间tcurise。在一些实施例中,所述限制(例如,如公式(7)中所示的关于加加速度的限制)同样会被考虑。

在一些实施例中,如果起始速度和终点速度均为非零,则组件运动的速度模型符合所述匀速模型1140。根据匀速模型1140,组件可以在匀速时间内以匀速速度执行所述子野。可以根据公式(9)确定所述组件执行所述子野的最小时长:

hmin=d/vmax(9)

其中,d表示组成子野的两个控制节点之间的距离。

图12是根据本发明的一些实施例所示的一个组件的示例性速度模型。横轴表示时间或子野时间,纵轴表示组件的速度(或者朝向目的地或子野的结束控制节点的速度)。所述组件可以在进入时刻以起始速度进入子野,在加速时间段内从起始速度加速到匀速速度,在匀速时间内以匀速速度匀速,在减速时间段内从匀速速度减速到终点速度,然后在退出时刻以终点速度离开所述子野。在此过程中,所述组件可能需要满足一组约束。所述一组约束可能与组件的最大速度,最大加速度和最大加加速度有关。在一些实施例中,根据所述约束,组件经过每个控制节点的速度是连续的。所述组件的速度可以表示为分段函数(10):

其中,v(t)表示组件执行子野的分段函数,t表示时间,tentry表示组件进入子野的时间点,ten表示组件的加速时间段,tex表示组件的减速时间段,texit表示组件离开子野的时间点,f(t)与g(t)表示分段函数v(t)的一部分,f(t)表示组件在加速时间段内的速度函数,g(t)表示组件在减速时间段内的速度函数,表示f(t)的导数,表示g(t)的导数,ventry表示组件的起始速度,vcruise表示匀速速度,vexit表示组件的终点速度。

在一些实施例中,组件的速度、加速度和加加速度可以用一个或两个以上阈值进行限制。在一些实施例中,所述一个或两个以上阈值可以由用户根据放射治疗系统100的默认设置等中的一种或多种的组合来设置。在一些实施例中,一个或两个以上阈值可以涉及组件的结构、大小或材料。例如,组件的速度、加速度和加加速度可以表示为公式(11)至(13):

|v(t)|≤vmax,(11)

其中,v(t)表示速度函数,表示速度函数v(t)的一阶导数,表示速度函数v(t)的二阶导数,a(t)表示加速度,j(t)表示加加速度,vmax表示最大速度,amax表示最大加速度,jmax表示最大加加速度。在一些实施例中,vmax、amax和jmax可以基于计划数据确定,并由组件的机械结构所限制。在一些实施例中,可以根据公式(14)确定组件执行子野的总时长:

h=texit-tentry=ten+tcurise+tex(14)

其中,h指组件执行子野的总时长。

在一些实施例中,组件的位移可以以公式(15)表示:

当在流程700的706中确定最小时长时,每个组件可能需要满足如描述中提出的限制(例如,公式(11)至(15))。更多关于示例性速度模型的描述可以在美国专利申请us2017/0354393a1中找到,其内容通过引用并入本文。

图13是根据本发明的一些实施例所示的一个组件在一个子野中的最大有效速度、最小有效速度、最大有效位移和最小有效位移的示意图。横轴表示时间或子野时间,纵轴表示组件的速度。图13可以结合流程800的808中的操作来描述。对于由起始控制节点和结束控制节点限定的子野,组件在起始控制节点和结束控制节点处的速度可以分别是起始速度ventry和终点速度vexit。给定所述组件需要执行子野的时长(例如,候选最小时长)h,可以确定第一速度曲线1301和第二速度曲线1302。在一些实施例中,当确定第一速度曲线1301和第二速度曲线1302时,所述组件还可能需要满足一组约束(例如,公式(11)至(15))。所述一组约束可以涉及组件在子野中的速度、加速度、加加速度、和/或位移。

第一速度曲线1301可以包括一个加速阶段和一个减速阶段。所述加速阶段可对应于加速时长ten_α和加速位移den_α,所述减速阶段可对应于减速时长tex_α和减速位移dex_α。所述加速时长ten_α和所述减速时间tex_α之和可以小于或等于时长h(即,ten_α+tex_α≤h)。第一速度曲线1301的峰值可以被确定为最大有效速度vmax_eff。加速位移den_α与减速位移dex_α之和可以是最大有效位移smax_eff(即,smax_eff=den_α+dex_α)。

第二速度曲线1302可以包括一个减速阶段和一个加速阶段。所述减速阶段可对应于减速时长ten_β和减速位移den_β,所述加速阶段可对应于加速时长tex_β和加速位移dex_β。所述减速时长ten_β和所述加速时间tex_β之和可以小于或等于时长h(即,ten_β+tex_β≤h)。第二速度曲线1302的谷值可以被确定为最小有效速度vmin_eff。减速位移den_β与加速位移dex_β之和可以是最小有效位移smin_eff(即,smin_eff=den_β+dex_β)。

在一些实施例中,最大有效速度和/或最小有效速度可以在多次迭代中确定。例如,可以通过迭代地检查对应于子野的候选最小时长与所述组件以不同有效速度执行子野的实际时长之间的差异来确定组件的最大有效速度。如果候选最小时长与实际时长之间的差大于预设阈值(例如,零),则有效速度可以被确定为组件的最大有效速度。更多关于组件在子野中的最大有效速度、最小有效速度、最大有效位移和最小有效位移的描述可以在美国专利申请us2017/0354393a1中找到,其内容通过引用并入本文。

图14是根据本发明的一些实施例所示的在一个组件的运动轨迹上的示例性子节点。横轴表示时间或子野时间,纵轴表示组件的位置。在一些实施例中,轨迹1400可以基于在流程700的710中确定的组件的运动参数来生成。轨迹1400可以包括与cpj-1至cpj+3的多个控制节点(例如,1401-1、1401-2、1401-3、1401-4和1401-5)相对应的多个位置。在一些实施例中,可以在两个相邻的控制节点之间生成多个子节点(例如,1402-1、1402-2和1402-3)。所述多个子节点还可以将两个相邻的控制节点之间的子野分成一个或两个以上子子野。在一些实施例中,在两个相邻的子节点之间可以存在规则的间隔t,例如20毫秒、50毫秒等。例如,控制节点cpj+1和cpj+2(例如,控制节点1401-3和1401-4)之间的子野可以被三个子节点分成四个子子野。子节点(例如,1402-1、1402-2和1402-3)可以包括多个组件的控制信息。所述控制信息可以包括组件到达子节点的时间点、对应于子节点的组件的位置、组件在子节点处的速度、组件在子节点处的加速度等。仅出于说明的目的,子节点cpi(例如,子节点1402-2)的控制信息可包括当组件到达cpi时的时间点ti,对应于cpi的位置posi,在cpi时的速度veli,在cpi时的加速度acci等。子节点可以用来控制组件在执行子野时的运动。

图15是根据本发明的一些实施例所示的用于控制多个组件的运动的示例性控制模型的示意图。控制模型可以由放射治疗系统100的一个或两个以上模块或设备来实现,以达到对多个组件的运动控制的目的。处理模块420可以获得包括多个组件的多个目标位置的计划数据,并且通过执行参照图7至图9提供的一个或两个以上操作来生成多个组件的运动参数。运动参数可以包括组件到达控制节点或子节点的时间点,与控制节点或子节点相对应的组件的位置,控制节点或子节点处的速度,控制节点或子节点处的加速度,两个相继的控制节点或子节点之间的匀速速度,加速阶段的加速时长等。以子节点cpi为例,子节点cpi可以用cpi(ti,posi,veli,acci)表示,其中ti表示组件到达cpi的时间点,posi表示对应于cpi的组件的位置,veli表示在cpi时组件的速度,acci表示在cpi时的组件的加速度。

在一些实施例中,放射治疗系统100可以包括一个位置控制单元1501。在一些实施例中,所述位置控制模块1501可以是控制模块430的一部分。位置控制模块1501还可以包括一个速度前馈单元1502、一个加速度前馈单元1503和一个位置环控制单元1504。处理模块420可以将关于一个或两个以上子节点的信息以预定间隔(20毫秒)传输至位置控制模块1501中的设备。所述信息可以包括位置信息、速度信息、加速度信息等。以子节点cpi为例,位置posi可以被传输至环控制单元1504来控制组件的位置,速度veli可以传输给速度前馈单元1502来控制组件的速度,并且加速度acci可以被传输至加速度前馈单元1503以控制组件的加速度。在一些实施例中,位置环控制单元1504可以从位置检测设备(例如,电动机编码器、位置传感器、角度位置传感器等)接收多个组件的检测位置。来自位置检测设备的检测位置可以被用作实时位置反馈。仅仅是为了说明,位置环控制单元1504可确定检测到的组件位置与对应于子节点的组件的位置之间是否存在偏差。如果存在偏差,则速度前馈单元1502和/或加速度前馈单元1503可基于所述偏差动态地调整组件的速度以跟上对应于所述子节点的位置。速度前馈单元1502、加速度前馈单元1503和位置环控制单元1504可基于一个或两个以上子节点产生关于多个组件的速度指令。在一些实施例中,控制模块还可以包括速度环(图中未示出),其可以从位置控制模块1501接收速度指令,并且基于速度指令来控制多个组件的运动。

以上内容描述了本申请和/或一些其他的示例。根据上述内容,本申请还可以作出不同的变形。本申请披露的主题能够以不同的形式和例子所实现,并且本申请可以被应用于大量的应用程序中。后文权利要求中所要求保护的所有应用、修饰以及改变都属于本申请的范围。

同时,本申请使用了特定词语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。

本领域技术人员能够理解,本申请所披露的内容可以出现多种变型和改进。例如,以上所描述的不同系统组件都是通过硬件设备所实现的,但是也可能只通过软件的解决方案得以实现。例如:在现有的服务器上安装系统。此外,这里所披露的位置信息的提供可能是通过一个固件、固件/软件的组合、固件/硬件的组合或硬件/固件/软件的组合得以实现。

所有软件或其中的一部分有时可能会通过网络进行通信,如互联网或其他通信网络。此类通信能够将软件从一个计算机设备或处理器加载到另一个。例如:从放射治疗系统的一个管理服务器或主机计算机加载至一个计算机环境的硬件平台,或其他实现系统的计算机环境,或与提供椎骨识别和命名所需要的信息相关的类似功能的系统。因此,另一种能够传递软件元素的介质也可以被用作局部设备之间的物理连接,例如光波、电波、电磁波等,通过电缆、光缆或者空气实现传播。用来载波的物理介质如电缆、无线连接或光缆等类似设备,也可以被认为是承载软件的介质。在这里的用法除非限制了有形的“储存”介质,其他表示计算机或机器“可读介质”的术语都表示在处理器执行任何指令的过程中参与的介质。

本申请各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如java、scala、smalltalk、eiffel、jade、emerald、c++、c#、vb.net、python等,常规程序化编程语言如c语言、visualbasic、fortran2003、perl、cobol2002、php、abap,动态编程语言如python、ruby和groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,例如,局域网(lan)或广域网(wan),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(saas)。

此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。

同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本申请对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。

一些实施例中使用了描述属性、数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本申请一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。

针对本申请引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档、物件等,特将其全部内容并入本申请作为参考。与本申请内容不一致或产生冲突的申请历史文件除外,对本申请权利要求最广范围有限制的文件(当前或之后附加于本申请中的)也除外。需要说明的是,如果本申请附属材料中的描述、定义、和/或术语的使用与本申请所述内容有不一致或冲突的地方,以本申请的描述、定义和/或术语的使用为准。

最后,应当理解的是,本申请中所述实施例仅用以说明本申请实施例的原则。其他的变形也可能属于本申请的范围。因此,作为示例而非限制,本申请实施例的替代配置可视为与本申请的教导一致。相应地,本申请的实施例不限于本申请明确介绍和描述的实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1