`
willzh
  • 浏览: 300853 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Level Set方法简介

    博客分类:
  • vfx
阅读更多


  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://www.sciencetimes.com.cn/m/user_content.aspx?id=253159

分享到:
评论
2 楼 willzh 2009-11-16  
不好意思,转载的果然有些不靠谱…也没仔细读…仔细读也不一定明白…
1 楼 night_stalker 2009-11-16  
别的不说,Viscosity Solution: 粘性解,不是粘性溶液 ……

相关推荐

    Level Set Methods and Fast Marching Methods.pdf

    1. **Level Set 方法简介** - 定义与起源 - 应用领域:计算几何、材料科学、机器人技术、图像处理及流体动力学 - 技术原理:通过追踪移动界面来模拟和分析复杂系统的动态变化 2. **Fast Marching 方法概述** - ...

    LevelSet原理

    ### LevelSet原理详解 #### 一、概述 Level Set 方法是一种强有力的工具,广泛应用于图像处理、计算机视觉以及科学计算等领域。这种方法由 J.A. Sethian 在其著作《Level Set Method: An Act of Violence》中进行...

    Level Set Methods and Dynamic Implicit Surfaces

    Level Set Methods(水平集方法)和Dynamic Implicit Surfaces(动态隐式曲面)是计算几何中的重要概念,广泛应用于图像处理、计算物理等领域。Level Set Methods由Stanley Osher和Ronald Fedkiw等人提出,并在Osher...

    code of Levelset

    【Levelset方法】 Levelset方法是一种在计算几何和图像处理中广泛使用的数值技术,它通过将曲线或者表面表示为零水平集(等值线)的连续函数来追踪形状的变化。这种方法由Osher和Sethian在1988年提出,主要应用于...

    levelset图像分割

    他的研究工作对Levelset方法进行了深入的理论分析和实践改进,包括引入能量最小化框架,优化速度项的定义,以及提出适应性强的动态参数调整策略。他的工作不仅提升了Levelset方法的性能,还促进了其在医学影像分析、...

    3D_LevelSet 2_levelset_forwardweh_3Dlevelset_

    《3D LevelSet方法在3D医学图像分割中的简单实现》 在计算机视觉与医学成像领域,3D LevelSet方法是一种广泛应用于图像分割的重要技术。该方法通过数学上的水平集理论,对复杂的三维图像进行精确分割,尤其适用于...

    level set 编程书籍

    Level Set方法是一种在计算几何、图像处理、物理模拟等领域广泛应用的数学工具,尤其在界面捕捉方面表现出极高的效率和灵活性。它最初由Osher和Sethian在1988年提出,是解决移动界面问题的一种非局部方法。通过将...

    VOF法与Level Set法的比较

    VOF法与Level Set法是界面捕获类算法中两种重要的数值方法,它们在流体动力学、材料学、图像处理等领域有着广泛的应用。界面捕获类算法的主要目的是在计算流体力学中处理和模拟具有不同物理性质的流体之间的界面。V...

    LevelSet_CV

    【LevelSet_CV】是一个基于计算机视觉(CV)的代码示例,主要涉及Level Set方法。Level Set方法是一种处理图像分割、目标跟踪等CV问题的有力工具,它通过演化曲线或者表面来描述图像特征,尤其适合处理形状变化的...

    level set methods and dynamic implicit surfaces和工具箱

    Level Set 方法和动态隐式曲面是计算机图形学和计算几何中的重要概念,它们在处理形状建模、图像处理和物理模拟等领域具有广泛的应用。Level Set 方法是一种利用等值线来表示和操作曲线和曲面的技术,而动态隐式表面...

    level_set_image.rar_level set_level set 方程

    这个"level_set_image.rar_level set_level set 方程"的压缩包内容可能包含了一个名为"level_set_image.m"的MATLAB程序,用于演示或实现Level Set方法在图像处理中的应用。 Level Set方法的核心在于用一个标量函数...

    用LevelSet方法求解具有自由面的流动问题

    ### 用LevelSet方法求解具有自由面的流动问题 #### 概述 Level Set 方法是一种先进的数值模拟技术,主要用于追踪复杂流体界面(如自由表面)的演化过程。这种方法在处理多相流问题时非常有效,特别是当涉及到自由...

    level set matlab

    在提供的压缩包文件“levelset”中,可能包含了实现这些步骤的MATLAB脚本和函数。通过阅读和理解这些代码,你可以深入了解Level Set方法的实现细节,并且可以将其应用到自己的项目中,例如图像分割或形状恢复等任务...

    LevelSet toolbox

    1. **初始化**:LevelSet方法的起点通常是定义一个初始的水平集函数,工具箱提供函数来创建不同类型的初始曲线或表面,如球体、椭球或用户自定义形状。 2. **演化**:通过数值求解Euler-Poincaré方程,工具箱能...

    lsm&vof openfoam.rar_9IZ_CFD_level set vof_openfoam vof_多相流

    在OpenFOAM这一开源计算流体动力学(CFD)软件中,Level Set(水平集)和Volume of Fluid(VOF)方法是处理多相流问题的两种重要技术。这两种方法在模拟液体与气体相互作用、液滴碰撞、喷雾冷却、自由表面流动等复杂...

    levelset method图像分割算法

    **Levelset方法图像分割算法详解** Levelset方法是一种在计算机视觉和图像处理领域广泛应用的图像分割技术,尤其在处理复杂的形状和边界时表现突出。它结合了偏微分方程(PDE)理论与几何演化思想,使得图像分割...

    水平集level set、李纯明博士DRLSE改进方法(matlab代码)

    水平集(Level Set)方法是一种在图像处理和计算几何领域广泛应用的数学技术,它通过将形状表示为偏微分方程中的等值线来处理曲线和曲面的演化问题。这种方法最初由Osher和Sethian在1988年提出,能够自然地处理形状...

    一个小程序,帮助认识matlab及用level set编程的方法

    一个小程序,帮助认识matlab及用level set编程的方法-a small program to help recognize and Matlab programming with the level set method

Global site tag (gtag.js) - Google Analytics