如何证明2D DFT的信号可分离性属性?软件
How to prove the signal separability property of 2D DFT? MATLAB
我试图使用可分离为 2 个一维向量的二维矩阵来证明二维傅立叶变换信号 属性 的可分离性。
其中:
f(x,y) = f(x)*f(y)
那么F(u,v) = F(u)*F(v)
使用以下代码:
% Separabilty of signal
H = [-1,2,-1;-2,4,-2;-1,2,-1];
b3 = fft2(H)
Hx = [-1,2,-1];
Hy = [1,2,1]';
c2 = fft(Hy)*fft(Hx')'
if norm(vecnorm(b3-c2)) < 1e-5
"same"
else
"different"
end
但是,尽管数字是正确的,但它们在矩阵中的顺序发生了变化。我不明白怎么了。
错误在这里
c2 = fft(Hy)*fft(Hx')'
为什么要应用双重换位fft(Hx')'
?
自
H = Hy*Hx
然后
c2 = fft(Hy)*fft(Hx)
请注意,在 matlab 中,操作 '
执行复数共轭转置,这就是 fft(Hx)
不等于 fft(Hx')'
的原因,因为第二个转置改变了符号虚部。
我试图使用可分离为 2 个一维向量的二维矩阵来证明二维傅立叶变换信号 属性 的可分离性。 其中:
f(x,y) = f(x)*f(y)
那么F(u,v) = F(u)*F(v)
使用以下代码:
% Separabilty of signal
H = [-1,2,-1;-2,4,-2;-1,2,-1];
b3 = fft2(H)
Hx = [-1,2,-1];
Hy = [1,2,1]';
c2 = fft(Hy)*fft(Hx')'
if norm(vecnorm(b3-c2)) < 1e-5
"same"
else
"different"
end
但是,尽管数字是正确的,但它们在矩阵中的顺序发生了变化。我不明白怎么了。
错误在这里
c2 = fft(Hy)*fft(Hx')'
为什么要应用双重换位fft(Hx')'
?
自
H = Hy*Hx
然后
c2 = fft(Hy)*fft(Hx)
请注意,在 matlab 中,操作 '
执行复数共轭转置,这就是 fft(Hx)
不等于 fft(Hx')'
的原因,因为第二个转置改变了符号虚部。