Я новичок в БПФ и обработке сигналов, поэтому надеюсь, что этот вопрос имеет смысл и / или не глуп.
Я хотел бы провести анализ спектра на живом аудио сигнал. Моя цель - найти хороший компромисс между отзывчивостью и частотным разрешением, чтобы я мог угадывать высоту звука входящего звука почти в реальном времени.
Из того, что я собрал о математике, лежащей в основе преобразования Фурье, существует внутреннее равновесие между размером выборки и частотным разрешением. Чем больше образец, тем лучше разрешение. Поскольку я пытаюсь минимизировать размер выборки (для достижения требований, близких к реальному времени), это означает, что мое разрешение страдает (каждый слот в выходном буфере соответствует широкому диапазону частот, что нежелательно).
Однако для моих предполагаемых приложение, меня не волнует большая часть спектра. Мне нужна информация о спектре только для узкого частотного диапазона, например, от 100 до 1600 Гц. Есть ли способ изменить реализацию БПФ таким образом, чтобы я мог улучшить разрешение вывода частотной области, сохраняя при этом размер входного буфера постоянным (и небольшим)? Другими словами, могу ли я обменять общую пропускную способность вывода на разрешение вывода? Если да, то как это делается?
Хотя я в лучшем случае плохо разбираюсь в математике, кажется, что заполнение входного буфера нулями может быть интересно, нет?
Заранее благодарим за любую помощь, которую вы можете предложить .