現在開発中のプロジェクトで、服の色を変更する処理を実装したので紹介します(簡易的な方法です)。
環境
ImageMagick 6.9.12-59 Q8手順
1. 元となる画像を用意します。例:Tシャツ ホワイト。 2. 例えばネイビーへ変更するとして変更前後の色についてRGBそれぞれの差分を計算します。ホワイト: rgb(255, 255, 255) ネイビー: rgb(32, 47, 85) R: 32 - 255 = -223 G: 47 - 255 = -208 B: 85 - 255 = -1703. ImageMagickのevaluate Addに差分の値を渡して色を変換します(Q16環境では各値を256倍します)。
convert src.png \
-channel R -evaluate Add -223 \
-channel G -evaluate Add -208 \
-channel B -evaluate Add -170 \
dest.png