Stable Diffusion Web UIのインストールから基礎知識をご紹介しました。
shigurepictorialbook.comではさっそくイラストを生成してみましょう。この記事では実際にイラストの生成の仕方をご紹介していきます。
- 生成したいイラストイメージをつかもう
- モデルを決めよう。
- プロンプトを考えよう。
- その他設定をしよう。
- いざ、Generate!
- もう1段クオリティを上げる方法(Hires. fix)
- 生成した画像をどうする?
- おわりに
- おまけ
生成したいイラストイメージをつかもう
StableDiffusionWebUIはごくわずかなプロンプトでもランダムにイラストを生成してくれます。でもせっかくインストールして自由に触れるようになったので、自分好みのイラストを生成してみましょう。
今回は「白いドレスを着た笑顔の女の子」をテーマに生成してみましょう。
モデルを決めよう。
イメージが固まったら次はモデルです。モデルにはリアルフォト系だったりアニメテイストだったり様々な特徴があります。アニメのイラストを生成したいのに、リアルな写真に特化したモデルではイメージに合った画像が生成できません。
自分好みに特化したモデルを数種類保存しておくとよいでしょう。
ダウンロードしたモデルは「stable-diffusion-webui\models\Stable-diffusion」に保存すれば、左上のプルダウンに表示されます。なお、SDWebUIの起動中は保存しても表示されませんが、プルダウンの右側のぐるっと回っている矢印を押せばリロードされ、保存したモデルが表示されます。
今回は、Vすき焼きさんの「ShiratakiMix」というモデルを使用しようと思います。
huggingface.coVAEは「ClearVAE_2.2」を選びました。
プロンプトを考えよう。
画像生成において1番肝となるプロンプトです。生成したいイメージにある要素を入力していきましょう。SDWebUIは英語での入力が必須ですが、グーグル翻訳やDeepL翻訳で問題ないです。
またプロンプトには画質向上関連を入力することで高品質な画像を生成する確率を大幅に向上してくれます。
では今回の「白いドレスを着た笑顔の女の子」をプロンプトに落とし込んでみます。
プロンプトは、英単語を「,(カンマ)」区切りで要素を並べます。
要素は「女の子」「笑顔」「白いドレス」なので、そのまま英単語に直しますと「1 girl, smile, white dress」ですね。画質向上に「best quality」を追記します。
ネガティブプロンプトは、今回はモデルの推奨設定をそのままお借りしようと思います。
▼推奨設定のネガティブプロンプト
(easynegative:1.0),(worst quality,low quality:1.2),(bad anatomy:1.4),(realistic:1.1),nose,lips,adult,fat,sad, (inaccurate limb:1.2),extra digit,fewer digits,six fingers,(monochrome:0.95)
その他設定をしよう。
サンプラーは人気の「DPM++ 2M Karras」、ステップ数は「40」、サイズは「544 × 768」、Batchはそれぞれ「1」、スケールは「7.5」、Clip Skipは「2」
いざ、Generate!
これまでの設定を画面に落とし込むと画像の通りです。
では、Generateをクリックしてみましょう。
生成結果がこちらです。
可愛らしい女の子のイラストが生成できましたね。
もう1度Generateをクリックするとまた違ったイラストが生成されます。何度もGenerateすることでお気に入りの構図だったり雰囲気のイラストだったり、望む結果が出るまで繰り返したり、複数枚を一気に生成してその中から吟味したりするとよいかもしれません。
上のイラストはシード値「1485357900」でほぼ同じものが生成できるかと思いますのでお試しください。
※シード値の「-1」を「1485357900」に書き換えでできます。
※個人の環境によって、多少生成結果が異なるようです。
もう1段クオリティを上げる方法(Hires. fix)
このイラストは、まだまだ実力を発揮できてない状態です。それは「高解像度補助(Hires.fix)」を使っていません。
「高解像度補助(Hires.fix)」は、画像を高画質化して拡大する機能です。こちらについてもいくつかの設定がありますが、今回はモデルの推奨設定をお借りするとします。
①Hires. fixの左にチェックを入れる。
②UpScaler:Latent、Upscale by:2、Hires step:20、Denoising strength:0.55
これらを設定した状態がこちら
では、Generateをクリックしてみましょう。
生成結果がこちらです。
画像が拡大され、高画質化されました。記事内の画像サイズではわかりにくいかもしれませんが、拡大するとわかりやすいと思います。
しかし、よく見ると一部分に違和感がある箇所がありますね。
さっと例を挙げるだけでもこれだけあります。なお、この画像の違和感は非常に少ない方です。繰り返しますかなり破綻が無い部類です。
Hires. fixの過程で腕が3本になったり、よくわからない場所に顔があったり様々です。あまり心地よく見れる画像にはなりませんので、ご自身で色々お試し中にご覧になってください。きっとそんな画像に出会えます。笑
画像生成AIを扱う者にとって、こういった破綻との戦いは日常です。指の本数が綺麗に5本出たら奇跡だと思っているとも聞いたことがあります。手ガチャ/指ガチャ(正しい手/指が出るまで生成し直したりすること)は誰しもが経験する道なのかもしれません。笑
生成した画像をどうする?
お気に入りのイラストは生成できましたか?生成した画像は「stable-diffusion-webui\outputs」に保存されます。(右クリ→保存でもOK)
後で見返すように個別に保存するのもよいですが、生成に関する情報が画像に保存されており、後々役立つことがあります。
PNG Infoに過去に生成した画像をドロップすると、その画像のプロンプトやシード値など様々な情報が保存されています。
プロンプト情報などは、別のイラストを生成する際に「あの時の服装と同じにしよう!」といった際に、ここから服装のプロンプトをコピペして使うことができますね。
おわりに
実際に画像を生成する流れに沿って、解説しました。基本的な生成方法となりますので、ここにさまざまな生成方法を肉付けをして素晴らしいAI術師になりましょう。
おまけ
best quality, ultra detailed, 1 girl, happy smile, blonde hair, very long pony tail, white dress, stone path, blue sky, cumulonimbus
Negative prompt: (easynegative:1.0),(worst quality,low quality:1.2),(bad anatomy:1.4),(realistic:1.1),nose,lips,adult,fat,sad, (inaccurate limb:1.2),extra digit,fewer digits,six fingers,(monochrome:0.95)
Steps: 60, Sampler: DPM++ SDE Karras, CFG scale: 7.5, Seed: 2566835708, Size: 544x768, Model hash: d3849c69d9, Model: ShiratakiMix, Denoising strength: 0.55, Clip skip: 2, Hires upscale: 2, Hires steps: 20, Hires upscaler: Latent