[Insight-users] itkScalarChanAndVeseSparseLevelSetImageFilter

Kishore Mosaliganti kishoreraom at gmail.com
Fri Jun 5 14:02:07 EDT 2009


Hi Eleni,

Thank you for pointing out these problems. You are right that the Review
code is not very stable as yet. We are working on fixing them. During the
transfer from the IJ paper to the Review directory, a lot of modifications
were made. We might have inadvertently introduced new errors.

Regarding your problems:

2. The level-set function is defined by convention as inside is negative and
outside is positive. So the negative values become your foreground and
positive values become the background. This controls the propagation
direction.

3. I am looking at the Halt function. Looks like the boundary case of 0
iterations is not coded right.

4.  Regarding the high RMS values, the level-set function is re-initialized
to a signed distance function after every few iterations. It so happens that
the default setting is 1 iteration. Hence, the RMS change is being
calculated after the reinitialization while it needs to be done before. We
are also working on correcting this. Thank you for pointing this out.


Is it possible for you to post a small sample of your data for us to work on
the errors.


Kishore

On Tue, Jun 2, 2009 at 11:24 AM, Sgouritsa, Eleni
<esgourit at central.uh.edu>wrote:

>  Hello,
> I m sorry if my point was not clear. The problems that I am facing using
> this class to segment 3D data are the following:
>
> 1. My data has negative origin (for example (-100, -100, -60). Unless I do
> SetOrigin(0,0,0) (or I guess any origin >=0) my program crashes. I have to
> set my negative origin as zero for my program to run. Does the class assumes
> positive origin of the input image?
>
> 2. I initialize my level set inside (so the evolution should be outwards).
> In this case I can not make my level set expand (it can just shrink, or not
> move). I think I should use something like SetReverseExpansionDirection to
> control the propagation direction, but I can not find this option in the
> class public members. (This is currently my main problem where I am stuck,
> any help would be very useful!)
>
> 3. The maximum RMS Error serves (along with the number of iterations) as a
> stopping criteria inside the Halt function (of
> itkMultiphaseFiniteDifferenceImageFilter.txx file).
> Lets say I set maximum RMS Error = 0.01.
> The Halt function returns the following:
> return ( (this->GetElapsedIterations() >= this->m_NumberOfIterations) ||
>       ( this->GetMaximumRMSError() >= m_RMSChange ) );
> While the Halt function returns false the evolution continues.
> However, in iteration 0, I get m_RMSChange = 0, so the evolution always
> stops doing 0 iterations (since the condition this->GetMaximumRMSError() >=
> m_RMSChange becomes true)
> If I modify the Halt function to returm the following:
> if(this->GetElapsedIterations()==0)
>         return false;
> else
>         return ( (this->GetElapsedIterations() >=
> this->m_NumberOfIterations) || ( this->GetMaximumRMSError() >= m_RMSChange )
> );
> then it works.
> The other problem is that RMSChange in the next iterations (1,2,3...) has
> very big values (like 5000) even near convergence. So the only way to stop
> the evolution is through the iterations number.
>
> I am still investigating the class and I am not absolutely sure about the
> points mentioned but I would like to share with you for more advice.
>
>
> Thank you very much,
> Lena
>
>
>
>
> -----Original Message-----
> From: Luis Ibanez [mailto:luis.ibanez at kitware.com<luis.ibanez at kitware.com>
> ]
> Sent: Mon 6/1/2009 8:39 PM
> To: Sgouritsa, Eleni
> Cc: alex gouaillard; insight-users at itk.org
> Subject: Re: [Insight-users] itkScalarChanAndVeseSparseLevelSetImageFilter
>
>
> Hi Lena,
>
> Could you please be more specific about your problem report on
> item (2) ?
>
> Is there a chance that you can report this in a form that
> we could reproduce ?
>
>
>     Thanks
>
>
>        Luis
>
>
> -----------------------------
> Sgouritsa, Eleni wrote:
> > Hi,
> >
> > I have two more questions.
> > 1. In the insight journal code there was an option
> > SetReverseExpansionDirection to control if the expansion of the level
> > set will be inwards or outwards. How can I do it using the
> > itkScalarChanAndVeseSparseLevelSetImageFilter of 3.14 release?
> >
> > 2. I still have a problem when my 3D data have negative origin.
> >
> > Thanks and regards,
> > Lena
> >
> > -----Original Message-----
> > From: Sgouritsa, Eleni
> > Sent: Mon 6/1/2009 4:00 AM
> > To: alex gouaillard
> > Cc: insight-users at itk.org
> > Subject: RE: [Insight-users]
> itkScalarChanAndVeseSparseLevelSetImageFilter
> >
> > Hello,
> > finally the second issue was my fault (I just had a problem while
> > including the header files of the review folder).
> > For the first, the inconsistency is just a matter of name. The code runs
> > correctly, just the name assignement in the txx is a little misleading.
> >
> > Thank you very much,
> > Lena
> >
> >
> > -----Original Message-----
> > From: alex gouaillard [mailto:alexandre_gouaillard at hms.harvard.edu<alexandre_gouaillard at hms.harvard.edu>
> ]
> > Sent: Sun 5/31/2009 11:34 PM
> > To: Sgouritsa, Eleni
> > Cc: insight-users at itk.org
> > Subject: Re: [Insight-users]
> itkScalarChanAndVeseSparseLevelSetImageFilter
> >
> > hi eleni,
> >
> > we'll take a look tomorrow.
> >
> > thanks for the feedback.
> >
> > alex.
> >
> > On May 31, 2009, at 11:52 PM, Sgouritsa, Eleni wrote:
> >
> >  > Hello,
> >  > I know that the review folder of the new release (3.14) is not
> >  > stable yet but I would just like to give two comments:
> >  >
> >  > 1. I found an inconsistency between the template arguments of the
> >  > itkScalarChanAndVeseSparseLevelSetImageFilter.h and the
> >  > itkScalarChanAndVeseSparseLevelSetImageFilter.txx.
> >  > Specifically, in the header file, the template is :
> >  > template < class TInputImage, class TFeatureImage, class
> >  > TOutputImage, class TFunction,
> >  >   class TSharedData, typename TIdCell = unsigned int >
> >  > whereas in the txx it is:
> >  > template < class TInput, class TFeature, class TFunction,
> >  > class TOutputPixel, class TSharedData, typename TIdCell >
> >  > There is a change in the order of the 3rd and 4th argument.
> >  >
> >  > 2. I can not find this class
> >  > (itkScalarChanAndVeseSparseLevelSetImageFilter)  incuded in the
> >  > CMakeLists of the review folder
> >  >
> >  > Regards,
> >  > Lena
> >  >
> >  > <ATT00001.txt>
> >
> >
> >
> >
> > ------------------------------------------------------------------------
> >
> > _____________________________________
> > 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
>
>
> _____________________________________
> 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
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20090605/0b52af42/attachment-0001.htm>


More information about the Insight-users mailing list