【问题标题】:dividing a matrix into 10 submatrices将矩阵划分为 10 个子矩阵
【发布时间】:2015-06-23 20:16:16
【问题描述】:

我有一个大小为 [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 函数,但输出效果不佳。 谁能告诉我哪里出了问题或者我可以改变这个功能

【问题讨论】:

  • 用零填充矩阵并应用this。让我知道它是否有效,以便我可以将其标记为重复
  • 10 个矩阵还是 10×10 个子矩阵?

标签: matlab matrix


【解决方案1】:

这对你有用吗?

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))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-29
    • 1970-01-01
    • 2015-03-16
    • 2018-05-07
    • 2016-11-12
    相关资源
    最近更新 更多