使用 Wand 替换颜色

Replace a color using Wand

我试图通过定义其中一个像素的坐标,用另一种颜色替换图像中的一种颜色。 但是当我运行代码的时候结果和原来的一模一样

这是原始图片:

代码如下:

from wand.image import Image
from wand.display import display
from wand.drawing import Drawing
from wand.color import Color

with Drawing() as draw:
    draw.fill_color = Color('#ff0000')
    draw.color(192,84,'replace')

    with Image(filename='rgb.jpg') as img:
        img.save(filename='rgr.jpg')
        display(img)

192,84 位于图像蓝色部分中间的某处。 现在应该是红色的,除了没有任何变化。 我想也许它与 "fuzz" 有关,但我无法弄清楚语法。我试过了:

draw.color(192,84,'replace',fuzz=10)

但是我遇到了 "unexpected keyword argument 'fuzz'" 错误。

所以我尝试了:

draw.fuzz = 10

我没有错误,但图像仍然没有变化。

我猜你没有将绘图上下文应用于图像。

from wand.image import Image
from wand.display import display
from wand.drawing import Drawing
from wand.color import Color

with Drawing() as draw:
    draw.fill_color = Color('#ff0000')
    draw.color(192,84,'replace')

    with Image(filename='gb.jpg') as img:
        draw(img)  # <= here
        img.save(filename='rgr.jpg')
        display(omg)