【Stable Diffusion】Waifu Diffusion 1.4の利用方法

【Stable Diffusion】Waifu Diffusion 1.4の利用方法 機械学習

「Waifu Diffusion 1.4の利用方法がわからない・・・」
「高画質なイラストを画像生成AIで描きたい」

このような場合には、この記事の内容が参考になります。
この記事では、Waifu Diffusion 1.4を利用する方法を解説しています。

本記事の内容

  • Waifu Diffusion 1.4とは?
  • Waifu Diffusion 1.4の利用方法
  • Waifu Diffusion 1.4の動作検証

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

Waifu Diffusion 1.4とは?

「Waifu Diffusionとは?」という方は、次の記事をご覧ください。

Waifu Diffusionが、2023年1月1日にバージョンアップしました。
バージョンは、1.3から1.4への変更です。

正式には、Waifu Diffusion 1.4 Animeと呼ぶようです。
Waifu Diffusion 1.3までは、「Anime」がありませんでした。

Waifu Diffusion 1.4の最大の特徴は、Stable Diffusion v2.1 Baseがベースということでしょう。
また、学習に用いた画像枚数は546万8025点とのことです。

Waifu Diffusion 1.2の時点で、490万枚以上の画像が学習に利用されています。
そこから50万枚以上が、増えているということになります。

では、一体どこがどう変わったのかは実際の画像を見れば早いです。
左が1.3、右が1.4で作成した画像になります。

ここまで明らかに差が出るのも珍しいです。
画像枚数というより、Stable Diffusion v2.1ベースが効いていると思います。
あくまで、推測ですけどね。

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

Waifu Diffusion 1.4の利用方法

Waifu Diffusion 1.4には、二つの利用方法が用意されています。

  • Stable Diffusion web UI(AUTOMATIC1111版)
  • Diffusers

AUTOMATIC1111版を利用する場合は、次のページからcheckpointをダウンロードします。
https://huggingface.co/hakurei/waifu-diffusion-v1-4

Diffusersを利用する場合は、次のページを参考にすることになります。
https://huggingface.co/hakurei/waifu-diffusion

ページが分かれていて、若干ややこしいです。
でも、公式に両方ともに対応しているのは素晴らしいと言えます。

ここでは、Diffusersの場合について説明を行います。
公式のサンプルコードは、しばしば間違っていることがあります。

そのため、次のコードを用意しました。

from diffusers import StableDiffusionPipeline, DPMSolverMultistepScheduler

model_id = "hakurei/waifu-diffusion"

pipe = StableDiffusionPipeline.from_pretrained(model_id)
pipe.scheduler = DPMSolverMultistepScheduler.from_config(pipe.scheduler.config)
pipe = pipe.to("cuda")

prompt = "masterpiece, best quality, high quality, absurdres, 1girl, green hair, sweater, looking at viewer, upper body, beanie, outdoors, watercolor, night, turtleneck"

negative_prompt = "worst quality, low quality, medium quality, deleted, lowres, comic, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, jpeg artifacts, signature, watermark, username, blurry"

image = pipe(
    prompt,
    num_inference_steps=25,
    guidance_scale=7.5,
    negative_prompt=negative_prompt
).images[0]

image.save("test.png")

ネガティブプロンプトは、公式が公開してくれているモノを利用しています。

また、以下をプロンプトの先頭に付けると良い結果が出るらしいです。

上記コードを実行した結果は、次のような画像が生成されます。

背景が、非常にいい感じになります。

以上、Waifu Diffusion 1.4の利用方法を説明しました。
次は、Waifu Diffusion 1.4の動作検証を説明します。

Waifu Diffusion 1.4の動作検証

Waifu Diffusion 1.4の動作検証は、まだまだ時間をかけてできていません。
しかし、Waifu Diffusion 1.4の良さを引き出す方法を見つけました。

それは、大きいサイズで画像を作成することです。
1024 x 768で画像を生成すると、一気にレベルアップした画像になります。

具体的には、次の特徴が浮かび上がります。

  • 背景の良さが明確になる
  • 多人数を綺麗に描画できる

それぞれを確認します。

背景の良さが明確になる

サンプルのプロンプトを適当に使って、このレベルの画像が作成できます。
もっと凝ったプロンプトを用いれば、さらに背景が映えるかもしれません。

多人数を綺麗に描画できる

ここまで上手く複数の人数を描画できるモデルは、あったでしょうかね?
個人的には、ちょっと記憶にありません。

二人描画しても、画像が崩れていません。
また、背景もいい感じです。

そして、さらに3人描画という荒業もやってのけてしまいました。

別にプロンプトに、「three girls」とは記載していません。
おそらく、画像サイズから判断しているのでしょう。

以上、Waifu Diffusion 1.4の動作検証を説明しました。

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