gpt4 book ai didi

math - 如何将波浪数据转换为复数

转载 作者:行者123 更新时间:2023-12-01 18:42:04 25 4
gpt4 key购买 nike

我正在从麦克风读取原始数据并将其输入 FFT。我正在尝试的两个 FFT 库( AForgeExocortex.DSP )将复数作为输入并给出复数作为输出。

我试图理解什么是复数。

更具体地说 - 如何将从麦克风获得的原始音频数据转换为复数以便在 FFT 中进行处理?
如何将输出绘制成漂亮的频谱图(即从输出中读取频率和幅度)?

额外的好处:除了提到的两个之外,.Net 还有哪些 FFT 库?

最佳答案

当对真实数据执行 FFT 时,您只需将输入的虚部设置为零。 (请注意,FFT 的输出仍然很复杂。)

绘制频谱图更为复杂 - 之前有关于此的帖子,但本质上您需要计算连续重叠时间窗口的功率谱(典型重叠 = 50%),然后绘制使用颜色或灰度强度表示这些功率谱的 log (dB) 幅度(通常在 X 轴上显示时间,在 Y 轴上显示频率)。计算功率谱:

  • 申请window function输入数据(例如汉宁窗)
  • 快速傅里叶变换
  • 取 FFT 输出的前 N/2 个值的幅度平方 (re*re + im*im)
  • 将幅度转换为 dB 值 (10 * log10(幅度平方))

关于math - 如何将波浪数据转换为复数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6581001/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com