2次元イラスト特化型画像生成モデル Waifu DiffusionをStable Diffusionのtxt2imgを使って試す

2次元イラスト特化型画像生成モデル Waifu DiffusionをStable Diffusionのtxt2imgを使って試す

この記事は、mofmof Advent Calendar 202214日目の記事です。

前回の続きです。まだご覧になられていない方は、そちらからご覧ください。

タイトルの通り、Waifu Diffusionを試したいと思います。

※実際に試したのは、2022年10月中旬ごろなので、Waifu Diffusion v1.3を使います。記事執筆時点ではv1.4がリリースされていますが、そちらは未確認です。

Waifu Diffusionとは

Stable Diffusionとは異なり、Danbooruという海外のイラスト投稿サイトのデータを使って学習したモデルです。

2次元イラストを出力したい場合はこちらを利用するのが良さそうです。

ちなみに、NovelAI Diffusionも同じくDanbooruのデータを使って学習しています。

実際に試す

ということで、Waifu Diffusion試します。

Stable Diffusionのセットアップについては、以前の記事をご参照ください。

セットアップ

以下、Stable Diffusionが使えるようになっている前提で進めます。

今回行うのはモデルデータのダウンロードだけです。

モデルをHugging Faceからダウンロードします。

私は「Float 32 Full Weights」を使いました。

ダウンロードしたら、前回作ったディレクトリなど適当なディレクトリにckptファイルを移動させます。

以上です。

生成してみる

準備が出来たので生成してみます。今回も前回同様に馬に乗った宇宙飛行士です。

$ python scripts/txt2img.py --prompt "a photograph of an astronaut riding a horse" --plms --ckpt models/ldm/stable-diffusion-v1/wd-v1-3-full.ckpt
a photograph of an astronaut riding a horse

馬はいい感じに出力されました。宇宙飛行士は首より上が切れてますね…

こういうのは割とあります。Stable Diffusionでも。

a photograph of an astronaut riding a horseだけだとランダム性が高すぎて狙った画像が出ないので、前回の最後の呪文を試してみます。

a photograph of an astronaut riding a white horse in the desert

前回Stable Diffusionで出力したものが以下の通り。

a photograph of an astronaut riding a white horse in the desert

同じ呪文でも出力されるものが2次元イラストになっているのが分かると思います。

Stable Diffusionで2次元イラストを出力する

ちなみに、Stable Diffusionでも呪文次第では2次元イラストを出力することは出来ます。

例えば、

$ python scripts/txt2img.py --prompt "a illustration of an astronaut riding a horse" --plms --ckpt models/ldm/stable-diffusion-v1/wd-v1-3-full.ckpt

みたいな感じで、illustrationとかの2次元イラストっぽいワードを含めれば出力されると思います。

a illustration of an astronaut riding a horse

さいごに

ということで、2次元イラストを出力してみたい場合は、Waifu Diffusionのほうが理想に近いものがかんたんに出力できると思います。もしよかったら使ってみてください。

それでは、良い画像生成ライフを!