我在StackOverflow上查看过类似的问题,但似乎没有一个专门解决这个问题。
我试图找到两个信号之间的 bin wise 相位差。为了验证这个结果是否可用,我在两个信号之间引入了单个样本延迟。
像这样的东西:
ch1 = randn(frame_length * 100, 1);
ch2 = [0 ; ch1(1:end-1) ];
此后,我对信号进行窗口化,进行 FFT 并绘制相位差。像这样:
phase_1 = unwrap(arg(bin_wise_struct.fft_out_ch1));
phase_2 = unwrap(arg(bin_wise_struct.fft_out_ch2));
phase_diff = (phase_1 - phase_2);
但是我注意到最终的相位差有 2*pi 的随机跳跃。我想知道为什么会发生这种情况,尽管展开了原始信号的相位。