一种操作数据一致性的检验方法、设备和计算机可读介质与流程

文档序号:11231095阅读:560来源:国知局
一种操作数据一致性的检验方法、设备和计算机可读介质与流程

本申请涉及治疗系统领域,尤其是操作数据一致性的检验领域。



背景技术:

肿瘤放射治疗是利用放射线治疗肿瘤的一种局部治疗方法。放射线包括放射性同位素产生的α、β、γ射线和各类x射线治疗机或加速器产生的x射线、电子线、质子束及其他粒子束等。大约70%的癌症患者在治疗癌症的过程中需要用放射治疗,约有40%的癌症可以用放疗根治。放射治疗在肿瘤治疗中的作用和地位日益突出,已成为治疗恶性肿瘤的主要手段之一。由于放疗射线对人体正常器官同样有较强的杀伤效果,因此在放疗过程中射线剂量的控制至关重要。对于放疗计划制定,通常是在实施放疗前,通过对不同患者实施计划ct(computedtomography),产生操作数据,存入数据库中,在实施放疗时,从数据库中提取对应不同患者的操作数据,对患者投放相应剂量的射线。

当前现有放疗系统中,有防止人为修改数据库中治疗相关数据的保护机制,这类方法只能保证数据库中的数据安全,但在实际进行治疗时,实际输出到治疗机并作用到病人的操作数据要首先经历一个从数据库到计算机内存的传输过程,即使能够保证数据库中数据安全不被人为修改,但是没有现有方法能够保证计算机内存在内部运算等环节不对数据的数值或精度进行非人为的修改。这就可能导致实际输出的操作数据因计算机内存的处理与数据库中理论治疗数值不一致的情况,出现一定的治疗风险。



技术实现要素:

针对以上问题,本发明提出了一种操作数据一致性的检验方法,此方法将解决上述由于实际操作数据和理论操作数据不一致产生的治疗风险。

一方面,本发明提供了一种操作数据一致性的检验方法,包括:获取第一操作数据;根据所述第一操作数据,按照预设数据结构生成第一字符串;根据所述第一字符串,按照加密算法生成第一校验码;对所述第一操作数据进行内存操作,生成第二操作数据;根据所述第二操作数据,按照所述预设数据结构生成第二字符串;根据所述第二字符串,按照所述加密算法生成第二校验码;比较第一校验码和第二校验码,如果所述第一校验码等于所述第二校验码,则依据所述第二操作数据向患者投放射线。

优选地,如果所述第一校验码与第二校验码不相同,则不依据第二操作数据向患者投放射线。

优选地,按照预设的精度生成所述第一字符串和第二字符串。

优选地,按照预设的单位生成所述第一字符串和第二字符串。

优选地,第一字符串和第二字符串的精度相同。

优选地,所述加密算法为md5算法。

优选地,所述第一操作数据和所述第二操作数据包括射线投放剂量数据。

优选地,所述第一操作数据和所述第二操作数据包括射线投放角度数据。

另一方面,本发明提供了一种数据一致性的检验设备,包括一个治疗管理设备,用来获取第一操作数据,按照预设数据结构生成第一字符串,并根据所述第一字符串,按照加密算法生成第一校验码;一个治疗执行设备,用来获取第二操作数据,按照所述预设数据结构生成第二字符串,并根据所述第二字符串,按照所述加密算法生成第二校验码;所述治疗执行设备进一步用来比较第一校验码和第二校验码,如果所述第一校验码等于所述第二校验码,则所述治疗执行设备根据所述第二操作数据向患者投放射线。

另一方面,本发明提供了一个存有计算机程序的永久的计算机可读介质,该计算机程序包括指令,该指令被配置为,获取第一操作数据;根据所述第一操作数据,按照预设数据结构生成第一字符串;根据所述第一字符串,按照加密算法生成第一校验码;对所述第一操作数据进行内存操作,生成第二操作数据;根据所述第二操作数据,按照所述预设数据结构生成第二字符串;根据所述第二字符串,按照所述加密算法生成第二校验码;比较第一校验码和第二校验码,如果所述第一校验码等于所述第二校验码,则将所述第二操作数据向患者投放射线。

