Python
 Computer >> コンピューター >  >> プログラミング >> Python

Librosaスペクトログラムプロットを特定のサイズの画像として保存するにはどうすればよいですか?


Librosaは、オーディオファイルと音楽ファイルの分析に役立つPythonパッケージです。このパッケージは、音楽検索情報システムの作成にも役立ちます。この記事では、Librosaスペクトログラムプロットを特定のサイズの画像として保存する方法を説明します。

ステップ

  • 図のサイズを設定し、サブプロット間およびサブプロットの周囲のパディングを調整します。

  • 図とサブプロットのセットを作成します。

  • 3つの異なる変数hlを初期化します 、こんにちは wi 、画像のスペクトログラム、高さ、幅に時間ごとのサンプルを保存します。

  • デモトラックをロードします。

  • ウィンドウを作成します 、つまり、オーディオ時系列のリスト。

  • melspectrogram()を使用して、メル尺度のスペクトログラムを計算します ウィンドウ付き ステップ3のデータ。

  • power_to_db()を使用して、パワースペクトログラム(振幅の2乗)をデシベル(dB)単位に変換します メソッド..

  • スペクトログラムをimgとして表示します (ここに保存できます)

  • savefig()を使用してimgを保存します 。

  • plt.show()を使用して画像を表示します メソッド。

import numpy as np
import matplotlib.pyplot as plt
import librosa.display

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

fig, ax = plt.subplots()

hl = 512 # number of samples per time-step in spectrogram
hi = 128 # Height of image
wi = 384 # Width of image

# Loading demo track
y, sr = librosa.load(librosa.ex('trumpet'))
window = y[0:wi*hl]

S = librosa.feature.melspectrogram(y=window, sr=sr, n_mels=hi, fmax=8000,
hop_length=hl)
S_dB = librosa.power_to_db(S, ref=np.max)
img = librosa.display.specshow(S_dB, x_axis='time', y_axis='mel', sr=sr, fmax=8000, ax=ax)

plt.savefig("out.png")
plt.show()

出力

Librosaスペクトログラムプロットを特定のサイズの画像として保存するにはどうすればよいですか?


  1. Windows 10でWEBPをPNGに保存/変換する方法は?

    WebP形式は、オンラインストレージスペースの画像のサイズを縮小するためにGoogleが開発した最新の画像形式です。この形式は、Webページを高速化するように設計されています。サイズは小さくなりますが、この圧縮のために品質が犠牲になることはありません。ただし、一部のプログラムとブラウザはまだWebP形式をサポートしていません。編集用のWebPよりもPNG形式で画像を取得する方がはるかに優れています。この記事では、WebP画像をPNGとしてダウンロードまたは変換する方法を紹介します。 WebPをPNGに変換または保存する WebP画像をPNGとしてダウンロードまたは変換する方法はいくつかあ

  2. スクランブルなしで Mac に画像を保存する方法

    Mac 上の画像は、備品にぶら下がっている写真のようにきれいです。会議室でのプレゼンテーション用のコントラストの高いイラストやソーシャル ネットワークで共有する写真が必要な場合でも、Mac に画像を保存するのは簡単です。ローカル フォルダーから画像をインポートしたり、スクリーン キャプチャを使用したり、希望の場所にドラッグ アンド ドロップしたりすることができます。 Apple の組み込みの写真アプリは、専用の編集ツールがレパートリーを広げながら、ライブラリを整理してナビゲートできるようにするために緊密な船を走らせます。ワンクリックで、ビデオ プレーヤーでメディア ファイルから写真のスナップ