[Insight-users] Where is Minimal Path Extraction From FastMarching Speed Function

Dan Mueller dan.muel at gmail.com
Fri Jul 17 03:57:26 EDT 2009


Hi Hussein,

> In the ArrivalFunctionToPathFilter  superclass, you had AddEndPoint,
> but in SpeedFunctionToPathFilter, it is invalidated with a warning!
> Why is that?
> In the current implementation, I would have to rerun the wave as many
> times as there are endpoints and choose the one with least geodesic
> distance.
> Or alternatively, set all those end points as way points and compare their
> geodesics, pick the least, and use it for the path.

Indeed, SpeedFunctionToPathFilter allows only a single end point. This
is because the filter performs the path extraction in sections (eg.
start point to way point 1, way point 1 to way point 2, way point 2 to
end point). I guess it could be extended in the manner you describe,
but to date has not been. Feel free to make this extension and submit
it to the Insight Journal!

If your path consists of multiple start points and multiple end points
(ie. no way/intermediate points but multiple candidate start points),
then you should instead use the ArrivalFunctionToPathFilter. This
filter expects as input an arrival function, which you can compute
yourself using FastMarchingImageFilter with all of the start points as
trial points. Then simply add the end points via AddPathEndPoint(..)
and the extracted path will select the closest start point.

HTH

Cheers, Dan

2009/7/16 asamwm <asamwm at gmail.com>:
> Hi Dan,
> I am towards the end of connecting things together however, it looks like
> you only allow one end point at a time to be set for the path.
> Please correct me if I am wrong, I am assuming the wave starts at
> startpoint (0 geodesic distance) and ends at endpoint.
>
> In the ArrivalFunctionToPathFilter  superclass, you had AddEndPoint,
> but in SpeedFunctionToPathFilter, it is invalidated with a warning!
> Why is that?
> The reason I think it is needed is when you have multiple end
> point candidates and you want the wave to stop propagation when it reaches
> the first endpoint (that would be the fastest / closest geodesic pt.).
>
> In the current implementation, I would have to rerun the wave as many
> times as there are endpoints and choose the one with least geodesic
> distance.
> Or alternatively, set all those end points as way points and compare their
> geodesics, pick the least, and use it for the path.
>
> What do you think?
>
> Thanks.
> Hussein
>
>
> On Fri, Jul 10, 2009 at 12:58 AM, asamwm <asamwm at gmail.com> wrote:
>>
>> Thanks Dan.
>> I'll let you know when I get it in place.
>>
>> Regards.
>>
>>
>> On Fri, Jul 10, 2009 at 12:42 AM, Dan Mueller <dan.muel at gmail.com> wrote:
>>>
>>> Hi,
>>>
>>> The filter is not yet available in the main ITK code archive. You must
>>> download the article and code from here:
>>>    http://www.insight-journal.org/browse/publication/213
>>>
>>> Click on the full download ".zip" link and extract the files somewhere
>>> on your hard drive. As explained in the article (section 2.1, page 3)
>>> the main filter you will want to use is
>>> itk::SpeedFunctionToPathFilter, which is located under the "Source"
>>> folder. To use this filter within your own project, you will need to
>>> copy all of the files under the "Source" folder to your own source
>>> code directory.
>>>
>>> Make sure you leave a review at the journal!  ;P
>>>
>>> Hope this helps.
>>>
>>> Cheers, Dan
>>>
>>> 2009/7/9 asamwm <asamwm at gmail.com>:
>>> > Hi all,
>>> > I spent a lot of time searching for this but could not find it.
>>> > There is this insight-journal publication:
>>> > http://www.insight-journal.org/browse/publication/213
>>> >
>>> > but where is that filter? I searched under the itk code tree for
>>> > the keywords, speed function, minimal path,  .. no success
>>> >
>>> > Any successful examples? any alternatives?
>>> >
>>> > Thanks
>>> >
>>> >
>>> > _____________________________________
>>> > Powered by www.kitware.com
>>> >
>>> > Visit other Kitware open-source projects at
>>> > http://www.kitware.com/opensource/opensource.html
>>> >
>>> > Please keep messages on-topic and check the ITK FAQ at:
>>> > http://www.itk.org/Wiki/ITK_FAQ
>>> >
>>> > Follow this link to subscribe/unsubscribe:
>>> > http://www.itk.org/mailman/listinfo/insight-users
>>> >
>>> >
>>
>
>


More information about the Insight-users mailing list