医学图像的网格化处理方法及其系统与流程

文档序号:12722561阅读:548来源:国知局
医学图像的网格化处理方法及其系统与流程

本发明涉及医学图像处理领域,尤其涉及一种医学图像的网格化处理方法及其装置。



背景技术:

网格生成可以理解为生成一个多边形或多面体网格近似的几何域。网格典型的用途是渲染到计算机屏幕或物理模拟,如有限元分析或计算流体动力学。网格生成是一个综合了数学、工程学、计算机科学、艺术学为一体的课题。如何生成一个高质量的网格是一个技术难点。

现有技术中,主要采用以下方法:

1.逐点插入递增法(incremental insertion algorithm)。该方法主要思想是先用一个足够大的三角形围住一堆随机排列的散点集,然后依次从点集中插入新点,不断更新当前的Delaunay三角剖分,直至所有点都插入完毕。当输入点集比较多的时候,例如医学图像,从而导致法耗时较长。

2.平面扫描算法(plane-sweep algorithm)]。该方法是利用平面扫描的思想,首先将所有的点从左往右排列,用最左边的三个点构成初始凸壳,当扫描线达到新的点时,处理该点,即将该点与已被扫描的某些点连接,,更新凸壳,这样便将已扫描的区域三角剖分。当扫描线达到最右边的点时,处理该点,这样就完成了平面点线集的三角剖分。

因此,有必要对现有的医学图像网格化处理作出改进。



技术实现要素:

本发明所要解决的技术问题是提供一种医学图像的网格化处理方法及其系统,用于灵活调节医学图像中多个感兴趣区域网格疏密程度,以提高网格质量,满足后续诊疗需求。

为解决上述技术问题,本发明公开一种医学图像的网格化处理方法,所述方法包括:

获取一个二维图像,所述二维图像包括一个或多个感兴趣的区域;

提取所述一个或多个感兴趣区域的多个轮廓点;

根据所述多个轮廓点,确定一个第一区域和一个第二区域;

基于一个第一网格划分控制条件,生成所述第一区域的网格;

基于一个第二网格划分控制条件,生成所述第二区域的网格,其中,所述第二网格划分控制条件不同于所述第一网格划分控制条件;以及

根据所述第一区域的网格和所述第二区域的网格,对所述一个或多个感兴趣区域进行分析。

进一步的,所述一个或多个感兴趣区域包括冠状动脉、腹部动脉、大脑动脉、大脑或下肢动脉中至少一种。

进一步的,所述第一区域的网格或所述第二区域的网格基于Delaunay三角剖分算法生成。

进一步的,所述第一网格划分控制条件包括一个第一面积约束条件。

进一步的,所述第一面积约束条件包括所有网格的面积不大于一个面积约束值。

进一步的,所述第二网格划分控制条件包括一个第二面积约束条件,其中,所述第二面积约束条件不同于所述第一面积约束条件。

进一步的,所述方法还包括根据所述多个轮廓点确定一个第三区域,其中,所述第三区域不进行网格划分。

进一步的,对所述感兴趣区域进行所述分析包括根据计算流体力学(CFD)分析所述感兴趣区域的一个动力学参数。

进一步的,所述方法还包括:

获取一个三维图像,所述三维图像包括所述一个或多个感兴趣区域;以及

根据所述第一区域的网格和所述第二区域的网格,生成对应于所述三维图像的一个三维网格。

为解决上述技术问题,本发明公开一种医学图像的网格化处理系统,所述系统包括:

一个接收模块,被配置为:

获取一个二维图像,所述二维图像包括一个或多个感兴趣的区域;以及

一个多时相特征生成模块,被配置为:

提取所述一个或多个感兴趣区域的多个轮廓点;

根据所述多个轮廓点,确定一个第一区域和一个第二区域;

基于一个第一网格划分控制条件,生成所述第一区域的网格;

基于一个第二网格划分控制条件,生成所述第二区域的网格,其中,所述第二网格划分控制条件不同于所述第一网格划分控制条件;以及

根据所述第一区域的网格和所述第二区域的网格,对所述一个或多个感兴趣区域进行分析。

为解决上述技术问题,本发明公开一种医学图像网格化处理方法,所述方法包括:

获取一个第一时相的图像和一个第二时相的图像;

在所述第一时相的图像中选择一个第一血管区域,其中,所述第一血管区域包含一个血管;

在所述第二时相的图像中选择一个第二血管区域,其中,所述第二血管区域包含至少一部分所述血管;

建立一个第一血管模型,其中,所述第一血管模型与所述第一血管区域相对应;

建立一个第二血管模型,其中,所述第二血管模型与所述第二血管区域相对应;

对所述第一血管模型和所述第二血管模型按照权利要求1的方法进行网格化处理;

设定所述第一血管模型的边界条件和所述第二血管模型的边界条件;

根据所述第一血管模型的边界条件,确定所述第一血管模型中所述血管在所述第一时相的状态;

基于所述血管在所述第一时相的状态,关联所述第一血管模型和所述第二血管模型,所述关联所述第一血管模型和所述第二血管模型包括匹配所述第一血管模型的网格和所述第二血管模型的网格;以及

根据所述关联结果以及所述第二血管模型的边界条件,确定所述第二血管模型中所述血管在所述第二时相的状态

进一步的,所述方法包括:

对所述第一血管模型的入口和出口进行二维网格化处理;

对所述第一血管模型的侧壁进行网格化处理;以及

基于所述入口、出口和侧壁的网格化处理结果,对所述第一血管模型进行三维网格化处理。

进一步的,所述方法包括:

对所述第二血管模型的入口和出口进行二维网格化处理;

对所述第二血管模型的侧壁进行网格化处理;以及

基于所述入口、出口和侧壁的网格化处理结果,对所述第二血管模型进行三维网格化处理。

为解决上述技术问题,问本发明公开一个医学图像的网格化处理系统,所述系统包括:

至少一个处理器;以及

存储器,用来存储指令,所述指令被所述至少一个处理器执行时,导致所述系统实现的操作包括:

获取一个二维图像,所述二维图像包括一个或多个感兴趣的区域;

提取所述一个或多个感兴趣区域的多个轮廓点;

根据所述多个轮廓点,确定一个第一区域和一个第二区域;

基于一个第一网格划分控制条件,生成所述第一区域的网格;

基于一个第二网格划分控制条件,生成所述第二区域的网格,其中,所述第二网格划分控制条件不同于所述第一网格划分控制条件;以及

根据所述第一区域的网格和所述第二区域的网格,对所述一个或多个感兴趣区域进行分析。

