峰值曲线渲染方法及装置与流程

文档序号:17149791发布日期:2019-03-19 23:19阅读:335来源:国知局
峰值曲线渲染方法及装置与流程

本申请涉及数据处理技术领域,尤其涉及一种峰值曲线渲染方法及装置。



背景技术:

目前,灌注成像技术已广泛应用于医学影像诊断领域。灌注成像技术的实现过程是:为患者注射造影剂后,利用成像设备(如ct设备、磁共振成像(mri)设备、正电子发身断层成像设备等)对选定的感兴趣层面采集多个时间点的影像图像,医生根据实际需求,在影像图像上绘制直线后,采用双线性插值算法计算直线上各点的ct值,并利用直线上各点的ct值进行峰值曲线渲染,最后根据每幅影像图像的峰值曲线进行排比计算,为病变组织的临床研究提供参考。然而,双线性插值算法的复杂度较高,如果对于用户的每次绘制操作都直接采用双线性插值算法计算,会造成不必要的性能损耗,降低峰值曲线的渲染速度。



技术实现要素:

有鉴于此,本申请提供一种峰值曲线渲染方法及装置,以解决峰值曲线渲染速度慢的问题。

根据本申请实施例的第一方面,提供一种峰值曲线渲染方法,所述方法包括:

在当前显示的影像图像中检测外部输入的且满足预设条件的直线,确定检测到的所述直线的直线类型,并确定所述直线类型对应的预设算法;

利用所述预设算法确定所述直线的ct值,并根据所述直线的ct值进行峰值曲线渲染。

根据本申请实施例的第二方面,提供一种峰值曲线渲染装置,所述装置包括:

算法确定模块,用于在当前显示的影像图像中检测外部输入的且满足预设条件的直线,确定检测到的所述直线的直线类型,并确定所述直线类型对应的预设算法;

渲染模块,用于利用所述预设算法确定所述直线的ct值,并根据所述直线的ct值进行峰值曲线渲染。

根据本申请实施例的第三方面,提供一种成像设备,所述设备包括可读存储介质和处理器;

其中,所述可读存储介质,用于存储机器可执行指令;

所述处理器,用于读取所述可读存储介质上的所述机器可执行指令,并执行所述指令以实现上述第一方面的步骤。

应用本申请实施例,通过在当前显示的影像图像上检测外部输入的且满足预设条件的直线,并确定检测到的所述直线的直线类型,并确定所述直线类型对应的预设算法,然后利用所述预设算法确定所述直线的ct值,并根据所述直线的ct值进行峰值曲线渲染。

基于上述描述可知,通过确定直线的直线类型,以利用直线类型对应的预设算法计算直线的ct值,而不是对所有直线均直接采用复杂度比较高的双线性插值算法计算,因此可以降低不必要的性能损耗,提升峰值曲线的渲染速度。另外,根据不同的直线类型选择适合于该直线类型的预设算法计算,还可提高计算准确度,改善峰值曲线的渲染效果。

附图说明

图1a为本申请根据一示例性实施例示出的一种峰值曲线渲染方法的实施例流程图;

图1b为本申请根据图1a所示实施例示出的一种起点和终点重叠的直线的峰值曲线图;

图1c为本申请根据图1a所示实施例示出的一种起点和终点不重叠的直线的峰值曲线图;

图1d为本申请根据图1a所示实施例示出的一种脑部影像图像;

图1e为本申请根据图1a所示实施例示出的另一种起点和终点不重叠的直线的峰值曲线图;

图2a为本申请根据一示例性实施例示出的一种峰值曲线渲染方法的实施例流程图;

图2b为本申请根据图2a所示实施例示出的一种斜线上某一点的周围整数坐标点示意图;

图2c为本申请根据图2a所示实施例示出的一种垂直线和水平线示意图;

图3为本申请根据一示例性实施例示出的一种成像设备的硬件结构图;

图4为本申请根据一示例性实施例示出的一种峰值曲线渲染装置的实施例结构图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

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

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

针对目前的峰值曲线渲染过程,在某些特殊情况下,是没有必要采用复杂度比较高的双线性插值算法计算,例如用户绘制的直线近似于水平线或垂直线,如果采用双线性插值算法计算,反而会增加不必要的性能损耗,降低峰值曲线的渲染速度,同时还会影响峰值计算准确性。

