Matplotlib imsave() メソッド

imsave() メソッドは、Matplotlib ライブラリにおいて画像データをディスクに保存するための関数です。

imsave() メソッドを使うと、生成した画像を簡単に指定したディレクトリに保存できます。

imsave() メソッドは、PNG、JPEG、BMP など、さまざまな画像形式での画像保存に対応しています。

imsave() メソッドの構文は次のとおりです。

matplotlib.pyplot.imsave(fname, arr, **kwargs)

パラメータの説明:

  • fname画像を保存するファイル名。相対パスまたは絶対パスを指定できます。
  • arr画像を表す NumPy 配列。
  • kwargsオプションの引数で、保存する画像の形式や画質などのパラメータを指定します。

以下は、imsave() メソッドを使用して画像を保存する簡単な例です。

実例

import matplotlib.pyplot as plt
import numpy as np

# 2次元の画像データを作成
img_data = np.random.random((100, 100))

# 画像を表示
plt.imshow(img_data)

# 画像をディスクに保存
plt.imsave('サンプル-test.png', img_data)

上記の例では、imsave() メソッドを使用してこの画像を現在のディレクトリに保存しました。ファイル名はサンプル-test.png。

画像形式を指定していないため、Matplotlib ライブラリはデフォルトで PNG 形式のファイルとして保存します。

現在のディレクトリを開くと、次のファイルがありますサンプル-test.pngファイルは次のとおりです。

以下の例では、imsave() メソッドを使用してグレースケール画像とカラー画像を現在のディレクトリに保存する方法を示しています。

実例

import matplotlib.pyplot as plt
import numpy as np

# グレースケール画像を作成
img_gray = np.random.random((100, 100))

# カラー画像を作成
img_color = np.zeros((100, 100, 3))
img_color[:, :, 0] = np.random.random((100, 100))
img_color[:, :, 1] = np.random.random((100, 100))
img_color[:, :, 2] = np.random.random((100, 100))

# グレースケール画像を表示
plt.imshow(img_gray, cmap='gray')

# グレースケール画像をディスクに保存
plt.imsave('test_gray.png', img_gray, cmap='gray')

# カラー画像を表示
plt.imshow(img_color)

# カラー画像をディスクに保存
plt.imsave('test_color.jpg', img_color)

上記の例では、numpy.randomモジュールを使用して、それぞれグレースケール画像とカラー画像を作成し、 imshow() メソッドでこれら 2 つの画像を表示しました。

次に、 imsave() 関数を使用して、これら 2 つの画像をそれぞれ現在のディレクトリに保存しました。ファイル名はそれぞれtest_gray.pngとtest_color.jpg。

グレースケール画像を保存する際、cmap パラメータを使用してグレースケール画像形式で保存しました。

カラー画像を保存する際、画像形式を指定しなかったため、Matplotlib ライブラリはデフォルトで JPEG 形式のファイルとして保存しました。

その他の拡張