gpt4 book ai didi

python - python tensorflow信号处理MFCC功能

转载 作者:行者123 更新时间:2023-12-03 00:25:21 25 4
gpt4 key购买 nike

我正在从tensorflow.signal实现中测试MFCC功能。根据示例(https://www.tensorflow.org/api_docs/python/tf/signal/mfccs_from_log_mel_spectrograms),它将计算所有80 mfcc,然后采用前13个。

我在上面和“直接计算前13个”方法中都尝试过,结果却大不相同:

首先输入80,然后首先输入13:
enter image description here

直接计算前13个:
flow

为什么会有很大的不同,如果将其作为功能传递给CNN或RNN,应该使用哪一个?

最佳答案

这是由于MFCC的性质。请记住,这些系数是在您通过链接代码中的lower_edge_hertzupper_edge_hertz提供的mel标度的频率范围内计算的。

在实践中意味着什么:

  • “直接计算13个系数”:取频率范围[80.0, 7600.0]并将其分为13个bin。最终,您将获得13个反射(reflect)相应频谱幅度的系数(请参见MFCC algorithm)
  • “先输入全部80个,然后取前13个”:取频率范围[80.0, 7600.0]并将其分成80个bin。现在,仅取前13个系数。实际上,这意味着您正在研究窄而细粒度的频谱,在这种情况下,大约是在人类语音频率范围[80, 400] Hz(大致来说,包络计算的后面)中。如果您要进行人类语音识别,这是有道理的,因为您可以专注于更细微的变化,而忽略较高的频谱(从我们的听觉系统 Angular 来看,这没那么有趣)。
  • 关于python - python tensorflow信号处理MFCC功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60493658/

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