基于此,通过在当前显示的影像图像上检测外部输入的且满足预设条件的直线,并确定检测到的所述直线的直线类型,并确定所述直线类型对应的预设算法,然后利用所述预设算法确定所述直线的ct值,并根据所述直线的ct值进行峰值曲线渲染。

基于上述描述可知,通过确定直线的直线类型,以利用直线类型对应的预设算法计算直线的ct值,而不是对所有直线均直接采用复杂度比较高的双线性插值算法计算,因此可以降低不必要的性能损耗,提升峰值曲线的渲染速度。另外,根据不同的直线类型选择适合于该直线类型的预设算法计算,还可提高计算准确度,改善峰值曲线的渲染效果。

下面以具体实施例对本申请的技术方案进行详细阐述。

图1a为本申请根据一示例性实施例示出的一种峰值曲线渲染方法的实施例流程图,该峰值曲线渲染方法可以应用在成像设备上,该成像设备可以是ct设备、磁共振成像(mri)设备、正电子发身断层成像设备等。如图1a所示,该峰值曲线渲染方法包括如下步骤:

步骤101:在当前显示的影像图像上检测外部输入的且满足预设条件的直线,确定检测到的该直线的直线类型,并确定该直线类型对应的预设算法。

在一实施例中,由于用户在影像图像上绘制直线时,有可能存在无效的操作,例如用户在影像图像的一个点击操作、绘制的直线的起点和终点重叠等,因此在确定直线的直线类型之前,可以先根据该直线的起点和终点确定直线的长度;若长度大于长度阈值,则确定直线满足预设条件。

其中,如果直线的长度小于长度阈值,表示该直线是用户的一个无效操作,无需进行峰值曲线渲染,即使进行了峰值曲线的渲染也没有任何医学参考价值,如图1b所示,起点和终点重叠的峰值曲线,对用户没有任何医学参考价值;如果直线的长度大于长度阈值,表示该直线是用户的一个有效操作,需要进行峰值曲线渲染,以为病变组织的临床研究提供参考。因此在检测到用户在影像图像上的绘制操作时,通过判断该绘制操作有效与否,来避免不必要的渲染过程,降低设备的性能损耗。

针对确定检测到的该直线的直线类型以及确定直线类型对应的预设算法的过程,可以参见下述图2a所示实施例的相关描述,在此暂不详述。

步骤102:利用该预设算法确定该直线的ct值,并根据该直线的ct值进行峰值曲线渲染。

针对利用该预设算法确定该直线的ct值的过程,可以参见下述图2a所示实施例的相关描述,在此暂不详述。

在一实施例中,针对根据该直线的ct值进行峰值曲线渲染的过程,可以先确定峰值曲线的参数(如直线的起点和终点、直线的长度、点数、最大ct值、最小ct值等),然后再渲染峰值曲线,并输出显示峰值曲线的参数。

其中,直线的ct值中存在最大ct值和最小ct值,峰值曲线的点数即为该直线包含的ct值的数量,在渲染过程中,对于属于不同组织的点的ct值用不同的颜色渲染,例如,对于一副脑部影像图像,用户从大脑中间向侧方向绘制直线,可能经过头盖骨、肌肉、血液部分,对于属于头盖骨的点的ct值用白色渲染,属于肌肉或血液的点的ct值用黑色渲染。如图1c所示的峰值曲线图,直线的起点是(151,291),直线的终点是(250,363),该直线包含了123个点的ct值,直线的长度为84.38mm,最大ct值为419,最小ct值为-796,由图1c中峰值曲线由三种不同颜色显示可知,用户绘制的直线经过了3个不同的组织。

在一示例性场景中,如图1d至图1e所示,用户在图1d所示的脑部影像图像中绘制一条直线后,通过执行上述步骤101至步骤102之后,得到图1e所示的峰值曲线,图1e中的直线的起点是(165,282),终点是(325,299),该直线包含了160个点的ct值,直线的长度为109.92mm,最大ct值为102,最小ct值为-777,由图1e中的峰值曲线用同一颜色显示可知,用户绘制的直线经过的是同一组织。

本申请实施例中,通过在当前显示的影像图像上检测外部输入的且满足预设条件的直线,并确定检测到的直线的直线类型,并确定所述直线类型对应的预设算法,然后利用所述预设算法确定所述直线的ct值,并根据所述直线的ct值进行峰值曲线渲染。

