图1
输入如图1所示语句,输出如下:
图2
由以上两图说明transpose()函数的作用:
假设shape(z,x,y),在RGB图像中可以理解为z代表通道数,x代表图像的第几行,y代表图像的第几列,x和y组合而成所代表的像素构成一幅单通道图像。
在图1的第8行之前代表转换前的数据,
转换前shape为(0,1,2),
[[[(0,0,0), (0,0,1), (0,0,2), (0,0,3)] // [[[ 0, 1, 2, 3],
[(0,1,0), (0,1,1), (0,1,2), (0,1,3)]], // [ 4, 5, 6, 7]],
[[(1,0,0), (1,0,1), (1,0,2), (1,0,3)] // [[ 8, 9, 10, 11],
[(1,1,0), (1,1,1), (1,1,2), (1,1,3)]]]. //[12, 13, 14, 15]]]
转换后shape为(1,0,2)
[[[(0,0,0), (0,0,1), (0,0,2), (0,0,3)]
[(1,0,0), (1,0,1), (1,0,2), (1,0,3)]],
[[(0,1,0), (0,1,1), (0,1,2), (0,1,3)]
[(1,1,0), (1,1,1), (1,1,2), (1,1,3)]]]
将转换前 shape 对应的值填进去 得
[[[ 0, 1, 2, 3],
[ 8, 9, 10, 11]],
[[ 4, 5, 6, 7],
[12, 13, 14, 15]]]
参考文章:
https://blog.csdn.net/qq_21046135/article/details/71249195