需要帮助解决此问题中的错误

时间:2019-11-27 05:38:07

标签: python

def extract_feature(file_name, mfcc, chroma, mel):
with soundfile.SoundFile(file_name) as sound_file:
    X = sound_file.read(dtype="float32")
    sample_rate=sound_file.samplerate
    if chroma:
        stft=np.abs(librosa.stft(X))
    result=np.array([])
    if mfcc:
        mfccs=np.mean(librosa.feature.mfcc(y=X, sr=sample_rate, n_mfcc=40).T, axis=0)
        result=np.hstack((result, mfccs))
    if chroma:
        chroma=np.mean(librosa.feature.chroma_stft(S=stft, sr=sample_rate).T,axis=0)
        result=np.hstack((result, chroma))

如果是梅尔:             mel = np.mean(librosa.feature.melspectrogram(X,sr = sample_rate).T,axis = 0)             result = np.hstack((结果,梅尔)) 返回结果

运行代码时出现错误

    NameError                                 Traceback (most recent call last)
<ipython-input-5-6da3ea2e19b7> in <module>()
     20             chroma=np.mean(librosa.feature.chroma_stft(S=stft, sr=sample_rate).T,axis=0)
     21             result=np.hstack((result, chroma))
---> 22 if mel:
     23             mel=np.mean(librosa.feature.melspectrogram(X, sr=sample_rate).T,axis=0)
     24             result=np.hstack((result, mel))

NameError: name 'mel' is not defined

0 个答案:

没有答案