Peng Lv

毋意,毋必,毋固,毋我。 言必行,行必果。

导航

[Reship] Level Set方法简介

This article came from

http://www.360doc.com/content/07/1008/15/24180_796556.shtml

http://www.cnblogs.com/tabatabaye/articles/891232.html

Thanks to tabatabaye very much!

---------------------------------------------------------------------------------------------------------------

Level Set方法是美国数学家Osher(加州大学洛杉矶分校)和Sethian(加州大学伯克利分校)合作提出的。后者因为对Level Set的贡献获得了去年美国数学会与工业应用数学会联合颁发的维纳奖。遗憾的是这两位Level Set的开创者现在正为争夺Level Set的名誉而对簿公堂。

Level Set方法是他们在98年文章“Front Propagation with Curvature Depedent Speed: Algorithms Based on Hamilton-Jacobi Formulation"中第提出的。这个方法提出以后被成功地应用于流体力学,计算机图形学,材料科学等领域。应用于图像处理和计算机视觉始于93年Caselles等人和95年Malladi等人的两篇著名文章。他们用Level Set来表示Snakes,想法很简单:一个平面上的曲线可以表示成一个二元函数z=f(x,y)的零点集合(Zero Level Set),既这个二元函数z=f(x,y)所表示的三维曲面与xy平面的交线。更一般地,任何N维曲面都可以表示为一个N+1维曲面与一个N维超平面的交 集,或称为N+1维曲面在一个N维超平面上的投影。相对最早的Snake(用参数化的曲线,所以也叫parametric active contour),用level set表示的活动曲线叫着Geometric Active Contours。

用二维曲面与二维平面的交线表示曲线,这在微积分甚至中学数学里都是很平凡的。但是,当我们要描述曲线运动的时候,用Level Set表示曲线就有很明显的优点。比如说,几条曲线在运动中merge成一条曲线,或一条曲线分裂成几条曲线,这样的拓扑变化是不可能表示成一条连续的参 数化曲线的运动。原因很简单,一条连续的参数化曲线是用一个一元连续函数来卞表示的,它显然不能表示几条分开的曲线(这与连续性矛盾)。

然 而,以上所说的曲线的拓扑变化却可以简单地表示成一个连续变化的的曲面与一个固定的平面的交线。这个曲面本身可以不发生拓扑变化,它可以始终是一个连续的 二元函数z=f(x,y)的图象。这样,复杂的曲线运动就可以简单地表示成一个更高一维的函数的演化,这可以用一个发展方程(evolution equation)来描述,数学里已经有很多工具可以用了。
再接着说说level set吧。我这次参加CVPR,遇到很多人都说level set很难。我甚至还听说有个做snake很有名的教授对level set很反感。说实话,我在去年开始实现别人的level set方法时,也对level set越来越讨厌。原因是:现有的level set方法实现跟理论不一致(这在Gomes和Faugeras的文章里已经指出),需要搀杂不少remedies,比如最令人讨厌的re-initialization。还有一些步骤,比如velocity extension,都不是让人赏心悦目的东西。这些步骤就象长在人身上的赘肉或瘤,也许是良性的,但总是让人看着极不舒服,甚至怕它恶化。

但是,还是有些人能把这样复杂而且不是那么优美的方法实现出来,而且用得不错,具有其它很多方法不具备的优点,比如让曲线自然地split和merge。象任何一种理论和方法一样,尽管有缺点(比如re-initialization),但毕竟大家还是看到了它的巨大潜力。所以这还是成为一个很热的研究方向。
更多level set请浏览Chunming Li博士的主页:
http://www.engr.uconn.edu/~cmli/

Level Set方法简介:

更多水平集书籍请进:http://shop34470562.taobao.com/         科研帝国外文书店
Level Set方法是由Sethian和Osher于1988年提出,最近十几年得到广泛的推广与应用。简单的说来,Level Set方法把低维的一些计算上升到更高一维,把N维的描述看成是N+1维的一个水平。举个例子来说,一个二维平面的圆,如x^2+y^2=1可以看成是二 元函数f(x,y)=x^2+y^2的1水平,因此,计算这个圆的变化时就可以先求f(x,y)的变化,再求其1水平集。这样做的好处是,第一,低维时的 拓扑变化在高维中不再是一个难题;第二,低维需要不时的重新参数化,高维中不需要;第三,高维的计算更精确,更鲁棒;第四,Level Set方法可以非常容易的向更高维推广;最后,也是非常重要的一点就是,上升到高维空间中后,许多已经成熟的算法可以拿过了直接用,并且在这方面有非常成 熟的分析工具,譬如偏微分方程的理论及其数值化等。当然,这种方法最为诟病的就是他增加了计算量,但新的快速算法不断出现,使得这也不是个大问题。

 

