dummy-link

FastGaussTransforms

Fast algorithm for repeated evaluation of the convolution of a point set with a gaussian kernel.

Readme

FastGaussTransforms

Build Status

Fast algorithm for repeated evaluation of the convolution of a point set with a gaussian kernel. Useful for, e.g. Kernel Density Estimation, or solving heat flow problems.

Usage

The calculation proceeds in two steps. First, a pointset is summarized into a FastGaussTransform datastructure using fastgausstransform.

points = rand(10)
values = rand(10)
bandwidth = 0.04
t = fastgausstransform(points, values, bandwidth)

The transform may then be evaluated at a point using evaluate.

evaluate(t, 0.5)

faustgausstransform takes an optional keyword argument specifying the relative precision tolerance:

fastgausstransform(points, values, bandwidth; rtol=1e-3)

rtol defaults to eps(1.0) ≈ 2e-16. Decreased precision speeds evaluation. This setting should be especially useful for plotting.

Based on "Improved Fast Gauss Transform," Proceedings International Conference on Computer Vision, 464 -471, C. Yang, R. Duraiswami, N.A. Gumerov, L. Davis. pdf

First Commit

07/29/2014

Last Touched

over 1 year ago

Commits

11 commits