Ersetzen Sie grüne Pixel durch graue mit dem ImageMagick-Befehl „convert“

Ersetzen Sie grüne Pixel durch graue mit dem ImageMagick-Befehl „convert“

Ich möchte grüne Pixel ersetzen indiese PNG-Dateimit grauen.

Bezogen aufoffizielle Beispiele, ich habe den folgenden Befehl ausprobiert und bekamdieses Ergebnismit Weiß gefüllt, nicht mit Grau.
Es wird weiß, auch wenn andere Farbcodes eingestellt sind -fill {COLOR}.
Was ist falsch an meinem Befehl?

convert -opaque "#00b051" -fill "#808080" -fuzz 20% -strip grid{,_mod}.png

Umfeld:

❯ brew info imagemagick
==> imagemagick: stable 7.1.0-54 (bottled), HEAD

> sw_vers
ProductName:    macOS
ProductVersion: 12.6.2
BuildVersion:   21G320

> sysctl -n machdep.cpu.brand_string
Apple M1 Pro

> brew --version
Homebrew 3.6.15-33-g884c4be
Homebrew/homebrew-core (git revision 03ac47958ed; last commit 2022-12-16)
Homebrew/homebrew-cask (git revision 81aa381950; last commit 2022-12-16)

Antwort1

Versuchen Sie, die Optionen in dieser Reihenfolge anzuordnen:

  1. -fuzz ...
  2. -fill ...
  3. -opaque ...

So was:

convert kL63gnJ.png -fuzz 20% -fill "#808080" -opaque "#01b050" kL63gnJ-new.png

Das scheint wirklich wichtig zu sein.

verwandte Informationen