本发明对比现有技术有如下的有益效果:(1)提供人体医学图像二维平面上的网格展示,网格生成耗时少;(2)通过所述第一网格划分控制条件和第二条件灵活控制不同区域的网格疏密程度,以满足用户不同的观察需求;(3)本发明适用于处理二维、三维或四维等多维度的网格化处理结果;(4)根据所述第一区域的网格和所述第二区域的网格,对所述一个或多个感兴趣区域进行包括但不限可视化,图像分割、人体组织的状态分析,计算力学分析和疾病诊断等领域,满足用户不同的诊疗需求。

【附图说明】

图1a和图1b是本发明一些实施例中所示的包括血流状态分析系统的网络环境;

图2是本发明的一些实施例所示的一个计算设备的结构,该计算设备可以实施本申请中披露的特定系统;

图3是本发明的一些实施例所示的一个移动设备的结构示意图,该移动设备可以实施本申请中披露的特定系统;

图4a是本发明的一些实施例所示的处理设备的示例性模块示意图;

图4b是本发明的一些实施例所示的多时相特征处理的示例性流程图;

图5是本发明的一些实施例所示的多时相特征生成模块的示例性模块示意图;

图6是本发明的一些实施例所示的医学图像的网格化处理的示例性流程图;

图7是本发明的一些实施例所示的边界区域网格化处理的示意图;

图8是本发明的一些实施例所示的医学图像的网格处理的示例性流程图。

【具体实施方式】

在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施的限制。

其次,本发明利用示意图进行详细描述,在详述本发明实施例时,为便于说明,所述示意图只是实施例,其在此不应限制本发明保护的范围。

为解决上述技术问题,本实施例提供

为了更清楚地说明本申请的实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。

如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。

虽然本申请对根据本申请的实施例的数据处理系统中的某些模块做出了各种引用,然而,任何数量的不同模块可以被使用并运行在一个通过网络与该系统连接的客户端和/或服务器上。所述模块仅是说明性的,并且所述系统和方法的不同方面可以使用不同模块。

本申请中使用了流程图用来说明根据本申请的实施例的数据处理系统所执行的操作步骤。应当理解的是,显示在前面或后面的操作步骤不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作步骤添加到这些过程中,或从这些过程移除某一步或数步操作。

在图像数据处理过程中,“图像分割”、“图像提取”、“图像分类”可以相互转化,均表达从大范围区域内选取符合某条件的图像。在一些实施例中,成像系统可以包括一种或多种形态。所述形态包括但不限于,数字减影血管造影(DSA)、磁共振成像(MRI)、磁共振血管造影(MRA)、计算机断层扫描(CT)、计算机断层扫描血管造影(CTA)、超声波扫描(US)、正电子发射断层扫描术(PET)、单光子发射计算机断层扫描(SPECT)、SPECT-MR、CT-PET、CE-SPECT、DSA-MR、PET-MR、PET-US、SPECT-US、TMS-MR、US-CT、US-MR、X射线-CT、X射线-PET、X射线-US、视频-CT、视频-US和/或类似的一种或多种的组合。在一些实施例中,成像扫描的目标可以是器官、机体、物体、损伤部位、肿瘤等一种或多种的组合。在一些实施例中,成像扫描的目标可以是头部、胸腔、腹部、器官、骨骼、血管等一种或多种的组合。在一些实施例中,扫描的目标可以为一个或多个部位的血管组织。在一些实施例中,图像可以是二维图像和/或三维图像。在二维图像中,最细微的可分辨元素可以为像素点(pixel)。在三维图像中,最细微的可分辨元素可以为体素点(voxel)。在三维图像中,图像可由一系列的二维切片或二维图层构成。

图像分割过程可以基于图像的像素点(或体素点)的相应特征进行。在一些实施例中,所述像素点(或体素点)的相应特征可以包括纹理结构、灰度、平均灰度、信号强度、颜色饱和度、对比度、亮度等一种或多种的组合。在一些实施例中,所述像素点(或体素点)的空间位置特征也可以用于图像分割过程。

本申请涉及一医学图像的网格化处理方法以及系统,可以应用于图像可视化,图像分割、人体组织的状态分析,计算力学分析和疾病诊断等领域。

以下仅以血流状态分析方法及其系统为例详细描述本发明。血流状态分析系统100关联多个血管模型,在获取血流状态分析系的过程中,获取多个时相的图像,建立与多个时相分别对应的多个血管模型。根据关联结果分别设定所述多个血管模型的边界条件,确定所述多个血管模型的血管状态。

图1a是根据本申请的一些实施例所示的包括血流状态分析系统100。该血流状态分析系统100可以包括数据采集设备110、处理设备120、存储设备130和显示设备140。数据采集设备110、处理设备120、存储设备130和交互设备140相互之间可以通过网络180进行通信。

数据采集设备110可以是一个采集数据的设备。所述数据可以包括图像数据、对象特征数据等。在一些实施例中,所述数据采集设备110可以包括一个成像设备。所述成像设备可以采集所述图像数据。所述成像设备可以是磁共振成像仪(magnetic resonance imaging,MRI)、电子计算机断层扫描仪(computed tomography,CT)、正电子发射型计算机断层显像仪(positron emission computed tomography,PET)、B超仪(b-scan ultrasonography)、超声诊断仪(diasonography)热断层扫描仪(Thermal texture maps,TTM)、医用电子内窥镜(medical electronic endoscope,MEE)等中的一种或多种的组合。所述图像数据可以是包括对象的血管、组织或器官的图片或数据。在一些实施例中,所述数据采集设备可以包括一个对象特征采集设备。所述对象特征采集设备可以采集对象的心率、心律、血压、血流速率、血液粘稠度、心输出量、心肌质量、血管流阻,以及/或其他与血管、组织或器官相关的对象特征数据。在一些实施例中,所述对象特征采集设备可以获取对象年龄、身高、体重、性别等其他对象特征数据。在一些实施例中,所述图像数据和对象特征数据可以是多时相数据。例如,所述多时相数据可以是在不同的时间点或时相获得的对象身上相同或近似位置的数据。在一些实施例中,所述对象特征采集设备可以集成在所述成像设备中,从而同时采集图像数据和对象特征数据。在一些实施例中,所述数据采集设备110可以通过网络180将其所采集的数据发送至处理设备120、存储设备130和/或交互设备140。

