#將cifar10轉成圖片
import numpy as np
import matplotlib.image as plimg
from PIL import Image
import pickle as p
def load_CIFAR_batch(filename):
with open(filename, 'rb')as f:
datadict = p.load(f, encoding='latin1')
X = datadict['data']
Y = datadict['labels']
X = X.reshape(10000, 3, 32, 32)
Y = np.array(Y)
return X, Y
def load_CIFAR_Labels(filename):
with open(filename, 'rb') as f:
lines = [x for x in f.readlines()]
print(lines)
if __name__ == "__main__":
# 文件的路徑
load_CIFAR_Labels("./cifar-10-batches-py/batches.meta")
imgX, imgY = load_CIFAR_batch("./cifar-10-batches-py/data_batch_1")
print(imgX.shape)
for i in range(1000):
imgs = imgX[i]
img0 = imgs[0]
img1 = imgs[1]
img2 = imgs[2]
i0 = Image.fromarray(img0) # 從數據,生成image對象
i1 = Image.fromarray(img1)
i2 = Image.fromarray(img2)
img = Image.merge("RGB", (i0, i1, i2))
name = "img" + str(i) + ".png"
img.save("cifar10_images/" + name, "png")
for j in range(imgs.shape[0]):
img = imgs[j]
name = "img" + str(i) + str(j) + ".png"
plimg.imsave("cifar10_images/" + name, img)
將cifar10數據轉成圖片
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.