Level Set的适用范围:


这儿只是列举一些经典的领域,但并不完全,如果你能在自己的领域找到新的应用,祝贺你。 Level Set最初始的应用领域就是隐含曲线(曲面)的运动,现在Level Set已经广泛应用于图像恢复、图像增强、图像分割、物体跟踪、形状检测与识别、曲面重建、最小曲面、最优化以及流体力学中的一些东西。

 

Level Set需要掌握的知识:


学习和应用Level Set需要掌握偏微分方程理论及其数值化方法,其中又应该着重掌握偏微分方程中的Conversation Law,The Theory of Viscosity Solution(粘性溶液 ) and Hamilton-Jacobi Equation( 哈密尔顿-雅可比方程 )及其数值化方法。同时,在学习Level Set的时候也会经常遇到变分法和测度论的一些内容,但对这两方面的要求不高,了解一下就行了。

 

Level Set的推荐读物:


(1) Stanley Osher and Ronald Fedkiw. Level Set Methods and Dynamic Implicit Surfaces. Springer-Verlag (2002). 评点:这本书是创始人之一Osher写的,这本书是论述Level Set的最完整的书籍之一,更偏重于数值化的高精度解,应用领域涉及图像处理以及计算物理。
(2) James A. Sethian. Level Set Methods and Fast Marching Methods. Cambridge University Press (1999). 评点:这是另外一个创始人Sethian的作品,与Osher的书互有侧重,互相补充,这本书更偏重于Fast Marching Methods, 非结构化网格,涉及的应用领域更广泛。
(3) Guillermo Sapiro, Geometric Partial Differential Equations and Image Analysis, Cambridge University. 评点:这本书对理解Level Set也非常有帮助,它更偏重于图像中的几何特征,如曲率等,对几何偏微分方程介绍的比较详细。
(4) Gilles Aubert and Pierre Kornprobst,
Mathematical problems in image processing: Partial Differential Equations and the Calculus of Variation, Springer, Applied Mathematical Sciences, Vol 147, 2002。这本书数学味太浓,一般人没兴趣读下去,但如果你确实想对你的方法奠定更好的理论基础,这本书就非常有用了,它可以指导你应该在哪方面下功夫。 另外,这边书的前言和第一章写的非常好,非常值得一读。
总评:(1)和(2)是学习Level Set常备案头的手册, 如果你想深入,(3)和(4)也应该看一看。

 

Level Set推荐文章


(1) Osher, S., and Sethian, J.A., Fronts Propagating with Curvature-Dependent Speed: Algorithms Based on Hamilton–Jacobi Formulations, Journal of Computational Physics, 79, pp. 12–49, 1988. 评点:这是开创Level Set的一篇文章,必读。
http://math.berkeley.edu/~sethian/Publications/publications.html
这儿可以下载,但是这儿下载的文章只有文字没有图,要想看真正原版的,到图书馆复印吧。

(2) Osher, S. and Fedkiw, R., “Level Set Methods: An Overview and Some Recent Results”, J. Comput. Phys. 169, 463-502 (2001). 评点:这是一篇比较早的综述,UCLA CAM Report 00-08。
http://www.math.ucla.edu/%7Eimagers/htmls/reports.html可以下载。

(3) Richard Tsai and Stanly Osher,level set methods and their applications in image science,COMM. MATH. SCI. Vol. 1, No. 4, pp. 623-656 评点:这篇综述内容更丰富些,结果也比较新。intlpress.com/CMS/issue4 /levelset_imaging_chapter.pdf 可以下载。
总评:关于Level set的文章太多,无法一一列举,强烈建议到下面的网址逛一逛,那儿有最新的文章。http://www.math.ucla.edu/~imagers/reports.htm

 

Level Set推荐网站:


(1)http://math.berkeley.edu/~sethian/level_set.html
评点:这是Sethian的网站,上面关于Level Set的论述非常多,分门别类,非常清晰。
(2)http://www.math.ucla.edu/~imagers/
评点:这是UCLA的研究组,由Osher创办,关于Level Set的新进展几乎都跟他们相关,这个网站是关注Level Set的最新新闻的最好的地方。

Level Set的工具包:
http://www.cs.ubc.ca/~mitchell/ToolboxLS/index.html评点:这是Michell开发的工具包,通用性比较好,缺点是自己修改起来非常麻烦。建议自己重新写这些函数,可以把这个工具包拿来验证自己写的对否。

更多水平集书籍请进:http://shop34470562.taobao.com/ 

posted on 2013-10-06 16:03  Lvpengms  阅读(317)  评论(0)    收藏  举报