Pythonは音声処理に優れた言語であり、スペクトログラムを簡単に表示することができます。スペクトログラムは、音声信号を時間と周波数の2次元グラフに変換することができ、音声の特徴を視覚的に表現することができます。
必要なライブラリのインストール
スペクトログラムを表示するには、Pythonのライブラリ「matplotlib」と「librosa」をインストールする必要があります。以下のコマンドを使用して、これらのライブラリをインストールできます。
!pip install matplotlib librosa
スペクトログラムを表示する方法
以下のコードを使用して、音声ファイルのスペクトログラムを表示することができます。
import librosa
import librosa.display
import matplotlib.pyplot as plt
# Load audio file
y, sr = librosa.load('audio_file.wav')
# Create spectogram
spec = librosa.feature.melspectrogram(y=y, sr=sr)
# Display spectogram
librosa.display.specshow(librosa.power_to_db(spec, ref=np.max),
y_axis='mel', fmax=8000, x_axis='time')
plt.colorbar(format='%+2.0f dB')
plt.show()
このコードでは、音声ファイルを「audio_file.wav」としてロードし、スペクトログラムを作成しています。その後、matplotlibを使用してスペクトログラムを表示しています。
スペクトログラムの表示方法を変更することもできます。たとえば、周波数軸をHzに変更することができます。
# Display spectogram with frequency axis in Hz
librosa.display.specshow(librosa.power_to_db(spec, ref=np.max),
y_axis='linear', fmax=8000, x_axis='time')
plt.colorbar(format='%+2.0f dB')
plt.show()
まとめ
Pythonを使用してスペクトログラムを表示することは簡単です。必要なライブラリをインストールして、上記のコードを使用してスペクトログラムを表示することができます。スペクトログラムを変更する方法についても説明しました。