基于活动轮廓模型的多个对象的自动分割方法

文档序号:6584237阅读:383来源:国知局
专利名称:基于活动轮廓模型的多个对象的自动分割方法
技术领域
本发明涉及计算机图像处理,特别涉及活动轮廓模型和梯度矢量流场方法。
针对医学图像,具体的分割方法有许多种,如基于区域的阈值分割、区域生长和分裂合并、分类器和聚类、以及基于随机场的方法等;基于边缘的并行微分算子、曲面拟合法、边界曲线拟合法等。基于形变模型的方法综合利用了区域与边界信息,是目前研究最多、应用最广的分割方法,可以宣称是过去几年计算机视觉领域的成功关键。在基于模型的技术中,形变模型提供了一种高效的图像分析方法,它结合了几何学、物理学和近似理论。该类方法通过使用从图像数据获得的约束信息(自底向上)和目标的位置、大小和形状等先验知识(自顶向下),可有效地对目标进行分割、匹配和跟踪分析。从物理学角度,可将形变模型看成是一个在施加外力和内部约束条件下自然反应的弹性物体。九十年代以来,随着医学影像设备的发展,可以获得更高空间分辨率和软组织分辨率的图像,基于形变模型的方法也开始大量应用于医学图像,并取得了成功。
形变模型包括二维活动轮廓(active contour)模型(又称snake),三维形变曲面(deformable surface)模型,还有一些利用形状先验知识和使用点集合(point sets)先验知识的改进模型。形变曲面模型是活动轮廓在三维空间的推广形式。三维形变曲面模型可以更高效、更快地利用三维数据,而且更少地需要用户交互或指导。形变模型分为两大类参数形变模型和几何形变模型。
基于参数形变模型的分割过程就是使模型在外能和内能的的作用下向物体边缘靠近。外力推动轮廓曲线(曲面)运动,而内力保持轮廓的光滑性。这些方法基于某种形式的目标函数的优化,目标函数最基本的形式就是在某种基于图像的能量项和另一个与内部能量或形状模型相关项之和。
活动轮廓模型的性能与初始状态和内外力的权重参数有关。为解决传统活动轮廓模型的外力捕捉范围有限且不能收敛到凹陷处的缺点,许多研究人员提出了多种外力的定义,但目前为止还没有一个方法能完美地解决所有问题。
D.Terzopoulos和M.Kass使用不同尺度的高斯势能力场扩大形变模型的捕捉区域。高斯平滑后的图像可用于吸引离边缘有一定距离的轮廓点。但是,边缘平滑得太厉害却可能找不到真实的对象边缘。
L.D.Cohen和I.Cohen提出的距离力可以扩大捕捉范围,但在边缘凹陷处的距离力是水平方向的,因而不能使轮廓形变到凹陷处。Delingette在此基础上提出了没有边缘凹陷问题的动态距离力,通过计算形变轮廓或曲面上每个点到沿模型法线方向的最近边缘点的符号距离得到,但该方法的缺点是模型每次形变后就需要重新计算距离值,因而计算量较大。
L.D.Cohen提出的压力可以将形变模型推向边缘凹陷处,但必须控制压力的大小,压力太强会忽略弱边缘,太小又达不到效果。另外还要确定压力的方向是向内还是向外。L.D.Cohen将压力(pressure force)场和高斯势能力场相叠加作为新的外力场,提出了balloon模型,引导snake自动找到合适的位置。他增加了一个外力使轮廓做类似气球膨胀的运动。在膨胀力的作用下,snake可以通过弱的局部极小点。如果膨胀力的权重参数选择合适,snake可以形变到对象边缘。balloon力在一致区域内强,而在边缘附近弱,并沿法向量方向推动轮廓点向边缘靠近,由于内能的作用可使轮廓不受弱边缘影响,而强边缘将使轮廓运动停止。
其他解决方案还有多分辨率方法、控制点、domain adaptivity,directional attractions和使用solenoidal fields等方法等。
1998年Chenyang Xu等运用一个向量扩散公式将梯度扩散到远离边缘的区域中,于是产生了另一个力场,被称为梯度矢量流(gradient vectorflow,GVF)场。GVF的吸引范围大,并对解决边缘凹陷问题有改善。以梯度矢量流场作为活动轮廓模型的外能,可以解决活动轮廓的捕获范围小的问题,因而对轮廓的初始位置没有太高要求。即便如此,如果初始轮廓的位置不正确的话,仍然有可能导致活动轮廓收敛到错误的位置。因此几乎所有的基于活动轮廓模型的方法都需要人工设置初始位置,这导致了这些活动轮廓方法不能够完全自动化地进行分割,这大大限制了该方法在医学图像领域的实际应用,因为医学图像的特点之一就是图像的数量很大,往往由多个序列的图像组成,为了有效减少使用者的劳动量,必须使用完全自动化的方法。
为实现上述目的,基于活动轮廓模型的多个对象的自动分割方法包括步骤a)计算梯度矢量流场;b)搜索并精简梯度矢量流扩散中心;c)活动轮廓初始化、进化和选择。
按照本发明的另一方面,所述的计算梯度矢量流场包括步骤a)对灰度图像计算其边缘图,然后计算边缘图的梯度;b)根据上述梯度图计算梯度矢量场,得到梯度矢量场;c)根据梯度矢量场计算梯度矢量流的扩散中心。
按照本发明的另一方面,所述的搜索并精简梯度矢量流扩散中心包括步骤根据目标对象的最先尺度,按照彼此之间的距离,合并上述计算出来的扩散中心,减少需要进行初始化的轮廓的数目。
按照本发明的另一方面,所述的活动轮廓初始化包括步骤以每个扩散中心为圆心,以目标对象的最小尺度为直径的圆,这样针对每个扩散中心都作初始化,每个扩散中心都代表一个潜在的目标。
按照本发明的另一方面,所述的活动轮廓进化包括步骤以梯度矢量场作为活动轮廓的外能,推动轮廓的进化,知道进化结束,轮廓不再移动。
按照本发明的另一方面,所述的活动轮廓的选择包括步骤a)计算每个活动轮廓的能量并排序,形成按照能量由低到高排列的队列;b)计算上述排序后的轮廓之间的能量差,找出差值最大的位置,并以该位置为界限,能量比该位置的轮廓高的所有轮廓被抛弃,余下的轮廓代表分割目标的边界。
本发明的利用活动轮廓模型的多个对象的自动分割方法,在保持了基于模型的分割方法抗噪声性能好的情况下,实现了初始化过程的自动化,从而实现了整个分割方法的自动化。在医学图像辅助诊断系统、医学图像三维重建系统等领域中有着重要的应用价值。
图3是梯度矢量流场,圆中包括的点即为扩散中心;图4是(a)四个待分割对象;(b)计算出的扩散中心,箭头指出的点被除去;(c)基于扩散中心初始化;(d)各个活动轮廓的计划过程;(e)到达最终位置的轮廓;(f)依据能量准则,去除伪边界。
图5是本发明应用于医学图像,(a)原始图像;(b)分割结果。
具体实施例方式
本发明的核心思想是根据梯度矢量流场中梯度矢量流的方向分布特点,计算梯度矢量流的扩散中心,并把筛选后的扩散中心作为潜在的分割对象的中心,在此基础上,以该点为圆心初始化活动轮廓,确保活动轮廓的初始位置在待分割对象上;以期望分割对象的最小尺度为直径,确保初始轮廓不会超出边界之外,由于以梯度矢量流场作为外能时,活动轮廓进化较快,因此可以克服由于轮廓的初始化位置距离最终位置较远时的收敛问题。由于在梯度矢量流场中将产生多个扩散中心,并且计算扩散中心的过程不需要人的干预,因此可以实现对多个对象的自动轮廓初始化,从而为整个分割过程的初始化奠定基础。所有活动轮廓进化结束后,可能有些轮廓是不需要的,即不是真正的对象边界,由于这些伪边界跨越了真正的边界和物体内部,因此这些轮廓的能量要明显高于那些位于真正边界上的轮廓,以此可以通过比较最终轮廓的能量的方法甄选出真正的对象边界。
下面结合附图详细描述本发明的图像分割算法。作为一种具体的实现方案,结构框图见

