Как извлекать функции массива numpy из спектрограммы?
Я создал спектрограмму с помощью этого кода:
D = librosa.amplitude_to_db(librosa.stft(y), ref=np.max) librosa.display.specshow(D, y_axis='linear', x_axis='time') plt.colorbar(format='%+2.0f dB') plt.title('Log-frequency power spectrogram') plt.savefig('sp.png') plt.show()
Что делать, чтобы извлечь массив массивов и массив db из этого графика? (Это необходимо для выхода .csv)
- Фильтр высоких частот Python
- Невозможно найти правильную энергию, используя scipy.signal.welch
- Почему я получаю строки нулей в 2D 2D?
- Профилирование Python – потоковое аудио и спектр
- Неожиданное преобразование Фурье приводит к Python Numpy
Вы можете использовать те же функции, которые используются librosa для построения спектрограммы для получения массивов вдоль осей. D
уже является «массивом db».
import librosa import librosa.display import matplotlib.pyplot as plt import numpy as np y, sr = librosa.load(librosa.util.example_audio_file()) #sr = 22050 #default sampling rate D = librosa.amplitude_to_db(librosa.stft(y), ref=np.max) # yaxis n = D.shape[0] yout = librosa.fft_frequencies(sr=sr, n_fft=1+(2 * (n - 1)) ) print yout, yout.min(), yout.max() #xaxis m = D.shape[1] hop_length=512 xout = librosa.frames_to_time(np.arange(m+1), sr=sr, hop_length=hop_length) print xout, xout.min(), xout.max() librosa.display.specshow(D, sr=sr, hop_length=hop_length, y_axis='linear', x_axis='time') plt.colorbar(format='%+2.0f dB') plt.title('Log-frequency power spectrogram') plt.savefig('sp.png') plt.show()
- Увеличение переменной max_components в библиотеке дедуплирования
- Запуск замороженного графа SSD-mobilenet, созданного с помощью метода определения объекта Objector с помощью метода tensorflow Object Detection API (локально)
- Сглаживание серии взвешенных значений в numpy / pandas
- Вычислить EWMA по разреженным / нерегулярным TimeSeries в Pandas
- Удаление фонового шума из аудиосигналов с использованием FFT Python
- Отображение бина Python scipy.fftpack.rfft
- Эффект Jello при отображении отфильтрованного цифрового сигнала
- Nump fft freezes для более длинных образцов
- Кросс-корреляция непериодической функции с NumPy
- спектр мощности by numpy.fft.fft
- Самый эффективный способ найти самую длинную инкрементную подпоследовательность в списке списков