pytorch 中HWC转CHW

import torch
import numpy as np
from torchvision.transforms import ToTensor

t = torch.tensor(np.arange(24).reshape(2,4,3))
print(t)

#HWC 转CHW
print(t.transpose(0,2).transpose(1,2))

print(t.permute(2,0,1))

print(ToTensor()(t.numpy()))

  

D:\anaconda\python.exe C:/Users/liuxinyu/Desktop/pytorch_test/day3/hwc转chw.py

tensor([[[ 0, 1, 2],

[ 3, 4, 5],

[ 6, 7, 8],

[ 9, 10, 11]],

[[12, 13, 14],

[15, 16, 17],

[18, 19, 20],

[21, 22, 23]]], dtype=torch.int32)

tensor([[[ 0, 3, 6, 9],

[12, 15, 18, 21]],

[[ 1, 4, 7, 10],

[13, 16, 19, 22]],

[[ 2, 5, 8, 11],

[14, 17, 20, 23]]], dtype=torch.int32)

tensor([[[ 0, 3, 6, 9],

[12, 15, 18, 21]],

[[ 1, 4, 7, 10],

[13, 16, 19, 22]],

[[ 2, 5, 8, 11],

[14, 17, 20, 23]]], dtype=torch.int32)

tensor([[[ 0, 3, 6, 9],

[12, 15, 18, 21]],

[[ 1, 4, 7, 10],

[13, 16, 19, 22]],

[[ 2, 5, 8, 11],

[14, 17, 20, 23]]], dtype=torch.int32)

Process finished with exit code 0