如何将所有颜色更改为透明但只有一种颜色?

How to change all colors to transparent but one?

使用 Wand 0.6.2 库,我尝试删除除一种颜色之外的所有颜色,我通过以下方式使用 ImageMagick 获得了所需的结果:

imageMagicCmd = ["magick.exe", "can.jpg",
             "-alpha","Set", "(", "+clone", "-fuzz", "40%", "-transparent", "rgb(255,0,0)", ")",
             "-compose", "DstOut", "-composite", "SingleColor_Red.png"] 
subprocess.call(imageMagicCmd)

can.jpg 图片:

SingleColor_Red.png 图片:

如何使用 Wand 库实现相同的结果?

尝试以下...

from wand.image import Image

with Image(filename="can.jpg") as img:
    img.alpha_channel = 'set'
    f = int(img.quantum_range * 0.4)
    img.transparent_color('#f00', 0.0, fuzz=f, invert=True)
    img.save(filename="output.png")

...应该会产生预期的结果。