Python pytorch图像到不同大小的张量

Python pytorch图像到不同大小的张量,python,neural-network,pytorch,dataset,tensor,Python,Neural Network,Pytorch,Dataset,Tensor,我试图创建自己的数据集。 我在文件夹里有不同大小的图片 files = [fn for fn in os.listdir('images') if any(fn.endswith(ext) for ext in ['jpg'])] data=[] for f in files: data.append(np.asarray(Image.open('images/'+f))) 接下来,我得到了标签: labels_name = [fn for fn in os

我试图创建自己的数据集。 我在文件夹里有不同大小的图片

files = [fn for fn in os.listdir('images')
              if any(fn.endswith(ext) for ext in ['jpg'])]
data=[]
for f in files:
    data.append(np.asarray(Image.open('images/'+f)))
接下来,我得到了标签:

labels_name = [fn for fn in os.listdir('images')
              if any(fn.endswith(ext) for ext in ['txt'])]
labels=[]
for label in labels_name:
    labels.append(np.loadtxt('images/'+str(label)))
下一步是拆分数据:

print(type(labels),len(labels),labels[x].shape)
print(type(data),len(data),data[x].shape)
#<class 'list'> 3385 (5,) --< yes 5 labels to each image
#<class 'list'> 3385 (436, 540, 3) <--W,H,C

X_train, X_test, y_train, y_test = train_test_split(data, labels, test_size=0.33, random_state=42)

transform = transforms.Compose(
    [transforms.ToTensor(),
     transforms.Resize(256),
     transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))])
train_dataset=torch.utils.data.TensorDataset(torch.tensor(X_train), torch.tensor(y_train),transform)
train_dataset=torch.utils.data.TensorDataset(torch.tensor(X_test), torch.tensor(y_test),transform)