1/3-октавный анализ шумового сигнала - PullRequest
1 голос
/ 21 июня 2020

Я хочу провести анализ шумового сигнала в полосе 1/3 октавы. У меня есть сигнал времени, представляющий звуковое давление (Па). У меня есть массивы центральных частот, а также нижнего и верхнего среза. Конечная цель - получить гистограмму, представляющую уровень звука в сравнении с полосами 1/3 октавы.

Из теории, которой я следовал, предложено сначала сделать БПФ сигнала. Затем восстановите сигнал в полосах 1/3 октавы. В каждой конструкции вычислите среднеквадратичные значения давления. Вот и все. Преобразуйте эти среднеквадратичные значения в уровень звука (дБ) и построите график в зависимости от центральных частот.

Проблема, с которой я столкнулся, заключается в том, как восстановить сигнал с помощью функции IFFT, учитывая, что новый сигнал имеет меньшее количество точек амплитуды. Таким образом, реконструкция практически невозможна из-за несоответствия размеров между временем и амплитудой. На этом я застрял.

У меня очень небольшой опыт работы с DSP. Итак, любая помощь, даже если подход отличается от того, что я пытался объяснить выше, будет очень оценен. Заранее спасибо.

1 Ответ

0 голосов
/ 21 июня 2020

Чтобы восстановить сигнал во временной области для конкретной 1/3 октавной полосы, вы устанавливаете амплитуду на ноль для всех частот за пределами вашего диапазона перед выполнением IFFT. IFFT для каждого из этих диапазонов будет того же размера, что и наше исходное FFT, поэтому вы получите одинаковое временное разрешение на выходе из каждого диапазона.

Выполнение полноразмерного IFFT для каждого диапазона очевидно довольно дорого. Есть способы оптимизировать это, но на самом деле у вас, вероятно, нет оснований для восстановления сигнала во временной области в первую очередь .

Операция IFFT 1 не изменит среднеквадратичное значение сигнала, поэтому просто рассчитайте его, используя компоненты частотной области, и забудьте об IFFT в целом. Из-за того, как работает вычисление RMS, вам даже не нужно помнить, что амплитуды в частотной области являются комплексными числами - вы получите пропорциональный ответ, если будете относиться к действительным и мнимым компонентам одинаково. Только не забудьте включить все дополнительные нули в делитель среднеквадратичного значения, поскольку их количество для каждой полосы разное.

1 - это верно для математически стандартного IFFT. . Некоторые реализации будут делить выходные сигналы по длине сигнала. Это будет одинаково для всех диапазонов, поэтому это не повлияет на их относительные значения, и это легко исправить.

...