#把30张图片存成矩阵 import numpy as np,os import PIL.Image as pim#处理图片的工具库 import pickle as pic#矩阵的序列化和反序列化 class imagew: def imageToArray(self,dir): image_list=[]; sdir=os.listdir(dir) for i in sdir: path=os.path.join(dir,i) im=pim.open(path,"r") r,g,b=im.split()#得到一张图片的rgb值 rgb1=np.array(r).reshape((921600,)) rgb2=np.array(g).reshape((921600,)) rgb3=np.array(b).reshape((921600,)) timage=np.hstack((rgb1,rgb2,rgb3))#一张图片 fiimalist=np.concatenate((image_list,timage)) allimage=fiimalist.reshape(len(sdir),2764800) with open("image.bat",mode="wb") as f: pic.dump(fiimalist,f) os.close(1) @staticmethod def readImage(file): f=open(file,"rb") allimage=pic.load(f) # image_count=allimage.shape[0]#图片个数 all_array=np.reshape(allimage,(3,1280,720)) for i in range(0,0): r=pim.fromarray(all_array[i][0],mode="RGB") g=pim.fromarray(all_array[i][0],mode="RGB") b=pim.fromarray(all_array[i][0],mode="RGB") imares=pim.merge("RGB",[r,g,b]) imares.show() pim.save("result%s.jpg","jpeg") class test: if __name__ == '__main__': i = imagew() i.imageToArray("image") i.readImage("image.bat")