]> granicus.if.org Git - imagemagick/commitdiff
Fix Gaussian Filter mistake (constant moved into exp())
authoranthony <anthony@git.imagemagick.org>
Fri, 10 Sep 2010 14:37:52 +0000 (14:37 +0000)
committeranthony <anthony@git.imagemagick.org>
Fri, 10 Sep 2010 14:37:52 +0000 (14:37 +0000)
magick/resize.c

index efc51a0617adbe90a419409a33c3da22467b0781..8791a516f82517555b80789e8783f8bf66173c99 100644 (file)
@@ -227,11 +227,11 @@ static MagickRealType Gaussian(const MagickRealType x,
   const ResizeFilter *magick_unused(resize_filter))
 {
   /*
-    Unnormalized Gaussian with variance sqrt(pi)/(4*sqrt(2)):
-      exp(-2 x^2/sqrt(pi/2))
+      exp(-2 x^2)*sqrt(2/pi))
   */
-  const MagickRealType alpha = -sqrt((double) (8.0/MagickPIL));
-  return(exp((double) (alpha*x*x)));
+  //const MagickRealType alpha = sqrt((double) (2.0/MagickPIL));
+  const MagickRealType alpha = 2.0/MagickSQ2PI;
+  return(exp(-(double)(2.0*x*x))*alpha);
 }
 
 static MagickRealType Hanning(const MagickRealType x,