<p dir="ltr">Hi Wei,</p>
<p dir="ltr">There is an Insight Journal article which shows how to extract a continuous directed path using Fast Marching:<br>
<a href="http://www.insight-journal.org/browse/publication/213">http://www.insight-journal.org/browse/publication/213</a></p>
<p dir="ltr">HTH</p>
<p dir="ltr">Cheers, Dan</p>
<div class="gmail_quote">On 3 Apr 2014 09:00, "Wei Liu" <<a href="mailto:weiliu620@gmail.com">weiliu620@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">Arnaud,<div><br></div><div>Thanks for the information. Is there a minimal example of extracting the shortest path given the ending point and the gradient image? One thing not clear to me is the gradient at each pixel points to the direction away from starting point. If I have ending point, how could I use the gradient to trace back to the starting point?</div>
<div><br></div><div>Thanks very much,</div><div>Wei</div><div><br></div><div>p.s. that question may also due to my lack of good understanding of the fast marching method itself.</div></div><div class="gmail_extra"><br><br>
<div class="gmail_quote">On Sat, Mar 29, 2014 at 1:40 AM, Arnaud Gelas <span dir="ltr"><<a href="mailto:arnaudgelas@gmail.com" target="_blank">arnaudgelas@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
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" target="_blank">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" target="_blank">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" target="_blank">http://www.insight-journal.org/browse/publication/778</a></div><div>[6] <a href="http://itk.org/ITKExamples/src/Filtering/FastMarching/ComputeGeodesicDistanceOnMesh/Documentation.html" target="_blank">http://itk.org/ITKExamples/src/Filtering/FastMarching/ComputeGeodesicDistanceOnMesh/Documentation.html</a></div>
<div><div>
<div>On Friday, March 28, 2014, Wei Liu <<a>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></div></div>
</blockquote></div><br></div>
<br>_____________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at<br>
<a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Kitware offers ITK Training Courses, for more information visit:<br>
<a href="http://www.kitware.com/products/protraining.php" target="_blank">http://www.kitware.com/products/protraining.php</a><br>
<br>
Please keep messages on-topic and check the ITK FAQ at:<br>
<a href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br>
<br></blockquote></div>