处理设备120可以对数据进行处理。所述数据可以是通过数据采集设备110采集到的数据,从存储设备130中读取的数据,从交互设备140中获得的反馈数据,如用户的输入数据,或通过网络180从云端或者外接设备中获得的数据等。在一些实施例中,所述数据可以包括图像数据、对象特征数据、用户输入数据等。所述处理可以包括在图像数据中选择感兴趣的区域。所述感兴趣的区域可以由处理设备120自行选择或根据用户输入数据选择。在一些实施例中,选择的感兴趣区域可以是血管、组织或者器官等。例如,所述感兴趣区域可以是动脉血管,如冠状动脉、腹部动脉、大脑动脉、下肢动脉等。处理设备120可以进一步对所述图像中对感兴趣的区域进行分割。图像分割的方法可以包括基于边缘的图像分割方法,如Perwitt算子法、Sobel算子法、梯度算子法、Kirch算子法等,基于区域的图像分割方法,如区域生长法、阈值法、聚类法等以及其他分割方法,如基于模糊集、神经网络的方法等。

处理设备120可以对所述感兴趣区域进行模型重建。模型的选择可以基于对象特征数据、感兴趣区域的特征等。例如,如果选定了感兴趣的区域为冠状动脉,处理设备120可以对包含冠状动脉的图像进行分割从而提取出冠状动脉的图像。然后,处理设备120可以根据对象特征、冠状动脉一般特征、冠状动脉图像特征等进行模型的重建。重建的模型可以与冠状动脉血管的形状相对应,也可以与冠状动脉中血液流动的形态相对应。在建立感兴趣区域的模型后,处理设备120可以根据模型进行分析和计算。所述分析和计算的方法可以包括计算流体力学(Computed fluid dynamics)等。

在一些实施例中,处理设备120可以获得多时相的数据,如对象在5个不同时间点上冠状动脉区域的图像。在这种情况下,处理设备120可以对不同时相的感兴趣区域(例如,整个冠状动脉,冠状动脉上的分支,或者冠状动脉的血液入口截面等)的图像分别构建模型,再对模型依次进行分析和计算。在一些实施例中,处理设备120可以对所述不同时相的模型进行网格化处理,并对网格化处理后的模型进行相互关联,从而降低计算量、提高计算准确度。关于网格化处理和模型相互关联的说明可以参见本申请其他地方的描述,例如,图7及其描述。在一些实施例中,所述分析和计算的结果可以包括血管、组织、或器官的物理状态和相关系数或参数。例如,对冠状动脉模型进行分析和计算的结果可以包括冠状动脉的血流动力学参数,如血流速率、血液压力、血管壁应力、血管壁切应力、血流储备系数或血流储备分数(Fractional Flow Reserve,FFR)、冠状动脉血流储备(Coronary Flow Reserve,CFR)等中的一种或多种的组合。在一些实施例中,处理设备120可以根据不同时相的分析和计算结果生成所述物理状态和/或相关系数或参数与时相或时间的关系(例如,血液动力学参数随时间的变化)。该关系可以用曲线或者对照表的方式体现。基于所述曲线或对照表,处理设备120可以获得任意时相的感兴趣区域的物理状态和/或相关系数或参数。

在一些实施例中,处理设备120可以对其获得的数据或处理结果进行降噪或平滑处理。在一些实施例中,处理设备120可以将其获得的数据或处理结果发送至存储设备130进行存储,或者发送至交互设备140进行显示。所述处理结果可以是处理过程中产生的中间结果,如感兴趣区域的模型,也可以是处理的最终结果,如分析和计算得出的血流动力学参数等。在一些实施例中,处理设备120可以是一个或多个处理元件或设备,如中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)、数字信号处理器(digital signal processor,DSP)、系统芯片(system on a chip,SoC)、微控制器(microcontroller unit,MCU)等。在一些实施例中,处理设备120也可以是特殊设计的具备特殊功能的处理元件或设备。处理设备120可以是本地的,或相对于数据采集设备110是远程的。

存储设备130可以储存数据或信息。所述数据或信息可以包括数据采集设备110获取的数据、处理设备120产生的处理结果或控制指令、以及交互设备140所接收到的用户输入数据等。存储设备130可以是一种或多种可以读取或写入的存储媒介,包括但不限于静态随机存储器(static random access memory,SRAM),随机存储器(random-access memory,RAM)、只读存储器(read-only memory,ROM)、硬盘、闪存等。在一些实施例中,存储设备130也可以是远程的存储器,如云盘等。

交互设备140可以接收、发送,以及/或显示数据或信息。所述接收的数据或信息可以包括数据采集设备110获取的数据、处理设备120产生的处理结果、存储设备130存储的数据等。例如,交互设备140显示的数据或信息可以包括数据采集设备110获得的心血管的实际图像150、处理设备120根据实际图像150所建立的心血管模型160,以及处理设备120从心血管模型160中提取出的冠状动脉模型170等。显示的形式可以包括但不限于二维或三维的医学图像、几何模型及其网格分析、矢量图(如速度矢量线)、等值线图、填充型的等值线图(云图)、XY散点图、粒子轨迹图、模拟流动效果等一种或多种组合。又例如,交互设备140发送的数据或信息可以包括用户的输入信息。交互设备140可以接收用户输入的处理设备120的一个或多个运行参数,并发送到处理设备120。

在一些实施例中,交互设备140可以包括一个用户交互界面。用户可以通过特定的交互装置,如鼠标、键盘、触摸板、麦克风等向交互设备140输入一个用户输入数据。例如,用户可以点击交互设备140所显示的模型并选择模型中感兴趣的区域。又例如,用户可以选择交互设备140所显示的血管模型中任意的位置,交互设备140可以从处理设备120获取并显示该位置的血流速、血压、血流量等。

在一些实施例中,交互设备140可以是显示屏等具有显示功能的设备。在一些实施例中,交互设备140可以具有处理设备120部分或全部的功能。例如,交互设备140可以对处理设备120生成的结果进行平滑、降噪、变色等操作。举例说明,变色操作可以将一个灰度图变成彩图,或将一个彩图变成一个灰度图。在一些实施例中,交互设备140与处理设备120可以是一个集成的设备。所述集成的设备可以同时实现处理设备120和交互设备140的功能。在一些实施例中,交互设备140可以包括台式电脑、服务器、移动设备等。移动设备可以包括笔记本电脑、平板电脑、ipad、交通工具(例如,机动车、船、飞机等)的内置设备、可穿戴设备等。在一些实施例中,交互设备140可以包括或连接到显示装置、打印机、传真等。

