私はここでは信号処理の初心者です。オーディオファイル(.WAV)からMFCC機能を抽出するためのこれまでの私のコードは次のとおりです。
from python_speech_features import mfcc
import scipy.io.wavfile as wav
(rate,sig) = wav.read("AudioFile.wav")
mfcc_feat = mfcc(sig,rate)
print(mfcc_feat)
Mfccの機能をプロットして、どのように見えるかを知りたかっただけです。
from python_speech_features import mfcc
import scipy.io.wavfile as wav
import matplotlib.pyplot as plt
(rate,sig) = wav.read("AudioFile.wav")
mfcc_feat = mfcc(sig,rate)
print(mfcc_feat)
plt.plot(mfcc_feat)
plt.show()
これにより、MFCCが色としてプロットされます。これは、より一般的な方法です。
import matplotlib.pyplot as plt
import numpy as np
from matplotlib import cm
fig, ax = plt.subplots()
mfcc_data= np.swapaxes(mfcc_data, 0 ,1)
cax = ax.imshow(mfcc_data, interpolation='nearest', cmap=cm.coolwarm, Origin='lower')
ax.set_title('MFCC')
plt.show()
前の回答では、mfcc_dataは定義されていませんでした。
import matplotlib.pyplot as plt
import numpy as np
from matplotlib import cm
(rate,sig) = wav.read("file.wav")
mfcc_feat = mfcc(sig,rate)
ig, ax = plt.subplots()
mfcc_data= np.swapaxes(mfcc_feat, 0 ,1)
cax = ax.imshow(mfcc_data, interpolation='nearest', cmap=cm.coolwarm, Origin='lower', aspect='auto')
ax.set_title('MFCC')
#Showing mfcc_data
plt.show()
#Showing mfcc_feat
plt.plot(mfcc_feat)
plt.show()
最初にlibrosaを使用してwavファイルを読み取り、組み込み関数を使用しました
import librosa
audio_path='../.../../../combo.wav' #location
(xf, sr) = librosa.load(audio_path)
mfccs = librosa.feature.mfcc(y=xf, sr=sr, n_mfcc=4)
librosa.display.specshow(mfccs, x_axis='time')
plt.colorbar()
plt.tight_layout()
plt.title('mfcc')
plt.show
Librosaを使用しました