Monday, 4 July 2016

image processing - How to Prove a 2D Filter Is Separable?


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)IG(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 GRn×n.
Using the SVD Decomposition the operator can be written as:


G=ni=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

readings - Appending 内 to a company name is read ない or うち?

For example, if I say マイクロソフト内のパートナーシップは強いです, is the 内 here read as うち or ない? Answer 「内」 in the form: 「Proper Noun + 内」 is always read 「ない...