
前景に黒の背景と白の要素を持つイメージがあります。画像が滑らかになったので、中央に厳密に言うと、黒や白ではなく、いくつかのピクセルがあります。背景を透明にしたいです。 imagemagickを使用してこれを行う方法へのいくつかのリンクを見つけましたが、すべて厳密に1つの色を置き換えます(たとえば、「#000000FF」をアルファ値全体の「#00000000」に置き換えます)。ブレンド効果を維持したい。したがって、グレーピクセル「#777777FF」がある場合は、「#FFFFFF77」などの色や意味のある色に変換されます。
これを行う方法を知っている人はいますか?
答え1
この記事では、これを行う方法について非常によく説明します。
http://www.imagemagick.org/Usage/masking/#alpha
私は私のブログにこれに関する小さな記事を書きました。
http://mostlycoincidence.blogspot.se/2012/12/imagemagick-making-glyphs-transparent.html
基本的にあなたがする必要があるのは、マスクを作成してからマスクを画像に適用することだけです。これは2つのステップで実行できます。
$ convert image.png -colorspace HSB -separate -negate image_mask.png
$ convert image.png -alpha Off \
> image_mask.png -compose CopyOpacity -composite \
> PNG32:image_alpha.png
これにより、白が透明な色になります。透明度の色を黒に変更するには、-negate
フラグを削除してください。