如何在 matplotlib 中的 RGB 图像上叠加 RGBA 图像
How to overlay an RGBA image on an RGB image in matplotlib
我有一组 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。
你有一个两步问题。首先你需要组合成 RGBA 图像,然后你想要映射 RGBA -> RGB。请注意,通过将 alpha 蒙版设置为完全不透明,从 RGB -> RGBA 映射您的第一张图像是微不足道的。这两个问题都已经在SO上解决了。
组合 RGBA + RGBA:
Determine RGBA colour received by combining two colours
映射 RGBA -> RGB:
Convert RGBA color to RGB
我有一组 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。
你有一个两步问题。首先你需要组合成 RGBA 图像,然后你想要映射 RGBA -> RGB。请注意,通过将 alpha 蒙版设置为完全不透明,从 RGB -> RGBA 映射您的第一张图像是微不足道的。这两个问题都已经在SO上解决了。
组合 RGBA + RGBA:
Determine RGBA colour received by combining two colours
映射 RGBA -> RGB:
Convert RGBA color to RGB