How to apply Gaussian kernel to smooth density of points on 2D (algorithmically)

732 Views Asked by At

I have a set of points on a 2D surface and need to build a heatmap. However, I also need to smooth out the density/distribution by applying some sort of kernel (Gaussian kernel, for example).

I Know what Gaussian distribution is, and I have no idea, how mathematically apply the Gaussian kernel to the points on 2D so I can get a smooth distribution or density of points. I know there are functions in Wolfram to do that, but this is more like a research problem, so I need to understand how this is done.

Can someone, please, explain to me mathematically how this is done, and possibly with an example? Or take me to a website that I can read about it?

I'd much appreciate that.

Thanks

1

There are 1 best solutions below

3
On

Since the points are discrete, you simply translate the kernel to each point and scale it by the height (value) at that point, and then sum the results.

$f(x,y)=\sum_{i=1}^{n}\sum_{j=1}^{n}{p_{i,j}f(x-x_{i},y-y_{j})}$

where $f(x,y)$ is your kernel and $p_{i,j}$ is the value of the point at $(x_{i},y_{j})$