Stable Diffusion で Kawaii イラストを生成するためにやったことまとめ (作例 + Notebook付き)
目次
- 潜在空間上でのプロンプト計算 (線形補完、morphing)
- Kawaii イラスト生成
- Jupyter Notebook 作成(潜在空間上の計算、Google Colab / ローカル両対応、Waifu Diffusionサポート)
- おまけ: morphing
潜在空間上でのプロンプト計算 (線形補完、morphing)
プロンプトにより生成される内部ベクトルに対して、補正プロンプトを重み付きで足し引きすることを思いつき、以下の解説記事を書き機能追加パッチを公開した。
意味のちょい足しや、最近流行りのmorphingに使える。
Kawaii イラスト生成
Stable Diffusion は日本風の Kawaii 画像を出すのがあまり得意ではないように感じる。
この問題を、海外の上手なイラスト風のプロンプトという高確率で品質の安定するプロンプトをベースにし、潜在空間上でのプロンプト計算により若干日本風に寄せることで解決した。
潜在空間上での計算イメージ: (海外の上手なイラスト風) + 重み * (日本アニメ風 - 海外風)
ベースプロンプトの安定した作画と、日本風の Kawaii 要素のいいとこ取りに成功している(と思う)。
今日のベスト #StableDiffusion #StableDiffusionKawaii pic.twitter.com/VqItTAHPRH
— td2sk🤔️ (@td2sk) 2022年9月2日
#StableDiffusion の内部に手突っ込んでkawaii補正した例 (左が元、右が補正後) #StableDiffusionKawaii pic.twitter.com/g1cAdiEOUi
— td2sk🤔️ (@td2sk) 2022年9月5日
Stable Diffusionで試行錯誤しましたが、かわいいと背景を同時に成立させるのは難しいですね…… (プロンプトは過去ツイに) pic.twitter.com/IAcUd5cXCo
— td2sk🤔️ (@td2sk) 2022年8月31日
同じプロンプトから補正式の重みを変えて得られた2枚 #StableDiffusion #StableDiffusionKawaii pic.twitter.com/VqrAxOvBFi
— td2sk🤔️ (@td2sk) 2022年9月7日
ほぼ自動で10,000パターン探索した結果が出始めた #StableDiffusion #StableDiffusionKawaii pic.twitter.com/IDpT9EG2FJ
— td2sk🤔️ (@td2sk) 2022年9月6日
シード値総当りで見つけた良さそうな元絵と、そこからプロンプト演算で調整した完成版 #StableDiffusion #StableDiffusionKawaii pic.twitter.com/S4quvBBPyj
— td2sk🤔️ (@td2sk) 2022年9月2日
もう少し調整したいけどキリがないのでこの辺で #StableDiffusion #StableDiffusionKawaii pic.twitter.com/xRfBX1XOde
— td2sk🤔️ (@td2sk) 2022年9月8日
実際のプロンプトや各種パラメーターはツイートした画像のALTを参照のこと。
以下の Notebook に ALT の内容をコピペすることで、誰でも全く同じ画像を得ることができる。
Jupyter Notebook 作成(潜在空間上の計算、Google Colab / ローカル両対応、Waifu Diffusionサポート)
txt2img, img2img を簡単に使えるようにした Notebook。
潜在空間上のプロンプト計算をサポートし、ローカルPCとGoogle Colabの両方に対応している。
また、モデルを差し替えることで Waifu Diffusion (wd-v1-2-full-ema.cpkt) も動作する。
メモリ消費量がギリギリのため、ランタイムが止まったら"ランタイム > 再起動してすべてのセルを実行"を選択すること。
おまけ: morphing
潜在空間上での補正計算を、重みを変えながら繰り返し実施して動画化すると、以下のように ある程度構図を保ったまま別のプロンプトに向かって遷移するmorphingが実現できる。
#StableDiffusion で油絵をちょっとずつアニメ風に寄せるテスト。どのあたりが好み? pic.twitter.com/WV9IMpoqrc
— td2sk🤔️ (@td2sk) 2022年8月26日
https://t.co/2jzzE2bkIg
— td2sk🤔️ (@td2sk) 2022年8月27日
ピラミッドからエジプト要素をちょっとずつ引き、代わりに日本要素を足していく例 (prompt: pyramid + α(japan - egypt)) #StableDiffusion pic.twitter.com/e5V7WHmEww