2015-11-28 3 views
1

Я пытаюсь заменить цвет в изображении другим цветом, определяя координаты одного из его пикселей. Но когда я запускаю код, результат точно такой же, как и у оригинала.Заменить цвет с помощью 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) 

Но у меня есть «неожиданный аргумент ключевого слова fuzz».

поэтому я попытался:

draw.fuzz = 10 

я не получил никаких ошибок, но изображение все еще не было никаких изменений.

ответ

1

Я бы предположил, что вы не применили контекст рисования к изображению.

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) 

Replace a color using Wand

+0

Я не могу поверить, что я пропустил это. Спасибо. – serisAK

 Смежные вопросы

  • Нет связанных вопросов^_^