图1。主要包括三个步骤计算梯度矢量流场,搜索并精减梯度矢量流扩散中心,活动轮廓初始化、进化和选择。下面对其逐一介绍。
本发明中所指的活动轮廓,特指有多个离散的点组成的,首尾相接的闭合轮廓,并将上述离散点称为活动轮廓点。步骤1计算梯度矢量流场梯度矢量流场(Gradient Vector Flow Field/GVF Field)可以表示为矢量场v(x,y)=(u(x,y),v(x,y)),该场满足如下能量最小化函数ε=∫∫μ(ux2+uy2+vx2+vy2)+|f|2|v-f|2dxdy此处f是边缘图,可以通过边缘提取运算从原始图像得来。f是对该边缘图求梯度,f甚至于f都可以用作活动轮廓模型的外能,但是这两者都是在靠近对象边缘的地方有较大的数值,而在其它地方则接近于零,即从对象边缘到对象腹地的数值变化很剧烈,因此在用他们作为外能的时候,活动轮廓的捕获范围很小,离开边缘就无法推动活动轮廓进化,所以活动轮廓的初始位置必须非常靠近边缘。
依据变分法,梯度矢量流可以通过求下列微分方程的解来得到vt=μ2v-(v-f)|f|2此处vt表示v(x,y,t)对于时间t的偏导数,2是拉普拉斯算子。以梯度矢量流作为外能极大地增加了活动轮廓的捕获范围,其中捕获范围主要受上式中的μ影响。
捕获范围增大以后,初始的活动轮廓即使离边缘较远也同样可以受到较大的推动力,可以迅速向边缘移动,在一定程度上解除了初始位置的限制。但是,如果初始位置不正确的话,活动轮廓仍然可能收敛到错误的最终位置,当初始化的轮廓,即图中的小圆,与期望收敛到的位置,即图中的大圆不同心的时候,在梯度矢量流的推动下,活动轮廓向一侧进化,最终收敛为一个圆弧,这显然是一个错误的结果。因此,单纯地应用梯度矢量流并不能很好地解决轮廓初始化的问题。步骤2搜索并精减梯度矢量流扩散中心观察并分析,所示的梯度矢量流场可以发现,梯度矢量流的方向分布有很强的规律性,在场中的大部分地区,梯度矢量流的方向都是非常接近的,而且存在某个点,该点周围的所有梯度矢量流都背离该点而去。考虑到梯度矢量流是推动活动轮廓移动的主要力量,就不难理解,中的圆为何会收敛到一段圆弧而不是期望的整个圆了——初始的圆位于梯度矢量流的方向大致相同的地区,因而被梯度矢量流推到了一侧,如果初始的圆包括了指向不同方向的梯度矢量流,就不会出现上述情况了。
一幅图像中四个或者更多相邻的像素,他们所对应的梯度矢量流相互背离,亦即四个彼此相邻的像素p(i,j),p(i+1,j),p(i,j+1)和p(i+1,j+1),此处i表示像素所在的列号,j表示像素所在的行号,v(i,j)=(x(i,j),y(i,j))是像素p(i,j)对应的梯度矢量流。可以用如下符号函数sign(x)来把梯度矢量流v(i,j)的方向归类 于-是我们可以如下公式定义潜在的扩散中心PsPsx={p(i,j)|x(i,j)≤x(i+1,j)andabs(sign(x(i,j))+sign(x(i+1,j)))≤1}Psy={p(i,j)|y(i,j)≤y(i,j+1)andabs(sign(y(i,j))+sign(y(i,j+1)))≤1}Ps=Psx∩Psy表格1给出了Psx的详细取值情况,Psy的情况与此类似。
表格1 Psx中保留的点。此处“←”表示向左的矢量,“0”表示零矢量,而“→”表示向右的矢量。

