-2

我有一个大小为 4D 的图像60 x 80 x 12 x 350,即它是一个 3D 图像,其中每个体素都有一个时间序列(350 个)。

现在我想使用mat2cell将 3D 图像划分为维度的立方体k*k*k。立方体中的每个体素都是大小为 350(时间序列)的向量。

我想我可以做到,mat2cell但我不知道具体如何。每个单元最后都应包含图像的 3D 块,其中块的每个体素都是大小为 350 的向量。

4

1 回答 1

1

假设您的 4D 矩阵被称为M. 您需要有元素总和为size(M, i)where的向量i = 1:4。假设k有一些价值,我尝试了 4(因为它是您指定的尺寸的公因子)和 3(因为它不是)。

k = 3;
MPrime = mat2cell(M, ...
    [k*ones(1, floor(size(M,1)/k)), mod(size(M,1), k)], ...
    [k*ones(1, floor(size(M,2)/k)), mod(size(M,2), k)], ...
    [k*ones(1, floor(size(M,3)/k)), mod(size(M,3), k)], ...
    ones(1, size(M,4)));
于 2015-06-02T23:09:16.010 回答