网络180可以用于血流状态分析系统100内部的通信,接收系统外部的信息,向系统外部发送信息等。在一些实施例中,数据采集设备110、处理设备120和交互设备140之间可以通过有线连接、无线连接、或其结合的方式接入网络180。网络180可以是单一网络,也可以是多种网络的组合。在一些实施例中,网络180可以包括但不限于局域网、广域网、公用网络、专用网络、无线局域网、虚拟网络、都市城域网、公用开关电话网络等中的一种或几种的组合。在一些实施例中,网络180可以包括多种网络接入点,例如有线或无线接入点、基站或网络交换点,通过以上接入点使数据源连接网络180并通过网络发送信息。

图1b所示的是一个血流状态分析系统100的另一个示意图。图1b与图1a类似。图1b中,处理设备120可以与数据采集设备110直接相连,而数据采集设备110不与网络180直接相连。

以上的描述仅仅是本发明的具体实施例,不应被视为是唯一的实施例。显然,对于本领域的专业人员来说,在了解本发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修正和改变。例如,数据采集设备110、处理设备120、交互设备140之间可以不通过网络180而直接进行数据或信息的交换。又例如,这些设备也可以通过可移动存储器或其他中间媒介的方式进行数据或信息的交换。

图2是根据本申请的一些实施例所示的一个计算设备200的结构。该计算设备200可以实施本申请中披露的特定系统。本实施例中的特定系统利用功能框图解释了一个包含用户界面的硬件平台。计算设备200可以实施当前描述血流状态分析系统100中的一个或多个组件、模块、单元、子单元(例如,处理设备120,交互设备140等)。另外,血流状态分析系统100中的一个或多个组件、模块、单元、子单元(例如,处理设备120,交互设备140等)能够被计算设备200通过其硬件设备、软件程序、固件以及它们的组合所实现。这种计算机可以是一个通用目的的计算机,也可以是一个有特定目的的计算机。两种计算机都可以被用于实现本实施例中的特定系统。为了方便起见,图2中只绘制了一台计算设备,但是本实施例所描述的进行信息处理并推送信息的相关计算机功能是可以以分布的方式、由一组相似的平台所实施的,分散系统的处理负荷。

如图2所示,计算设备200可以包括内部通信总线210,处理器(processor)220,只读存储器(ROM)230,随机存取存储器(RAM)240,通信端口250,输入/输出组件260,硬盘270,用户界面280。内部通信总线210可以实现计算设备200组件间的数据通信。处理器220可以执行程序指令完成在此披露书中所描述的血流状态分析系统100的一个或多个功能、组件、模块、单元、子单元。处理器220由一个或多个处理器组成。通信端口250可以配置实现计算设备200与血流状态分析系统100其他部件(比如数据采集设备110)之间数据通信(比如通过网络180)。计算设备200还可以包括不同形式的程序储存单元以及数据储存单元,例如硬盘270,只读存储器(ROM)230,随机存取存储器(RAM)240,能够用于计算机处理和/或通信使用的各种数据文件,以及处理器220所执行的可能的程序指令。输入/输出组件260支持计算设备200与其他组件(如用户界面280),和/或与血流状态分析系统100其他组件(如数据库140)之间的输入/输出数据流。计算设备200也可以通过通信端口250从网络180发送和接收信息及数据。

图3描述了一种移动设备的结构,该移动设备能够用于实现实施本申请中披露的特定系统。在本例中,用于显示和交互位置相关信息的用户设备是一个移动设备300。移动设备300可以包括智能手机、平板电脑、音乐播放器、便携游戏机、全球定位系统(GPS)接收器、可穿戴计算设备(如眼镜、手表等),或者其他形式。本例中的移动设备300包括一个或多个中央处理器(CPUs)340,一个或多个图形处理器(graphical processing units(GPUs))330,一个显示320,一个内存360,一个天线310,例如一个无线通信单元,存储单元390,以及一个或多个输入/输出(input output(I/O))设备350。任何其他合适的组件,包括但不限于系统总线或控制器(图上未显示),也可能被包括在移动设备300中。如图3所示,一个移动操作系统370,如iOS、Android、Windows Phone等,以及一个或多个应用380可以从存储单元390加载进内存360中,并被中央处理器340所执行。应用380可能包括一个浏览器或其他适合在移动设备300上接收并处理图像或血液状态分析相关信息的移动应用。用户与血流状态分析系统100中一个或多个组件关于图像或血液状态分析相关信息的交互可以通过输入/输出系统设备350获得并提供给处理设备120,以及/或血流状态分析系统100中的其他组件,例如:通过网络180。

根据本申请的一些实施例,图4是处理设备的示例性模块示意图。处理设备120可以包括接收模块410、控制模块420、多时相特征生成模块430、多时相特征处理模块440和输出模块450。

接收模块410可以从数据采集设备110和/或存储设备130获取图像数据、对象特征数据等。所述图像数据可以是包括对象的血管、组织或器官的图片或数据。所述对象特征数据可以包括对象的心率、心律、血压、血流速率、血液粘稠度、心输出量、心肌质量、血管流阻以及其他与血管、组织或器官相关的对象特征数据以及对象年龄、身高、体重、性别等其他对象特征数据。在一些实施例中,所述图像数据和对象特征数据可以是多时相数据。例如,所述多时相数据可以是在不同的时间点或时相获得的对象身上相同或近似位置的数据。

控制模块420可以发出控制指令。控制指令可以控制其他模块进行输入、输出、存储、处理等操作。例如,所述控制指令可以控制接收模块410接收所需要的数据。又例如,所述控制指令可以控制多时相特征生成模块430生成多时相的特征等。

多时相特征生成模块430可以生成多时相特征。所述多时相特征可以包括多时相模型、多时相参数、多时相边界条件、多时相的分析结果等。更具体的,多时相特征生成模块430可以在多时相图像数据中分别选择感兴趣的区域。所述感兴趣的区域可以由多时相特征生成模块430自行选择或根据用户输入数据选择。在一些实施例中,选择的感兴趣区域可以是血管、组织或者器官等。例如,所述感兴趣区域可以是动脉血管,如冠状动脉、腹部动脉、大脑动脉、下肢动脉等。所述多时相图像中选择的感兴趣区域可以是相对应的。例如,可以包含至少部分相同的血管、组织、或器官等。多时相特征生成模块430可以进一步对所述多时相图像中的感兴趣的区域进行分割。图像分割的方法可以包括基于边缘的图像分割方法(如Perwitt算子法、Sobel算子法、梯度算子法、Kirch算子法等),基于区域的图像分割方法(如区域生长法、阈值法、聚类法等),以及其他分割方法,如基于模糊集、神经网络的方法等。在一些实施例中,多时相特征生成模块430可以同时对多时相图像中感兴趣的区域进行分割。在一些实施例中,多时相特征生成模块430可以依次对多时相图像中感兴趣的区域进行分割。

