Hires. fixのUpscaler比較 WebUI(1111)の高解像度化設定はどれがオススメか

ハイレゾ化全アップスケーラー比較 ソフトウェア

Stable Diffusion Webui(AUTOMATIC1111)のアップスケーリング機能Hires.fix(ハイレゾ化)のアルゴリズム(アップスケーラー)全14種類を試してみて、出力された画像とともにどのアップスケーラーを選べばよいかを検証してみました。

チェック!!
さくいん! 本サイトのAI関連記事まとめ どれから見れば良いのか?!


数十記事ある本サイトのAI関連記事を体系的にまとめました。

目的別にどれから見れば良いのかわかります!!

AI記事索引ページはコチラ

0,Hires.fixの使い方

webUIのtxt2imgタブの下にある「Hires. fix」にチェックするとアップスケーリングを有効化できます。

設定できる項目は現在以下の4つです。
(Resize width toとResize height toで縦横サイズを直に指定もできますが割愛します)

  • Upscaler(アップスケーラー):14種類くらいある。今回ココを検証
  • Hires steps:アップスケーリング時のsteps数。多分steps数が多いほど緻密になる
  • Denoising strength(ノイズ除去度):アップスケーリングの元となる画像からどの程度ノイズ除去するか。ここの値を小さくするとアップスケール後に元画像とかけ離れた画像になりやすい
  • Upscale by(アップスケール倍率):何倍に拡大するか

Denoising strength(ノイズ除去度)」の説明がよくわからん

何いってんだこいつ……???

となったので検証前に、Denoising strength(ノイズ除去度)を実演しました。

これがDenoising strength(ノイズ除去度):0.2時のアップスケーリングです。

0.2

0.7だと以下の通り。

0.7

0.7の方が滑らかにアップスケールされています。

最も、0.2の画像もそういうコンセプトと思えば結構お洒落ですよね!!
アップスケールで高精細・緻密な書き込みという本記事の目的から外れてしまいますが、画像生成の出力の幅を増やすこともできる素晴らしい機能ですね!?

Hires. fixはざっっっっくり言い表すと、
低解像度(768×512とか)で出力された画像を1.5倍とかに引き伸ばした画像に対するimage2imageです。

この引き伸ばした画像にどの程度ノイズを載せたかでアップスケーリング後が大きく変わるってわけです。

1,検証条件

生成時のパラメーター

(masterpiece, best quality:1.3),1girl, looking up fireworks focus, from behind, backlighting,night,japanese clothe,kimono,yukata,
Negative prompt: lowres, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, jpeg artifacts,signature, watermark, username, blurry, artist name, looking at viewer
Steps: 14,
Sampler: DPM++ SDE Karras,
CFG scale: 7,
Seed: 233907673,
Size: 768×512,
Model hash: f6957e654e,
Model: 7th_anime_v3_C,
Clip skip: 2,
ENSD: 31337

これで生成されるアップスケーリング前の画像がこちらです。

Hires. fixのパラメーター

  • Upscaler(アップスケーラー):今回ココを検証
  • Hires steps:40
  • Denoising strength(ノイズ除去度):0.7
  • Upscale by(アップスケール倍率):1.5

アップスケーラーは、具体的には以下を検証対象とします。
使用時にはそれぞれのライセンス等を各自で確認しましょう。

Latent, Latent (antialiased), Latent (bicubic), Latent (bicubic antialiased), Latent (nearest), Latent (nearest-exact), None, Lanczos, Nearest, ESRGAN_4x, LDSR, ScuNET GAN, ScuNET PSNR, SwinIR 4x

2,実際のアップスケーリング処理後の画像

  • 着物の柄
  • 髪飾り
  • 背景の花火の潰れ具合
  • 水面に反射した花火

これらに注目すると結構アップスケーラーごと個性があって面白いです。

Latent アップスケーラーの場合

花火自体はあまり変化なし。

水面の反射と服が高精細ですね。

Latent (antialiased) アップスケーラーの場合

髪飾りや帯に変化がありましたね。

花火は上と同程度、元絵と変化なしです。

Latent (bicubic)アップスケーラーの場合

帯と髪飾りが変化。

背景の花火(右)が精緻になりました。

Latent (bicubic antialiased)アップスケーラーの場合

人物の3D感が感じられます。

Latent (nearest)アップスケーラーの場合

Latent (bicubic)とほとんどかわりませんが、花火周辺の白い光がなくなりましたね。

Latent (nearest-exact)アップスケーラーの場合

花火周辺の白い光が星っぽくもないので、アップスケーリング時のノイズっぽいです。

他のアップスケーラーでも出てましたが、Latent (nearest-exact)はそれが顕著です。

None アップスケーラーなしの場合

単純拡大だと荒が目立ちますね。

特に花火周辺の光の階調がなめらかでないのと、、左の花火が潰れているのが致命的です。

ちなみに、なぜここでアップスケーラーなしの場合を載せたかというと、そういう並びのためです。

何故でしょうね?!

Lanczosアップスケーラーの場合

あまり元絵との変化がないため自然ですね。

Nearestアップスケーラーの場合

右袖から謎の布?が出ています、良くないですね。

花火は美しいので背景には最適かもしれません。

ESRGAN_4x アップスケーラーの場合

とても元の絵を尊重しているかたちです。

アップスケーラー検証前の私はこれを常用していました。

とても有名なアップスケーラーだけあって使い心地が良いですね。

LDSR アップスケーラーの場合

検証時での最新版でエラーが出たうえ、過去バージョンで試みたらまた別のエラーが出てアップスケーリングできなかったので保留します。

ScuNET GAN アップスケーラーの場合

左の花火とか水面の反射などが滲んでいます。

アルゴリズムが違うだけでこんなに差異があるとは!

背景をはっきりさせたい場合、ScuNET GANだけはDenoising strengtを1に近づけまくるのが良いでしょう。

ScuNET PSNR アップスケーラーの場合

ScuNET GAN同様ににじみますね。

まあどう考えてもScuNET GANScuNET PSNRは兄弟みたいな関係そうですし、残念ながら当然です。

SwinIR 4x アップスケーラーの場合

結構忠実にアップスケーリングしますね。

ESRGAN_4xと似た感じがします。

結果まとめ 結局のアップスケーラーでHires. fixすればいいのか

XY Plot画像版

最後に、今回検証に使ったXY Plot画像の無劣化版「Hires. Fixアップスケーラー比較.pdf(←約12MB)」も一応置いておきます。
PNGだと圧縮されるので無劣化変換でPDF化しました。

通信容量に気をつけてください。

結論

私の個人的好みですが、Latent (bicubic)SwinIR 4xのどちらかを使うのがオススメです。

Latent (bicubic)
SwinIR 4x

背景の精緻さという面ではLatent (bicubic)が上で、物のほどよい立体感という観点ではSwinIR 4xが上です。

ぶっちゃけ個人の好みに左右されるうえに、Hires stepsDenoising strengthによっても出力が変わる沼のため、各自検証を行う際は評価基準を明確にして行いましょう(教訓)

他のWebUIの便利・面白い機能もご覧ください!

その他の検証記事もどうぞ!

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