<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi Armadeep,<div> you should be able to initialize your front with FastMarchingImageFilter with different time-crossing values for every trial point (i.e. the initial front doesn't have to binary). In your case, you may want to set the value of each trial point to the value of the level set at that point. </div><div>When you fill your list of trial points, you have to fill out a list of "nodes": just call node.SetValue(someValue) in addition to node.SetIndex(someIndex) to set the initial time-crossing value at that index.</div><div>FastMarchingExtensionImageFilter does more, in that it also extends auxiliary variables in addition to the "time-crossing map".</div><div>I hope this helps</div><div><br></div><div>Luca</div><div><br></div><div><br></div><div><div><div>On May 25, 2009, at 12:10 PM, Amardeep Singh wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>Dear Luis<br><br>Thank you very much for your answer!<br>I have also thought about using the ShapeDetectionLevelSetImageFilter. But in my application, I'm afraid, I am<br>interested in the time-crossing map, initialized from an arbitrary front. I need to<br>use level-sets with an exact narrow-band (for post-processing). So, the chamfer distance function which<br>is currently used is not exact enough in my case. Instead, I would like to use fast marching for reinitialization.<br>Therefore I would like to repeat my question:<br>Is it correct that the itkIsoContourDistanceImageFilter is a good starting point?<br>What is the use of the "FastMarchingExtensionImageFilter"?<br><br>Thanks a lot!<br><br>Best regards<br>Amardeep<br><br>Luis Ibanez wrote:<br><blockquote type="cite"><br></blockquote><blockquote type="cite">Hi Amardeep<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">The implementation of FastMarching in ITK is initialized using<br></blockquote><blockquote type="cite">seed points.<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">If you already have an initial front (as opposed to a set of<br></blockquote><blockquote type="cite">seed points) then you can use the<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"> ShapeDetectionLevelSetImageFilter<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">and set the curvature weight to zero. In those conditions this<br></blockquote><blockquote type="cite">filter will preform a front propagation similar to Fast Marching.<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"> Regards,<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"> Luis<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">-------------------<br></blockquote><blockquote type="cite">Amardeep Singh wrote:<br></blockquote><blockquote type="cite"><blockquote type="cite">Dear ITK-users<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">In the current implementation of the fast marching filter, the initial surface that is to be propagated<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">has to be a binary interface (Please, correct me if I'm wrong).<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">I am wondering if there is a way to apply the fast marching filter in ITK to arbitrary inital fronts as it is described<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">by Sethian in his paper "A fast marching level set method for monotonically<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">advancing fronts" (PNAS, February 1996). If such a functionality does not exist at the moment:<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Would you agree that the itkIsoContourDistanceImageFilter might be a good starting point to implement the initial<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">calculation of the signed distances to some arbitrary isosurface? These distances might then be used for the fast marching propagation as described by Sethian.<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Thanks a lot!<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Best regards<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Amardeep<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">_____________________________________<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Powered by <a href="http://www.kitware.com">www.kitware.com</a><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Visit other Kitware open-source projects at<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><a href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Please keep messages on-topic and check the ITK FAQ at: <a href="http://www.itk.org/Wiki/ITK_FAQ">http://www.itk.org/Wiki/ITK_FAQ</a><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Follow this link to subscribe/unsubscribe:<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><a href="http://www.itk.org/mailman/listinfo/insight-users">http://www.itk.org/mailman/listinfo/insight-users</a><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><br></blockquote>_____________________________________<br>Powered by <a href="http://www.kitware.com">www.kitware.com</a><br><br>Visit other Kitware open-source projects at<br><a href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a><br><br>Please keep messages on-topic and check the ITK FAQ at: http://www.itk.org/Wiki/ITK_FAQ<br><br>Follow this link to subscribe/unsubscribe:<br>http://www.itk.org/mailman/listinfo/insight-users<br></div></blockquote></div><br><div> <span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>--</div><div>Luca Antiga, PhD</div><div>Head, Medical Imaging Unit,<br>Biomedical Engineering Department,<br>Mario Negri Institute.<br>mail: Villa Camozzi, 24020, Ranica (BG), Italy<br>phone: +39 035 4535-381<br>email: <a href="mailto:antiga@marionegri.it">antiga@marionegri.it</a><br>web: <a href="http://villacamozzi.marionegri.it/~luca">http://villacamozzi.marionegri.it/~luca</a></div></div></div></div></div></div></span></div></span></div></span> </div><br></div></body></html>