多时相特征生成模块430可以对所述感兴趣区域进行模型重建,从而生成多时相模型。模型的选择可以基于对象特征数据、感兴趣区域的特征等。例如,如果选定了感兴趣的区域为冠状动脉,多时相特征生成模块430可以对包含冠状动脉的图像进行分割从而提取出冠状动脉的图像。然后,多时相特征生成模块430可以根据对象特征、冠状动脉一般特征、冠状动脉图像特征等进行模型的重建。重建的模型可以与冠状动脉血管的形状相对应,或与冠状动脉中血液流动的形态相对应。在建立感兴趣区域的模型后,多时相特征生成模块430可以设置参数和边界条件并根据模型进行分析和计算。具体的参数和边界条件设置的方法以及分析方法可以参见本申请其他部分的描述。

多时相特征处理模块440可以对生成的多时相计算结果进行处理(也被称为后处理)。所述处理可以包括利用拟合、插值等方法生成模型的计算结果与时相的关系曲线或对照表。根据所述关系曲线或对照表,多时相特征处理模块440可以进一步生成任意时相的分析结果的估计值。在一些实施例中,所述多时相特征处理模块440可以将生成的多时相计算结果(例如,血管状态)与一个参考结果进行比对并生成一个比对结论。所述参考结果可以是存储在存储设备130中的数据,可以是存储在网络180中的数据,也可以是用户自行输入的数据。在一些实施例中,所述参考结果及相关比对结论可以存储在一个表中。例如,所述计算结果为血流速率时,所述参考结果可以为一个血流速率范围与危险程度的对应关系。所述危险程度可以分为正常、预警、危险、极度危险等。在一些实施例中,用户可以根据临床经验手动输入所述对应关系。在一些实施例中,所述比对可以是同一对象不同时期的血流速率的计算结果的比对。

输出模块450可以将生成的多时相计算结果或数据进行输出。例如,输出模块450可以将多时相计算结果或特征发送至存储设备130进行存储,或者发送至交互设备140进行显示。在一些实施例中,多时相特征处理模块440或输出模块450可以在输出前对所述多时相特征或计算结果进行降噪或平滑处理。所述多时相计算结果可以是生成的中间结果,如感兴趣区域的模型,或生成的最终结果,如分析和计算得出的血流动力学参数或计算结果与时相的关系曲线或对照表等。

根据本申请的一些实施例,图4b是多时相特征处理的示例性流程图。在一些实施例中,流程400可以通过处理设备120实现。

在462中,可以产生一个或多个控制指令。在一些实施例中,462可以通过控制模块420实现。所述控制指令可以控制流程400中其他步骤的进行。

在464中,可以接收多时相数据。在一些实施例中,464可以通过接收模块410实现。所述多时相数据可以包括多时相图像数据和多时相对象特征数据。在一些实施例中,所述多时相对象特征数据可以是时间上连续的对象特征数据或特征曲线。

在466中,可以生成多时相特征。在一些实施例中,466可以通过多时相特征生成模块430实现。所述多时相特征可以包括多时相模型、多时相参数、多时相边界条件、多时相的分析结果等。

在468中,可以对生成的多时相特征进行处理。在一些实施例中,468可以通过多时相特征处理模块440实现。所述处理可以包括利用拟合、插值等方法生成多时相特征与时相的关系曲线或对照表。

在470中,可以输出多时相特征或处理结果。在一些实施例中,470可以通过输出模块450实现。在一些实施例中,可以跳过468,直接将生成的多时相特征输出。

根据本申请的一些实施例,图5是多时相特征生成模块的示例性模块示意图。多时相特征生成模块430可以包括数据获取单元510、参数设置单元520、计算单元530、网格生成单元540、匹配单元550、区域选择单元560、输出单元570和判断单元580。

数据获取单元510可以从多时相特征生成模块430中其他单元、血流状态分析系统100中其他设备或模块或外界设备或模块中获取数据。所述数据可以包括图像数据、对象特征数据、用户输入数据等。所述图像数据可以是包括对象的血管、组织或器官的图片或数据。所述对象特征数据可以包括对象的心率、心律、血压、血流速率、血液粘稠度、心输出量、心肌质量、血管流阻以及其他与血管、组织或器官相关的数据。在一些实施例中,所述图像数据和对象特征数据可以是多时相数据。在一些实施例中,数据获取单元510可以从存储设备130中获取经过处理后的数据,如重建好的血管模型等。在一些实施例中,数据获取单元510可以对获取的图像数据进行预处理。所述预处理可以包括图像增强、图像降噪、图像平滑等。

参数设置单元520可以选择模型以及设置参数和边界条件。所述模型的选择可以包括根据具体分析的病变部位(感兴趣区域)以及对象特征数据(如血液粘稠度等)选择适合的血液粘性模型和流速边界模型。所述血液粘性模型可以包括牛顿流体模型、非牛顿流体模型以及用户自定义的其他流体模型。所述牛顿流体模型可以用来模拟对象体内血液粘稠度较为恒定的区域,而非牛顿流体模型可以用来模拟对象体内血液粘稠度不恒定的区域。所述流速边界模型可以包括抛物线模型、双曲线模型、椭圆模型、平均流模型、Womersley分布模型、Reynolds模型、混合模型等。在一些实施例中,所述参数的设置可以包括选定的模型中参数的设置,例如牛顿流体模型中的血液粘性系数,牛顿流体模型中的血液密度,模拟计算中的时间步数,模拟计算中的时间步长等。

计算单元530可以对多时相特征生成模块430中其他单元中产生的数据或信息进行计算。在一些实施例中,计算单元530可以根据图像数据生成一个与之相对应的模型。所述模型的生成可以基于参数设置单元520所选择的模型类型和设置的参数。在一些实施例中,计算单元530可以在建立感兴趣区域的模型后,对模型进行分析和计算。所述分析和计算的方法可以包括计算流体力学(Computed fluid dynamics)等。在一些实施例中,所述分析和计算的结果可以包括血管、组织、或器官的物理状态和相关系数或参数。例如,对冠状动脉模型进行分析和计算的结果可以包括冠状动脉的血流动力学参数,如血流速率、血液压力、血管壁应力、血管壁切应力、血流储备系数(FFR)、冠状动脉血流储备(CFR)等中的一种或多种的组合。

