【问题标题】:Efficiently set array values to zero if not equal to a certain number? [duplicate]如果不等于某个数字,是否有效地将数组值设置为零? [复制]
【发布时间】:2017-04-26 20:10:02
【问题描述】:

我正在使用 Python 读取图像,并获取像素的 RGB 值的 3 维矩阵。

我想使用这些 3-d 数组并制作一个仅 RGB 值等于 r=62、g=57、b=47 的矩阵。

我该怎么做?我已经研究过屏蔽,但我不明白如何实现。

编辑:我说的是 numpy 数组而不是列表。 numpy 有很多内置函数,for 循环效率很低。

【问题讨论】:

  • @Art 我说的是数组。来自 scimage.io 的 imread 返回一个 3-d numpy 数组。
  • @TigerhawkT3 该帖子用于列表,它是否也适用于 3-d numpy 数组?
  • 那将是stackoverflow.com/questions/19666626/…。下次,请在您的问题中提供所有相关信息。

标签: python arrays


【解决方案1】:

如果rgb 是一个 NumPy 数组,那么这应该可以工作:

rgb[rgb!=[62,57,47]]=0

【讨论】:

    猜你喜欢
    • 2012-06-19
    • 1970-01-01
    • 1970-01-01
    • 2014-07-10
    • 1970-01-01
    • 2016-12-17
    • 1970-01-01
    • 1970-01-01
    • 2021-05-27
    相关资源
    最近更新 更多