jpg/png与npz文件互换

from PIL import Image 
import numpy as np 
 

def png_to_npz(png_file_path, npz_file_path):
  # 读取PNG图像文件并将其转换为numpy数组 
  image = Image.open(png_file_path) 
  image_data = np.array(image) 
  
  # 保存为npz文件 
  # np.savez(npz_file_path,  image=image_data)
  # 大概可以节省一半空间
  np.savez_compressed(npz_file_path,  image=image_data)

def npz_to_png(npz_file_path, png_file_path):
  # 读取npz文件
  data = np.load(npz_file_path)
  # 根据实际的键名获取数据,例如上面通过np.savez保存的键名是'image'
  image_data = data['image']

  # 将numpy数组转换为PIL图像并保存为PNG文件
  image = Image.fromarray(image_data)
  image.save(png_file_path)
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