Laplacian 2D kernel - is it separable?
I'm wondering if the 2D laplacian kernel
0 1 0
1 -4 1
0 1 0
is also a separable kernel. How can I find that out?
A kernel $h$ is separable if and only if all its rows are multiples of each other. Then you can pick one, call it $f$, make a column of the multiplicative factors, call it $g$, and find that $h = f*g$.
You can't do this for the 2D Laplacian kernel, because $[0,1,0]$ is not a multiple of $[1,-4,1]$.
You cannot separate this kernel and make 2 consecutive convolutions to get the same result. But you can make 2nd derivative convolutions (horizontal and vertical) with [1 -2 1] and [1; -2; 1] kernels and then sum their results.
In case of separable convolution you use associative property of convolution, in case of sum of two convolutions you use distributive property.
I think sum of convolutions is another way to effectively compute convolution kernel.