【问题标题】:Discarding alpha channel from images stored as Numpy arrays从存储为 Numpy 数组的图像中丢弃 alpha 通道
【发布时间】:2021-04-15 17:45:04
【问题描述】:

我使用 numpy/scikit 加载图像。我知道所有图像都是 200x200 像素。

加载图像时,我注意到有些图像具有 Alpha 通道,因此形状为 (200, 200, 4) 而不是我预期的 (200, 200, 3)。

有没有办法删除最后一个值,丢弃 alpha 通道并使所有图像都变成一个漂亮的 (200, 200, 3) 形状?

【问题讨论】:

  • 假设您使用的是Image.open(<image_path>),您可以通过Image.open(<image_path>).convert('RGB') 丢弃alpha 值。希望这对将来的某人有所帮助。

标签: python numpy math


【解决方案1】:

只需对数组进行切片以获取最后一维的前三个条目:

image_without_alpha = image[:,:,:3]

【讨论】:

  • 我认为这会降低图像质量?
  • @AleksandarJovanovic 你知道“图像质量”是什么意思吗?删除 alpha 会删除有关像素透明度的信息,但不会影响其他信息(例如颜色)。
【解决方案2】:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-21
    • 2015-02-20
    • 1970-01-01
    • 1970-01-01
    • 2016-07-02
    • 2021-08-30
    • 2014-11-28
    • 1970-01-01
    相关资源
    最近更新 更多