【问题标题】:How to loop a matrix with a window in Matlab如何在Matlab中使用窗口循环矩阵
【发布时间】:2013-05-29 07:13:59
【问题描述】:

我在 Matlab 中有一个 n×m 矩阵,我想用一个特定大小的窗口循环矩阵,然后对窗口内的值进行一些计算(例如平均值、标准偏差)。下图应该能说明我的观点:

所以在图像中我有一个 2 x 2 的窗口,我通过矩阵循环窗口。在每个循环中,我计算窗口内值的平均值。在此示例中,输出将返回一个包含相应平均值的矩阵。知道如何做到这一点吗? Matlab中是否有任何内置函数?

感谢您的帮助! =)

【问题讨论】:

    标签: matlab for-loop matrix vectorization


    【解决方案1】:

    如果您有图像处理工具箱,请使用blockproc

    另一种选择是使用 im2col'distinct' 块类型:

    B = mean(im2col(A,[m n],'distinct'));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-25
      相关资源
      最近更新 更多