Hi Wei,<div><br></div><div>FastMarchingBase and its derivatives offer the possibility:</div><div><br></div><div>* to provide your own stopping criterion, as you mentioned, i.e. not only the time of arrival for the front. See FastMarchingStoppingCriterionBase and its derivatives [1]</div>

<div>* to provide some forbidden points [2], or a binary mask on which the front would evolve [3]<span></span></div><div>* to impose for images some topological constraints by the means of SetTopologyCheck [4], see [5] for details</div>
<div>* to work with images or meshes, e.g. [6]<br></div><div><br></div><div>HTH,</div>Arnaud<div><br><div>[1] <a href="http://www.itk.org/Doxygen/html/classitk_1_1FastMarchingStoppingCriterionBase.html" target="_blank">http://www.itk.org/Doxygen/html/classitk_1_1FastMarchingStoppingCriterionBase.html</a><br>

[2] <a href="http://www.itk.org/Doxygen/html/classitk_1_1FastMarchingBase.html#a4f20d07dd57b0e5a0016bcf98d1aeffc" target="_blank">http://www.itk.org/Doxygen/html/classitk_1_1FastMarchingBase.html#a4f20d07dd57b0e5a0016bcf98d1aeffc</a></div>
<div>[3] <a href="https://github.com/Kitware/ITK/blob/master/Modules/Filtering/FastMarching/test/itkFastMarchingImageFilterRealTest2.cxx">https://github.com/Kitware/ITK/blob/master/Modules/Filtering/FastMarching/test/itkFastMarchingImageFilterRealTest2.cxx</a></div>
<div>[4] <a href="http://www.itk.org/Doxygen/html/classitk_1_1FastMarchingBase.html#afcd4d899f100ec28d309026e9dc98f00">http://www.itk.org/Doxygen/html/classitk_1_1FastMarchingBase.html#afcd4d899f100ec28d309026e9dc98f00</a></div>
<div>[5] <a href="http://www.insight-journal.org/browse/publication/778">http://www.insight-journal.org/browse/publication/778</a></div><div>[6] <a href="http://itk.org/ITKExamples/src/Filtering/FastMarching/ComputeGeodesicDistanceOnMesh/Documentation.html">http://itk.org/ITKExamples/src/Filtering/FastMarching/ComputeGeodesicDistanceOnMesh/Documentation.html</a></div>

<div>On Friday, March 28, 2014, Wei Liu <<a href="javascript:_e(%7B%7D,'cvml','weiliu620@gmail.com');" target="_blank">weiliu620@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div dir="ltr">Dear ITK users,<div><br></div><div>When I look at the ITK FastMarching module I found two version of same filter. For example, I found FastMarchingImageFilter and FastMarchingImageFilterBase have similar functions, also I found FastMarchingUpwindGradientImageFilter and FastMarchingUpwindGradientImageFilterBase. I can see some functions are different (such as set stop criterion), but is there anything I need to know about when I should use which of these filters? </div>


<div><br></div><div>This Git commit [1] seems to say that two implementations co-exists: "<span style="font-family:monospace">With this change both frameworks (ITKv3 and refactored one) co-exist,</span></div>
<div><span style="font-family:monospace">classes have different name to avoid conflicts.</span>" Not sure if it's related to my questions. </div><div><br></div><div>Anyone has any thoughts about it? I appreciate your input. </div>


<div><br></div><div>Wei</div><div><br></div><div>[1] <a href="http://itk.org/gitweb?p=ITK.git;a=commit;h=6271a744582c413c7db57456c8ee0149930e5fd9" target="_blank">http://itk.org/gitweb?p=ITK.git;a=commit;h=6271a744582c413c7db57456c8ee0149930e5fd9</a></div>


</div>
</blockquote></div>
</div>