一种基于多级网格的图像分割方法及装置制造方法

文档序号:6489631阅读:133来源:国知局
一种基于多级网格的图像分割方法及装置制造方法
【专利摘要】本发明提供一种基于多级网格的图像分割方法。该方法包括:确定当前网格对应的等级;如果当前网格对应的等级大于预先设定的阈值,则将当前网格中所有节点作为需要细化的区域,对需要细化的区域进行细化和松弛操作,得到上一级级细网格的概率解;如果当前网格对应的等级小于等于所设定的阈值且当前网格不是最细网格,确定当前网格中概率解在预定取值范围内的节点的集合为需要细化的区域,对需要细化的区域进行细化和松弛操作,得到上一级细网格的概率解;如果当前网格是最细网格,则根据最细网格的概率解确定图像分割结果。本发明实施例还公开了一种基于多级网格的图像分割装置。根据本发明实施例提供的基于多级网格的图像分割方法和装置,可以仅在用户感兴趣的区域进行细化和松弛操作。这样,可以避免或者减少非感兴趣区域的多余计算,提高计算效率。
【专利说明】—种基于多级网格的图像分割方法及装置【技术领域】
[0001]本发明涉及图像处理技术,特别是一种基于多级网格的图像分割方法及装置。
【背景技术】
[0002]图像分割就是把图像分成若干个特定的、具有独特性质的区域并提出感兴趣目标的过程。它是由图像处理到图像分析的关键步骤。图像分割技术在在医学影像,视频编辑,计算机视觉等方面有着广泛的应用。例如,在医学影像领域中,图像分割技术可以用于测量人体器官、组织或者病灶的尺寸和体积,从而帮助医生进行诊断。
[0003]大多数的基于图论的图像分割算法最终都可以归结为求解线性方程组Au=f。可以直接求解该线性方程组,或者也可以利用迭代法求解该线性方程组。对于较大规模的线性方程组,这两种方法都比较慢。
[0004]多级网格法(又叫多重网格法)是求解大型线性代数方程组的一种重要解法。基于多级网格的概念,一个图像可以“粗化”为多个简化的分层网格。这些网格分别代表不同粗化程度的图像,这些图像中的像素点的个数较少。这样,可以不直接求解线性方程组Au=f,而是以迭代方式来求解多个等级的图像,以从一个网格向下一个较粗网格传播残留误差,通过松弛算法迭代平滑来去除,并且使用一个网格的概率解作为上一级较细网格的初始解。残留误差通过限制映射从细网格传播到粗网格,同时粗网格的概率解通过插值映射传播到细网格。上述从细网格到粗网格再到细网格的循环过程称为一个V循环(V-cycIe )。一个V循环的过程如图1所示,包括:
[0005]( I)利用初始 猜测解,对Ahuh=fh松弛a i次,得到并保存Uh的近似解Vh ;计算残留rh=fh-Ahvh,这里h代表网格的级数,h代表2h的上一级细网格。
[0006](2)计算fh = I2hhTh ,将残留rh限制映射到下一级粗网格;
[0007](3)利用初始猜测v2h=0,对A2Vh=f2h松弛α:次,得到并保存修正量v2h,计算残留
2h_ n2h A2h 2h
r -1 -A V ;
[0008](4)计算f4h = Itlr2h,将残留r2h限制映射到下一级粗网格;
[0009](5)利用初始猜测v4h=0,对A4Vh=f4h松弛α:次,得到并保存修正量v4h,计算残留
4h_n4h A4h 4h
r -1 -A V ;
[0010](6)计算fh = lfhrAh,将残留r4h限制映射到下一级粗网格;
[0011](7)重复上述步骤至最粗等级,直接求解AH/=fH,得到/,令误差eH=/。
[0012](8)从最粗等级向最细等级进行细化,重复执行以下步骤至最细等级;
[0013](9)计算Z =O'进行插值映射,即粗网格细化;利用eh校正保存的/,即Vh 一 vh+eh ;
[0014]( 10)利用初始猜测/,对AV=fh松弛α 2次。
[0015]其中,CidPa2为常数,代表迭代次数。/fJ21:.巧为限制运算符4! 4为插值运算符。
[0016]在上述过程中,在各个级别的网格上的细化和松弛操作都是基于整个图像进行的。也就是说,每个级别的网格均覆盖整个图像,即全局网格。但是,对于图像分割来说,用户更关心的是图像中图形的轮廓,即前景和背景之间的边界。比如,对于一个医学CT图像,用户最关心的是病变组织的轮廓。而对于其他部分,用户并不关心。现有技术中的多级网格算法在这些用户不感兴趣的区域也进行了细化和松弛操作,这些细化和松弛操作是不必要的。