基于上述描述可知,通过确定直线的直线类型,以利用直线类型对应的预设算法计算直线的ct值,而不是对所有直线均直接采用复杂度比较高的双线性插值算法计算,因此可以降低一些不必要的性能损耗,提升峰值曲线的渲染速度。另外,根据不同的直线类型选择适合于该直线类型的预设算法计算,还可提高计算准确度,改善峰值曲线的渲染效果。

图2a为本申请根据一示例性实施例示出的一种峰值曲线渲染方法的实施例流程图,基于上述图1a所示实施例的基础上,本实施例以如何确定检测到的该直线的直线类型、确定直线类型对应的预设算法以及利用该预设算法确定该直线的ct值为例进行示例性说明。如图2a所示,该峰值曲线渲染方法包括:

步骤201:为影像图像建立图像坐标系,以影像图像的左下角顶点为坐标原点,水平方向为横轴,垂直方向为纵轴。

步骤202:若直线的起点与终点的横坐标差值绝对值和纵坐标差值绝对值均大于差值阈值,则确定该直线的直线类型为斜线,利用斜线对应的双线性插值算法确定该直线的ct值。

在一实施例中,针对利用斜线对应的双线性插值算法确定该直线的ct值过程,可以根据一个像素的实际宽度和实际高度确定该直线的取点步长,并利用取点步长在该直线上选取坐标点,然后针对选取的每个坐标点,确定该坐标点周围的整数坐标点,并在影像图像对应的ct矩阵中查找到整数坐标点的ct值,最后通过双线性插值算法,利用整数坐标点的ct值计算该坐标点的ct值,并将计算得到的每个坐标点的ct值确定为直线的ct值。

其中,根据一个像素的实际宽度和实际高度确定该直线的取点步长的公式为:(其中,τ表示直线的取点步长,a表示像素的实际宽度,b表示像素的实际高度,(x1,y1)表示直线的起点坐标,(x2,y2)表示直线的终点坐标)。ct矩阵中记录有影像图像中各个像素点对应的ct值,即整数坐标点的ct值。

在一示例性场景中,如图2b所示,在直线ab上选取的p(x,y)点周围的整数坐标点为q12、q22、q21、q11,假设ct矩阵中q12的ct值为ct1,q22的ct值为ct2,q21的ct值为ct3,q11的ct值为ct4,通过双线性插值算法的公式计算得到p点的ct值:

ctp=q11(1-x)(1-y)+q12x(1-y)+q22(1-x)y+q21xy

=ct4(1-x)(1-y)+ct1x(1-y)+ct2(1-x)y+ct3xy

步骤203:若该直线的起点与终点的横坐标差值绝对值小于差值阈值,或者该直线的起点与终点的纵坐标差值绝对值小于差值阈值,则确定该直线的直线类型为垂直线或者水平线,利用垂直线或者水平线对应的两点算法确定该直线的ct值。

需要说明的是,用户在影像图像上绘制水平线或者垂直线时,往往存在一定的偏差值,因此对于垂直线,只要起点与终点的横坐标差值绝对值小于差值阈值,便可确定用户绘制的直线为垂直线;对于水平线,只要起点与终点的纵坐标差值绝对值小于差值阈值,便可确定用户绘制的直线为水平线。其中,差值阈值表示的是垂直线和水平线的操作偏差。

在一实施例中,由于双线性差值算法是在两个方向上进行线性插值,需要通过周围四个点的ct值计算得到,而当用户绘制垂直线或者水平线时,通过直线的起点和终点便可确定出经过的像素点,进一步利用像素点查找ct矩阵便可得到直线的ct值,因此当用户绘制垂直线或水平线时,没有必要采用双线性插值算法计算直线的ct值。基于此,针对利用垂直线或者水平线对应的两点算法确定该直线上各点的ct值的过程,可以根据两点算法确定该直线经过的整数坐标点,并在影像图像对应的ct矩阵中查找到每个整数坐标点的ct值,并将该整数坐标点的ct值确定为该直线的ct值。

其中,针对根据两点算法确定该直线经过的整数坐标点的过程,可以先根据直线的起点横坐标和终点横坐标确定该直线经过的整数横坐标,并根据直线的起点纵坐标和终点纵坐标确定该直线经过的整数纵坐标,然后再根据整数横坐标和整数纵坐标确定该直线经过的整数坐标点。

