haonanwang 2021-09-11 18:50 采纳率: 100%
浏览 25
已结题

逻辑问题,不知道这个算法是什么意思

for j = 1:length(s)
L = s(j)*ones(1,Grid_num(j));
Nr(j) = sum(sum( cellfun(@(x) ceil(max(x(:))/h(j))-ceil(min(x(:))/h(j)) + 1,mat2cell(P,L,L)) ));
end
我想问一下这个怎么运算的

  • 写回答

1条回答 默认 最新

  • joel_1993 2021-09-11 20:04
    关注

    你好同学;
    这个意思就是说把矩阵P横竖均匀划分成大小为s(j)×s(j)的若干个方块矩阵(方块矩阵个数是Grid_num(j)×Grid_num(j))。
    然后对每个方块矩阵求最大值和最小值,然后都除以h(j)后,向上取整,再相减,最后加1,得到一个数;
    然后每个方块都返回这么个数,Grid_num(j)×Grid_num(j)个方块返回Grid_num(j)×Grid_num(j)个数,也就是一个Grid_num(j)×Grid_num(j)的矩阵;
    最后对这个矩阵求了两次sum,即得到矩阵上所有元素的和,也就是Nr(j)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月19日
  • 已采纳回答 9月11日
  • 创建了问题 9月11日