发明内容
本发明所要解决的技术问题是当射线穿过由多个模体通过裁剪或组合等操作而形成的多模体组件时,能简便地确定各射线段的衰减系数。
为了解决上述技术问题,本发明提供了一种确定经多模体组件形成的射线段的衰减系数的方法,所述多模体组件至少包括二个模体,至少包括以下步骤:
获得所述射线穿过所述多模体组件形成的交点;
按照所述射线穿过所述多模体组件的方向,确定各交点与其后最邻近交点之间的射线段的衰减系数;其中,若所述交点为入射点,所述射线段的衰减系数与所述交点的属性相对应;若所述交点为出射点,所述射线段的衰减系数与所述交点的属性以及所述交点前的交点属性相对应。
可选的,所述确定经多模体组件形成的射线段的衰减系数的方法,采用如下方式确定各交点与其后最邻近交点之间的射线段的衰减系数:
当交点的属性代表所述交点为入射点且所述交点所在模体与其后最邻近交点所在模体为组合关系时,则所述射线段的衰减系数为所述交点所在模体的衰减系数;
当交点的属性代表所述交点为入射点且所述交点所在模体与其后最邻近交点所在模体为裁减关系时,则所述射线段的衰减系数为0或者为空气的衰减系数。
可选的,所述确定经多模体组件形成的射线段的衰减系数的方法,采用如下方式确定各交点与其后最邻近交点之间的射线段的衰减系数:
当交点的属性代表所述交点为出射点且所述交点所在模体与其后最邻近交点所在模体为组合关系时,则寻找所述交点前最邻近的入射点,所述入射点满足射线还未射出所述入射点所属模体;若找到所述入射点,则所述射线段的衰减系数为所述入射点所属模体的衰减系数;若找不到所述入射点,则所述射线段的衰减系数为0或者为空气的衰减系数;
当交点的属性代表所述交点为出射点且所述交点所在模体与其后最邻近交点所在模体为裁减关系时,则所述射线段的衰减系数为0或者为空气的衰减系数。
可选的,获得交点的步骤,包括获得所述交点所在模体的衰减系数信息、所述交点与射线源的距离以及所述交点为入射点或出射点的标志。
可选的,所述模体的衰减系数信息用所述模体的组件编号代表,或者所述模体的衰减系数信息为衰减系数值。
可选的,所述确定经多模体组件形成的射线段的衰减系数的方法,采用如下方式确定各交点与其后最邻近交点之间的射线段的衰减系数:
提供一堆栈,所述堆栈用于保存交点所在模体的衰减系数信息;
如果交点为入射点,将所述交点所在模体的衰减系数信息入栈;如果交点为出射点,且所述交点所在模体的衰减系数信息与栈顶的衰减系数信息相同,执行出栈;如果交点为出射点,且所述交点所在模体的衰减系数信息与栈顶的衰减系数信息不同时,执行出栈,并保存出栈的衰减系数信息,直到栈顶的衰减系数信息与所述交点所在模体的衰减系数信息相同,执行出栈,将之前保存的衰减系数信息入栈;
所述交点与其后最近交点之间射线段的衰减系数由此时栈顶的衰减系数信息确定。
可选的,所述堆栈的初始状态为空。
可选的,所述交点为入射点或出射点,由所述交点的标志给出。
可选的,当堆栈为空时,所述交点与其后最近交点之间射线段的衰减系数为0或者为空气的衰减系数。
可选的,获得交点的步骤,还包括获得所述交点所在模体与其后模体间为组合或裁减的关系标志。
可选的,当模体间为组合关系时,所述交点与其后最近交点之间射线段的衰减系数由此时栈顶的衰减系数信息确定。
可选的,当模体间为裁减关系时,所述交点与其后最近交点之间射线段的衰减系数为0或为空气的衰减系数。
可选的,所述射线段还包括从射线源到首个模体间的第一射线段和/或从最末模体到检测器间的第二射线段,所述各交点还包括射线源点和/或检测器点。
可选的,所述射线源点、检测器点所在模体的衰减系数为空气的衰减系数,所述射线源点为入射点,所述检测器点为出射点。
本发明还提供了一种计算多模体组件对射线衰减的方法,至少包括以下步骤:
确定经多模体组件形成的各射线段的衰减系数;
计算所述射线段的分衰减,所述分衰减为所述射线段的衰减系数与所述射线段长度的乘积;
对各分衰减求和,获得所述多模体组件对射线的衰减;所述多模体组件包括至少二个模体,采用上述的方法确定经多模体组件形成的各射线段的衰减系数。
本发明还提供了一种确定经多模体组件形成的射线段衰减系数的装置,包括:
交点获得单元,用于获得所述射线穿过所述多模体组件形成的交点;
衰减系数确定单元,用于处理所述交点获得单元中的交点,以确定各交点与其后最邻近交点之间的射线段的衰减系数。
可选的,所述的确定经多模体组件形成的射线段衰减系数的装置,还包括:
第一存储单元,用于存储所述衰减系数确定单元未处理完毕的衰减系数信息;
第二存储单元,用于在交点为出射点,且所述交点所在模体的衰减系数信息与最近存入第一存储单元的衰减系数信息不同时,存储从所述第一存储单元中删除的衰减系数信息。
与现有技术相比,本发明的技术方案具有以下优点:
1、本方法采用射线与模体组件交点结果的集合,将衰减视为各个模体中射线段穿透作用的总和。确定各交点与其后最邻近交点之间的射线段的衰减系数时,根据所述交点为入射点或出射点,分两种情况处理。交点为入射点时,射线段的衰减系数仅与所述交点的属性相对应。交点为出射点时,射线段的衰减系数还与所述交点之前的交点属性有关。所述交点属性中考虑了交点所在模体间为裁减或组合等复杂情况。
2、可选方案中,使用堆栈来管理和确定射线经过的模体材质(即衰减系数)。在射线进入当前模体时,将该模体的材质入栈,当射线离开当前模体时,执行出栈操作,以保证栈顶的元素会是当前射线段所在模体的材质,能更简单地确定衰减系数。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施的限制。
其次,本发明利用示意图进行详细描述,在详述本发明实施例时,为便于说明,所述示意图只是实例,其在此不应限制本发明保护的范围。
为了解决上述技术问题,本发明提供了一种确定经多模体组件形成的射线段的衰减系数的方法,采用射线与模体组件交点结果的集合,不需要预先知道各模体间的相互几何关系,就能确定经多模体组件形成的射线段的衰减系数。
图1为本发明确定经多模体组件形成的射线段的衰减系数的方法的一种具体实施方式的流程示意图,其至少包括以下步骤:
执行步骤S100,获得射线穿过多模体组件形成的交点。具体包括获得交点所在模体的衰减系数、交点与射线源的距离以及交点是否为入射点的标志。还可包括区分模体间为组合或裁减的关系标志。
执行步骤S101,判断按照射线穿过多模体组件的方向,各交点与其后最邻近交点之间的射线段的衰减系数已确定。若各衰减系数都已确定,则结束。若还有射线段的衰减系数未确定,则继续执行下面步骤。所述各交点,除了射线与每个模体的交点,还可包括射线源点和检测器点。射线源点及检测器点所在模体的衰减系数均为空气的衰减系数。所述射线源点为首个交点且为入射点,所述检测器点为最末交点且为出射点。
执行步骤S102,判断交点是否为入射点。交点是否为入射点,可由所述交点的标志给出。若交点为入射点,则执行步骤S103,判断交点所在模体与其后最邻近交点所在模体是否为组合关系。若是组合关系,则执行步骤S104,确定射线段的衰减系数为交点所在模体的衰减系数。若不是组合关系,而是裁减关系,则执行步骤S105,确定射线段的衰减系数为0或者为空气的衰减系数。
若交点不是入射点,而是出射点,则执行步骤S106,判断交点所在模体与其后最邻近交点所在模体是否为组合关系。若是组合关系,则执行步骤S107,寻找交点之前最邻近的入射点,所述射线还未射出入射点所在模体。执行步骤S108,判断是否找到所述入射点。若找不到该入射点,则执行步骤S109,确定射线段的衰减系数为0或者为空气的衰减系数。若找到该入射点,则执行步骤S110,确定射线段的衰减系数为入射点所在模体的衰减系数。若不是组合关系,而是裁减关系,则执行步骤S105,确定射线段的衰减系数为0或者为空气的衰减系数。
执行步骤S111,取下一交点。然后从步骤S101处开始循环,继续处理下一交点。
图2为本发明确定经多模体组件形成的射线段的衰减系数方法的另一种具体实施方式的流程示意图,其至少包括以下步骤:
执行步骤S200,获得射线穿过多模体组件形成的交点。具体包括获得交点所在模体的衰减系数、交点与射线源的距离以及交点是否为入射点的标志。还可包括区分模体间为组合或裁减的关系标志。
执行步骤S201,提供一堆栈,以保存交点所在模体的衰减系数。该堆栈的初始状态为空。
执行步骤S202,判断由近至远是否每个交点(除最末交点)都已处理。若都已处理,则射线与多模体相交形成的每段射线段的衰减系数都已确定。若还有交点未经处理,则继续执行下面步骤,对未经处理的交点进行处理。所述交点,除了射线与每个模体的交点,还可包括射线源点和检测器点。射线源点及检测器点所在模体的衰减系数均为空气的衰减系数。所述射线源点为首个交点且为入射点,所述检测器点为最末交点且为出射点。
执行步骤S203,判断交点是否为入射点。交点是否为入射点,可由所述交点的标志给出。若交点为入射点,则执行步骤S204,将所述交点所在模体的衰减系数入栈。
若交点不是入射点,而是出射点,则执行步骤S205,判断所述交点所在模体的衰减系数与栈顶的衰减是否相同。若所述交点所在模体的衰减系数与栈顶的衰减系数相同,则执行步骤S206,将栈顶的衰减系数出栈。
若交点所在模体的衰减系数与栈顶的衰减系数不同,则执行步骤S207,将栈顶的衰减系数出栈并保存。执行步骤S208,判断交点所在模体的衰减系数与栈顶的衰减系数是否相同。若所述交点所在模体的衰减系数与栈顶的衰减系数不同,则从步骤S207开始循环,继续将栈顶的衰减系数出栈并保存,直至所述交点所在模体的衰减系数与栈顶的衰减系数相同。执行步骤S209,将栈顶的衰减系数出栈,将保存的各衰减系数依次入栈。
执行步骤S210,所述交点与其后最近交点间射线段的衰减系数为栈顶的衰减系数。
执行步骤S211,取下一交点。然后从步骤S202处开始循环,继续处理下一交点。
使用堆栈来管理和确定射线经过的模体材质(即衰减系数)。在射线进入当前模体时,将该材质入栈,当射线离开该模体时,执行出栈操作,以保证栈顶的元素会是当前射线段所在模体的材质,能更简单地确定衰减系数。
需要说明的是,本实施方式中的射线可以是X射线,也可以是其他波长范围的电磁辐射。
需要说明的是,本实施方式中使用了堆栈,但不应理解为是对本方法的限制。
需要说明的是,交点所在模体的衰减系数对应于模体的组件编号。因此在其他实施例中可以不保存交点所在模体的衰减系数,而保存模体的组件编号,通过组件编号,对应确定衰减系数。
需要说明的是,当堆栈为空时,衰减系数可以有2种处理方式。一种是将该点与其后最近交点间射线段的衰减系数视为0,即没有衰减。另一种是将该点与其后最近交点间射线段的衰减系数视为空气的衰减系数,即考虑空气对射线的衰减作用。
需要说明的是,交点还可包括交点所在模体与其它模体间为组合或裁减的关系标志。当该关系标志表示为组合关系时,交点与其后最近交点间射线段的衰减系数为栈顶的衰减系数,即模体间的重叠部分表示射线由一个模体射入其它模体中。当该关系标志表示为裁减关系时,该点与其后最近交点间射线段的衰减系数为空气的衰减系数,即模体间的重叠部分表示射线由一个模体射入空气中。
需要说明的是,本领域技术人员可以理解,上述具体实施方式的确定经多模体组件形成的射线段的衰减系数的方法的全部或部分可以通过程序来指令相关的硬件完成,所述的程序可被固定于计算机可读存储介质中,所述存储介质包括ROM、RAM、磁碟、光盘等。
下面结合附图和具体实施例对本发明的技术方案做进一步说明。
图3为本发明第一、第二实施例的模体与射线的结构示意图,图4至图6为本发明第一实施例不同阶段堆栈的示意图。下面结合图3至图6,具体说明第一实施例。
如图3所示,射线先后穿透2个模体A和B,与模体A形成两个交点P1、P2,P1为入射点,P2为出射点;与模体B形成两个交点P3、P4,P3为入射点,P4为出射点。其中,P1、P2的模体组件编号为模体A,对应地P1、P2所在模体的衰减系数为模体A的衰减系数,记为αA。P3、P4的模体组件编号为模体B,P3、P4所在模体的衰减系数为模体B的衰减系数αB。模体A和B相离,4个交点按照与射线源的远近距离排序依次为:P1、P2、P3、P4,依次形成3段射线段|P1P2|、|P2P3|、|P3P4|。本实施例利用一个空的堆栈来确定3段射线段的衰减系数αP1P2、αP2P3及αP3P4。
参考图3和图4,首先处理交点P1。交点P1为入射点,将交点P1所在模体A的衰减系数αA入栈。确定交点P1与其后最近交点P2间射线段|P1P2|的衰减系数αP1P2为栈顶的衰减系数αA。此时堆栈中仅有一个元素αA。
参考图3和图5,继续处理交点P2。交点P2为一出射点,交点P2所在模体A的衰减系数αA与此时栈顶的衰减系数αA相同。将栈顶的衰减系数αA出栈。此时堆栈为空。确定交点P2与其后最近交点P3间射线段|P2P3|的衰减系数αP2P3为0,即无衰减。
参考图3和图6,继续处理交点P3。交点P3为一入射点,将交点P3所在模体B的衰减系数组件αB入栈。确定交点P3与其后最近交点P4间射线段|P3P4|的衰减系数αP3P4为栈顶的衰减系数αB。此时堆栈中仅有一个元素αB。
至此,得出第一实施例中各衰减系数为:射线段|P1P2|的衰减系数为模体A的衰减系数,射线段|P2P3|的衰减系数为0,射线段|P3P4|的衰减系数为模体B的衰减系数。
第二实施例的模体与射线的结构示意图与第一实施例一样,区别在于:第二实施例考虑了空气对射线的衰减,所以第二实施例中除了射线与每个模体的交点之外,还包括射线源点和检测器点。射线源点和检测器点所在组件的衰减系数均为空气的衰减系数,射线源点为入射点,检测起点为出射点。
继续参考图3,即:射线先经过射线源点P0,射线源点P0为入射点,射线源点P0所在模体的衰减系数为空气的衰减系数α空气。然后射线穿透2个模体A和B,与模体A形成两个交点P1、P2,P1为入射点,P2为出射点;与模体B形成两个交点P3、P4,P3为入射点,P4为出射点。其中,P1、P2所在模体的衰减系数为模体A的衰减系数αA,P3、P4所在模体的衰减系数为模体B的衰减系数αB。最后射线到达检测器点P5,检测器点P5为出射点,检测器点P5所在模体的衰减系数为空气的衰减系数α空气。6个交点按照与射线源的远近距离排序依次为:P0、P1、P2、P3、P4、P5,依次形成5段射线段|P0P1|、|P1P2|、|P2P3|、|P3P4|、|P4P5|,需要确定这5段射线段各自的衰减系数。
图7至图11为本发明第二实施例不同阶段堆栈的示意图,下面结合图3、图7至图11,具体说明第二实施例。
参考图3和图7,首先处理交点P0。交点P0为一入射点,将交点P0所在模体的衰减系数α空气入栈。确定交点P0与其后最近交点P1间射线段|P0P1|的衰减系数αP0P1为栈顶的衰减系数α空气。此时堆栈中仅有一个元素α空气。
参考图3和图8,继续处理交点P1。交点P1为一入射点,将交点P1所在模体的衰减系数αA入栈。确定交点P1与其后最近交点P2间射线段|P1P2|的衰减系数αP1P2为栈顶的衰减系数αA。此时堆栈中有两个元素:α空气、αA。
参考图3和图9,继续处理交点P2。交点P2为一出射点,交点P2所在模体的衰减系数αA与此时栈顶的衰减系数αA相同。将栈顶的衰减系数αA出栈。确定交点P2与其后最近交点P3间射线段|P2P3|的衰减系数αP2P3为栈顶的衰减系数α空气。此时堆栈中仅剩下一个元素α空气。
参考图3和图10,继续处理交点P3。交点P3为一入射点,将交点P3所在模体的衰减系数αB入栈。确定交点P3与其后最近交点P4间射线段|P3P4|的衰减系数αP3P4为栈顶的衰减系数αB。此时堆栈中有两个元素:α空气、αB。
参考图3和图11,继续处理交点P4。交点P4为一出射点,交点P4所在模体的衰减系数αB与此时栈顶的衰减系数αB相同。将栈顶的衰减系数αB出栈。确定交点P4与其后最近交点P5间射线段|P4P5|的衰减系数αP4P5为栈顶的衰减系数α空气。此时堆栈中还有一个元素α空气。
至此,得出第二实施例中各衰减系数为:射线段|P0P1|的衰减系数为空气的衰减系数α空气,射线段|P1P2|的衰减系数为模体A的衰减系数αA,射线段|P2P3|的衰减系数为空气的衰减系数α空气,射线段|P3P4|的衰减系数为模体B的衰减系数αB,射线段|P4P5|的衰减系数为空气的衰减系数α空气。
图12为本发明第三、第四实施例的模体与射线的结构示意图,图13至图15为本发明第三、第四实施例不同阶段堆栈的示意图。下面结合图12至图15,具体说明第三、第四实施例。
如图12所示,射线先后穿透2个模体A和B,与模体A形成两个交点P1、P2,P1为入射点,P2为出射点;与模体B形成两个交点P3、P4,P3为入射点,P4为出射点。其中,P1、P2所在模体的衰减系数为模体A的衰减系数αA,P3、P4所在模体的衰减系数为模体B的衰减系数αB。模体A和B有部分面积重叠(即组合关系),4个交点按照与射线源的远近距离排序依次为:P1、P3、P2、P4,依次形成3段射线段|P1P3|、|P3P2|、|P2P4|。
参考图12和图13,首先处理交点P1。交点P1为一入射点,将交点P1所在模体的衰减系数αA入栈。确定交点P1与其后最近交点P3间射线段|P1P3|的衰减系数αP1P3为栈顶的衰减系数αA。此时堆栈中仅有一个元素αA。
参考图12和图14,继续处理交点P3。交点P3为一入射点,将交点P3所在模体的衰减系数αB入栈。确定交点P3与其后最近交点P2间射线段|P3P2|的衰减系数αP3P2为栈顶的衰减系数αB。此时堆栈中有两个元素:αA、αB。
参考图12和图15,继续处理交点P2。交点P2为一出射点,交点P2所在模体的衰减系数αA与此时栈顶的衰减系数αB不同。将栈顶的衰减系数αB出栈并保存,新栈顶的衰减系数αA。现在交点P2所在模体的衰减系数αA与栈顶的衰减系数αA相同。将栈顶的衰减系数αA出栈,并将之前保存的衰减系数αB入栈。确定交点P2与其后最近交点P4间射线段|P2P4|的衰减系数αP2P4为栈顶的衰减系数αB。此时堆栈中仅剩下一个αB。
至此,得出第三实施例中各衰减系数为:射线段|P1P3|的衰减系数为模体A的衰减系数αA,射线段|P3P2|的衰减系数为模体B的衰减系数αB,射线段|P2P4|的衰减系数为模体B的衰减系数αB。
第四实施例的模体与射线的结构示意图与第三实施例一样,区别在于:第三实施例中两个模体A和B为组合关系,而第四实施例中两个模体A和B为裁减关系,即从模体A中裁减去模体A与模体B重叠的部分。通过每个交点增加一个关系标志,就可区分模体间为组合还是裁减关系。比如:当关系标志=0时,表示模体间为组合关系,则该点与其后最近交点间射线段的衰减系数为栈顶的衰减系数。当关系标志=1时,表示模体间为裁减关系,则该点与其后最近交点间射线段的衰减系数为空气的衰减系数。
具体到第四实施例中,P1的关系标志为0,表示组合关系,可确定|P1P3|的衰减系数αP1P3为此时栈顶的衰减系数,即模体A的衰减系数αA。P3、P2的关系标志为1,表示裁减关系,所以|P3P2|、|P2P4|的衰减系数αP3P2、αP2P3均为空气的衰减系数。由此,得出第四实施例中各衰减系数为:射线段|P1P3|的衰减系数为模体A的衰减系数αA,射线段|P3P2|的衰减系数为空气的衰减系数α空气,射线段|P2P4|的衰减系数为空气的衰减系数α空气。
图16为本发明第五实施例的模体与射线的结构示意图,图17至图21为本发明第五实施例不同阶段堆栈的示意图。下面结合图16至图21,具体说明第五实施例。
如图16所示,射线先后穿透3个模体A、B和C,与模体A形成两个交点P1、P2,P1为入射点,P2为出射点;与模体B形成两个交点P3、P4,P3为入射点,P4为出射点;与模体C形成两个交点P5、P6,P5为入射点,P6为出射点。其中,P1、P2所在模体的衰减系数为模体A的衰减系数αA,P3、P4所在模体的衰减系数为模体B的衰减系数αB,P5、P6所在模体的衰减系数为模体B的衰减系数αC。三个模体间有复杂组合部分,6个交点按照与射线源的远近距离排序依次为:P1、P3、P5、P2、P6、P4,依次形成5段射线段|P1P3|、|P3P5|、|P5P2|、|P2P6|、|P6P4|,需要确定这5段射线段各自的衰减系数。
参考图16和图17,首先处理交点P1。交点P1为一入射点,将交点P1所在模体的衰减系数αA入栈。确定交点P1与其后最近交点P3间射线段|P1P3|的衰减系数αP1P3为栈顶的衰减系数αA。此时堆栈中仅有一个元素αA。
参考图16和图18,继续处理交点P3。交点P3为一入射点,将交点P3所在模体的衰减系数αB入栈。确定交点P3与其后最近交点P5间射线段|P3P5|的衰减系数αP3P5为栈顶的衰减系数αB。此时堆栈中有两个元素:αA、αB。
参考图16和图19,继续处理交点P5。交点P5为一入射点,将交点P5所在模体的衰减系数αC入栈。确定交点P5与其后最近交点P2间射线段|P5P2|的衰减系数αP5P2为栈顶的衰减系数αC。此时堆栈中有三个元素:αA、αB、αC。
参考图16和图20,继续处理交点P2。交点P2为一出射点,交点P2所在模体的衰减系数αA与此时栈顶的衰减系数αC不同。将栈顶的衰减系数αC出栈并保存,新栈顶的衰减系数αB。此时交点P2所在模体的衰减系数αA仍与栈顶的衰减系数αB不同。继续将栈顶的衰减系数αB出栈并保存,新栈顶的衰减系数αA。此时交点P2所在模体的衰减系数αA与栈顶的衰减系数αA相同。将栈顶的衰减系数αA出栈,并将保存的衰减系数αB、衰减系数αC入栈。确定交点P2与其后最近交点P6间射线段|P2P6|的衰减系数αP2P6为栈顶的衰减系数αC。此时堆栈中有两个元素:αB、αC。
参考图16和图21,继续处理交点P6。交点P6为一出射点,交点P6所在模体的衰减系数αC与此时栈顶的衰减系数αC相同。将栈顶的衰减系数αC出栈。确定交点P6与其后最近交点P4间射线段|P6P4|的衰减系数αP6P4为栈顶的衰减系数αB。此时堆栈中还有一个元素αB。
至此,得出第五实施例中各衰减系数为:射线段|P1P3|的衰减系数为模体A的衰减系数αA,射线段|P3P5|的衰减系数为模体B的衰减系数αB,射线段|P5P2|的衰减系数为模体C的衰减系数αC,射线段|P2P6|的衰减系数为模体C的衰减系数αC,射线段|P6P4|的衰减系数为模体B的衰减系数αB。
下面仍以第五实施例为例,说明本发明可不使用堆栈,以确定经多模体组件形成的射线段的衰减系数。
参考图16,首先处理交点P1。交点P1为一入射点,且交点P1所在模体A与交点P1后最邻近交点P3所在模体B为组合关系,可确定交点P1与其后最近交点P3间射线段|P1P3|的衰减系数αP1P3为交点P1所在模体A衰减系数αA。
参考图16,继续处理交点P3。交点P3为一入射点,且交点P3所在模体B与交点P3后最邻近交点P5所在模体C为组合关系,可确定交点P3与其后最近交点P5间射线段|P3P5|的衰减系数αP3P5为交点P3所在模体B的衰减系数αB。
参考图16,继续处理交点P5。交点P5为一入射点,且交点P5所在模体C与交点P5后最邻近交点P2所在模体A为组合关系,可确定交点P5与其后最近交点P2间射线段|P5P2|的衰减系数αP5P2为交点P5所在模体C的衰减系数αC。
参考图16,继续处理交点P2。交点P2为一出射点,且交点P2所在模体A与交点P2后最邻近交点P6所在模体C为组合关系,此时寻找交点P2之前最邻近的入射点。找到入射点P5,射线还未出射入射点P5所在的模体C。可确定交点P2与其后最近交点P6间射线段|P2P6|的衰减系数αP2P6为入射点P5所在模体C的衰减系数αC。
参考图16,继续处理交点P6。交点P6为一出射点,且交点P6所在模体C与交点P6后最邻近交点P4所在模体B为组合关系,寻找交点P6之前最邻近的入射点。首先找到入射点P5,但此时射线已经出射入射点P5所在的模体C。继续往前寻找到入射点P3,射线还未出射入射点P3所在的模体B。可确定交点P6与其后最近交点P4间射线段|P6P4|的衰减系数αP6P4为入射点P3所在模体B的衰减系数αB。
至此,得出第五实施例中各衰减系数为:射线段|P1P3|的衰减系数为模体A的衰减系数αA,射线段|P3P5|的衰减系数为模体B的衰减系数αB,射线段|P5P2|的衰减系数为模体C的衰减系数αC,射线段|P2P6|的衰减系数为模体C的衰减系数αC,射线段|P6P4|的衰减系数为模体B的衰减系数αB。
本发明还提供了一种计算多模体组件对射线衰减的方法。图22为本发明的计算多模体组件对射线衰减的方法的一种具体实施方式的流程示意图,至少包括以下步骤:
执行步骤S221,获得射线穿过多模体组件形成的交点;
执行步骤S222,按照射线穿过多模体组件的方向,确定各交点与其后最邻近交点之间的射线段的衰减系数;其中,确定经多模体组件形成的各射线段的衰减系数的方法已在上文中阐述,此处不再赘述。
执行步骤S223,计算各射线段的分衰减;其中,分衰减为射线段的衰减系数与射线段长度的乘积;
执行步骤S224,对各分衰减求和,获得多模体组件对射线的衰减。
本发明还提供了一种确定经多模体组件形成的射线段衰减系数的装置,包括:交点获得单元,用于获得所述射线穿过所述多模体组件形成的交点;衰减系数确定单元,用于处理所述交点获得单元中的交点,以确定各交点与其后最邻近交点之间的射线段的衰减系数;第一存储单元,用于存储所述衰减系数确定单元未处理完毕的衰减系数信息;第二存储单元,用于在交点为出射点,且所述交点所在模体的衰减系数信息与最近存入第一存储单元的衰减系数信息不同时,存储从所述第一存储单元中删除的衰减系数信息。所述装置的一种具体实施方式如图23所示。其中,各单元的具体实现方法已在上文中阐述,此处不再赘述。
本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。