[Insight-developers] itkGaussianKernelFunction

Blezek, Daniel J (Research) blezek at crd.ge.com
Thu Mar 3 08:29:08 EST 2005


Lydia,

Actually, I'm doing density estimation and was looking into the different kernels.  Much of the time you determine a bandwidth and stick with it for at least one iteration, if not the whole optimization.  Having to do a) and c) in the metric, rather than the kernel can be a source of error.  However, the code then has special calls for Gaussian, which we may not want.  If the kernels are only for density estimation, it would make sense to move the bandwidth inside the kernels, right?

-dan

-----Original Message-----
From: Lydia Ng [mailto:lydia_l_ng at hotmail.com]
Sent: Wednesday, March 02, 2005 1:16 PM
To: Blezek, Daniel J (Research); insight-developers at itk.org
Subject: RE: [Insight-developers] itkGaussianKernelFunction


Hi Dan,

The GaussianKernelFunction was originally implemented with "density 
estimation" and "nonparameteric regression".  Typically, only the standard 
kernel is implemented and the data is scaled via some bandwidth parameter 
(e.g. the variance for guassian kernel) externally.

As you suggest adding the mean and variance will make it more general. My 
only concern is the extra floating point manipulations. If we allow the mean 
and variance to be changed arbitrarily then extra steps are:
a) subtraction of mean
b) division of variance inside the exp
c) division of variance for the denominator

Currently the itkMutualInformationImageToImageMetric does (b) explictily and 
does not have to do (a) and (c).

It may be a mute point if these addition calculations are insignifcant 
compare to overall calculations. It would be nice if we could have some 
timing comparision before and after.

And I guess the final say also remains with the soon to be activated 
oversight committee ...

My two cents,
Lydia


>From: "Blezek, Daniel J (Research)" <blezek at crd.ge.com>
>To: "Insight Developers" <insight-developers at itk.org>
>Subject: [Insight-developers] itkGaussianKernelFunction
>Date: Wed, 2 Mar 2005 10:09:20 -0500
>
>Hi Luis 8),
>
>   Perhaps I'm missing something, but wouldn't it be helpful to set the 
>mean and variance on an instance of GaussianKernelFunction?  Currently, it 
>is 0 mean, unit variance with no mechanism to change it.  Having the object 
>do the calculations rather than my code will help reduce errors.  On the 
>other hand, itkMutualInformationImageToImageMetric.txx lines 201-203 uses 
>only one (Gaussian)KernelFunction for both the Fixed and Moving images.  
>Adding the capability to GaussianKernelFunction would not break code, but 
>would allow greater flexibility.  I'd like to make the change, if there are 
>no objections.
>
>Comments?
>-dan
>
>Daniel Blezek, PhD
>GE Global Research
>Computer Scientist
>
>T 518 387 5481
>F 518 387 6981
>D *833-5481
>E blezek at research.ge.com
>www.research.ge.com
>
>1 Research Circle
>Niskayuna, NY 12309, USA
>
>General Electric Company
>
>_______________________________________________
>Insight-developers mailing list
>Insight-developers at itk.org
>http://www.itk.org/mailman/listinfo/insight-developers




More information about the Insight-developers mailing list