Когда я пытаюсь удалить Green (#09f80c)
из этого изображения, используя команду ниже
magick convert images/img001.png - fill transparent -opaque #09f80c images/tp.png
Я становлюсь ниже изображения:
Это изображение я получаю как вывод для команды выше. У этого изображения все еще есть зеленые точки по краям. Как их полностью удалить?
Я хочу, чтобы преобразованное изображение не содержало лишних пикселей.
Ваша помощь будет высоко оценена.
В Imagemagick вы можете использовать -fuzz, как предложил Энди. Но вы можете увеличить значение fuzz до тех пор, пока не начнете изменять другие регионы, а также зеленый.
Начните с измерения цвета как можно ближе. Я получаю # 2FF81D
Ниже приведено большое значение fuzz для этого изображения. Но у него все еще есть зеленый цвет снаружи. (Синтаксис Unix)
convert green.jpg -fuzz 35% -transparent "#2FF81D" green_trans1.png
Чтобы дополнительно уменьшить эффект, вы можете сгладить границу прозрачной области, слегка смазав ее и суживая (через -level).
convert green.jpg -fuzz 35% -transparent "#2FF81D" -channel a -blur 0x3 -level 50x100% +channel green_trans2.png
Может быть, вы должны попробовать -fuzz
аргумент, например, -fuzz 40%
.
Я нашел это в документации здесь: