我有一个大小为 [86 86] 的矩阵 [x y]。我想把这个矩阵分成10个子矩阵。对于最后一个矩阵,坐标会不足,但可以用零填充。
[x y] = size(I)
nSub = 10;
B = mat2cell(I, 2*ones(size(I,1)/2,1), 2*ones(size(I,2)/2,1))
我尝试使用 mat2cell 函数,但输出效果不佳。 谁能告诉我哪里出了问题或者我可以更改此功能
最佳答案
这对你有用吗?
I = rand(86,86);
[x y] = size(I)
nSub = 10;
%// padding
xp = x + nSub - mod(x,nSub);
yp = y + nSub - mod(y,nSub);
I(xp,yp) = 0;
%// submatrices
B = mat2cell(I, nSub*ones(xp/nSub,1),nSub*ones(yp/nSub,1))
关于matlab - 将矩阵划分为 10 个子矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31001980/