附图说明

为了更清楚地说明本公开实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。

图1是根据本申请的一些实施例所示的使用操作数据一致性检验方法的治疗系统示意图;

图2是根据本申请的一些实施例所示的使用操作数据一致性检验方法的治疗管理模块示意图;

图3是根据本申请的一些实施例所示的使用操作数据一致性检验方法的治疗执行模块示意图;

图4是根据本申请的一些实施例所示的操作数据一致性检验方法的流程图;

图5是本公开操作数据一致性检验方法的流程图。

具体实施方式

下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。

在本公开使用的术语是仅仅处于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指包含一个或一个以上相关联的列出项目的任何或所有可能组合。

图1是根据本申请的一些实施例所示的使用操作数据一致性检验方法的治疗系统示意图。治疗系统100可以包括治疗管理模块110,存储模块120和治疗执行模块130。

治疗管理模块110可以根据治疗计划生成操作数据。治疗管理模块110可以安装在治疗管理设备上,例如ct成像设备,mri成像设备,x光成像设备等。在一些实施例中,所述治疗计划为一种放疗计划,用来表示针对特定患者的射线剂量投放计划。放疗计划可以由计划ct(computedtomography)产生,具体为,在对患者实施放疗前,先对患者进行ct成像,确认患者肿瘤的区域和/或大小,然后根据肿瘤的区域和/或大小,确认放疗计划,包括但不限于肿瘤区域和/或大小投放的射线的数目、各射线方向、剂量值和/或剂量分布、多叶光栅叶片位置、机架角度、机架旋转方向、准直器角度、准直器旋转方向、床值信息等。所述操作数据为一种治疗设备可以使用并执行治疗计划的数据。治疗管理模块110可以将生成的操作数据存储至存储模块120中的数据库。在一些实施例中,操作数据可以包括射线投放的数目、各射线角度数据、剂量值和/或剂量分布数据、多叶光栅叶片位置数据、机架角度数据、机架旋转方向数据、准直器角度数据、准直器旋转方向数据、床值数据等。在一些实施例中,治疗管理模块110可以根据操作数据生成校验码,用来验证操作数据在生成之后到被用于治疗之前是否经过修改。

治疗执行模块130可以从存储模块120中提取操作数据,并实施操作数据,从而实现针对特定患者的治疗计划。治疗执行模块130可以安装在治疗执行设备上,例如放疗设备。在一些实施例中,治疗执行模块130可以根据校验码对操作数据进行验证。

图2是根据本申请的一些实施例所示的使用操作数据一致性检验方法的治疗管理模块示意图。治疗管理模块110可以包括操作数据生成单元210,校验设置单元220,加密单元230和存取单元240。

操作数据生成单元210可以根据治疗计划生成操作数据。在一些实施例中,所述治疗计划为一种放疗计划,放疗计划可以由计划ct产生。操作数据包括但不限于射线投放的数目、各射线角度数据、剂量值和/或剂量分布数据、多叶光栅叶片位置数据、机架角度数据、机架旋转方向数据、准直器角度数据、准直器旋转方向数据、床值数据等。校验设置单元220用来确认操作数据中需要进行数据一致性校验的字段,并设置该字段值的单位和精度,按照预设数据结构生成一组字符串。所述预设数据结构包括但不限于操作数据中需要进行一致性校验的字段名称、数值、单位、精度等。例如,如果需要对操作数据中的射线投放剂量进行校验,校验设置单元220在操作数据中提取射线投放剂量的数值,将射线投放剂量的单位设置为戈瑞(gray,缩写gy,其中1gy=100cgy),同时对射线投放剂量的数值取到小数点后两位,按照预设数据结构{“name”:“dosage”,“value”:a,“unit”:“gy”,“decimal”:2}生成字符串,其中“name”代表需要校验的字段的名称,“name”:“dosage代表需要校验的字段为辐射剂量。“value”代表需要校验字段的数值,“value”:a代表需要校验字段的数值为数字a。“unit”代表需要校验字段数值的单位,“unit”:“gy”代表需要校验字段数值的单位为gy。“decimal”代表需要校验字段的精度,“decimal”:2代表需要校验字段的精度为数字a的小数点后两位,即在生成字符串时只保留数字a的整数部分和小数点后两位。如果操作数据中需要校验的字段在传输和计算的过程中发生了变化,其对应的字符串也会发生改变。