【发明内容】

[0017]有鉴于此,本发明实施例提供了一种基于多级网格的图像分割方法及装置,以提高图像分割的速度并减少计算量。
[0018]本发明实施例提供的技术方案包括:
[0019]一种基于多级网格的图像分割方法,其中,所述多级网格包括从最粗网格到最细网格的多个级别的网格,包括:
[0020]确定当如网格对应的等级;
[0021]如果当前网格对应的等级大于预先设定的阈值,则将当前网格中所有节点作为需要细化的区域,对需要细化的区域进行细化和松弛操作,得到上一级细网格的概率解;
[0022]如果当前网格对应的等级小于等于所设定的阈值且当前网格不是最细网格,确定当前网格中概率解解在预定取值范围内的节点的集合为需要细化的区域,对需要细化的区域进行细化和松弛操作,得到上一级细网格的概率解;
[0023]如果当前网格是最细网格,则根据最细网格的概率解确定图像分割结果。很明显可以理解这里所述的网格的概率解为网格中节点的概率解的集合。
[0024]一种基于多级网格的图像分割装置,其中,所述多级网格包括从最粗网格到最细网格的多个级别的网格,包括:等级确定模块、细化区域确定模块、细化模块、以及分割结果确定模块;其中,
[0025]所述等级确定模块用于确定当前网格对应的等级;
[0026]所述细化区域确定模块用于在当前网格对应的等级大于预先设定的阈值时,将当前网格中所有节点作为需要细化的区域,通知所述细化模块进行细化和松弛操作;在当前网格对应的等级小于等于所设定的阈值且当前网格不是最细网格时,确定当前网格中概率解在预定取值范围内的节点的集合为需要细化的区域,通知所述细化模块进行细化和松弛操作;
[0027]所述细化模块用于对细化区域确定模块确定的需要细化的区域进行细化和松弛操作,得到当前网格的上一级细网格的概率解,并发送给所述分割结果确定模块;
[0028]如果当前网格是最细网格,则根据最细网格的概率解确定图像分割结果。
[0029]一种基于多级网格的图像分割装置,其中,所述多级网格包括从最粗网格到最细网格的多个级别的网格,包括:处理器和非易失性存储器;其中,所述处理器与所述存储器通信连接,所述存储器中存储有机器可读指令,用于使得处理器执行以下操作:
[0030]确定当如网格对应的等级;
[0031]如果当前网格对应的等级大于预先设定的阈值,则将当前网格中所有节点作为需要细化的区域,对需要细化的区域进行细化和松弛操作,得到当前网格的上一级细网格的概率解;[0032]如果当前网格对应的等级小于等于所设定的阈值且当前网格不是最细网格,确定当前网格中概率解在预定取值范围内的节点的集合为需要细化的区域,对需要细化的区域进行细化和松弛操作,得到当前网格的上一级细网格的概率解;
[0033]如果当前网格是最细网格,则根据最细网格的概率解确定图像分割结果。
[0034]根据本发明实施例提供的基于多级网格的图像分割方法和装置,可以仅在用户感兴趣的区域进行细化和松弛操作。这样,可以避免或者减少非感兴趣区域的多余计算,提高计算效率。
【专利附图】

