a叶技2011年第24卷第6期 Electronic Sci.&Tech./June.15.201 1 基于Level Set方法的图像分割 郭元卡 (西安电子科技大学电子工程学院,陕西西安摘要710071) 研究了基于水平集的图像分割,提出了一种无需重新初始化,基于边缘信息的变分水平集图像分割算 法。该算法消除了影响水平集计算量的重新初始化步骤,加速了轮廓线的演化,提高了算法的鲁棒性,同时使得初始 化方法更加灵活。 关键词 图像分割;水平集;重新初始化;变分水平集 中图分类号TP391.41 文献标识码A 文章编号1007—7820(2011)06—071—04 Segmentation of Images Based on Level Set Methods GU0 Yuanka (School of Electronic Engineering,Xidian University,Xi’an 7 1007 1,China) Abstract This article concentrates on the research on segmentation of images based on level set.A variational level set algorithm for image segmentation is presented based on edge information.Without re-initialization,this al・ gorithm completely eliminates the need for costly re-initialization,accelerates contour evolution,enhances robust- ness,and provides more flexible initialization methods. Keywords segmentation of images;level set;re—initialization;variational level set 图像分割是由图像处理到图像分析的关键步骤, 分割的准确性直接影响后续任务的有效性,因此具有 重要意义。变分水平集方法 是直接通过极小化关于 水平集函数自身的能量函数而得到演化的偏微分方程 (PDE),故具有参数化Snake模型的优点,又具有水 平集方法的优点。相对于传统的由纯粹PDE驱动的 水平集图像分割方法,基于变分水平集的图像分割方 法可以在能量函数中自然地融入附加约束信息,因而 可以产生鲁棒性更强的结果。 其中,n= +V ㈤ =0 (2) 假设F为外法向方向的速度,那么 警n=F 。因此,得到基本方程式 (3) +F l ’7 I=0 T (4)、 , 基本方程式是水平集函数及相应的水平集在法向 力F推动下的演化方程。 1 LeveI Set方法 水平集的基本思想是将曲线看成高一维空间中某 一2 算法原理 传统的水平集方法在每次迭代后,都需要对水平 集函数进行重新初始化,以此修正迭代造成的水平集 位置偏离。虽然这样保证了演化计算的稳定性,但花 费时间长,而且重新初始化较复杂,严重阻碍了水平 集方法的广泛应用。 函数西的零水平集,同时曲线的演化也扩充到高 维的空间中。将水平集函数按照它所满足的演化方 一程进行演化或迭代,由于水平集函数不断进行演化, 所以对应的零水平集也在不断变化,当水平集演化趋 于平稳时,演化停止,得到曲线形状。 考虑零水平集 (t)所对应的水平集函数西,则有 ( (t),t)=0 (1) Gomes J与Faugeras O 指出,重新初始化水平 集函数是水平集理论与实践的矛盾之处。理论上,重 对方程两边求关于时间的偏导数,有 收稿日期:2011-01-06 新初始化没有必要;实践中,为保证水平集在演化过 程中不会偏离符号距离函数(SDF)太远,时间步长必 须选得足够小,这样做又增加了迭代次数,增加了演 化的时间。下面介绍一种无需重新初始化的变分水平 WWW.dianzik_Pji.Drg—— 7/ 作者简介:郭元卡(1987一),男,硕士研究生。研究方向: 医学影像信息处理。 郭元卡:基于Level Set方法的图像分割 集算法 J。 (1)内部能量。设 为水平集函数,SDF满足一 能量函数A (咖)用来加速曲线的演化,可以看 出,当边缘检测函数g为常数1时,A (咖)即为 = 个非常好的性质,即1 7 I=l;反之,满足l V I= 1的任意函数 都可表示成一个SDF加一个常数 4 J。 所以引出如下积分 {( ,Y)l ( ,Y)<0} 区域的加权面积。一般来 说,当初始轮廓线位于目标外部时, 为正值,这样 可以促使轮廓线快速收缩;反之,当初始轮廓线位于 目标内部时, 为负值,可以加快轮廓线的膨胀 速度。 P(咖)=I÷(I 7 I一1) dxdy (5) 作为函数 与 中SDF接近程度的一个衡量标准。 于是,得到完整的能量函数 ( )=/xP( )+AL (咖)+ ( ) = 根据上述定义的函数P(西),提出以下变分公式 占( )=uP(咖)+ (咖) (6) 式中, >0为常数,它控制着“惩罚”水平集 偏离 SDF的力度,P( )称为函数 的内部能量;基于图 像数据的能量 (咖)用于驱动 的零水平集曲线向 图像的边缘演化,称为外部能量。 用 表示函数 的Gateaux导数,演化方程如 彻 寺(1 V咖l_1) d dy+A (咖)}V 4,Jd dy+ I g日(一 )dxdy (12) 将式(12)代人式(7),函数西满足欧拉一拉格朗日方 程 =0,最小化能量函数s( ),可得 ( = (7)所示。 警一塞 砌 他是最小化函数 的梯度流 。 (、 7) div(—尚)]+,t8(6)div(g )+ ( (13) 式中,△为Laplacian算子;V西是 的梯度;div为 散度。这一梯度流即是零水平集函数的演化方程。第 2、3项由外部能量而来,用于驱动 的零水平集曲 线向目标边缘运动。第1项中的 一函数(b根据式(7)表示的梯度流进行演化,在 的演化过程中,零水平集曲线通过外部能量 (咖) 进行演化;与此同时,由于内部能量“惩罚”的作用, 演化函数将自动保持为一个近似的SDF。因此,在提 出的公式中重新初始化步骤被完全消除了。 div(尚)-aiv[(1一南)V ]( 4) 可以理解为扩散率。 V o ll (2)外部能量。 设,为原始图像,g为边缘检测函数,定义如下 g (8) 为一个扩散项,因子1一 当I V西l>1时,扩散率为正值,这个扩散项是 一般意义的扩散,它使水平集函数 更加平坦,于 式中,G 是标准差为 的高斯核。当轮廓线位于图 像的边缘处时,图像的高斯梯度较大,边缘检测函数 g较小,曲线的演化速度几乎为零,轮廓线就会停止 在图像的边缘处。 定义函数 ( ,Y)的外部能量如下 , , 是f V f减小;反之,当f 7西f<1时,反向扩散使 得l V西{增大。通过这种扩散调节,使得l V l 1, 从而使水平集函数 始终接近符号距离函数。 3算法实现 (9) (咖)=ALg(咖)+vA ( ) (1)偏微分方程的求解。该算法采用有限差分的 方法来求解式(13)。在实际应用中,Dirac函数采用 式中,A>0和 均为常数。Ls(咖)和A (咖)定义如下 正则化的 ( )进行计算,6 ( )定义如下 (咖)=I ( )l v咖Idxdy A ( )=J g (一咖)dxdy (10) (11) fo,I l> 5 …s , ≤ 式中, 为单变量Dirac函数, 为Heaviside函数。 假设西的零水平集用可微的参数化曲线C(p), P∈[0,1]表示,那么 (咖)表示的是在正形投影公 文中所有实验选取 =1.5。 所有的空间偏导数 :、 :用中心差分来近似计 算,即 = 式ds=g(C(p))l C (P)I dp中咖的零水平集曲线的 长度 。 72——www.di ̄nzIk叫1.【】rq (16) 郭元卡:基于Level Set方法的图像分割 时间偏导数 0x用前向差分来近似计算,即譬= 边缘的定位没有太大影响。 (4)水平集函数收敛的判断。水平集函数收敛的 二 。于是,可以得到曲线演化的迭代方程 判断条件为 』 = div一南 iv(g ∑I 一蛾l Q: 一≤ 丁(19) 【 (O, ,Y)= 0( ,Y) 式中, 为满足l <const的网格点数目,其中 (17) const为实验常数。实验中,一般取h≤const≤2h,h (2)时间步长的选择。在实现水平集方法时,可 为空间步长,即离散网格大小。 以选择的时间步长r的范围明显大于在传统水平集方 算法的实现步骤为: 法中使用的时间步长范围,在这个算法中,丁可以设 (1)初始化:设置初始轮廓,可以设置为圆形、 在0.1~100之间。实验中,为保持水平集演化的稳 矩形或是一条非闭合曲线,根据式(18)计算水平集 定性,时间步长 和系数 必须满足 <÷。 函数的初始值 。 (2)利用迭代公式(17),计算西 。 采用较大的时间步长可以加速演化,但是,如果 (3)检查本次迭代是否收敛,如果收敛,则停止 时间步长的选择过大,在边缘定位时可能出错。一般 计算;否则,转至步骤(2),继续计算。 地,对于大多数图像选择丁≤l0.0。 (4)更新轮廓线,获得分割图像。 (3)水平集函数的初始化。在传统的水平集方法 中,必须将水平集函数 初始化为符号距离函数咖。, 4实验结果与分析 如果初始水平集函数明显不同于SDF,那么重新初始 用多幅图像对上述算法进行了实验,获得了较好 化步骤也不能将这个函数重新初始化为一个SDF。在 的分割效果。所有实验都采用式(18)所定义的初始 算法中,不仅重新初始化步骤得以完全消除,而且水 化方法。 平集函数也不再需要初始化为SDF。 图1中,参数A=5.0,/x=0.04, =1.5,时间步长 这里提出以下函数作为初始函数 。。令 是图 r=5给出了一幅像素大小为83×65的显微镜下观测到 像区域 的一个子集,aO.o是 的所有边界点的集 的两个细胞图像的轮廓演化过程。可以看到,两个细胞 合,它们能够被一些简单的形态学操作有效识别。于 的某些边缘非常模糊,演化曲线自动,将两个细胞 是,初始函数 。定义如下 分割出来,实验结果表明这种方法在处理弱目标边缘时 ,一P,( ,Y)fEi O.o—oR 有较强的鲁棒性。实验中,选择了一个矩形区域作为区 咖。( ,Y)={0,( ,Y)fie (18) 域 来计算初始水平集函数qbo,如图1(a)中所示。 ,力一 式中,P>0是一个常数。P一般选取P≥2 , 为正 则化Dirac函数 ( )定义中的宽度。 与传统由轮廓计算得来的SDF不同,上述初始 水平集函数是从图像区域 中任意一个子区域 中 计算而来,水平集函数的这种基于区域的初始化方法 不仅计算高效,而且在一些情况下应用较为灵活。例 (a)初始轮廓 (b)迭代5O次 如,如果感兴趣区域可以通过一些途径粗略和自动获 取,那么可以使用这些粗略获得的区域作为区域 来构造初始水平集函数 。。接下来,初始水平集函 数将根据演化方程稳定演化,同时它的零水平曲线可 以收敛于感兴趣区域的精确边缘。 虽然这种初始函数 。明显偏离了SDF,但由于 能量函数中的惩罚函数P(西)的调节作用,使水平集 (c)迭代100次 (d)迭代300次 函数西在其零水平集附近能够近似等于SDF,这对于 图1 细胞图像(83×65)分割结果 WWW.dianzikeji.0rq 73 郭元卡:基于Level Set方法的图像分割 图2中,参数A=5.0, =0.04, =3.0,时间 步长丁=5给出了一幅像素大小为84×84的两个目标 这种方法具有几个显著优点:它使得真正影响水 平集计算量的重新初始化步骤得以完全消除;灵活的 水平集函数初始化方法,使得初始轮廓线的选择更加 物图像的轮廓演化过程。这个时间步长明显大于在传 统水平集方法中使用的时间步长。在传统的水平集方 法中,初始轮廓线一般选取一条简单闭合曲线。而 图2(a)中使用了一条非闭合的直线作为初始轮廓 线,演化曲线将两个目标物都提取了出来,这是传统 水平集方法做不到的。 自由,并且计算也简便了很多。但该模型中的初始轮 廓线的选取依然受到很大,初始轮廓线需包围所 有待分割的物体,而且不能跨越同质区域。 5结束语 本文提出的无需重新初始化的变分水平集模型, 获得了满意的分割效果。但由于这个模型仅利用了图 像的边缘梯度信息,而没有考虑图像的全局区域信 息,使得模型对边缘模糊图像、噪声图像、纹理图像 的分割效果不理想。此外,该模型的迭代次数过多, 初始轮廓线的选取依然受到很大。 (a)初始轮廓 (b)迭代140次 参考文献 [1]ZHAO H K,CHAN T F,MERRIMAN B,et a1.A varia- tional level set approach to muhiphase motion[J].Journal Of Computational Physics,1996,167:179—195. [2] GOMES J,FAUGERAS O.Reconciling distance functions and level sets[J].J.Visiual Communic and Image Repre— (c)迭代180次 (d)迭代400次 sentation,2000,11(2):209—223. 图2两个目标物图像(84 X 84)分割结果 [3]LI Chunming,XU Chengyng,GUIa Changfeng,et a1.Lev— el set evolution without reinitilizataion:a new vailational for— 图3与图2参数相同给出了一幅像素大小为 128×128的脑部CT图像的去骨分割过程。 mulation[C].San Diego:IEEE International Conference on Computer Vision and Pattern Recognition(CVPR),2005: 430—436. [4] ARNOLD V I.Geometrical methods in the theory of ordina— ry differential equations[M].New York:Springer—Vet— lag,1983. [5]EVANS L C.Partila differentila equations[M].Providence R I:American Mathematical Society,1998. [6] VEMURI B,CHEN Y.Joint image registration and segmen— (a)初始轮廓 (b)迭代100次 tation[M].New York:Geometric Level Set Methods in Im— ging,2003.a [7] OSHER S,FEDKIW R.Level set methods and dynamic implicit surfaces[M].New York:Spring—Verlag,2002. (c)迭代l ooo次 (d)迭代l 800次 图3脑部CT图像(128 X128)的去骨分割结果 WWW.dionzik叫i.Drq