MATLAB:将3D矩阵转换为单元阵列

toy*_*lıç 1 matlab matrix cell

我的目标是将192x88x3矩阵转换为3x1包含192x88数组的单元阵列.我mat2cell在MATLAB中使用但结果是1x1x3看起来很奇怪的单元数组.

a=rand(192,88,3);
b=mat2cell(a, [192],[88],[1 1 1])
whos b
b         1x1x3            405840  cell   
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

Bor*_*s T 5

您可以使用squeeze删除冗余单例维度.

b = squeeze(mat2cell(a, [192],[88],[1 1 1]));
Run Code Online (Sandbox Code Playgroud)