PyTorch转换可更改尺寸

时间:2019-05-02 18:36:02

标签: pytorch

我不明白为什么100x100图片的pytorch转换会变成3x100图片。

print("Original shape ", x.shape)

x = transforms.Compose([
    transforms.ToPILImage(),
    transforms.ToTensor()
])(x)

print("After transformation shape ", x.shape)

输出

Original shape  torch.Size([100, 100, 3])
After transformation shape  torch.Size([3, 100, 3])

发生了什么事?

1 个答案:

答案 0 :(得分:1)

根据文档https://pytorch.org/docs/stable/torchvision/transforms.html#torchvision.transforms.ToPILImage,如果输入为Torch张量,则形状为C xH xW。因此将100视为通道数。由于没有对应于100个通道的模式,因此将其解释为RGB(3个通道)。

因此,您需要输入形状torch.Size([3, 100, 100])以使其按需工作。