如何在Matlab中使用窗口循环矩阵

如何在Matlab中使用窗口循环矩阵,matlab,for-loop,matrix,vectorization,Matlab,For Loop,Matrix,Vectorization,我在Matlab中有一个n×m矩阵,我想用一个特定大小的窗口循环该矩阵,然后对窗口内的值进行一些计算(例如,平均值、标准偏差)。下面的图片应该解释我的观点: 所以在图像中,我有一个2x2的窗口,我通过矩阵循环窗口。在每个循环中,我计算窗口内值的平均值。在本例中,输出将返回一个包含相应平均值的矩阵。你知道怎么做吗?Matlab中是否有用于此的内置函数 谢谢你的帮助!=) 如果您有图像处理工具箱,请使用 另一个选项与'distinct'块类型一起使用: B = mean(im2col(A,[m n

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

所以在图像中,我有一个2x2的窗口,我通过矩阵循环窗口。在每个循环中,我计算窗口内值的平均值。在本例中,输出将返回一个包含相应平均值的矩阵。你知道怎么做吗?Matlab中是否有用于此的内置函数

谢谢你的帮助!=)

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

另一个选项与
'distinct'
块类型一起使用:

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