Во-первых, я новичок в DSP и не имею реального образования, но я занимаюсь разработкой программы визуализации звука и представляю массив FFT в виде вертикальных полос, как в типичной визуализации частотного спектра.
Проблема, с которой я столкнулся, заключалась в том, что значения аудиосигнала менялись слишком быстро, чтобы создать приятный визуальный выход, если я просто отобразил значения FFT напрямую:
Поэтому я применяю простую функцию к значениям, чтобы «сгладить» результат:
// pseudo-code
delta = fftValue - smoothedFftValue;
smoothedFftValue += delta * 0.2;
// 0.2 is arbitrary - the lower the number, the more "smoothing"
Другими словами, я беру текущее значение и сравниваю его с последним, а затем добавляю часть этой дельты к последнему значению. Результат выглядит так:
Итак, мой вопрос:
Является ли это устоявшимся паттерном или функцией, для которой термин уже существует? Это так, каков термин? Я использую «сглаживание» выше, но я знаю, что это означает что-то очень специфическое в DSP и, возможно, не правильно. В остальном это могло быть связано с объемным конвертом, но не совсем то же самое.
Есть ли лучшие подходы или дальнейшее изучение решений, на которые я должен обратить внимание?
Спасибо за ваше время и извинения, если это глупый вопрос (читая другие обсуждения здесь, я осознаю, что мои знания намного ниже, чем в среднем кажется).