[Insight-users] Gaussian Derivative Operators & Hessian & Eig envalue solver

Karthik Krishnan Karthik.Krishnan at kitware.com
Fri Sep 30 20:30:48 EDT 2005


On Fri, 2005-09-30 at 17:32 -0400, Bitter, Ingmar (NIH/CC/DRD) wrote:
> Hi Karthik,
> 
> Looks like these were all recent additions. My 2.0.1 release does not have
> any of those classes. Time to update :-)
> 
> However, I got already pretty far in implementing a version that uses a new
> class itk::GaussianDerivativeOperator allowing to compute the Hessian matrix
> values as inner products. If the eigenvalues are computed right after and
> then used to come up with some compound measure, the needed memory is one
> result volume, not 9 Hessian volumes and 3 eigenvalue volumes and the result
> volume.  Is there interest is such a memory saving solution or should I just
> dump it and use your example?

You should post that to the users or the developers list to see if there
is any interest. I completely agree with you that the hessian filter
that is there in ITK now eats a fair bit of memory. But then its goal is
to give the matrix of tensors. If your goal were for instance to just
preserve one parameter, (such as the laplacian, which is the trace of
the hessian, or the eigen values of the hessian), sure you could save
memory. The filters present now allow you to compute the image of
hessians and then extract whatever you want from this image....

Thanks
karthik
> 
> Ingmar
> 
> Ingmar Bitter, PhD
> Staff Scientist
> NIH, CC, DRD, CIPS
> email: ibitter at nih.gov
> Tel: 301.435.2155
> 
> 
> -----Original Message-----
> From: Karthik Krishnan [mailto:Karthik.Krishnan at kitware.com] 
> Sent: Friday, September 30, 2005 5:10 PM
> To: Bitter, Ingmar (NIH/CC/DRD)
> Cc: ITK Mailing List
> Subject: Re: [Insight-users] Gaussian Derivative Operators & Hessian &
> Eigenvalue solver
> 
> 
> 
> Bitter, Ingmar (NIH/CC/DRD) wrote:
> 
> >Hi All,
> >
> >Am I right that there is not currently an implementation of
> >
> >a) a Gaussian derivative operator that can compute 2nd degree symmetric and
> >asymmetric derivatives along a compete 3D neighborhood
> >
> >  
> >
> HessianRecursiveGaussianImageFilter
> http://www.itk.org/cgi-bin/viewcvs.cgi/Code/BasicFilters/itkHessianRecursive
> GaussianImageFilter.h?rev=1.5&root=Insight&view=markup
> 
> Does exactly what you just mentioned...
> 
> >b) and consequently no easy way to compute a 3D Hessian matrix for each
> >voxel
> >  
> >
> Can't get easier...
> This filter returns an image with pixels of type 
> SymmetricSecondRankTensor... ie an image of with each pixel being a 3x3 
> symmetric matrix
> 
> 
> >c) and also no solver for eigenvalues of symmetric 3x3 matrices?
> >
> >  
> >
> Yes... There are two options here..
> 
> the thread safe and recommended one being...
> 
> Code/Common/itkSymmetricEigenAnalysis.h
> 
> And a filter that uses this class to compute an image of eigen values 
> from an image of 3x3 tensors:
> 
> Code/BasicFilters/itkSymmetricEigenAnalysisImageFilter
> 
> 
> Please do not use Code/Numerics/itkSymmetricEigenSystem as it is not 
> threadsafe
> 
> HTH
> -karthik
> 
> PS:
> If you need example usage for all these filters, look at 
> InsightApplications/Curves3DExtractor ...
> (This extracts curves from MRA images)
> 
> >Ingmar Bitter
> >_______________________________________________
> >Insight-users mailing list
> >Insight-users at itk.org
> >http://www.itk.org/mailman/listinfo/insight-users
> >
> >  
> >



More information about the Insight-users mailing list