我的文件布置是是这样的 以下是我的代码,有不懂的回复区我们讨论 from scipy import io import cv2 import numpy as np from PIL import Image import matplotlib.pyplot as plt import os mat_dir=r'E:\classification\002'#mat路径 # a = io.loadmat(mat_dir+'/'+'pressuredata.mat') #加载文件 # print(a.keys()) path = os.listdir(mat_dir) # a = np.array(3368) print(path) # print('现在a的形状是',a['data'].shape) for classification_name in path: # final_name = classification_name a = io.loadmat(mat_dir + '/' +classification_name + '/' + 'pressuredata.mat') for i in range(0,len(a['data'])): print('现在的数据是第',i) # first_name = i b = a['data'][i] # all_data = b ### reshape a(1X1024) to 32X32 b.shape = 32, 32 b = np.array(b) b = b.T print('b 是', b) # cv2.normalize(img, out, 0, 255, cv2.NORM_MINMAX) # img_norm = 原来的 img_norm = np.zeros(b.shape) print(img_norm) x=cv2.normalize(b, dst=img_norm, alpha=0, beta=255, norm_type=cv2.NORM_MINMAX) print('转化完成之后的数',x) # np.array([out], dtype=‘uint8’) b = np.asarray(x, np.uint8) print('numpyzhihouide',x) #---------------------------------------------------- im2 = Image.fromarray(b) print(im2) path = 'E:\chujuetest\image_save4' + '/' + classification_name + '/' if os.path.exists(path) is False: os.makedirs(path) im2.save(os.path.join(path, '{}_{}.png'.format(0, i))) plt.imshow(b, cmap='gray') plt.axis('off')