Python_npy文件与png图片的格式转换
npy文件是以数组形式保存图片数据,我们有时再进行训练时,可能需要将其进行图片格式的转换,废话不多说,直接上代码:
import numpy as np import imageio import os from skimage import img_as_ubyte dest_dir_rgb = "./A" # 文件存储的路径 dest_dir_gray = "./B" # 文件存储的路径 picture_rgb = np.load(A.npy) #使用numpy载入npy文件,里面存放的是RGB图片 picture_gray = np.load(B.npy) #使用numpy载入npy文件,里面存放的是灰度图片 print(picture_rgb.shape) print(picture_gray.shape) # RGB图片归一化处理 picture_rgb = picture_rgb.reshape(picture_rgb.shape[0], 256, 256, 3) picture_rgb = picture_rgb.astype(float32) picture_rgb = picture_rgb/255. # 将图片保存在dest_dir_rgb文件夹下 for i in range(0,m): imageio.imwrite(os.path.join(dest_dir_rgb, "{}.png".format(i)),img_as_ubyte(picture_rgb[i])) # 灰度图片归一化处理 picture_gray = picture_gray.reshape(picture_gray.shape[0], 256, 256, 1) picture_gray = picture_gray/picture_gray.max() # 将灰度图片保存在dest_dir_gray文件夹下 for i in range(0,n): imageio.imwrite(os.path.join(dest_dir_rgb, "{}.png".format(i)),img_as_ubyte(picture_rgb[i]))
注意: 1、先通过print(map.shape)查看数组尺寸,比如说[120][256][256][3],我们知道这个npy文件里保存的是120张256*256大小的RGB图片; 2、上述代码中的m、n就是指的图片数量; 3、RGB图片与灰度图片的归一化处理有些许差异。
下一篇:
基于FPGA的数字电子钟的设计与实现