【附图说明】
[0035]图1为现有技术中V循环过程的示意图。
[0036]图2为本发明一种基于多级网格的图像分割方法的流程图。
[0037]图3为本发明实施例中局部细网格的示意图。
[0038]图4为本发明实施例中一种基于多级网格的图像分割方法的流程图。
[0039]图5为本发明实施例中一种基于多级网格的图像分割装置的结构示意图。
[0040]图6为本发明实施例中另一种基于多级网格的图像分割装置的结构示意图。
【具体实施方式】
[0041]为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并举实施例,对本发明的技术方案进行详细说明。
[0042]图2为本发明实施例提供的一种基于多级网格的图像分割方法。如图2所示。该方法包括以下步骤:
[0043]步骤201,确定当前网格对应的等级。
[0044]步骤202,如果当前网格对应的等级大于预先设定的阈值,则将当前网格中所有节点作为需要细化的区域,对需要细化的区域进行细化操作并将所述上一级细网格作为当前网格,返回步骤201。
[0045]步骤203,如果当前网格对应的等级小于等于所设定的阈值且当前网格不是最细网格,确定当前网格中概率解在预定取值范围内的节点的集合为需要细化的区域,对需要细化的区域进行细化和松弛操作,得到当前网格的上一级细网格的概率解,并将所述上一级细网格作为当前网格,返回步骤201。
[0046]步骤204,如果当前网格是最细网格,根据当前网格的概率解确定图像分割结果。
[0047]在上述方法中,由于用户关心的是图像中前景和背景之间的边界,因此某个等级中的全局网格可以减小为与用户感兴趣的区域相对应的局部网格,并且只在局部网格内进行细化和松弛操作。这样,多级网格结构可以具有多个非全局网格(即局部网格),即仅在用户感兴趣的区域进行局部的细化和松弛操作。非全局细化和松弛操作可以用来避免或者减少非感兴趣区域的多余计算,提高计算效率。
[0048]在图像被划分成多个级别的网格的情况下,通常,在某个等级的网格之后,网格会变得比较细,即网格中节点之间的距离比较近。此时,对于用户不感兴趣的区域,可以不再继续细化,而是仅对用户感兴趣的区域进行细化。这种仅覆盖用户感兴趣区域的细网格称为局部细网格。[0049]图3为本发明实施例提出的局部细网格的示意图。如图3所示,(a)表示粗网格,(b)表示根据现有技术对图3 (a)的粗网格进行细化之后得到的全局细网格,(C)表示根据本发明实施例仅对图3 (a)中用户感兴趣的区域进行细化之后得到的局部细网格。其中,“籲”代表较粗网格的节点,称为粗节点,“O”代表细网格中新插入的节点,称为细节点。从图3可以看出,由于局部细网格仅覆盖用户感兴趣的区域,因此,相对于现有技术中覆盖整个图像的全局细网格来说,本发明实施例的局部细网格包含的节点数量较少,因此,使用局部细网格可以减少计算量。
[0050]在本发明实施例中,所述图像可以是医学图像,例如X光图像、超声波图像、核磁共振图像、CT图像,也可以是其他二维或者三维图像。
[0051]下面通过具体实施例并结合附图来对本发明上述技术特征、优点及其实现方式予以进一步说明。
[0052]图4为本发明实施例提供的一种基于多级网格的图像分割方法的流程图。如图4所示,本发明实施例提供的方法包括以下步骤。
[0053]步骤401,将图像划分成N个级别的网格,每个级别的网格对应一个级别n,其中n=0,1,2,...,N-10
[0054]在本实施例中,可以预先设定最粗级别的网格所包含的节点数量,从而确定最粗网格。例如,可以令该最粗级别的网格包含4096个节点。在确定了最粗网格之后,通常可
以取较密网格的网格间距V1为较粗网格的网格间距hk的一半,即这样,每个级别
网格中包含的节点数可以根据其下一级较粗网格来确定,从而确定各个级别的网格。
[0055]在本步骤中,划分出的N个级别的网格分别用Ω°,, Qh, Ω' Q4h..., QhR表,其中,Qci代表最细级别的网格,Ω η代表最粗级别的网格。η=0对应最细级别的网格,即Ω°。η=Ν-1对应最粗级别的网格,S卩ΩΗ。也就是说,η的值越小,所对应的网格越细;相反的,η的值越大,所对应的网格越粗。
[0056]步骤402,判断当前网格对应的等级η是否大于预先设定的阈值,如果是,执行步骤405 ;否则,执行步骤403。
[0057]在本步骤中,所述阈值可以根据实际需要(例如图像大小)进行确定,例如可以令该阈值为5。也就是说,当η>5时,说明当前网格较粗,还需要进一步细化。反之,如果η < 5,说明当前网格较细,此时,对于用户不感兴趣的区域,可以不进行细化,以便减少计算量,提
高计算效率。
[0058]步骤403,判断当前网格是否是最细网格。如果当前网格是最细网格,执行步骤
407;否则,执行步骤404。
[0059]这里,如果η=0,则当前网格为最细网格。否则,当前网格不是最细网格。
[0060]在本步骤中,由于最细网格对应的等级η=0,因此只有步骤402判断出当前网格的等级η小于等于所设定的阈值时,才需要执行步骤403来判断当前网格是否是最细网格。而在步骤402判断出当前网格对应的等级η大于所设定的阈值时,可以得知η>0,所以不需要判断当前网格是否为最细网格,即不需要执行步骤403。
[0061]在本发明实施例中,首先在步骤402判断当前网格对应的等级η是否大于预先设定的阈值,然后在步骤403判断当前网格是否为最细网格。[0062]需要注意的是,在实际应用中,也可以先判断当前网格是否为最细网格,然后再判断当前网格对应的等级η是否大于预先设定的阈值。此时,步骤402和303可以用以下步骤402,和303,替代。
[0063]步骤402’,判断当前网格是否为最细网格,如果当前网格为最细网格,执行步骤
408;否则,执行步骤403’。
[0064]步骤403’,判断当前网格对应的等级η是否大于预先设定的阈值;如果是,则执行步骤405 ;否则,执行步骤404。
[0065]步骤404,确定当前网格中概率解Vi在预定取值范围内的节点的集合为需要细化的区域,其中Vi代表节点在当前网格中的概率解,并确定图像中属于不需要细化的区域内的各个像素点的概率解,然后执行步骤406。
[0066]在图像分割过程中,由于用户感兴趣的轮廓区域(即边界区域)的概率解值在0.5左右,因此可以将概率解P e [0.5- ε , 0.5+ ε ]范围内的节点的集合作为用户感兴趣的区域。其中,ε为常数,可以根据实际需要进行确定。例如,可以令ε=0.1。
[0067]为了确定当前网格中的某个节点是否属于用户感兴趣的区域,首先需要确定该节点的在当前网格中的概率解,即Vi,其中Vi代表该节点在等级为i的网格中的概率解。[0068]具体的,对于当前网格中的某个节点,可以按照以下方法来确定该节点的概率解
V10
[0069]假设当前网格为Ω11,可以通过计算νΑ—νΑ+02?,将较粗网格Q2h的概率解v2h插值映射到细网格Ω11,得到并校正vh。然后,在当前网格Qh上,利用初始猜测vh,对Ahvh=fh松弛α次,从而得到该节点在当前网格中的概率解vh。
[0070]在确定了节点的概率解Vi之后,就可以根据该节点的概率解Vi判断该节点是否属于用户感兴趣的区域。在本实施例中,假设ε =0.1,则判断该节点的概率解Vi是否在[0.4,0.6]范围内。如果V1G [0.4,0.6],则该节点属于用户感兴趣的区域;相反的,如果Vi (6[0.4,0.6],则该节点不属于用户感兴趣的区域。
[0071]根据以上方法,可以确定出当前网格中概率解Vi在预定取值范围内的所有节点的集合。这样,可以将这些节点的集合确定为需要细化的区域,仅对需要细化的区域进行细化和松弛操作,从而减少计算量。
[0072]由于在最后确定图像分割结果的时候,需要确定图像中每个像素点是属于前景还是背景,所以需要确定每个像素点的概率解,因此,在本步骤中,对于不需要细化的区域,也需要确定图像中属于该区域内的各个像素点的概率解,以便确定图像分割结果。对于这部分像素点,仅计算了与其对应的当前网格的概率解,而没有直接计算像素点本身的概率解。因此,可以用与像素点对应的当前网格的节点的概率解作为各个像素点的概率解。
[0073]步骤405,将当前网格中所有节点作为需要细化的区域。
[0074]当判断出当前网格的等级大于所设定的阈值时,说明当前网格较粗,还需要进一步细化。因此,当前网格中所有的节点都作为需要细化的区域,即当前网格需要进行全局细化。
[0075]步骤406,对需要细化的区域进行细化和松弛操作,得到上一级较细网格的概率解。
[0076]细化和松弛操作包括:将当前网格中需要细化的区域中的节点的概率解插值映射到上一级较细网格,在该较细网格中,对需要细化的区域对应的节点进行松弛迭代,得到上一级较细网格中的概率解。
[0077]具体的,设当前网格为Ω'上一级较细网格为Ω\则细化操作包括:
[0078]通过计算vAfVfc+/2\v'将当前网格Ω211的概率解v2h插值映射到细网格Ω\得到并校正Λ然后,在细网格Qh上,利用初始猜测vh,对Ahvh=fh松弛α次。其中,α可以根据实际情况确定,通常可以松弛2到3次。在本步骤中,可以采用Gauss-Seidel迭代方法或者Jacobi迭代方法进行松弛,也可以采用其他迭代方法进行松弛。本发明实施例对具体采用哪种迭代方法不做限定。
[0079]这里,根据步骤402中判断结果的不同,需要细化的区域也不同。在当前网格的等级大于所设定的阈值时,需要细化的区域为当前网格中所有的节点。此时,上述的细化操作跟现有技术中的细化操作相同,在此不再赘述。
[0080]在当前网格的等级小于等于所设定的阈值时,需要细化的区域为用户感兴趣的区域,即当前网格中概率解Vi在预定取值范围内的节点的集合。
[0081]此时,上述的细化操作仍可以用公式Vfc ^vh+Ih7hv2hm AV=fh表示。但是,需要注意的是,这里的V2h和Vh对应的是用户感兴趣的区域内的节点,而不是所有节点。
[0082]因此,这里的怂和Ah也需要进行相应的变化。具体的,这里的Ah仅包含用户感兴趣的区域内的节点对应的值。
[0083]可以通过以下方法得到Ah:
[0084]首先,假设该局部细网格对应的全局细网格的拉普拉斯矩阵为Bh,也就是说,Bh中除了包含用户感兴趣的区域内的节点,还包含非感兴趣区域内的节点,即Ah为Bh的一个子矩阵。根据现有的图像分割算法可以得知,Bh可以表示为
【权利要求】
1.一种基于多级网格的图像分割方法,其中,所述多级网格包括从最粗网格到最细网格的多个级别的网格,其特征在于,包括: A,确定当如网格对应的等级;并且 B,如果当前网格对应的等级大于预先设定的阈值,则将当前网格中所有节点的集合作为需要细化的区域,对需要细化的区域进行细化和松弛操作,得到当前网格的上一级细网格的概率解,并将所述上一级细网格作为当前网格,返回步骤A ; C,如果当前网格对应的等级小于等于所设定的阈值且当前网格不是最细网格,确定当前网格中概率解在预定取值范围内的节点的集合为需要细化的区域,对需要细化的区域进行细化和松弛操作,得到当前网格的上一级细网格的概率解,并将所述上一级细网格作为当前网格,返回步骤A ; D,如果当前网格是最细网格,则根据最细网格的概率解确定图像分割结果。
2.根据权利要求1所述的方法,其特征在于,所述步骤C中确定当前网格中概率解在预定取值范围内的节点的集合为需要细化的区域包括: 确定当前网格中的节点在当前网格中的概率解; 确定当前网格中概率解在[0.5- ε , 0.5+ ε ]范围内的节点的集合为需要细化的区域,其中,ε为常数。
3.根据权利要求2所述的方法,其特征在于,在步骤C对需要细化的区域进行细化和松弛操作,得到当前网格的上一级细网格的概率解包括: 确定用于从当前网格到上一级细网格进行插值操作的插值算子/2\ ,以及上一级细网格对应的拉普拉斯矩阵Ah,其中Ah包含所述上一级细网格中的节点对应的值; 根据确定的插值算子/将当前网格的概率解V2h插值映射到上一级细网格,得到并校正vh; 在所述上一级细网格上,利用得到的Vh和确定的Ah进行松弛操作,得到所述上一级细网格的概率解,其中,h为所述网格的级数,h代表2h的上一级细网格。
4.根据权利要求1所述的方法,其特征在于,在步骤C确定了需要细化的区域之后,进一步包括: 确定图像中不属于所述需要细化的区域内的像素点为第一像素点; 确定当前网格中与所述第一像素点对应的各个节点,将所述节点在当前网格中的概率解作为与其对应的第一像素点的概率解。
5.根据权利要求4所述的方法,其特征在于,步骤D如果当前网格是最细网格,则根据最细网格的概率解确定图像分割结果包括: 确定图像中与最细网格所包含的节点对应的像素点为第二像素点; 对于每个第二像素点,将最细网格中与其对应的节点的概率解作为其概率解; 根据所述第一像素点和第二像素点的概率解,确定图像的分割结果。
6.一种基于多级网格的图像分割装置,其中,所述多级网格包括从最粗网格到最细网格的多个级别的网格,其特征在于,包括:等级确定模块、细化区域确定模块、细化模块、以及分割结果确定模块;其中, 所述等级确定1?块用于确定当如网格对应的等级; 所述细化区域确定模块用于,在当前网格对应的等级大于预先设定的阈值时,将当前网格中所有节点的集合作为需要细化的区域,通知所述细化模块进行细化和松弛操作,并将所述上一级细网格作为当前网格;在当前网格对应的等级小于等于所设定的阈值且当前网格不是最细网格时,确定当前网格中概率解在预定取值范围内的节点的集合为需要细化的区域,通知所述细化模块进行细化和松弛操作,并将所述上一级细网格作为当前网格; 所述细化模块用于,对细化区域确定模块确定的需要细化的区域进行细化和松弛操作,得到当前网格的上一级细网格的概率解,并发送给所述分割结果确定模块; 所述分割结果确定模块用于,在当前网格是最细网格时,根据最细网格的概率解确定图像分割结果。
7.根据权利要求6所述的装置,其特征在于,在当前网格对应的等级小于等于所设定的阈值且当前网格不是最细网格时,所述细化区域确定模块进一步用于, 确定当前网格中的节点在当前网格中的概率解; 确定当前网格中概率解在[0.5- ε , 0.5+ ε ]范围内的节点的集合为需要细化的区域,其中,ε为常数。
8.根据权利要求7所述的装置,其特征在于,所述细化模块进一步用于, 确定用于从当前网格到上一级细网格进行插值操作的插值算子/2\,以及上一级细网格对应的拉普拉斯矩阵Ah,其中Ah包含所述上一级细网格中的节点对应的值; 根据确定的插值算子,将当前网格的概率解V2h插值映射到上一级细网格,得到并校正vh; 在所述上一级细网格上,利用Vh和确定的Ah进行松弛操作,得到所述上一级细网格的概率解,其中h为所述网格的级数,h代表2h的上一级细网格。
9.根据权利要求6所述的装置,其特征在于,所述细化区域确定模块进一步用于, 在确定了需要细化的区域之后,确定图像中不属于所述需要细化的区域内的像素点为第一像素点; 确定当前网格中与所述第一像素点对应的各个节点,将所述节点在当前网格中的概率解作为与其对应的第一像素点的概率解。
10.根据权利要求9所述的装置,其特征在于,所述分割结果确定模块进一步用于: 确定图像中与最细网格中的节点对应的像素点为第二像素点; 对于每个第二像素点,将最细网格中与其对应的节点的概率解作为其概率解; 根据所述第一像素点和第二像素点的概率解,确定图像的分割结果。
11.一种基于多级网格的图像分割装置,其中,所述多级网格包括从最粗网格到最细网格的多个级别的网格,其特征在于,包括:处理器和非易失性存储器;其中,所述处理器与所述存储器通信连接,所述存储器中存储有机器可读指令,用于使得处理器执行权利要求1至6中任一项所述的方法。
【文档编号】G06T7/00GK103714529SQ201210376812
【公开日】2014年4月9日 申请日期:2012年9月29日 优先权日:2012年9月29日
【发明者】黄宁 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1