这是交换3D矩阵的正确语句吗?
A([1 2],:,2)= A([2 1],:,2)
A
定义为3x3x3的三维矩阵。
试着想象你有一个3x3x3的3D矩阵(一个立方体类型)。现在你必须将正面的列交换到顶部的列。这种类型的交换在MATLAB中可能吗?
可以。
切换A(:,:,2)
中最上面的两行:
A = reshape(1:27,[3,3,3]);
before = A(:,:,2)
A([1 2],:,2) = A([2 1],:,2);
after = A(:,:,2)
结果:before =
10 13 16
11 14 17
12 15 18
after =
11 14 17
10 13 16
12 15 18