■ はじめに
Python の 音声分析ライブラリ 「LibROSA (リブロサ)」をメモ。
目次
【1】環境設定 【2】サンプル 例1:音声波形描画 例2:音声の特徴量を抽出する
【1】環境設定
pip
pip install librosa
Anaconda環境
conda install -c anaconda cffi pip install pysoundfile conda install -c conda-forge librosa
【2】サンプル
例1:音声波形描画
import librosa import librosa.display import matplotlib.pyplot as plt # 音声波形を描画する # wave : 波形データ, sampling_frequency : サンプリング周波数 wave, sampling_frequency = librosa.load(r'C:\tmp\sample.wav') librosa.display.waveplot(wave, sampling_frequency) plt.show()
例2:音声の特徴量を抽出する
import numpy as np import librosa import librosa.display from scipy import fftpack # 音声の特徴量を抽出する # wave : 波形データ, sampling_frequency : サンプリング周波数 wave, sampling_frequency = librosa.load(r'C:\tmp\sample.wav') # Case1 : FFT #fft_wave = fftpack.rfft(wave, n=sampling_frequency) #fft_freq = fftpack.rfftfreq(n=sampling_frequency, d=1/sampling_frequency) #y = librosa.amplitude_to_db(fft_wave, ref=np.max) # Case2 : 短時間フーリエ変換(Short -Term Fourier Transformation; STFT) #y = np.abs(librosa.stft(wave)) # Case3 : メル周波数ケプストラム係数(Mel Frequency Cepstral Coefficient; MFCC) y = librosa.feature.mfcc(y=wave, sr=sampling_frequency) print(y)
参考文献
http://misaki-yuyyuyu.hatenablog.com/entry/2020/03/09/155645
https://np2lkoo.hatenablog.com/entry/2016/09/22/052354
https://memo.koya-it.com/library/librosa.html
https://www.wizard-notes.com/entry/music-analysis/librosa
https://sja-analysis.org/python-librosa-tips/
https://qiita.com/Nelca/items/8c0aaaf2a8452352ffe4
関連記事
scikit-learn ~ 機械学習用ライブラリ・入門編 ~
https://dk521123.hatenablog.com/entry/2020/03/02/233902