tsrkzy blog

JavaScriptしか書けない人の備忘録

ImagemagickでTRPGの背景用の画像を作る

便利な時代になったもので、「廃墟 倉庫」「坂道 夜」とかで画像検索すれば、風景画像は簡単に手に入る。
それらを身内で行うTRPGオンセの背景画像に使えるように加工するって記事。

先に言ってしまうと、PhotoshopかClipStudioのイラスト調フィルタ使ったほうが早い
この記事で書いてる方法のメリットはバッチ処理ができるようになるぐらいだと思う。
あと自己満。

要件

別にそのままでも使えるんだけど、普通の風景写真だとキャラの立ち絵がイラストなので浮く。
なので風景画像をイラスト調にしたい

自分の理解としてはイラスト調 ≒ ディフォルメなので、
結論から言ってしまうと以下の処理を行ってそれっぽくする感じになった。

  1. 減色処理
  2. 彩度を下げる(きらびやかな背景だとコマが見づらいので下げた)
  3. メディアンフィルタ

Imagemagickについては、前の記事のpython3 + ffmpeg用の使い捨てdockerコンテナを作るに入れた。
というか入ってた。
ffmpegを入れる時に一緒に入ってるんですかね。調べても良かったんだけど本筋から外れるし無視。

使い方

公式……が読みづらかったので主に下記サイトを参考にした。

+dither -colors 96 で96色まで減色。その際にかなり賢いアルゴリズムを使っているようで、
相当カラフルな画像を使わない限りは、見た目に違和感はでなさそう。

-modulate 100,30,100 で彩度減。HSVで伝わる人には分かりやすいかも。
Sは2つ目の引数なので、元を100としたら30まで下げてる。

-median 8メディアンフィルタ
引数の名前がradiusなので、おそらく半径8pxの円で中央値取ってるんだと思う。

  convert \
  "${INPUT_PATH}" \
  +dither -colors 96 \
  -modulate 100,30,100 \
  -median 8 \
  "${OUT_PATH}"

結果

比較用に2枚。Google画像検索で引っ張ってきたやつ。
ボタッと厚塗りしたような見た目になっているはず。
想像してたのと違ったらごめん。

フィルタ前

f:id:tsrkzy:20210506024040j:plain

フィルタ後

f:id:tsrkzy:20210506024019j:plain