MATLAB 一二三维矩阵之间转换
低维转高维
使用reshape函数,执行如下操作:
%% 维度转换
A=1:12;
% 一维转二维
B2=reshape(A,)
>>B2 =
1 7
2 8
3 9
4 10
5 11
6 12
% 一维转三维
B3=reshape(A,)
>>B3(:,:,1) =
1 3
2 4
B3(:,:,2) =
5 7
6 8
B3(:,:,3) =
9 11
10 12
% 二维转三维
C3=reshape(B2,)
>>C3(:,:,1) =
1 3
2 4
C3(:,:,2) =
5 7
6 8
C3(:,:,3) =
9 11
10 12
高维转低维
% 三维转二维
A=rand(3,3,3);
A1 = A(:,:,2); % 3*3 二维
A2 = A(:,2,:); % 3*1*3 三维
A3 = A(2,:,:); % 1*3*3 三维
% 将三维转为 81*81 二维
A22 = reshape(A2,3,3);
A32 = reshape(A3,3,3);
% 三维转一维
B1=reshape(A,1,[]);
% 二维转一维
C1=reshape(A22,1,[]);
谢谢你的分享
页:
[1]