在一些实施例中,计算单元530所计算的信息和数据可以是多时相的。计算单元530可以分别对所述多时相的信息和数据进行分析和计算。在一些实施例中,计算单元530可以根据不同时相的分析和计算结果生成感兴趣区域的物理状态和/或相关系数或参数与时相或时间的关系。在一些实施例中,该关系可以用曲线或者对照表的方式体现。基于所述曲线或对照表,可以获得任意时相的感兴趣区域的物理状态和/或相关系数或参数。在一些实施例中,所述曲线、对照表或者任意时相的感兴趣区域的物理状态和相关参数系数可以通过输出单元570发送到血流状态分析系统100其他模块或单元或血流状态分析系统100外界的模块或单元中。

网格生成单元540可以在生成模型的网格。在一些实施例中,网格生成单元540可以在模型上生成二维或三维的网格。例如,网格生成单元540可以在模型的边界区域(入口、出口等)生成二维的网格,而在模型的其他区域生成三维的网格。所述三维网格可以是基于所述二维网格而建立的。具体的关于网格形成的方法和流程可以参见,例如图6、图8及其描述。

匹配单元550可以对多时相的数据进行匹配。在一些实施例中,匹配单元550可以将不同时相的模型进行相互关联。所述不同时相的模型可以是经过网格化处理后的模型。在一些实施例中,所述不同时相的模型相互关联的过程可以包括先识别出不同时相的模型中的特征区域。然后,将不同时相相对应的特征区域进行关联。例如,如果所述不同时相的模型是血流模型(即感兴趣的血管中血流覆盖区域的模型),所述特征区域可以包括血流入口区域、血流分叉区域、血流出口区域、血流狭窄区域、血流扩张区域等。然后,匹配单元550可以将不同时相的相应特征区域进行关联。在一些实施例中,一个特征区域在不同时相可能对应不同个数的网格。在这种情况下,所述特征区域在不同时相中的网格可以依靠某种算法或方法进行关联。例如,当第一时相中多个网格对应于第二时相中一个网格或少数网格时,匹配单元550可以对第一时相中多个网格的数值进行平均化处理后再与所述第二时相中一个或少数网格的数值进行对应。在一些实施例中,在初始时相的计算中,可以将内部网格(网格模型中不包括边界区域的网格)的初始值(例如,压强初始值,速率初始值等)设置为0。在后续时相的计算中,可以利用网格匹配将上一时相的内部网格计算结果映射或匹配至当前时相的内部网格相对应的网格中,并作为当前时相网格的初始值。在一些实施例中,匹配单元550在完成匹配后可以提示用户确认匹配是否准确。如果用户确认匹配准确则进行后续流程。如果用户认为匹配不准确,则用户可以对匹配结果进行修正或调整。用户也可以选择在其参与的情况下重新进行网格匹配。

区域选择单元560可以在图像数据中选择感兴趣的区域。所述感兴趣的区域可以由区域选择单元560自行选择或根据用户输入的信息选择。在一些实施例中,选择的感兴趣区域可以是血管、组织或者器官等。区域选择单元560可以进一步对所述图像中对感兴趣的区域进行分割。图像分割的方法可以包括基于边缘的图像分割方法,如Perwitt算子法、Sobel算子法、梯度算子法、Kirch算子法等,基于区域的图像分割方法,如区域生长法、阈值法、聚类法等以及其他分割方法,如基于模糊集、神经网络的方法等。区域选择单元560可以进全自动分割或半自动分割。例如,如果选择的感兴趣区域是冠状动脉、腹部动脉、大脑动脉、下肢动脉等,区域选择单元560可以自动进行分割。如果选择的感兴趣区域是其他机器较难准确分割的血管或部位,则可以进行半自动分割,由用户在分割过程中进行修正。在一些实施例中,区域选择单元560可以对根据图像数据重建的三维模型进行区域选择和分割。

输出单元570可以将多时相特征生成模块430中一个或多个单元所产生的信息、数据或处理结果发送至血流状态分析系统100中的其他模块或单元中。例如,输出单元570可以将计算单元530所生成的模型发送至交互设备140进行显示。又例如,输出单元570可以将网格生成单元540进行网格化处理后的模型发送至存储设备130中进行存储。

判断单元580可以进行逻辑判断。例如,血流状态分析系统100中其它模块或单元可以发送一个判断请求至判断单元580。判断单元580可以根据所述判断请求对相应内容进行判断。当判断出特定情况或生成判断结果后,判断单元580可以将判断结果或相应的操作指令发送至相应的模块或单元(例如,发送判断请求的模块或单元)。例如,判断单元580可以判断区域选择单元560所要分析的血管是否存在异常(如血管狭窄,动脉瘤等)。如果判断出该血管存在异常,判断单元560可以突出显示(如用不同的颜色表示)该异常血管,并同时提示用户确认该异常血管是否满足用户的要求。如果满足,则进行后续操作;如果不满足,则用户可以手动选择异常血管,然后进行后续操作。例如,区域选择单元560可以将用户选择的感兴趣区域和其自身生成的区域发送给判断单元580,判断单元580可以判断所述感兴趣区域和区域选择单元560生成的区域是否相同。如果判断单元580判断出用户和区域选择单元560生成的区域相同,则可以发送指令给区域选择单元560使其进行进一步地分割处理。否则,可以通过显示设备140再次确认用户的选择。

以上的描述仅仅是本发明的具体实施例,不应被视为是唯一的实施例。显然,对于本领域的专业人员来说,在了解本发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修正和改变。例如,上述各单元以单时相为例进行了说明,但是可以理解的是各单元所接收、处理或输出的数据可以是多时相的。对于多时相的数据,上述各单元可以对不同时相的数据分别进行相应操作从而产生多时相的特征。例如,网格生成单元530可以对多时相的模型分别进行对应的网格化处理,从而生成多时相的网格化处理后的模型。又例如,参数设置单元520可以对多时相的模型或数据分别设置相对应的参数或边界条件。

根据本申请的一些实施例,图6是网格化处理的示例性流程图;在一些实施例中,流程600可以通过网格生成单元540实现。

在602中,可以获取一个模型。所述模型可以是本申请其他实施例中说明的模型,例如,对象血管或血流、组织或器官或其他感兴趣区域重建后的模型。如图7所示,710可以是一个冠脉血流模型,即模型710可以表示冠脉血管中血流所覆盖的区域。在不考虑血管壁厚度以及血管堵塞等情况下,模型710也可以近似表示一个冠脉血管模型。

