toolbox_fast_marching
所属分类:matlab编程
开发工具:matlab
文件大小:1402KB
下载次数:120
上传日期:2008-02-28 09:38:28
上 传 者:
787175
说明: 在MATLAB环境下的level set方法的实现,可以应用在多种领域中
(In the MATLAB environment to achieve the level set method, can be applied in a variety of field)
文件列表:
toolbox_fast_marching (0, 2008-02-14)
toolbox_fast_marching\.DS_Store (21508, 2008-02-14)
toolbox_fast_marching\batch_landmarks_error.m (192, 2005-11-16)
toolbox_fast_marching\batch_propagation_mesh.m (284, 2007-11-05)
toolbox_fast_marching\batch_shape_meshing.m (87, 2007-11-06)
toolbox_fast_marching\callback_active_contour.m (462, 2007-09-30)
toolbox_fast_marching\compile_mex.m (1749, 2008-02-10)
toolbox_fast_marching\compute_alpha_map.m (908, 2007-10-09)
toolbox_fast_marching\compute_bending_invariant.m (1730, 2007-11-03)
toolbox_fast_marching\compute_distance_landmark.m (3554, 2005-11-17)
toolbox_fast_marching\compute_eccentricity_transform.m (3222, 2008-01-28)
toolbox_fast_marching\compute_edge_energy.m (2180, 2007-11-08)
toolbox_fast_marching\compute_geodesic.m (7148, 2008-01-28)
toolbox_fast_marching\compute_geodesic_mesh.m (4159, 2007-12-04)
toolbox_fast_marching\compute_heuristic_landmark.m (502, 2005-06-06)
toolbox_fast_marching\compute_heuristic_multiresolution.m (1457, 2008-01-28)
toolbox_fast_marching\compute_levelset_shape.m (3005, 2007-10-05)
toolbox_fast_marching\compute_saddle_points.m (1563, 2008-02-14)
toolbox_fast_marching\compute_shape_boundary.m (1982, 2008-01-28)
toolbox_fast_marching\compute_voronoi_triangulation.m (2806, 2008-01-28)
toolbox_fast_marching\compute_voronoi_triangulation_mesh.m (842, 2008-01-28)
toolbox_fast_marching\convert_distance_color.m (576, 2007-03-10)
toolbox_fast_marching\copying (17992, 2006-06-28)
toolbox_fast_marching\copyright (808, 2007-04-25)
toolbox_fast_marching\data (0, 2007-09-27)
toolbox_fast_marching\data\.DS_Store (6148, 2007-05-21)
toolbox_fast_marching\data\apple.gif (480, 2006-07-06)
toolbox_fast_marching\data\brain.png (33282, 2007-09-27)
toolbox_fast_marching\data\camel.gif (619, 2006-07-06)
toolbox_fast_marching\data\cavern.png (21131, 2004-10-22)
toolbox_fast_marching\data\chan-vese.jpg (6702, 2004-04-20)
toolbox_fast_marching\data\chicken.gif (555, 2006-07-06)
toolbox_fast_marching\data\giraffe.gif (595, 2006-07-06)
toolbox_fast_marching\data\image01.tiff (28540, 2006-03-09)
toolbox_fast_marching\data\mm.png (104858, 2006-11-20)
toolbox_fast_marching\data\mountain.png (3384, 2001-02-23)
toolbox_fast_marching\data\road2.png (350277, 2005-05-08)
toolbox_fast_marching\data\room.png (631, 2005-02-04)
toolbox_fast_marching\data\room1.png (456, 2004-11-08)
toolbox_fast_marching\data\stephanodiscusniagarae.jpg (32495, 2005-02-04)
... ...
WARNING: you have to add the files under toolbox/ in your Matlab path.
The Fast Marching algorithm, introduced by Sethian (1996) is a
numerical algorithm that is able to catch the viscosity solution
of the Eikonal equation |grad(D)|=P. The level set {x \ F(x)=t}
can be seen as a front advancing with speed P(x).
The resulting function D is a distance function, and if the speed
P is constant, it can be seen as the distance function to a set
of starting points.
The Fast Marching is very similar to the Dijkstra algorithm that
finds shortest paths on graphs. Using a gradient descent of the
distance function D, one is able to extract a good approximation
of the shortest path (geodesic) in various settings (euclidean for
P constant, and a weighted riemanian manifold with P varying).
The main reference about the Fast Marching algorithm is the book
Level Set Methods and Fast Marching Methods Evolving Interfaces
in Computational Geometry, Fluid Mechanics, Computer Vision, and Materials Science
J.A. Sethian, Cambridge University Press, 1999
Cambridge Monograph on Applied and Computational Mathematics
A good review of the Fast Marching in 3D together with some applications
can be found in
Fast extraction of minimal paths in 3D images and application to virtual endoscopy.
T.Deschamps and L.D. Cohen.
September 2000. To appear in Medical Image Analysis.
Basic features:
* The functions 'perform_fast_marching_2d' and 'perform_fast_marching_3d'
compute the distance function from a set of starting points.
* To extract the geodesics between these starting points and an
ending point, you can use 'extract_path_2d' and 'extract_path_3d'.
* There are also test applications 'test_fast_marching_2d'
and 'test_fast_marching_3d' so that you can easily
understand the use of the functions.
Additional features:
* Circular path extraction : a callback function can be passed
to the C++ function 'perform_front_propagation_2d' to prevent
the front to passing though some area. The function
'perform_circular_fast_marching_2d' implement a simple trick,
by prenventing the front to pass through an horizontal half line,
which in turn enable the extraction of circular paths.
The function 'test_circular_fast_marching_2d' shows
an application of this to cell segmentation.
For more information you can read the original paper:
Appleton, B., Talbot, H.,
Globally Optimal Geodesic Active Contours,
Journal of Mathematical Imaging and Vision, to appear.
* Constraint path planing : the script 'test_path_planing'
shows the application of 3D fast marching to the extraction
of optimal path for a tiny rectangle.
The function 'generate_constrained_map' generate the 3D speed
function for a given 2D map (the 2D speed function that
should be used if the object to move was a point).
For more information see:
http://math.berkeley.edu/~sethian/Movies/Movierobotics.html
and read
Kimmel, R., and Sethian, J.A.,
Fast Marching Methods for Robotic Navigation with Constraints
Center for Pure and Applied Mathematics Report,
Univ. of California, Berkeley, May 1996
The main computation are done in a mex file so it is very fast
(using a Fibonacci heap structure). To compile the mex files,
simply run 'compile_mex'. This should be ok if you have
set some C++ compiler (use 'mex -setup').
Precompiled version (.dll) for Windows are provided.
Copyright (c) 2004 Gabriel Peyré
近期下载者:
相关文件:
收藏者: