«Лучшее» возможное решение - это действительно ДПФ, отбрасывающее верхние 3/4 частот и выполняющее обратное ДПФ, с областью, ограниченной нижним 1/4. Отбрасывание верхних 3/4 является фильтром нижних частот в этом случае. Дополнение до степени 2 числа сэмплов, вероятно, даст вам преимущество в скорости. Знайте, как в вашем пакете FFT хранятся образцы. Если это сложное БПФ (которое гораздо проще анализировать и, как правило, обладает более хорошими свойствами), частоты будут либо изменяться от -22 до 22, либо от 0 до 44. В первом случае вам понадобится среднее значение 1/4. В последнем, крайнем 1/4.
Вы можете сделать адекватную работу, усредняя значения выборки вместе. Наивный способ получения образцов четыре на четыре и выполнения равных средневзвешенных работ, но не слишком хороший. Вместо этого вы захотите использовать функцию «ядра», которая усредняет их вместе неинтуитивно.
Математически, отбрасывание всего, что находится за пределами низкочастотного диапазона, является умножением на блочную функцию в частотном пространстве. (Обратное) преобразование Фурье превращает поточечное умножение в свертку (обратных) преобразований Фурье функций и наоборот. Итак, если мы хотим работать во временной области, нам нужно выполнить свертку с (обратным) преобразованием Фурье функции квадрата. Это оказывается пропорциональным функции "sinc" (sin at) / at, где a - ширина поля в частотном пространстве. Таким образом, в каждом 4-м месте (поскольку вы уменьшаете в 4 раза) вы можете сложить точки рядом с ним, умноженные на sin (a dt) / a dt, где dt - расстояние во времени до этого местоположения. Как поблизости? Ну, это зависит от того, насколько хорошо вы хотите, чтобы это звучало. Например, обычно игнорируют все, что находится за пределами первого нуля, или просто берут количество точек, которое является отношением, по которому вы понижаете.
Наконец, есть безнадежный (но быстрый) способ просто отбросить большинство выборок, оставив только ноль, четвертый и т. Д.
Честно говоря, если это умещается в памяти, я бы порекомендовал просто пойти по маршруту DFT. Если он не использует один из пакетов программного фильтра, который другие рекомендовали создать для вас.