【问题标题】:How to overlay an RGBA image on an RGB image in matplotlib如何在 matplotlib 中的 RGB 图像上叠加 RGBA 图像
【发布时间】:2025-11-22 15:20:04
【问题描述】:

我有一组 RGB 图像(大小 (400,200,3)),我正在使用 matplotlib.animation 制作动画,我想在它们上面叠加一个 RGBA 图像(大小 (400,200,4))。当我使用 axes.add_image() 覆盖第二张图像时,FFMPEG 似乎对添加的 alpha 数据感到窒息(它在没有覆盖的情况下工作正常)。我想知道是否有办法覆盖第二张图像并在将其传递给 matplotlib.animation 之前消除 alpha 数据,因为我认为这将解决问题。

我正在使用 python 2.7.9 和 matplotlib 1.4.2。

【问题讨论】:

    标签: python matplotlib imshow


    【解决方案1】:

    你有一个两步问题。首先你需要组合到 RGBA 图像,然后你想要映射 RGBA -> RGB。请注意,通过将 alpha 蒙版设置为完全不透明,将您的第一张图像从 RGB -> RGBA 映射是微不足道的。这两个问题都已经在 SO 上解决了。

    1. 结合 RGBA + RGBA

      Determine RGBA colour received by combining two colours

    2. 映射 RGBA -> RGB

      Convert RGBA color to RGB

    【讨论】:

      最近更新 更多