在604中,可以确定所述模型的边界区域。如果模型是一个血管或与血管对应的血流区域,边界区域可以是血管的出口、入口、血管壁等。如图7所示,模型710的入口720可以在604中被确定为模型710的边界区域。

在606中,可以对确定的边界区域进行面网格划分(也被称为二维网格划分)。所述面网格划分可以是将边界区域对应的平面用网格进行划分。网格的划分算法包括三角网格划分,四角网格划分,六角网格划分,或者类似的,或者一个或多个的组合。示例性的网格划分算法包括Loop算法,蝶型细分算法,Catmull-Clark算法,Doo-Sabin算法,Delaunay三角划分算法等。网格划分的方法示例可以参见图8及其描述。如图7所示,730是模型710的入口截面图,以及740是730网格划分的示例性结果。

在608中,可以对模型侧壁进行面网格划分。在一些实施例中,侧壁和边界区域可以使用不同的网格划分方法进行划分。例如,侧壁可以使用曲面网格剖分算法进行网格划分。所述曲面网格剖分的算法可以包括映射法和自动网格生成法等。所述映射法可以包括将侧壁映射至平面,利用二维网格划分方法对平面进行划分后,再将划分后的网格映射回侧壁。所述自动网格生成法可以根据侧壁中不同区域的曲度将侧壁分成若干个近似平面再分别进行二维网格划分。平面网格划分可以参照本申请中其他地方的描述,例如,图8以及描述。

在610中,可以根据边界区域和侧壁的面网格划分结果对模型进行体网格划分(也被称为三维网格划分)。所述体网格划分可以是将模型用三维的网格进行划分。所述三维网格可以包括四面体网格、六面体网格、棱柱体网格(边界层网格)、四面体与六面体混合网格、笛卡尔网格、球填充法网格等。在一些实施例中,604至608可以被跳过,即可以直接对模型进行体网格划分。

根据本申请的一些实施例,图8是网格划分的示例性流程图。在一些实施例中,流程800可以通过多时相特征生成模块430实现。在一些实施例中,图6中的606等可以根据流程800实施。

在802中,可以获取一个二维图像。在一些实施例中,所述二维图像可以通过数据获取单元510获得。在一些实施例中,二维图像可以是一个二维医学图像,或者其中用户感兴趣的部分(例如,冠脉血管所在的区域,大脑区域等)。仅仅作为示例,二维图像可以是一个CT图像、MRI图像、PET图像等。二维图像可以以灰度或者彩色的方式呈现出来。在一些实施例中,二维图像可以是一个时相模型的二维显示。例如,二维图像可以是一个与606中的时相模型的边界区域有关的图像。更具体地,二维图像可以显示一个血流模型的入口/出口区域。二维图像可以是一个由图像处理设备(例如,处理设备120)重建的图像。二维图像可以来自一个本地存储装置或者外界的存储装置(例如,存储设备130)。

在804中,网格生成单元540可以提取二维图像中感兴趣区域的轮廓点。在一些实施例中,提取二维图像中感兴趣区域的轮廓点包括先分割感兴趣区域,再对分割后的感兴趣区域提取轮廓点。所述对感兴趣区域的分割方法见本申请中其他地方的描述。在一些实施例中,感兴趣区域的轮廓点可以包括一个或多个位于感兴趣区域边界的像素点(也称为“轮廓像素点”)。例如,冠脉入口截面处的轮廓点可以包括一个或多个位于冠脉壁的轮廓像素点。在一些实施例中,感兴趣区域的轮廓像素点可以是连续的,部分连续的,或者不连续的。这里所说的连续是指一个轮廓像素点与至少一个或多个其他轮廓像素点相临。提取出的轮廓点的信息可以保存在一个或者多个存储装置中(例如,存储设备130,存储模块260等)。轮廓点的信息可以在后续流程中被网格生成单元540或者其他可以进行数据分析的单元/模块使用。示例性的轮廓点的信息可以包括轮廓点的位置,轮廓点的数量,或者类似的,或者一个或多个的组合。

在806中,可以根据轮廓点确定一个或多个区域。在一些实施例中,所述一个或多个区域的确定可以通过网格生成单元540实现。所述一个或多个区域可以通过依次连接感兴趣区域的轮廓点形成。仅仅作为示例,确定一个或多个区域可以包括确定一个感兴趣区域的初始轮廓像素点(例如,初始轮廓像素点可以选为轮廓像素点中x/y坐标最小的点)。按照顺时针或者逆时针方向,将感兴趣区域的轮廓像素点进行排序。从初始轮廓像素点开始,用线条连接前一个轮廓像素点与后一个轮廓像素点以形成短边。当最后一个轮廓像素点与初始轮廓像素点连接形成短边后,可以形成一个封闭的轮廓曲线。在一些实施例中,感兴趣区域可以位于一条封闭的轮廓曲线的内部。例如,图7中模型入口740的感兴趣区域(即,进行网格划分的区域)位于轮廓曲线的内部。在一些实施例中,感兴趣区域可以是位于两条封闭的轮廓曲线之间的区域。例如,感兴趣区域可以是一个二维环状结构,或者与二维环状结构拓扑等价的结构。一个或多个区域的信息(例如,区域对应的网格曲线)可以保存在一个或者多个存储装置中(例如,存储设备130,存储模块260等)。一个或多个区域的信息可以在后续流程中被网格生成单元540或者其他可以进行数据分析的单元/模块使用。

在808中,可以对一个区域是否需要进行网格划分进行判断。在一些实施例中,所述判断可以由判断单元580实现。在判定出该区域不需要进行网格划分之后,流程800进入810。在判定出该区域需要进行网格划分之后,流程800进入812。在一些实施例中,判断单元580进行判断的条件可以是该区域是否是感兴趣区域。当该区域是感兴趣区域时,则被判定为需要进行网格划分。如本披露书中在其他地方描述的,感兴趣区域可以包括需要进行血液状态分析的区域,例如,特定血管中血液流动的区域。

在810中,可以对该区域进行标记。在一些实施例中,对区域的标记可以由网格生成单元540实施。标记可以采用计算机可读取的代码或者可执行的指令的形式。被标记的区域信息可以被保存在一个或多个存储装置(例如,存储设备130,存储模块260等)。被标记的区域信息可以在后续流程中被网格生成单元540或者其他可以进行数据分析的单元/模块读取,从而在进行网格划分时剔除该被标记的区域。

