【问题标题】:Mean value for dimension in numpy arraynumpy数组中维度的平均值
【发布时间】:2015-12-08 03:43:22
【问题描述】:

我的 numpy 数组(名称:data)具有以下大小:(10L,3L,256L,256L)。 它有 10 个图像,每个图像有 3 个颜色通道 (RGB),每个图像大小为 256x256 像素。

我想计算所有 10 个图像的每个颜色通道的平均像素值。如果我使用 numpy 函数 np.mean(data),我会收到所有像素值的平均值。使用np.mean(data, axis=1) 返回一个大小为(10L, 256L, 256L) 的numpy 数组。

【问题讨论】:

    标签: python arrays numpy


    【解决方案1】:

    如果我正确理解您的问题,您需要一个数组,其中包含三个图像中每个图像的每个通道的平均值。 (即形状数组 (10,3) )(如果这不正确,请在 cmets 中告诉我,我可以编辑此答案)

    如果您使用的 numpy 版本大于 1.7,您可以将多个轴作为元组传递给 np.mean

    mean_values = data.mean(axis=(2,3))
    

    否则,您必须先将阵列展平才能使其成为正确的形状。

    mean_values = data.reshape((data.shape[0], data.shape[1], data.shape[2]*data.shape[3])).mean(axis=2)
    

    【讨论】:

      猜你喜欢
      • 2020-12-09
      • 2014-01-01
      • 2013-03-27
      • 1970-01-01
      • 1970-01-01
      • 2017-12-13
      相关资源
      最近更新 更多