[Insight-developers] Gaussian filter performance

Paul Yushkevich pauly@cognitica.com
Fri, 09 May 2003 10:16:22 -0400


I have been trying to choose an appropriate Gaussian blurring filter to 
use in the SnAP project.  While doing so, I tried to compare the 
performance of three candidates from ITK and VTK on a sample image.  The 
candidates were itk::DiscreteGaussianImageFilter, 
itk::RecursiveGaussianImageFilter and vtkImageGaussianSmooth .  I ran 
the filters with default parameters, only changing the standard deviation.

Perhaps the result is useful to others, so I post it here.  For one 
thing, it shows that the recursive gaussian filter seems to perform 
better on even very small sigmas.  What is the error of the recursive 
filter w.r.t to the true solution for subpixel values of sigma?

The times listed below are for VC6 Release program running on a 
two-month old machine.

Loaded image     : image01.mha
Image size       : 7109137 bytes
Image dimensions : 181 x 217 x 181
Component count  : 1
File type        : Binary
File byte order  : Little Endian

Standard Deviation: 0.5
   ITK Discrete Gaussian   : 3688ms.
   ITK Recursive Gaussian  : 515ms.
   VTK Gaussian            : 1907ms.

Standard Deviation: 1.5
   ITK Discrete Gaussian   : 4578ms.
   ITK Recursive Gaussian  : 484ms.
   VTK Gaussian            : 2281ms.

Standard Deviation: 2.5
   ITK Discrete Gaussian   : 5672ms.
   ITK Recursive Gaussian  : 485ms.
   VTK Gaussian            : 2406ms.

Standard Deviation: 3.5
   ITK Discrete Gaussian   : 7079ms.
   ITK Recursive Gaussian  : 500ms.
   VTK Gaussian            : 2781ms.

Standard Deviation: 4.5
   ITK Discrete Gaussian   : 8578ms.
   ITK Recursive Gaussian  : 484ms.
   VTK Gaussian            : 3078ms.

Paul.