我有一個代碼在Matlab中用2D數據左移和右移。有代碼通過matlab左右移動3D數據
function shift = shiftL(M)
shift = [ M(:,2:size(M,2)) M(:,size(M,2)) ];
function shift = shiftR(M)
shift = [ M(:,1) M(:,1:size(M,2)-1) ];
我想將上面的代碼應用於3D數據輸入。如何修改3D數據的上述代碼?謝謝
function shift = shiftL3D(M)
function shift = shiftR3D(M)
謝謝michaeltang。如果我想在右移之後轉置矩陣。可能嗎?這是2D運輸移位=移位R(M')';.當我將它應用於3D時,錯誤是使用'ND陣列上的.Transpose未定義。如錯誤信息所示, – user3051460
,ND陣列上的轉置沒有定義,這是不可能的。 – michaeltang
由於3d矩陣有3個暗淡的因此它可以轉置爲6個不同的順序,排列可以做到這一點 – michaeltang