Я занимаюсь разработкой программного обеспечения, которое рассчитывает отклик системы путем сравнения БПФ входных и выходных сигналов. Входные и выходные сигналы делятся на окна, и для каждого окна сигналы вычитаются по медиане и умножаются на функцию Ханна. Ответ инструмента для этого окна - это отношение FFT обработанных данных.
Я полагаю, что вышеупомянутое - стандартная процедура, хотя я, возможно, плохо ее описываю. Моя проблема заключается в том, как объединить ответы из нескольких окон.
Насколько я вижу, правильный подход - усреднить сложные значения по всем окнам. Амплитуда и фазовый отклик являются тогда амплитудой и фазой среднего комплексного значения на каждой частоте:
av_response = sum_windows(response) / n
av_amplitude = sqrt(real(av_response)**2 + imag(av_response)**2)
av_phase = atan2(imag(av_response), real(av_response))
с неявными петлями по частотным бинам.
Но меня попросили изменить это, чтобы сначала рассчитать амплитуду и фазу в каждом окне , а затем усреднить амплитуды и фазы по всем окнам:
amplitude = sqrt(real(response)**2 + imag(response)**2)
av_amplitude = sum_windows(amplitude) / n
phase = atan2(imag(response), real(response))
av_phase = sum_windows(phase) / n
Я утверждал, что это неверно, потому что усреднение углов «просто неправильно» - например, среднее значение 0 и 360 градусов составляет 180, но люди, с которыми я работаю, ответили: «Хорошо, мы будем отображать только амплитуду».
Итак, мои вопросы:
- Правильно ли я считаю, что второй подход вообще неверен и для амплитуд?
- Если да, есть ли какие-то исключения, которые могут иметь отношение к делу, и которые могут объяснить, почему люди, с которыми я работаю, предпочитают второй метод? Например, похоже, что два подхода согласятся, когда шум станет небольшим, поэтому, возможно, это приемлемое приближение для низкого шума?
- Если второй подход неверен, есть ли убедительные, авторитетные ссылки, которые я могу использовать, чтобы показать это?
- Если второй подход неверен, есть ли хорошие, простые для понимания примеры, которые показывают это для амплитуды (как среднее для 0 и 360 градусов для фазы)?
- В качестве альтернативы, если я ошибаюсь, что было бы хорошей книгой для меня, чтобы лучше обучаться?
Я пытался утверждать, что среднее значение -1 1 1 -1 1 -1 -1 должно быть ноль, а не 1, но это было неубедительно. И хотя я думаю, что со временем я смогу построить аргумент, основанный на оценке максимального правдоподобия с учетом конкретной модели шума, это не та аргументация, которую будут слушать люди, с которыми я работаю. Поэтому, если я не ошибаюсь, мне нужен либо весомый аргумент авторитета, либо «очевидная» демонстрация.
[Я пытался добавить больше тегов, но не могу найти соответствующие и не могу определить новые как нового пользователя - извините]
источник
Ответы:
Оценка передаточной функции обычно реализуется немного иначе, чем метод, который вы описываете.
Ваш метод вычисляет
Более типичная реализация будет вычислять перекрестную спектральную плотность x и y, деленную на спектральную плотность мощности x:
Некогерентная оценка
Ваш работодатель предложил вам оценить передаточную функцию, используя
Это будет работать , но имеет два больших недостатка:
Ваш метод и метод, который я описал, позволяют обойти эти проблемы с помощью когерентного усреднения .
использованная литература
Общая идея использования перекрывающихся усредненных сегментов для вычисления спектральной плотности мощности известна как метод Уэлча . Я считаю, что расширение использования этого для оценки передаточных функций также часто называют методом Уэлча, хотя я не уверен, упоминается ли это в статье Уэлча. Поиск бумаги Уэлча может быть ценным ресурсом. Полезной монографией на эту тему является книга Бендата и Пирсола « Случайные данные: процедуры анализа и измерения» .
Проверка
Для проверки вашего программного обеспечения я предлагаю применить несколько тестовых случаев, в которых вы генерируете гауссовский белый шум и пропускаете его через цифровой фильтр с известной передаточной функцией. Подайте входные и выходные данные в вашу процедуру оценки передаточной функции и убедитесь, что оценка сходится к известному значению передаточной функции.
источник
Добро пожаловать в обработку сигналов!
Ты совершенно прав. Вы не можете просто усреднить значения DFT и фазы отдельно, особенно фазы. Вот простая демонстрация:
В этом случае,
Также,
Теперь, чтобы сделать то, что вы пытаетесь сделать, я предлагаю следующее. Теоретически, вы можете найти импульсную характеристику системы, разделив DFT на выходе на DFT на входе. Однако при наличии шума вы получите очень странные результаты. Несколько лучший способ сделать это - использовать двухканальную оценку импульсной характеристики БПФ, которая выглядит следующим образом (деривация здесь не приводится, но вы можете найти ее в Интернете).
источник
Это разница между когерентным и некогерентным усреднением спектров БПФ. Когерентное усреднение с большей вероятностью отклонит случайный шум в анализе. Некогерентность, скорее всего, усиливает случайные величины шума. Что из этого важнее для вашего отчета о результатах?
источник