ESRGANとは?
拡散モデル(Stable Diffusionなど)が流行る前、画像生成の主役は GAN でした。
ESRGANは、その GAN 世代から引き継がれてきたアップスケール用のモデルです。
ESRGANは、低解像度の画像を高解像度にアップスケールするための 超解像GAN です。
ただ拡大するのではなく、「それっぽい細部」を描き足しながら 2〜4倍に拡大してくれます。
拡散モデルのアップスケールに比べて非常に軽量なので、いまだ活躍する機会は多いですね。
モデルのダウンロード
用途によってめちゃめちゃな数のモデルがありますが、ひとまず、以下のモデルを使ってみましょう。
RealESRGAN
ComfyUI Manager→Model ManagerRealESRGAN x4と検索してInstallしてください。
- 有志によって開発されたモデルが共有されています。
- クリーンアップに特化したモデルなどもあり、眺めているだけでも楽しめますね。
ESRGANでアップスケールする

- 🟩
Load Upscale Modelノードに任意のモデルを読み込みます。
倍率を修正する
RealESRGAN x4 のように大体のアップスケーラーには x4 のような文字があります。
これは倍率で、このモデルを使ってアップスケールすると 強制的に 4倍になります。
しかし、例えばHires.fixのworkflowに組み込むときなどは4倍だと大きすぎます。 こういったときはアップスケーラーで大きくした画像を縮小する処理を追加します。
workflow

- 🟨
scale_byの値を変更して倍率を調整できます。
GFPGANで顔だけ補正する
顔(Face)専用の復元GAN として GFPGAN というものがあります。
ノイズで崩れた顔を検出し、「学習済みのきれいな顔」に寄せて描き直すタイプのモデルです。
FaceSwapノードなどの後処理で「ついでに顔だけ整える」用途で登場することがあります。
詳しい使い方はここでは扱いませんが、「顔を専用に直す仕上げ用GANがある」 程度に覚えておけば十分です。