В настоящее время я работаю над сверточной нейронной сетью (CNN) и начал смотреть на различные графики спектрограмм:
Что касается графика Либрозы (MFCC), спектрограмма сильно отличается от других графиков спектрограммы. Я взглянул на комментарий, размещенный здесь, в котором говорится о развернутой спектрограмме MFCC. Как выполнить задачу (разумный код Python), опубликованную решением, указанным там?
Кроме того, не пропустит ли этот график MFCC с низким разрешением какие-либо неприятности при прохождении изображений через CNN?
Любая помощь в выполнении кода Python, упомянутого здесь, будет искренне признательна!
Вот мой код Python для сравнения спектрограмм, а вот местоположение анализируемого wav-файла.
Код Python
# Load various imports
import os
import librosa
import librosa.display
import matplotlib.pyplot as plt
import scipy.io.wavfile
#24bit accessible version
import wavfile
plt.figure(figsize=(17, 30))
filename = 'AWCK AR AK 47 Attached.wav'
librosa_audio, librosa_sample_rate = librosa.load(filename, sr=None)
plt.subplot(4,1,1)
xmin = 0
plt.title('Original Audio - 24BIT')
fig_1 = plt.plot(librosa_audio)
sr = librosa_sample_rate
plt.subplot(4,1,2)
mfccs = librosa.feature.mfcc(y=librosa_audio, sr=librosa_sample_rate, n_mfcc=40)
librosa.display.specshow(mfccs, sr=librosa_sample_rate, x_axis='time', y_axis='hz')
plt.title('Librosa Plot')
print(mfccs.shape)
plt.subplot(4,1,3)
X = librosa.stft(librosa_audio)
Xdb = librosa.amplitude_to_db(abs(X))
librosa.display.specshow(Xdb, sr=sr, x_axis='time', y_axis='hz')
# plt.colorbar()
# maximum frequency
Fs = 96000.
samplerate, data = scipy.io.wavfile.read(filename)
plt.subplot(4,1,4)
plt.specgram(data, Fs=samplerate)
plt.title('Scipy Plot (Fs=96000)')
plt.show()