加密单元230可以接收校验设置单元220生成的字符串,利用加密算法,将其进行加密,得到对应该字符串的校验码checksumdb。对于不同的字符串,所生成的校验码checksumdb是不同的。因此,如果操作数据在数据传输过程中发生了变化,其对应的字符串也会发生变化,不同的字符串对应的校验码checksumdb不同,因此可以通过验证校验码checksumdb验证操作数据在数据传输过程中是否发生了变化。在一些实施例中,所述的加密算法可以是md5算法(message-digestalgorithm5)或crc(cyclicredundancycheck)算法。

存储单元240可以将操作数据和操作数据对应的校验码checksumdb一起存入存储模块120的数据库中。

图3是根据本申请的一些实施例所示的使用操作数据一致性检验方法的治疗执行模块示意图。治疗执行模块130可以包括操作数据获取单元310,操作数据处理单元320,校验单元330和治疗实施单元340。

操作数据获取单元310可以从存储模块120获取操作数据和该操作数据对应的校验码checksumdb。由于操作数据在最终被实施之前,会在治疗管理模块110、存储模块120和治疗执行模块130传递的过程中发生多次内存操作的过程,例如运算、存取、传递等操作,这些操作会导致操作数据从最初生成到最终用于治疗时发生改变,使患者在放疗时没有接收到足够的放射剂量或者接收到过多的放射剂量。例如,操作数据生成单元210生成第一操作数据,其中操作数据关于放射剂量的数据可能是500.01cgy,该数据经过一系列逻辑运算、存取之后,第一操作数据可以变为第二操作数据,最终治疗实施单元340获取的第二操作数据中的放射剂量数据可能是500.02cgy,与最初在操作数据生成单元210生成的第一操作数据不同。因此,在操作数据获取单元310将获取的操作数据发送至治疗实施单元340最终实施之前,会先对操作数据进行一致性的检验。

操作数据处理单元320可以在从操作数据获取单元310获取的操作数据发送至治疗实施单元340之前,根据在校验设置单元220确认的字段、单位、数值和精度,按照校验设置单元220使用的数据结构生成一组字符串。进一步地,操作数据处理单元320可以根据加密单元230使用的加密算法,根据操作数据处理单元320生成的字符串生成校验码checksumlocal。

校验单元330可以对该操作数据的校验码checksumdb和校验码checksumlocal进行比较,如果checksumdb和checksumlocal相等,则代表该操作数据在传输过程中没有发生过变化,校验单元330会将该操作数据发送至治疗实施单元340实施放疗,完成放射治疗。如果checksumdb和checksumlocal不相等,则代表该操作数据在传输过程中发生过变化,则校验单元330将不会把该操作数据发送至治疗实施单元340。校验单元330可以在实施放疗前对校验码checksumdb和校验码checksumlocal进行一致性比较。

治疗实施单元340可以是一个治疗机,用于接收操作数据并实施操作数据。在一些实施例中,治疗机可以是放疗设备。

图4是根据本申请的一些实施例所示的操作数据一致性检验方法的流程图。该流程图所描述的流程可以通过一系列计算机指令完成,所述一系列计算机指令可以存储在一个存有计算机程序的永久的计算机可读介质中。