按照上述定义计算出的Ps可能含有位置非常靠近的点,这些点实际上只代表一个扩散中心,因此有必要按照某种规则对他们进行合并和精简。这里多种聚类算法都可以做到合并和精简,本发明中利用Ps中各点的欧氏距离,并以分割目标的最小尺度(定义为对象的内切圆的直径)Dmin为阈值,对Ps中的点进行聚类即可完成合并与精简。虽然这些冗余点的存在并不会导致最终结果错误,但却会带来不必要的计算负担。步骤3活动轮廓初始化、进化和选择计算出扩散中心以后,以每个扩散中心为圆心,作一个较小的圆作为初始的活动轮廓。其直径可以取上述分割目标的最小尺度Dmin,或者取单位长度,如一个像素宽度为半径。由于扩散中心往往有多个,因此相应的初始轮廓也有多个。因此,由于可以一次性地提取一幅图像的多个扩散中心,所以可以一次性对每个分割目标进行轮廓初始化,从而最终实现一次分割多个目标。并且由于计算扩散中心和轮廓初始化的过程都不需要与人交互,就实现了此过程的自动化。
有时,有一些轮廓在进化过程中会遇到图像的(不是分割目标的)外边界,这在扩散中心位于图像的背景上时常常发生。由于我们总是想要得到一个对象的完整边界,上述轮廓就被抛弃。
轮廓的进化结束后,我们得到一些准边界,如(e)所示,很明显其中的两个不是我们想要的边界,因该按照某种规则除去它们。
本发明中以轮廓的外能作为判断的基准。其中外能的计算不再以梯度矢量流场为准,而是以边缘梯度f为准。这是因为梯度矢量流在边缘和其它地区的数值相差较小,这在轮廓进化的时候是有利的,但不适合此处比较外能大小。如(e)所示,两个为边界都有相当大的一部分位于非边缘地区,这些地方的边缘梯度f要远小于边缘地区,因而位于这些地方的活动轮廓点的外能要远高于边缘地区的活动轮廓点。由于整个活动轮廓的外能就是其每个活动轮廓点的外能之和,因此有较多活动轮廓点位于非边缘地区的轮廓就拥有很高外能,分割目标的边界有罅隙的情况,则只有很少的点落在非边缘地区,所以虽然有个别活动轮廓点的外能较高,其总和并不高,所以比较外能可以有效地区分为边界和真正的边界。本发明中具体实现如下1.将活动轮廓C(i)按照外能Eext(i)排序,其中Eext(i)>Eext(i+1);2.计算相邻活动轮廓的外能的相对差值Diff(i,i+1)=(Eext(i)-Eext(i+1))/Eext(i+1);3.找出最大的差值Diff(j,j+1),并记录其标号j;4.以标号j为分界点活动轮廓C(j)和C(j)之前的活动轮廓被丢弃。
如(f)所示,伪边界因为它们更高的外能而被除去了。此处我们的算法是寻找最大相对差值,这是一种无监督的方法,仍然有可能导致分割错误。在实际应用中,当积累了一定的先验知识后,可以结合阈值和求最大相对差值的方法,合适的阈值必须通过积累而来。这种比较外能的方法可以允许有一定的罅隙和噪声存在,保持了原始活动轮廓模型的鲁棒性。运行结果我们用C++实现了上述算法,验证本发明提出的算法的有效性和实用性,作为一种自动分割技术的新思路是可行的。
我们用C++实现了上述算法,验证本发明提出的算法的有效性和实用性,作为一种自动分割技术的新思路是可行的。
如图5所示,本发明的方法用于实际医学图像的例子,可以看出我们的方法找出了两个主要的分割目标,并定位到了准确的边界。
权利要求
1.一种基于活动轮廓模型的多个图像的自动分割方法,包括步骤b)计算梯度矢量流场;b)搜索并精简梯度矢量流扩散中心;c)活动轮廓初始化、进化和选择。
2.按权利要求1所述的法,其特征在于所述的计算梯度矢量流场包括步骤a)对灰度图像计算其边缘图,然后计算边缘图的梯度;b)根据上述梯度图计算梯度矢量场,得到梯度矢量场;c)根据梯度矢量场计算梯度矢量流的扩散中心。
3.按权利要求1所述的法,其特征在于所述的搜索并精简梯度矢量流扩散中心包括步骤根据目标对象的最先尺度,按照彼此之间的距离,合并上述计算出来的扩散中心,减少需要进行初始化的轮廓的数目。
4.按权利要求1所述的法,其特征在于所述的活动轮廓初始化包括步骤以每个扩散中心为圆心,以目标对象的最小尺度为直径的圆,这样针对每个扩散中心都作初始化,每个扩散中心都代表一个潜在的目标。
5.按权利要求1所述的法,其特征在于所述的活动轮廓进化包括步骤以梯度矢量场作为活动轮廓的外能,推动轮廓的进化,知道进化结束,轮廓不再移动。
6.按权利要求1所述的法,其特征在于所述的活动轮廓的选择包括步骤a)计算每个活动轮廓的能量并排序,形成按照能量由低到高排列的队列;b)计算上述排序后的轮廓之间的能量差,找出差值最大的位置,并以该位置为界限,能量比该位置的轮廓高的所有轮廓被抛弃,余下的轮廓代表分割目标的边界。
全文摘要
一种基于活动轮廓模型的多个对象的自动分割方法,包括步骤c)计算梯度矢量流场;b)搜索并精简梯度矢量流扩散中心;c)活动轮廓初始化、进化和选择。本发明的利用活动轮廓模型的多个对象的自动分割方法,在保持了基于模型的分割方法抗噪声性能好的情况下,实现了初始化过程的自动化,从而实现了整个分割方法的自动化。在医学图像辅助诊断系统、医学图像三维重建系统等领域中有着重要的应用价值。
文档编号G06K9/34GK1471054SQ02126930
公开日2004年1月28日 申请日期2002年7月26日 优先权日2002年7月26日
发明者葛行飞, 田捷 申请人:中国科学院自动化研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1