当输入都是PIL.Image时
numpy h w c
to_tensor c h w
from torchvision.transforms import functional as F
pth = "/root/autodl-tmp/data/bgm/videomatte/train/fgr/0000/00000.jpg"
img = Image.open(pth)
print(img.size)
img_array = asarray(img)
print(img_array.shape)
img = F.to_tensor(img)
print(img.shape)
# (768, 432)
# (432, 768, 3)
# torch.Size([3, 432, 768])
当to_tensor的输入是numpy时,
也会把 numpy的 h w c 顺序转换成c h w
from torchvision.transforms import functional as F
pth = "/root/autodl-tmp/data/bgm/videomatte/train/fgr/0000/00000.jpg"
img = Image.open(pth)
print(img.size)
img_array = asarray(img)
print(img_array.shape)
img_tensor = F.to_tensor(img)
print(img_tensor.shape)
# (768, 432)
# (432, 768, 3)
# torch.Size([3, 432, 768])
numpy 转 PIL
img = Image.fromarray(img_array)