クリエイティブ分析

ComfyUIで画像を高画質化する方法|アップスケール方式とモデルの選び方

ComfyUIで画像を高画質化する方法 — アップスケール方式とモデルの選び方
目次

ComfyUIで画像を大きくしたいとき、「アップスケールモデルを1つ選べば終わり」と考えると失敗しやすい。

同じ高画質化でも、元画像をほぼ維持して拡大したいのか、失われた細部を復元したいのか、AIに新しいディテールを作らせたいのかで選ぶ方式が変わるからだ。

最初に決めるべきなのは倍率ではない。元画像をどこまで変えてよいかである。

3種類を分けて考える

方式 向いている用途 元画像の変化 計算負荷の目安
通常のリサイズ サイズだけ合わせたい 小さい 小さい
専用アップスケールモデル 写真・イラストを保ちながら鮮明化したい 小〜中
生成系アップスケール 細部を積極的に描き直したい 中〜大 大きい

まず専用アップスケールモデルを試し、結果に不足があるときだけ生成系へ進む方が比較しやすい。

ComfyUIにはアップスケール機能が最初からある

ComfyUI公式は、中核機能としてESRGAN、ESRGAN 構成、SwinIR、Swin2SRなどのアップスケールモデルを扱えることを案内している。

ローカルのアップスケールモデルは通常、次の場所へ置く。

ComfyUI/models/upscale_models/

公式のUpscaleModelLoaderは、このフォルダとextra_model_paths.yamlで指定した追加パスからモデルを検出する。

基本的な流れは次のようになる。

Load Image

Load Upscale Model

Upscale Image (using Model)

Save Image

画像生成用チェックポイントとは保存場所も役割も違う。アップスケールモデルをチェックポイント読み込み機能へ入れるのではなく、専用読み込み機能で扱う。

「4x」と書いてあれば4倍で使うべきとは限らない

アップスケールモデルには2x4xなどの倍率が付いていることが多い。

ただし、実際の最終解像度はワークフロー側で再調整できる。たとえば4xモデルで一度拡大したあと、目的のサイズへ縮小する方法もある。

重要なのは、倍率の数字だけで画質を比較しないことだ。

同じ4xでも、写真向け、アニメ・イラスト向け、シャープさ重視、ノイズ除去重視などで結果は変わる。

元画像を変えたくないなら、まず専用SRモデル

完成したイラストや写真の構図・顔・文字などをできるだけ維持したい場合は、ESRGAN系やSwinIR系などの専用超解像度モデルから試す。

この方式でも存在しない情報を完全に復元できるわけではないが、生成モデルを再度通す方式よりは元画像を保持しやすい。

比較するときは次を見る。

  • 輪郭が過剰にシャープになっていないか
  • 髪や布の質感が不自然に変わっていないか
  • 小さな文字やロゴが壊れていないか
  • 肌がプラスチックのようになっていないか
  • ノイズまで強調していないか

モデル名だけで「最高画質」を決めるより、自分の画像ジャンルで比較した方が確実だ。

生成系アップスケールは「復元」ではなく再生成を含む

拡大後に拡散モデルなどを使って細部を描き直す方式では、低解像度画像になかったディテールを追加できる。

その代わり、元画像と同一である保証は弱くなる。

特に顔、指、アクセサリー、文字、細い模様は変化しやすい。商品画像や資料画像のように内容を正確に維持したい用途では、この違いは大きい。

一方で、AIイラストの仕上げとして「多少変わってもよいので髪や衣装の情報量を増やしたい」という場合には生成系の方が向くことがある。

つまり、生成系は単なる高解像度化ではなく、高解像度での再解釈として扱った方がよい。

AIアップスケールと普通のリサイズは別物

Lanczosやバイキュービックなどの通常リサイズは、新しい意味的ディテールを生成しない。

目的がSNS投稿サイズへの変換やレイアウト調整なら、AIアップスケールを使わない方が速く、元画像も変わらない。

逆に、小さい元画像から輪郭や質感を改善したいなら専用アップスケールモデルを試す価値がある。

「大きくしたい」と「高画質化したい」を分けるだけで、不要なAI処理を減らせる。

高解像度ほどVRAMだけ見ない

出力解像度を上げるほど、処理する画像データ量は増える。

ただし必要メモリは、モデル、ノード、タイル処理、数値精度、同時に読み込んでいる他モデルなどでも変わる。そのため「4KならVRAM○GB」のような固定値にはしにくい。

高解像度で失敗した場合は、既存のComfyUI CUDA out of memory対処と同じように、条件を一つずつ変える。

特に記録したいのは次の4つだ。

入力解像度:
出力解像度:
使用したupscale model / workflow:
処理時間・peak VRAM・system RAM:

速度が極端に落ちる場合は、ComfyUIの生成が遅いときのボトルネック確認も合わせて確認する。

最初の比較は同じ画像で行う

アップスケールは主観評価になりやすい。そこで同じ入力画像を固定し、2〜3種類だけ比較する。

おすすめの順序は次の通り。

  1. 通常リサイズ
  2. 専用アップスケールモデル
  3. 必要なら生成系アップスケール

これで「AI処理を加えたことで本当に良くなったのか」を判断できる。

最初から複雑なワークフローを組むと、どの処理が画質へ効いたのか分からなくなる。

ComfyUIのアップスケールでGPUを選ぶとき

アップスケールだけを理由にGPUを買うなら、モデル名より自分が使うワークフローのVRAM使用量のピークを見るべきだ。

専用SRモデルだけなら比較的軽い構成でも動く場合があるが、生成系アップスケールではベースの拡散モデル、VAE、ControlNetなどを同時に扱うことがあり、必要なGPUメモリは大きく変わる。

したがって購入判断では、単純な「アップスケールに必要なVRAM」ではなく、普段使う画像生成ワークフローにアップスケール工程を追加したときのピークを見る。

まとめ

  • アップスケールには、画素を拡大する処理、専用SRモデルで復元する処理、生成モデルで細部を作り直す処理があり、同じ「高画質化」でも目的が違う
  • ComfyUI 中核はESRGAN系やSwinIR系などのアップスケールモデルを扱え、ComfyUI/models/upscale_modelsから読み込める
  • 元絵を変えたくない場合は専用アップスケールモデルから試し、細部を積極的に再生成したい場合だけ生成系へ進む
  • 高解像度化ではVRAMだけでなくシステムRAM、処理時間、タイル分割、出力解像度も比較する
同じテーマから

サイト内検索