I want to prove that 2D Gaussian filter is separable and we can separate it into two dimensions, my problem is about the size of filters. we should prove that G(x,y)∗I(where G(x,y)=[0.010.10.010.110.10.010.10.01],I is image and ∗ is convolution operator) is equal to G(x)∗I∗G(y) where G(x)=[0.110.1] ,G(y)=[0.110.1] and I is image. in other words we should prove that G(x,y)=G(x)∗G(y) but I don't know how to convolve these filters with different sizes.
Answer
Let's have a different perspective on that.
Let's say our 2D Linear Operator is given by the Matrix G∈Rn×n.
Using the SVD Decomposition the operator can be written as:
G=n∑i=1σiuivTi
Separable Linear 2D Operator is defined as operator which can be composed by Outer Product of 2 vectors.
Looking at the SVD Decomposition of G we can conclude that G is separable operator if and only if ∀i>1σi=0 and it is given by:
G=σ1u1vT1
Usually LPF 2D Linear Operators, such as the Gaussian Filter, in the Image Processing world are normalized to have sum of 1 (Keep DC) which suggests σ1=1 moreover, they are also symmetric and hence u1=v1 (If you want, in those cases, it means you can use the Eigen Value Decomposition instead of the SVD).
So basically, to prove that a Linear 2D Operator is Separable you must show that it has only 1 non vanishing singular value.
Note: I was not rigorous in the claims moving form general SVD to the Eigen Decomposition yet the intuition holds for most 2D LPF operators in the Image Processing world.
No comments:
Post a Comment