Я просматривал похожие вопросы на StackOverflow, и ни один из них, похоже, не касается этого конкретно.
Я пытаюсь найти разность фаз между двумя сигналами. Чтобы проверить, можно ли использовать этот результат, я ввел одну задержку выборки между двумя сигналами.
Что-то вроде этого:
ch1 = randn(frame_length * 100, 1);
ch2 = [0 ; ch1(1:end-1) ];
После этого я просматриваю сигнал, беру БПФ и строю разность фаз. Нравится:
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. Я хотел бы знать, почему это происходит, несмотря на разворачивание фазы исходных сигналов.