TypeError: 'module' object is not callable . MFCC

3

我正致力于使用Python进行基于说话人识别的项目,但在查找MFCC时遇到了以下错误。

Traceback (most recent call last):
File "neh1.py", line 10, in <module>
    complexSpectrum = numpy.fft(signal)
TypeError: 'module' object is not callable

这是代码的一部分:
import numpy
from scipy.fftpack import dct
from scipy.io import wavfile
sampleRate, signal = wavfile.read("/home/neha/Audio/b6.wav")
numCoefficients = 13 # choose the sive of mfcc array
minHz = 0
maxHz = 22.000
complexSpectrum = numpy.fft(signal)
powerSpectrum = abs(complexSpectrum) ** 2
filteredSpectrum = numpy.dot(powerSpectrum, melFilterBank())
logSpectrum = numpy.log(filteredSpectrum)
dctSpectrum = dct(logSpectrum, type=2) 

什么可能会是问题?

2
numpy.fft 是一个包含大量fft函数变体的模块。您需要使用 numpy.fft.fft() 函数。 - John Gordon
1个回答

7
TypeError: 'module' object is not callable的意思是,当你尝试使用像函数一样的东西时,它实际上并不是函数或方法(例如,当foo是一个int或模块时执行foo())。正如@JohnGordon所指出的那样,numpy.fft是一个模块,但你正在像调用函数一样调用它。你需要使用`numpy.fft.fft()`来完成你想要的操作。
请参阅numpy.fft文档以了解更多与快速傅里叶变换相关的函数。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接