Pythonでは、PNG画像をBase64にエンコードしたり、Base64エンコードされたPNG画像をデコードしたりすることが可能です。以下にその方法を示します。
PNG画像をBase64にエンコードする
まずは、PNG画像をBase64にエンコードする方法です。以下のコードを参考にしてください。
import base64
def image_file_to_base64(file_path):
with open(file_path, "rb") as image_file:
data = base64.b64encode(image_file.read())
return data.decode('utf-8')
この関数image_file_to_base64
は、指定したファイルパスの画像を開き、その内容をBase64にエンコードします。そして、エンコードされたデータをUTF-8文字列として返します。
Base64エンコードされたPNG画像をデコードする
次に、Base64エンコードされたPNG画像をデコードする方法です。以下のコードを参考にしてください。
import base64
import cv2
import numpy as np
def base64_to_image(base64_string, output_path):
img_binary = base64.b64decode(base64_string)
jpg = np.frombuffer(img_binary, dtype=np.uint8)
img = cv2.imdecode(jpg, cv2.IMREAD_COLOR)
cv2.imwrite(output_path, img)
この関数base64_to_image
は、Base64エンコードされたPNG画像をデコードし、その画像を指定した出力パスに保存します。
以上がPythonでPNG画像をBase64にエンコード/デコードする方法です。これらのコードを活用して、Pythonでの画像処理をより効率的に行うことができます。