在812中,可以对该区域进行网格划分。在一些实施例中,网格划分可以由网格生成单元540实施。在一些实施例中,网格的划分可以基于该区域的轮廓点进行。网格的划分算法包括三角网格划分,四角网格划分,六角网格划分,或者类似的,或者一个或多个的组合。示例性的网格划分算法包括Loop算法,蝶型细分算法,Catmull-Clark算法,Doo-Sabin算法,Delaunay三角划分算法等。仅仅作为举例,网格生成单元540可以利用Delaunay三角划分(Delaunay triangulation)算法对该区域的所有轮廓点进行网格划分。又例如,网格生成单元540可以先将该区域的轮廓点分成不同子集,并对各个子集轮廓点进行网格划分。然后,网格生成单元540可以将各个子集的网格划分合并形成该区域的网格划分。具体地,可以将该区域所有的轮廓点按照x/y坐标进行排序(例如,先按照x坐标进行非递减排序,对于x坐标相同的点,按照y坐标非递减排序)。将排序后的轮廓点按照数量分成子集A和子集B,并分别完成Delaunay三角划分。再将子集A和子集B的Delaunay三角划分合并成所有轮廓点的Delaunay三角划分。在一些实施例中,网格划分还可以包括将该区域的轮廓曲线与通过划分算法划分的网格进行叠加,从而划分的网格中保留该区域的轮廓曲线(例如,806中提到的由轮廓像素点连接形成的一个或多个短边)。

在一些实施例中,对一个区域的网格的划分可以采用并行技术的网格生成方法。例如,应用区域分裂或类似算法将该区域分为若干个子区域,在每个子区域内独立进行网格划分,再修复相邻子区域的边界网格,进而获得该区域的完整网格。

在814中,可以对该区域设置网格划分控制条件。在一些实施例中,网格划分控制条件的设置可以由网格生成单元540实现。网格划分控制条件可以控制网格的数量,大小,分布,形状,或者类似的,或者一个或多个的组合。在一些实施例中,网格生成单元540可以设置一个网格单元的面积约束条件,使得任意网格单元的面积满足该面积约束条件。例如,网格生成单元540可以设置一个面积约束值,使得任意网格单元的面积都不大于该面积约束值。在一些实施例中,网格生成单元540可以设置一个网格单元的内角约束条件,使得任意网格单元的内角都满足该内角约束条件。例如,网格生成单元540可以设置一个三角网格单元的内角约束值,使得任意三角网格单元的最小内角都不小于该内角约束值。在一些实施例中,网格划分控制条件可以由用户通过,例如,交互设备140,输入后获得。网格划分控制条件也可以由网格生成单元540或者其他具有数据分析功能的单元/模块根据特定条件分析获得。特定条件可以包括生成网格需要的时间,生成的网格的数量,根据生成的网格进行模型计算的时间,根据生成的网格计算获得的结果的精确程度等。

在816中,可以判断划分的网格是否满足控制条件。在一些实施例中,对网格划分的判断可以由网格生成单元540完成。如果划分的网格不满足控制条件,则流程800进入818。

在818中,可以对网格进行处理。在一些实施例中,对网格的处理可以由网格生成单元540完成。网格处理可以包括调整网格数量,改变网格大小等一个或多个操作。调整网格数量可以包括提高网格密度,降低网格密度等。改变网格大小可以包括分割网格,合并网格,对网格进行重组等。

在一些实施例中,如果一个三角网格单元不满足面积约束条件(例如,该三角网格单元的面积大于面积约束值),则可以在该三角网格单元中插入一个或多个辅助点。辅助点的插入可以是随机的,也可以按照原三角网格的特征点的位置插入。网格生成单元540可以根据辅助点生成新的网格。例如,可以在三角网格单元的内部,例如,重心处插入一个辅助点。连接辅助点和原三角网格的顶点可以生成三个新的三角网格单元。又例如,可以在三角网格单元内部随机性地或者与非随机性地插入多个辅助点。根据多个辅助点利用Delaunay三角划分(Delaunay triangulation)算法划分出Delaunay三角网格。在一些实施例中,如果一个三角网格单元不满足内角约束条件,则可以采用特定的算法对三角网格单元进行处理。例如,可以采用flip算法更新三角网格单元。具体地,flip算法可以包括通过选择一个包含两个相邻的三角网格单元的四边形(四边形的一条对角线为两个三角网格单元相邻的边),选择该四边形中另一条对角线作为两个新三角形的边),获得两个新的三角网格单元。内角约束条件可以包括三角网格单元的最小内角不小于一个内角约束值。内角约束值可以是5°、10°、15°、20°、25°,或者其他数值。

网格经过处理后重新返回816,由网格生成单元540判断处理后的网格是否满足控制条件。直到网格满足控制条件,则流程800进入820。

在820,网格生成单元540可以判断是否已经遍历所有区域。如果否,则流程800返回到808,对没有处理到的区域进行是否划分网格的判断。如果已经遍历所有区域,则在822中,由网格生成单元540生成感兴趣区域的网格。在一些实施例中,划分不同区域的网格类型的算法可以相同,或不同。例如,所有区域可以都采用Delaunay三角划分算法划分网格。又例如,一部分区域可以采用Delaunay三角划分算法划分网格,一部分区域可以采用四角网格划分算法或者六角网格划分算法进行网格划分。在一些实施例中,不同区域的网格划分控制条件可以相同,或不同。例如,所有区域的网格划分控制条件可以包括面积约束条件和/或内角约束条件。不同区域的面积约束条件和/或内角约束条件可以相同,或不同。具体地,所有区域的内角约束条件可以是任意三角网格的最小内角不小于一个内角约束值(例如,20°)。又例如,脑部图像的面积约束条件可以包括最大三角网格单元的面积不大于A,血管图像的面积约束条件可以包括最大三角网格单元的面积不大于B,其中A小于B。

以上的描述仅仅是本发明的具体实施例,不应被视为是唯一的实施例。显然,对于本领域的专业人员来说,在了解本发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修正和改变。在一些实施例中,810可以被跳过。例如,如果一个区域被判断为不需要进行网格划分,则可以直接删除该区域。在一些实施例中,814可以移到808之前,即网格生成单元540可以对所有需要划分网格的区域设置相同的网格划分控制条件。在一些实施例中,流程800可以对三维图像进行网格划分。例如,对三维区域的网格划分可以采用快速Delaunay的球充填法(ball-packing)。网格生成单元540可以在三维几何区域内用球充填法布点,依据几何模型的几何特征和空间关系自适应地分布疏密合适的节点,然后采用快速Delaunay插入技术生成三维网格。

上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述发明披露仅仅作为示例,而并不构成对本申请的限定。虽然此处并没有明确说明,本领域技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。

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

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

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

本申请各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。

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

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

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

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

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