この記事ではStable Diffusionのアップスケール機能、SD upscaleの使い方を徹底解説します。
SD upscaleを使えば簡単に画像の解像度を上げることが可能です。
- SD upscaleを使って画像の解像度を上げる手順
- SD upscaleのアップスケーラーモデルの効果と、おすすめモデル
SD upscaleとは
SD upscaleはStable Diffusionのアップスケール機能で、タイル状に分割した小さい画像単位でアップスケールするため低VRAMで高解像度化が可能です。
Stable Diffusionでアップスケールする方法はたくさんありますが、SD upscaleは他の機能・手順と比較して以下のメリット・特徴があります。
Hires. fixとVRAM使用量を比較してみました。
テストでは512×512の画像を4倍にアップスケールしています。
VRAM使用量が少ないから、多くのGPUで高解像度化が可能だね。
SD upscaleの使い方
インストールについて
AUTOMATIC1111の場合は、最新版に更新してあれば使用可能です。
Verが古い場合は、以下の記事を参考にアップデートしましょう。
WebUI Forgeであれば、そのまま使えます。
まだインストールしていない方は、以下の記事を参考にインストールしてみましょう。
A1111とForgeで使用できるモデルに差があります。
使用できるモデル数はForge > A1111です。
アップスケーラーモデルを追加する場合
標準のモデル以外にもアップスケーラーモデルを追加することが可能です。
おすすめのモデルは以下の通りです。
- 4x-Ultrasharp:名前の通り、シャープで高精細な画像が生成できます。
- 4x_foolhardy_Remacri:高精細かつ、崩れた部分の復元も得意なモデルです。
ダウンロードしたモデルは、「models」→「ESRGAN」フォルダに保存します。
モデルを保存した後は、WebUIを再起動しましょう。
画像の解像度を上げる手順
上段メニューからimg2imgタブに移動して、アップスケールしたい画像をロード(ドラッグ&ドロップ)します。
下段に表示されているScriptからSD upscaleを選択します。
- Tile overlap
-
タイル同士の重なりを設定します。
(多くの場合は64で問題ありません) - Scale Factor
-
アップスケール倍率を設定します。
最大値は4で、元画像を4倍にアップスケール可能です。 - Upscaler
-
Upscalerメニューから好みのアップスケールモデルを選択します。
モデルごとの特徴については後述します。
中段のResize toメニュー内にある、「Denoising strength」を0.25以下に設定します。
(あまりに高いと画像が破綻します)
おすすめは0.2だよ
あとは画像生成するだけです。
その他プロンプトで画像の傾向を変更することも可能です。
(アップスケールするだけなら空欄で問題ありません)
おすすめのアップスケーラーモデルについて
各モデルを使用して4倍までアップスケールし、効果を検証しました。
検証に使用した画像はイラスト系とフォトリアル系の2種類です。
アップスケール前画像を確認する
いくつかピックアップしてアップスケール画像を紹介します。
モデルによって効果がかなり異なりますね。
DAT系や、Nearest、Lanczos、ScuNET系は少しぼやけた画像が生成されます。
以上の結果から、おすすめモデルは以下の通りです。
- イラスト用:R-ESRGAN 4x+ Anime6B、SwinIR_4x、4x-UltraSharp、4x_foolhardy_Remacri
- フォトリアル用:4x-UltraSharp、4x_foolhardy_Remacri
万能に使えるモデルは「4x_foolhardy_Remacri」ですね。
さまざまな画像に使えて高精細です。
まとめ
今回はSD upscaleの使い方を紹介しました。
SD upscaleは低VRAM環境でも動作するため、誰でも気軽に画像の解像度を上げることができます。
この記事を参考に、高解像度画像の生成にチャレンジしてみましょう!
追加したアップスケーラーモデルについてはHires, fixでも使用可能です。
コメント