如何将cifar10图像从32x32调整为227x227?

2024-05-13 18:10:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经从cifar-10-batches-python中读取了图像

import os
import numpy as np
from PIL import Image
from pylab import *
import matplotlib.pyplot as plt
from scipy.misc import imresize
# read data
data_dir = "F:\\dataset\\cifar-10-batches-py"
testdata_dir="F:\\dataSet\\cifar-10-batches-py\\test_batch"
da=np.load(testdata_dir)
testdata=da['data']
testlabel=np.array(da['labels'])

train=np.empty((50000,3072))
label=np.empty((50000,))
for i in range(1,2):
    str='data_batch_'+np.str(i)
    path1=os.path.join(data_dir,str)
    data=np.load(path1)
    train[10000*(i-1):10000*i,:]=data['data']
    label[10000*(i-1):10000*i,]=data['labels']

def intlabel(label):
    for i in range(label.shape[0]):
        label[i,]=int(float(label[i,]))
    return label

def intdata(data):
    n=data.shape[0]
    for i in range(n):
        for j in range(3072):
            data[i,j]=int(float(data[i,j]))
    return data

label,train=intlabel(label),intdata(train)
train,label=np.array(train),np.array(label)
train = train.reshape(train.shape[0], 3, 32,32)
train = train.astype('float32')

我不知道如何调整数据大小。 我使用了imreszie函数来调整图像大小,但是效果并不好


Tags: infromimportfordatadirnprange