[Pixman] [PATCH 10/13] pixman-filter: Gaussian fixes

Oded Gabbay oded.gabbay at gmail.com
Mon Jan 4 01:38:37 PST 2016


On Mon, Jan 4, 2016 at 5:12 AM,  <spitzak at gmail.com> wrote:
> From: Bill Spitzak <spitzak at gmail.com>
>
> The SIGMA term drops out on simplification.
>
> Expanded the size slightly (from ~4.25 to 5) to make the cutoff less noticable.
> The filter is truncated at a value of .001 instead of .006, this new
> value is less than 1/2 of 1/255, rather than greater than it.
> ---
>  pixman/pixman-filter.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/pixman/pixman-filter.c b/pixman/pixman-filter.c
> index c020208..35bd603 100644
> --- a/pixman/pixman-filter.c
> +++ b/pixman/pixman-filter.c
> @@ -63,10 +63,7 @@ linear_kernel (double x)
>  static double
>  gaussian_kernel (double x)
>  {
> -#define SQRT2 (1.4142135623730950488016887242096980785696718753769480)
> -#define SIGMA (SQRT2 / 2.0)
> -
> -    return exp (- x * x / (2 * SIGMA * SIGMA)) / (SIGMA * sqrt (2.0 * M_PI));
> +    return exp (- x * x) / sqrt (M_PI);
>  }
>
>  static double
> @@ -139,7 +136,7 @@ static const filter_info_t filters[] =
>      { PIXMAN_KERNEL_BOX,               box_kernel,       1.0 },
>      { PIXMAN_KERNEL_LINEAR,            linear_kernel,    2.0 },
>      { PIXMAN_KERNEL_CUBIC,             cubic_kernel,     4.0 },
> -    { PIXMAN_KERNEL_GAUSSIAN,          gaussian_kernel,  6 * SIGMA },
> +    { PIXMAN_KERNEL_GAUSSIAN,          gaussian_kernel,  5.0 },
>      { PIXMAN_KERNEL_LANCZOS2,          lanczos2_kernel,  4.0 },
>      { PIXMAN_KERNEL_LANCZOS3,          lanczos3_kernel,  6.0 },
>      { PIXMAN_KERNEL_LANCZOS3_STRETCHED, nice_kernel,      8.0 },
> --
> 1.9.1
>
> _______________________________________________
> Pixman mailing list
> Pixman at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/pixman

Same remark as for patch 2&4.
This patch is:

Reviewed-by: Oded Gabbay <oded.gabbay at gmail.com>


More information about the Pixman mailing list