在一示例性场景中,如图2c中所示的垂直线ab,a点的坐标(x1,y6)均为整数,b点的横坐标有一定的操作偏差,且b点的坐标(x11,y1)中横坐标不为整数,根据预设算法可以确定出垂直线ab的整数横坐标为x1,整数纵坐标有y1、y2、y3、y4、y5以及y6,从而可以确定出该垂直线经过的整数坐标点有(x1,y1)、(x1,y2)、(x1,y3)、(x1,y4)、(x1,y5)、(x1,y6)。再如

图2c中所示的水平线cd,c点的坐标(x3,y3)均为整数,d点的纵坐标有一定的操作偏差,且b点的坐标(x6,y31)中纵坐标不为整数,根据两点算法可以确定出水平线ab的整数纵坐标为y3,整数横坐标有x3、x4、x5以及x6,从而可以确定出该水平线经过的整数坐标点有(x3,y3)、(x4,y3)、(x5,y3)、(x6,y3)。

至此,完成上述图2a所示的流程,通过上述图2a所示流程,根据不同的直线类型选择不同的计算方式,可以改善渲染速度及效果,更加有利于后续疾病的分析诊断。

图3为本申请根据一示例性实施例示出的一种成像设备的硬件结构图,该成像设备包括:通信接口301、处理器302、机器可读存储介质303和总线304;其中,通信接口301、处理器302和机器可读存储介质303通过总线304完成相互间的通信。处理器302通过读取并执行机器可读存储介质302中与峰值曲线渲染方法的控制逻辑对应的机器可执行指令,可执行上文描述的峰值曲线渲染方法,该方法的具体内容参见上述实施例,此处不再累述。

本申请中提到的机器可读存储介质303可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:易失存储器、非易失性存储器或者类似的存储介质。具体地,机器可读存储介质303可以是ram(radomaccessmemory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

图4为本申请根据一示例性实施例示出的一种峰值曲线渲染装置的实施例结构图,所述峰值曲线渲染装置可以应用于成像设备上,如图4所示,所述峰值曲线渲染装置包括:

算法确定模块410,用于在当前显示的影像图像中检测外部输入的且满足预设条件的直线,确定检测到的所述直线的直线类型,并确定所述直线类型对应的预设算法;

渲染模块420,用于利用所述预设算法确定所述直线的ct值,并根据所述直线的ct值进行峰值曲线渲染。

在一可选实现方式中,所述算法确定模块410中的满足预设条件至少包括:

根据所述直线的起点和终点确定所述直线的长度;

若所述长度大于长度阈值,则确定所述直线满足预设条件。

在一可选实现方式中,所述算法确定模块410,具体用于在确定检测到的所述直线的直线类型过程中,为所述影像图像建立图像坐标系,以所述影像图像的左下角顶点为坐标原点,水平方向为横轴,垂直方向为纵轴;若所述直线的起点与终点的横坐标差值绝对值和纵坐标差值绝对值均大于差值阈值,则确定所述直线的直线类型为斜线;若所述直线的起点与终点的横坐标差值绝对值小于差值阈值或者纵坐标差值绝对值小于差值阈值,则确定所述直线的直线类型为垂直线或者水平线。

在一可选实现方式中,所述算法确定模块410,具体用于在确定所述直线类型对应的预设算法过程中,若所述直线类型为斜线,则确定所述预设算法为双线性插值算法;若所述直线类型为水平线或垂直线,则确定所述预设算法为两点算法。

在一可选实现方式中,所述渲染模块420,具体用于在利用所述预设算法确定所述直线的ct值过程中,若所述预设算法为双线性插值算法,则根据一个像素的实际宽度和实际高度确定所述直线的取点步长;利用所述取点步长在所述直线上选取坐标点,针对选取的每个坐标点,确定该坐标点周围的整数坐标点,并在所述影像图像对应的ct矩阵中查找到所述整数坐标点的ct值,并通过所述双线性插值算法,利用所述整数坐标点的ct值计算该坐标点的ct值,并将计算得到的每个坐标点的ct值确定为所述直线的ct值;若所述预设算法为两点算法,则根据所述两点算法确定所述直线经过的整数坐标点,并在所述影像图像对应的ct矩阵中查找到每个整数坐标点的ct值,并将所述整数坐标点的ct值确定为所述直线的ct值。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

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