【问题标题】:How to reshape pixel list into RGB matrix?如何将像素列表重塑为 RGB 矩阵?
【发布时间】:2016-05-05 00:47:54
【问题描述】:

给定一个 300 个 numpy 值数组,其中前 100 个是红色像素值,第二个 100 个绿色和最后一个 100 个蓝色,有没有快速的方法使用 reshape 将这个初始 1x300 列表重新排列成一个 100x3 矩阵,其中每行包含匹配的 RGB 值?

【问题讨论】:

    标签: python numpy


    【解决方案1】:

    为了更易于管理,假设您有一个 numpy 数组 pix,其中包含 30 个值,其中前十个是红色,然后是 10 个绿色,然后是 10 个蓝色。例如:

    >>> import numpy as np
    >>> pix = np.arange(30)
    >>> pix
    array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16,
           17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29])
    

    要将其重塑为 10x3 的 RGB 值数组,请使用:

    >>> pix.reshape(3, 10).transpose()
    array([[ 0, 10, 20],
           [ 1, 11, 21],
           [ 2, 12, 22],
           [ 3, 13, 23],
           [ 4, 14, 24],
           [ 5, 15, 25],
           [ 6, 16, 26],
           [ 7, 17, 27],
           [ 8, 18, 28],
           [ 9, 19, 29]])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-05-17
      • 1970-01-01
      • 1970-01-01
      • 2021-10-05
      • 2011-01-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多