您好,欢迎访问三七文档
无边界活动轮廓模型TonyF.Chan,LuminitaA.Vese摘要:在本文中,我们提出了一种基于曲线演化,Mumford–Shah函数和水平集的新的活动轮廓模型来检测图像中的目标。无论边界是否由梯度定义,我们的模型均可检测目标。最小化能量函数可以作为最小化问题的一种特例。在水平集方程中,最小化问题则变为平均曲率流问题,就像活动轮廓的演化一样,此模型可以在所需要的边界停止演化。但是,停止的条件不像经典的活动轮廓模型一样依赖于图像的梯度,而是与相关的分割参数有关。最后,我们得到了不同的实验结果,特别是一些使用基于梯度的经典Snakes模型检测目标却得不到很好效果的例子。而且,在我们的模型中,初始曲线可以在任何位置,且可以自动检测内部轮廓。I.引言Snakes模型(活动轮廓模型)的基本思想是演化一个曲线,再找到几个约束条件用以检测图像中的目标。例如,从曲线的周围开始检测,曲线朝着內法线方向移动,然后在目标的边界停止。是的一个开子集,是其边界。是给定的图像,C(s):[0,1]是参数化曲线。在经典的Snakes(活动轮廓)模型中(见[9],[3],[13],[4]),要用到边缘检测器,它依靠于图像的梯度停止曲线演化到所需要的边界。我们将在下文简要回顾这些模型。Snake模型[9]中能量函数:(1),和都是正向参数。前两项控制轮廓的平滑度(内部能量),第三项使轮廓朝着目标移动(外部能量)。很明显,通过求取最小化能量(1),我们可以在极大值点定位曲线,就像边界检测器一样,可以保证曲线(对象边界)的光滑。一个普通的边界检测器可以定义为一个由图像的梯度决定的正向单调递减函数g,例如:此外:,是和高斯分布的卷积,.函数在均匀区域是正数,在边界为0.在曲线演化的问题当中,水平集方法以及Osher和Sethian提出的平均曲率运动法运用很广泛,因为它们都可以处理图像的尖角区以及拓扑变化。而且,用矩阵来解决离散化问题。曲线C用Lipschitz的隐函数来表示:,演化曲线是零水平曲线在t时刻的函数。曲线C以速度F沿着法线方向移动,特征方程如下:,集合定义为初始轮廓。当曲线以平均曲率运动(是通过点(x,y)的曲率)时,方程变为:,,基于平均曲率运动的几何活动轮廓模型有如下演化方程:、,,(2)是边界函数中p=2时的情况,为常量,是初始水平集函数。它的零水平集曲线以速度朝着正常的方向运动,在目标的边界停止时g=0.常量v是一个修正项,以便于保证数始终为正数。这个常量可以解释为把曲线推向目标,直到曲率变为无穷或者负数。因此,v0是内部曲线区域的约束条件,随着曲线生长的速度的变化而变化。另外两个基于水平集的活动轮廓模型在[13]中提出,依然是利用图像的梯度作为曲线的停止条件。第一个演化方程为:V是常量,和分别为图像梯度的最大值和最小值。当梯度达到最大值的时候,演化曲线的速度变为0,演化曲线在目标边界停止。第二种模型[13]与几何模型[3]相似,只是p=1.另外相关的模型见[14]和[15]。测地线模型[4]如下所示:(3)根据图像显示,它在黎曼空间中的矩形计算存在问题。解决最小化问题就是找到最小路径问题。例如,当为0时,C最小。这时C为目标的边界。[4]的测地线活动轮廓模型(3)也有一个水平集方程:,,(4)因为所有的经典Snakes和活动轮廓模型都是依赖边界函数g,曲线的停止条件都是依靠图像的梯度,所以这些模型都只能检测由梯度定义的图像。实际上,离散梯度是有界的,而且停止函数g在边界一定不为0,特别是模型[3],[13]-[15]中,曲线有可能超过边界。如果图像包含噪声,等方向高斯平滑较强的时候,将会使边界非常平滑。在本文中,我们提出一种不同的活动轮廓模型,不需要边界停止函数。例如,它不用把梯度作为图像的停止条件。停止条件是基于Mumford–Shah分割技术[18]。用这种方法,我们得到了一个模型,无论图像有无梯度,是否平滑,是否连续(不同轮廓的讨论,我们参考了文献[8]),这个模型均可检测边界。此外,我们的模型有一个水平集方程,内部轮廓可以自动检测,初始曲线可以在图像的任何地方。本文的提纲如下。下一个部分我们介绍作为能量函数最小化的模型,讨论Mumford–Shah方程与图像分割的关系,然后根据水平集方程建立模型,再计算相关的Euler-Lagrange(欧拉-拉格朗日)等式。在第三部分我们通过大量的合成和现实图像来验证我们的模型,由此来说明我们在上文提到的优点。在文章的最后总结全文。活动轮廓和分割的相关研究分别在[29],[10],[26]和[24]中。[28]和[11]是基于散乱点的重构,最近的文献[20]和[21]提出了测地线活动轮廓模型与基于活动轮廓的经典梯度模型相结合的方法。II.模型的描述我们定义演化曲线C为开区间w的边界如,在以下文章中,inside(C)表示区域w,outside(C)表示区域Ω\.我们的方法是求取能量函数的最小化。在这里简单介绍一下模型的基本思想。假设图像由两个不同强度的区域和组成.再进一步假设被检测的目标在中,用来表示它的边界。然后我们有为内边界[或者是inside()],为外边界[或者是outside()]。现在让我们考虑以下“合适的”条件:C是任意变量曲线,常数和取决于C。很明显,在这简单的例子中,目标的边界曲线是上式中取最小时C的值,即:例如,如果曲线C是目标的外侧,则,如果曲线C是目标的内测,则,.如果曲线既在内侧,又在外侧,则,。最后,如果C=,则能量函数最小。例如,曲线C是目标的边界。这些基本的情况在图1中均有说明。,,,,Fitting0Fitting0Fitting0Fitting0图1.考虑初始曲线所有可能的位置。当曲线在目标边界上时固定参数最小在我们的活动轮廓模型中,我们会尽量减少上述的合适条件,加上一些正归化条件,比如曲线的长度,C内的面积等。于是能量函数可以进行如下定义:皆为固定的参数。几乎在我们的所有数值计算中,都有因此,我们考虑最小化问题:备注1:在我们的模型中,条件Length(C)可以重新定义为的特殊情况。如果考虑到N1的任意维度的情况(例如),则对于任意N,p=1或p=N/(N-1).再使用等周不等式[7],把和Area(inside(C))做比较:Area(inside(C))c是由N决定的常量。A.Mumford–Shah方程相关Mumford–Shah分割方程为[18]:是给定的图像,和为正数。最小化上述函数得到图像u,由光滑区域和边界C组成。这个问题的简化形式就是把变成u的分段常值函数。例如,在Ω\C的每个的连接部分,u=常量。因此,D.MumfordandJ.Shah提出[18],在每个的连接部分,。这种情况称之为最小分段问题。我们的模型(v=0,)是分段问题的一种特例,我们把u看作是的最佳近似值,有两种情况:(5)C为Snake模型(活动轮廓模型)的边界。这种最小分段问题的特殊情况可以通过水平集法来计算解决[19].这将在下文中提出。B.模型的水平集方程在水平集法中[19],代表Lipschitz函数(Ω)的零水平集,比如:是开区间,.我们在图2中解释了上述假设和水平集方程中的符号,还定义了演化曲线。更多细节详见[19].图2.曲线在各个方向的演化对于变分活动轮廓的水平集方程,我们用未知变量代替了未知变量C,遵循[27]所示。单位阶跃函数H和单位冲击函数定义为:,,,在能量F中,我们有以下条件(如[7]所示):,,且:所以,能量函数定义为:我们注意到,u在(5)中定义一样,是我们模型(Mumford–Shah最小化分段问题的一种特例)的一种思路,可以用如下方程表示:,保持不变,根据常量和,求取能量函数的最小值。和可以用表示:(6)0,还有(7)0.方程对和的值没有约束。和实际上为:备注2:通过先前的公式我们可以知道,能量可以写成的函数,也是w的特征函数。我们记为.这样,能量函数变为新的形式因此,我们可以考虑新的最小化问题:,(8)在特征函数中设置Ω的有限周长。意思是Lebesgue测量法。当然,我们希望能量函数存在极小值。对于一般的图像,我们的模型是最小分段问题的一种特例,这已经在[18](假设在连续),[16]和[17]中得到证明。而且,Mumford–Shah分割法存在普遍问题在[5]中也得到了证实。另一方面,由下半连续的总变量和对微积分变量的讨论可知,我们的最小化问题中有个极小化变量(这可以相互证明其存在)。在本文中,水平集函数仅仅代表一条曲线,这有很多好处。但是,问题也很明显,这问题只能靠特征函数来解决。为了计算未知函数与Euler-Lagrange(欧拉-拉格朗日)等式之间的关系,先正规化函数H和,用和表示,令.则为H的正规化函数,.在后面还会给出更多这些近似值的例子。对F进行正规化,我们可以得到保持和不变,通过推导的Euler-Lagrange(欧拉-拉格朗日)等式求取的极小值,再确定当时下降方向的速度。对求关于t的偏导:,,(9)为边界的外法线向量,为在边界的导数。III.其它类似方法的正规化首先是在[27]中提出:在本文中,我们应用的是以下H的正规化:这些H和的不同的近似值和正规化如图3所示。当时,这些近似值都趋近于H和.不同的是,在很小的区间[-,]中不为0,处处不为0.因为我们的能量函数有很多峰值(因此有很多极小值),所以初始轮廓决定了选取何种方法。使用和时,算法计算的是能量函数的局部极小值,使用和时,算法计算的是全局极小值。原因之一是的Euler-Lagrange(欧拉-拉格朗日)等式针对的仅仅是局部,{}中只有很少的水平曲线使用和;但是,使用和时,等式在全局都起作用。实际上,我们使用第二种种方法,可以得到全局极小值,不依赖初始轮廓;而且,还可以自动检测内部轮廓(详见第IV部分)。我们提到,为了把推广到所有水平集中,可能的方法是用代替(见[27])。在本文中,我们使用来使我们的问题与初始极小值问题相近。把推广到所有水平集中的问题可以通过使用的近似值来解决。图3.冲击函数和阶跃函数的正规化在中,为了离散化等式,我们使用了有限差分隐式方程。我们重新定义了一些常用符号:h为空间步长,为时间步长,()=(ih,jh)是网格点,且为的近似值,且有限差分式为:,,,算法如下所示(我们非常同意[23]中散度算子的离散化和[1]中的迭代算法):知道后,我们分别使用(6)式和(7)式计算和.然后,我们再通过如下的离散化和(9)式的线性化计算:这个线性系统通过迭代法来解答,更多细节见[1].当使用水平集和单位冲击函数时,要先初始化和零水平集曲线的单位阶跃函数,如[25]和[27]所示。用以防止水平集函数图像变得太平坦,或者可以通过尺度改变和正规化得到。对于我们的算法,可以进行初始化,也可以不进行初始化。另一方面,两个函数也不能固定不变,就像Fedkiw提到的一样,这可以阻止内部轮廓的生长。本文中仅仅有少部分的数据结果进行了初始化,用以解答以下等式:(10)是在t时刻的值。即,可以在(10)中得到。(10)中的和有相同的零水平集,且趋近于1.为了离散化等式(10),我们使用[22]和[25]中提出的方法。算法是主要步骤如下:用初始化,n=0.通过(6)和(7)计算和.计算在(9)式中的PDE,从而获得.在曲线中的单位阶跃函数中初始化(此步骤可以省略)检测结果是否平稳。如果不是,则令n=n+1,再重复上述步骤。我们发现,对的时间独立PDE的应用不是最关键的。而直接从极小值问题中演化而来的问题也可以通过有限差分方程来解决。IV.实验结果我们使用本文中提出的模型来处理不同轮廓和形状的合成或实际图像,得到结果,从而总结全文。我们显示了原始图像和的分段常值近似值(平均值和已知)的活动轮廓演化过程。在实验中,我们一般进行如下参数设置:,(空间步长),(时间步长)。为了自动检测内部轮廓,保证计算的是全局极小值,我们用冲击函数和阶跃函数的近似值和。只有参数在实验中是变化的。如果想要检测所有或者大多数目标,就要尽可能的小。如果我们仅仅
本文标题:Active_Contours_Without_Edges_翻译_无边界活动轮廓模型
链接地址:https://www.777doc.com/doc-4052763 .html