ようやくプロンプトに慣れてきて、期待の絵も出来始めた頃、もう少し鮮明が画像がほしいなと思う事があると思います。
よくサイトやSNSで公開されている絵は、解像度も高く鮮明です。
しかし、パラメータを設定し解像度を得ようとするも、メモリオーバーになってしまいます。

どうやったら、高解像度の絵が作れるのか?
そんなときに活用する機能が幾つかありますが、その一つである「Hires.fix」が今回のテーマです。
Hires.fixとは
txt2imgのパラメータ欄にチェックボックスがあります


これをONにすることで、下記のパラメータが指定できるようになります。


基本的には、いろいろな技術を使い、下記の数値に立て横を引き伸ばしてくれるといった機能です。





また、画像の質が向上します!
しかし、他のパラメータがどのような影響を及ぼすのでしょうか。
この後、そちらを検証していきます!
各種パラメータ検証
項目 | 内容 |
---|---|
Upscaler | 各種モデルの選択 |
Hires steps | 試行回数 |
Denoising strength | ノイズ除去の強度 |
upscale by | 拡大倍率 |



なぜ拡大倍率(Upscale by)を入れたかは後述します。



元画像はこちらを使用します。640*640の出力です。


また、細部を確認するために、目元の拡大画像を貼っておきます。


Upscalerの検証



全体像の確認用











細部の確認




























元の絵が整っていた理由もありますが、どれも抜群の繊細さが現れています。
よく言われているのは、「ESRGAN 4x」というものが好まれている様子です。



モデルにより若干処理速度にばらつきがありました


Hires stepsの検証
デフォルトが0となっています。
が、こちらは省略している場合だと思われます。
ステップ数によりかかる時間が異なりますが、省略時は凡そ30付近のステップ数が指定されていそうです。



全体像の確認用













細部の確認用


























しかし、ステップ数が増えれば処理時間が増加するので、適度な数値を指定する必要があります。





何度も処理するなら8~12当たりを攻めるのが良いかもしれません。
Denoising strengthの検証
ノイズの除去なので、元画像にノイズがなければ除去の数値も低くて良いのかと思っていたのですが・・・



全体像の確認用













大きすぎても駄目な様子です



細部の確認用






























最後の2枚は構図が大きく変わってしまっています。



デフォルトの7.0を中心に拡大度との兼ね合いで上下させることになりそうです。
Upscale byの検証
なぜ、倍率を設けたかというと元の解像度の低さが影響するのか、倍率が影響するのかアウトプットにかなり変化が発生します。
検証端末は10GのVRAMしかありませんので、元画像の解像度を低くして試しています。





280*280の解像度
絵のイメージを確認するため、解像度は統一しています。
(画質は視点から無視してください)




同じ系統の絵だとは言えます。
しかし、5倍以降はやや崩壊が始まっています。
この場合、1.4倍でも差が出ていますが、2倍で安定するには512程度の解像度は必要そうでした。
まとめ
Hires. fixの設定による解像度の拡張は下記が良さそうでした!
項目 | 検証結果 |
---|---|
Upscaler | 無難に勧めらているESRGAN系か しかし場合によってはNoneでも良さそう。 LDSRとSwinIRは処理時間が長いので特に理由がなければ選択不要 |
Hires steps | 処理時間に影響するため、12程度でやってみて不満であれば追加 |
Denoising strength | デフォルト値の7.0で良さそう 元解像度により少し下げる程度か |
Upscale by | デフォルトの2.0を目標に元解像度を決める また、それ以上に挙げたい場合はExtras機能を使う |



最後まで読んでいただき、ありがとうございました!
コメント