二次元イラストなどを色ごとに異なるレイヤーに自動で分割できる「layerdivider」のWindows環境へのインストール&使い方を丁寧に画像付きで解説します。
これでできること:イラストを色別レイヤーに分ける。

元の画像です。
これを約30枚のレイヤーに分割しましたが、例として6つのレイヤ画像を載せてみました。
なお、レイヤー分け時の設定値は全てインストール時のデフォルト設定で行いました。






1. 動作要件とインストール
事前にインストールしておくもの
- Git
- Python 3.10.8(私は3.10.7ですが動きました)
layerdividerのインストールをする
まず適当なフォルダを作成してください。
そのフォルダ内にインストールしていきます。
(つまりWebUIの拡張機能ではありません。LoRA学習環境みたいなもんです)
今回は「lay」フォルダにインストールしていきます。

まず、インストールしたいフォルダ内で右クリック→「ターミナルで開く」を選択して、以下のコマンドを実行します。
git clone https://github.com/mattyamonaca/layerdivider
これでリポジトリをダウンロードできたので、次は初回インストール用のスクリプトを実行します。
インストールは仮想環境(venvフォルダ)に行われるので諸々心配しなくて大丈夫です。
cd layerdivider
.\install.ps1
インストール完了までしばし待機。
だいたい5分もあれば終わります。
Install completed
と表示されたらインストール完了!!
エンターキーを押してください。
2. layerdividerを付属WebUIで扱う
WebUIを起動する
ターミナルに以下のコマンドをコピペします。
.\run_gui.ps1

URLが表示されたらCtrlキーを押しながら左クリックして、ブラウザで開きます。
各種設定項目解説
layerdividerの動作
https://github.com/mattyamonaca/layerdivider
- 入力された画像をピクセル単位でRGB情報に従いクラスタリング
- 色の類似度(CIEDE2000基準)が近いクラスタを統合
- 入力された画像をブラー処理で平滑化
- クラスタごとにブラー処理後の色の平均値を出し、算出した平均値ですべてのピクセルを塗りなおし
- 2-4を指定された回数繰り返し実行
- 最終的なクラスタリング結果に基づき、ベースとなるレイヤーを作成
- ベースレイヤーの各色を、入力された画像のクラスタ毎の平均色で塗りなおし
- ベースレイヤーとオリジナルの色差に基づいて効果レイヤーを算出
layerdividerの各種設定項目
https://github.com/mattyamonaca/layerdivider
- roop: 処理2-4を繰り返す回数
- init_cluster: 処理1で生成するクラスタの数(大きいほど細かくレイヤー分けされる)
- ciede_threshold: 処理2でどの程度色が類似していたらクラスタを結合するか決める閾値
- blur_size: 処理3でかけるブラー処理の大きさ(大きいほど強くぼかす)
- output_layer_mode
- normal: 通常レイヤーのみで出力されるPSDを構成
- composite: 通常レイヤー、スクリーンレイヤー、乗算レイヤー、減算レイヤー、加算レイヤーを組み合わせて出力されるPSDを構成
実際に使ってみる
レイヤ分けしたい画像をドラッグして、左上のエリアに持っていけば入力完了。
設定パラメータはとりあえずデフォルトのままやってみました。

あとは数分くらい待てば右側に結果が表示されます。

PSDファイルはGIMPなどで無料で扱えるので、レイヤ分け結果を扱いたい場合、layerdivider\output
に出力が保存されているのでダウンロードは不要です。


効果が実感しやすいように、baseレイヤーの一部を載せておきます。






精度良いですね☆
3. まとめ 二次元イラストレイヤー分け「layerdivider」の導入&使用法
- Git,Python 3.10.8をインストール
- リポジトリをダウンロードする
- インストールスクリプト実行
- WebUIを起動
- イラスト画像を入力し「送信」
- 結果のPSDファイルを楽しむ!!
生成画像の手直しなどが一層簡単になりましたね!
WebUI(1111)の拡張機能となりインストールがより簡単になる日を願いつつ製作者様に感謝します。
他にも有用な拡張機能はたくさんあるので、是非見ていってください!!