Python で NumPy の配列を画像として保存する
-
Image.fromarray()関数を使用して、NumPy 配列を画像として保存する -
imageio.imwrite()関数を使用して、NumPy 配列を画像として保存する -
matplotlib.pyplot.imsave()関数を使用して、NumPy 配列を画像として保存する -
cv2.imwrite()関数を使用して、NumPy 配列を画像として保存する
Python では、numpy モジュールを使用して配列を操作します。Python には、画像の読み取りと保存を可能にする多くのモジュールがあります。
画像は、それぞれのカラーコードで特定の位置に保存されたさまざまなピクセルの配列と考えることができます。そのため、配列を変換して画像として保存する必要がある場合があります。
このチュートリアルでは、numpy 配列を画像として保存する方法について説明します。
Image.fromarray() 関数を使用して、NumPy 配列を画像として保存する
fromarray() 関数は、配列をエクスポートするオブジェクトから画像メモリを作成するために使用されます。次に、必要なパスとファイル名を指定することで、このイメージメモリを目的の場所に保存できます。
例えば、
import numpy as np
from PIL import Image
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
im = Image.fromarray(array)
im.save("filename.jpeg")
まず、RGB カラーコードを格納する配列を作成してから、それらをエクスポートします。ファイル名で画像の希望の形式を指定できます。これは、jpeg、png、またはその他の一般的に使用される画像形式にすることができます。これは、以下で説明するすべての方法に共通です。
imageio.imwrite() 関数を使用して、NumPy 配列を画像として保存する
以前、scipy モジュールには imsave() 関数があり、numpy 配列を画像として保存していました。ただし、最近のバージョンでは非推奨になり、image.io() の imwrite() 関数がこのタスクの実行を推奨されるようになり、その単純さで人気を博しました。
次のコードは、この関数の使用方法を示しています。
import imageio
import numpy as np
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
imageio.imwrite("filename.jpeg", array)
matplotlib.pyplot.imsave() 関数を使用して、NumPy 配列を画像として保存する
matplotlib モジュールには、画像の操作に使用できるさまざまな関数があります。
imsave() 関数は、配列を画像ファイルとして保存できます。
例えば、
import matplotlib.pyplot as plt
import numpy as np
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
plt.imsave("filename.jpeg", array)
cv2.imwrite() 関数を使用して、NumPy 配列を画像として保存する
OpenCV モジュールは、Python での画像処理によく使用されます。このモジュールの imwrite() 関数は、numpy 配列を画像ファイルとしてエクスポートできます。
例えば、
import cv2
import numpy as np
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
cv2.imwrite("filename.jpeg", array)
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn