Шумоподавление с учетом массива LPCM 44 выборки в секунду
У меня есть массив 44100 выборок в секунду данных LPCM. На самом деле у меня есть два канала данных.
Каждые 11,61 миллисекунды я получаю около 512 образцов.
Теперь я хочу следовать инструкциям, как отменить шум от звука
Однако это объяснение предполагает, что входной сигнал является синусоидальной волной.
Должен ли я преобразовать свой LPCM в синусоидальные волны, чтобы устранить шум? То есть требуется ли мне запускать FFT на LPCM, чтобы применить эту технику?
И если да, то как мне преобразовать полученные волновые формы обратно в LPCM, чтобы их можно было воспроизвести?
2 ответа
Если вам нужно преобразовать обратно из частотной области во временную область, вы можете просто использовать обратное преобразование Фурье. В противном случае, я думаю, что есть намного больше алгоритмов шумоподавления.
Вы хотите отменить шум где? Чтобы устранить шум на детекторе (там, где у вас есть микрофон), вам просто нужно инвертировать сигнал (поменять местами + и - кабели), согласовать амплитуду и настроить частоту, соответствующую вашему оборудованию. Чтобы устранить шум в какой-либо другой точке линии, соединяющей источник и микрофон, вам также необходимо добавить задержку (если отменить дальше) или как-то "продвинуть" звук (если отмена между источником и микрофоном). если отмена вне оси, то все усложняется (и вам нужны оба сигнала).
в сложных случаях (вне оси или перед микрофоном) вам необходимо выполнить более сложную обработку сигнала. Один из способов сделать это - использовать FFT, но может быть более эффективно найти приближения, использующие цифровые фильтры.
я бы предположил, что в наушниках Bose и тому подобном используются инверсия сигнала, усиление и некоторое довольно простое формирование частоты, а также, возможно, какое-то обнаружение обратной связи (чтобы избежать оглушения людей, если все пойдет не так).
Обновление: вот действительно хорошая статья о том, как работают наушники. у них есть различные подходы, включая обучение фильтра на белый шум. и это сложнее, чем я догадывался выше.