在步骤410,生成第一操作数据。第一操作数据可以由操作数据生成单元210根据放疗计划生成。放疗计划可以由计划ct产生。操作数据包括但不限于射线投放的数目、各射线角度数据、剂量值和/或剂量分布数据、多叶光栅叶片位置数据、机架角度数据、机架旋转方向数据、准直器角度数据、准直器旋转方向数据、床值数据等。

在步骤420,将第一操作数据根据预设精度和单位,按照预设的数据结构,生成第一字符串。校验设置单元220可以确定第一操作数据中需要进行数据一致性校验的字段,设置该字段值的单位和精度,按照预设数据结构生成一组字符串。

在步骤430,按照预设的加密算法,将第一字符串加密,生成第一校验码checksumdb。加密单元230可以接收校验设置单元220生成的第一字符串,利用预设的加密算法,将其进行加密,得到对应第一字符串的第一校验码checksumdb。在一些实施例中,所述预设的加密算法可以是md5算法(message-digestalgorithm5)或crc(cyclicredundancycheck)算法。

在步骤440,将第一操作数据和第一校验码checksumdb存入数据库。存储单元240可以将第一操作数据和第一操作数据对应的第一校验码checksumdb一起存入存储模块120的数据库中。

图5是本公开操作数据一致性检验方法的流程图。该流程图所描述的流程可以通过一系列计算机指令完成,所述一系列计算机指令可以存储在一个存有计算机程序的永久的计算机可读介质中。

在步骤510,从数据库中获取第一操作数据和第一操作数据对应的第一校验码checksumdb。操作数据获取单元310可以从存储模块120获取第一操作数据和第一操作数据对应的第一校验码checksumdb。

在步骤520,对第一操作数据进行内存操作,生成第二操作数据。由于操作数据在最终被实施之前,会在治疗管理模块110、存储模块120和治疗执行模块130传递的过程中发生多次内存操作的过程,例如逻辑运算、存取、传递等操作,这些操作会导致操作数据从最初生成到最终用于治疗时发生改变,使第一操作数据变为第二操作数据,从而使患者在放疗时没有接收到第一操作数据所计划的放射剂量。在一些实施例中,如果第一操作数据经过一系列内存操作后,发生了变化,则第一操作数据与第二操作数据不相同。如果第一操作数据经过一系列内存操作后,没有发生变化,则第一操作数据等于第二操作数据。

在步骤530,根据与步骤420相同的精度和单位,将第二操作数据按照与步骤420相同数据结构,生成第二字符串。操作数据处理单元320可以对从步骤520获取的第二操作数据,根据在步骤420确认的字段、单位和精度,按照校步骤420使用的数据结构生成第二字符串。

在步骤540,按照预设的加密算法,根据第二字符串,生成第二校验码checksumlocal。操作数据处理单元320可以根据步骤430使用的加密算法,生成第二校验码checksumlocal。

在步骤550,比较第一校验码checksumdb和第二校验码checksumlocal。校验单元330可以对第一操作数据的第一校验码checksumdb和第二操作数据的第二校验码checksumlocal进行比较,如果第一校验码checksumdb和第二校验码checksumlocal相等,则代表第一操作数据等于第二操作数据,第一操作数据在传输过程中没有发生过变化,在步骤560,第二操作数据(或第一操作数据)可以被发送至治疗实施单元340实施放疗。治疗实施单元340根据第二操作数据(或第一操作数据)向患者投放射线。如果第一校验码checksumdb和第二校验码checksumlocal不相等,则代表第一操作数据与第二操作数据不相同,第一操作数据在传输过程中发生过变化,则在步骤570,第二操作数据(或第一操作数据)不会被发送至治疗实施单元340。治疗实施单元340不会根据第二操作数据向患者投放射线。

以上所述仅为本发明的优先实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

此外,本领域技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本申请的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。

计算机可读信号介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等等、或合适的组合形式。计算机可读信号介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机可读信号介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、rf、或类似介质、或任何上述介质的组合。

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