Waifu Diffusion 1.5 Beta 2の利用

Waifu Diffusion 1.5 Beta 2の利用 機械学習

「Stable Diffusion 2.1(768)をベースにしたモデルで画像生成を行いたい」
「高画質なアニメ調画像をAIで描きたい」

このような場合には、この記事の内容が参考になります。
この記事では、Waifu Diffusion 1.5 Beta 2について解説しています。

本記事の内容

  • Waifu Diffusion 1.5 Beta 2とは?
  • Waifu Diffusion 1.5 Beta 2の利用方法

それでは、上記に沿って解説していきます。

Waifu Diffusion 1.5 Beta 2とは?

Waifu Diffusion 1.5 Beta 2が、2023年3月1日にリリースされました。
https://cafeai.notion.site/WD-1-5-Beta-2-Release-Notes-2852db5a9cdd456ba52fc5730b91acfd

Waifu Diffusion 1.5については、次の記事で解説しています。

簡単に言うと、Stable Diffusion 2.1(768)をベースにファインチューニングしたモデルです。
Stable Diffusion 2.1をベースにしていると言うだけで、大きなアドバンテージと言えます。

そんなWaifu Diffusion 1.5の第2弾が、Waifu Diffusion 1.5 Beta 2になります。
Betaと言えども、普通に利用できるレベルです。

このWaifu Diffusion 1.5 Beta 2には、次の二つの種類が存在します。

  • WD 1.5 Beta 2
  • WD 1.5 Beta 2 Aesthetic

Aestheticとは、日本語で「美的」という意味です。
そして、Aesthetic版の方が綺麗な画像を生成します。

どれくらいの違いがあるのか気になりますよね。
以下に、それぞれのモデルを用いて同じ条件(同じSEED)で生成した結果を載せておきます。

WD 1.5 Beta 2

WD 1.5 Beta 2 Aesthetic

言うまでもなく、WD 1.5 Beta 2 Aestheticに軍配が上がります。
では、なぜWD 1.5 Beta 2が存在するのでしょうか?

それは、WD 1.5 Beta 2が学習用として利用されることを想定しているからです。
WD 1.5 Beta 2をベースに独自のモデルを生成したいという需要があるのでしょう。

よって、一般的にはWD 1.5 Beta 2 Aestheticをダウンロードすることになります。
また、Waifu Diffusion 1.5 Beta 2になって実写系の性能もUPしたようです。

しかし、個人的には利用することはないでしょう。
実写系の女性を描画するのであれば、現状ではChilloutMix一択です。

Waifu Diffusion 1.5での実写系については、今後に期待しましょう。
でも、今回はアニメ系の描画でかなりパワーアップしています。

それだけでも、Waifu Diffusion 1.5 Beta 2を利用する価値があります。

以上、Waifu Diffusion 1.5 Beta 2について説明しました。
次は、Waifu Diffusion 1.5 Beta 2の利用方法を説明します。

Waifu Diffusion 1.5 Beta 2の利用方法

Waifu Diffusion 1.5 Beta 2は、以下で動かすことを想定しています。

  • Stable Diffusion web UI(AUTOMATIC1111版)
  • Diffusers

プロンプトについては、次のページを参考にします。

Example Images
https://cafeai.notion.site/WD-1-5-Beta-2-Aesthetic-Ver-c44a410fec06478fbf1a08a9890310ff

それぞれの場合について、以下で説明します。

Stable Diffusion web UI(AUTOMATIC1111版)

web UIのインストール方法を次の記事で説明しています。
OS依存のPythonを利用しない方法のため、安心してインストールできます。

仮にweb UIがぶっ壊れても、簡単に別途新規でインストール可能です。
また、複数バージョンのweb UIを管理することも簡単にできます。

まずは、モデルのダウンロードから行います。
モデルのダウンロードは、次のページから可能です。
https://huggingface.co/waifu-diffusion/wd-1-5-beta2/tree/main/checkpoints

Aesthetic版で各自の環境に適したモノをダウンロードしましょう。
ここでは、fp32の方をダウンロードします。

そのとき、同じ名称のyamlファイルもダウンロードしておきます。
つまり、次の2ファイルをダウンロードします。

  • wd-1-5-beta2-aesthetic-fp32.safetensors
  • wd-1-5-beta2-aesthetic-fp32.yaml

また、VAEは以下からダウンロードします。
https://huggingface.co/hakurei/waifu-diffusion-v1-4/blob/main/vae/kl-f8-anime2.ckpt

ダウンロードしたファイルの名称を変更しましょう。

kl-f8-anime2.ckpt
↓
wd-1-5-beta2-aesthetic-fp32.vae.pt

そして、これらのファイルをmodels/Stable-diffusion以下に保存。

この状態でweb UIを起動すれば次のようにモデルを選択できるようになっています。

あとは、「Example Images」のプロンプトを参考にして画像を生成します。

このような画像が生成できたら、OKです。

Diffusers

Diffusersの場合は、現時点ではまだ様子を見た方がいいかもしれません。
なぜなら、「WD 1.5 Beta 2 Aesthetic」が用意されていないからです。

Hugging Face上のモデル開発者のページ
https://huggingface.co/waifu-diffusion

具体的に言うと、ここに「waifu-diffusion/wd-1-5-beta2-aesthetic」がないということです。
そのため、現状では「WD 1.5 Beta 2」のダウンロードのみとなります。

次のコードで画像生成処理は可能です。

from diffusers import StableDiffusionPipeline, EulerAncestralDiscreteScheduler

model_id = "waifu-diffusion/wd-1-5-beta2"

pipe = StableDiffusionPipeline.from_pretrained(model_id, custom_pipeline="lpw_stable_diffusion")
pipe.scheduler = EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config)
pipe = pipe.to("cuda")

prompt = "(anime, tone mapped:1.2),1girl, aqua eyes, baseball cap, blonde hair, closed mouth, earrings, green background, hat, hoop earrings, jewelry, looking at viewer, shirt, short hair, simple background, solo, upper body, yellow shirt,(symmetric), (exceptional, best aesthetic, new, newest, best quality, masterpiece, extremely detailed:1.2)"
negative_prompt = "lowres, ((bad anatomy)), ((bad hands)), text, missing finger, extra digits, fewer digits, blurry, ((mutated hands and fingers)), (poorly drawn face), ((mutation)), ((deformed face)), (ugly), ((bad proportions)), ((extra limbs)), extra face, (double head), (extra head), ((extra feet)), monster, logo, cropped, worst quality, jpeg, humpbacked, long body, long neck, ((jpeg artifacts)), deleted, old, oldest, ((censored)), ((bad aesthetic)), (mosaic censoring, bar censor, blur censor)"

image = pipe(
    prompt,
    num_inference_steps=28,
    guidance_scale=10,
    width=576,
    height=768,
    negative_prompt=negative_prompt,
    max_embeddings_multiples=2
).images[0]

image.save("test.png")

初回時は、モデルのダウンロードが行われます。
ただ、ここ最近はDiffusersを利用したダウンロードが非常に遅いです。

それはさておき、画像は次のような画像が生成されます。

やはり、Aesthetic版と比べると残念な気持ちになります。
少し前なら、このレベルでも十分に満足していたはずなんですけどね・・・

以上、Waifu Diffusion 1.5 Beta 2の利用方法を説明しました。

タイトルとURLをコピーしました