1. はじめに
Animagine XL 3.1で「satin」(サテン)が効かず、satinyやsateenもだめで、いろいろな2次元系モデルを試したところ、blue_pencil-XL v6.0.0では出力できました。しかし、blue_pencil-XL v6.0.0で普段のプロンプトだと慣れた絵柄と異なるため、初めてマージモデルに挑戦しました。
Stable Diffusion webUI(Automatic1111)で通常マージを行ったところ、出力結果がいまいちだったので、10分で諦めて、沼と言われている階層マージを行いました。
2. 階層マージ操作方法(説明超はしょり)
2.1. 拡張機能SuperMergerインストール
- 拡張機能SuperMergerをwebUIにインストール
- UIリロードしてSuperMergerタブに移動
参考:
Stable Diffusionの拡張機能『SuperMerger』の使い方!階層マージを効率化させる方法!
https://romptn.com/article/19894
Stable Diffusionの「階層マージ」とは?やり方や影響について詳しく解説
https://romptn.com/article/28071
2.2. 階層マージ
- Model Aを選択(今回はAnimagine XL 3.1)
- Model Bを選択(今回はblue_pencil-XL v6.0.0)
- Weight sumを選択したまま
- normalを選択したまま
- use MBWをチェック(これに気づかず時間をだいぶ無駄にしたその1)
- safetensorsをチェックしたまま
- option(gamma) 0.3のまま
- Block TypeのXLを選択
- Select presetでALL_Aを選択(全ての階層がModel Aの状態)
- 20階層(SDXLの場合)のパタメータを0~1の範囲で設定する(Base、IN00~IN08、M00、OUT00~08。U-NETの各階層)
- ↑Set alphaをクリック(これに気づかず時間をだいぶ無駄にしたその2)
- Merge&Genをクリック。マージモデルを作成して、txt2imgタブの設定が使われて生成される。(一部使われない)
- そのままのマージモデルでまた生成する場合にはGenをクリック
- パラメータを変更する場合は10.に戻る
- 保存する場合はSave current merge(fp16 only)をクリック
3. 階層マージモデル設定その1
4. 階層マージモデル設定その2(ちちぷいに今日投稿した画像で使用したモデル)
他の情報は投稿画像のメタデータにあります。
ナースキャップのマークをなくしたかったけど、何も設定しないと赤十字が出て、国際的によろしくなく、それを抑制したら白十字、十字を抑制したらハートマーク、ハートマークも抑制したらわけのわからないマークが出て、今回はマークを出さないようにできなかったので、諦めてハートマークを指定しています。目立たないように銀色で。
5. パラメータの決定方法
手探り。値をちょっと変えて生成しての繰り返し。
今回は、Animagine XL 3.1の顔で、サテン生地を出せるようにしたかったので、顔に影響があったところはModel A側(0近く)にして、サテンの光沢とドレープが出るようにModel B側(1近く)にして、値を変えても絵柄にあまり影響がなかった値はできるだけ0方面に近づけました。
6. 参考画像
同一Seed、同一プロンプト。
顔や光沢の比較用。細部は失敗している。
(1) Animagine XL 3.1
サテンは出ない。
(2) blue_pencil-XL v6.0.0
サテンっぽいのが出る。
(3) 上記の階層マージモデルその1
サテンに少し近づいた。顔はAnimagine風。
(4) 上記の階層マージモデルその2
サテンっぽくなった。