クリエイティブ分析
ComfyUIで画像を高画質化する方法|アップスケール方式とモデルの選び方

目次
気に入った絵を大きくしたい。でも、顔や文字まで変わってしまうのは困る。ComfyUIのアップスケールは、ここで方法を選びたいところです。
大きくしたいだけなのに、文字や顔まで描き直される方法もあるの!?
あるんだよ。残したい形があるなら、まずImageScaleでサイズだけ変えよう。
この記事では、まず同じ線画を三つの方法で拡大した結果を見ます。そのあと写真と顔の追加比較で、線画に合うモデルが写真にも合うかを確かめます。サイズ変更だけならImageScale、線を整えたいなら専用モデル、細部を描き足したいなら再生成という順に試すと、必要な変化を選びやすくなります。
同じ画像を1024×1024へ拡大すると
比較に使ったのは、山、二軒の家、円形の図を描いた512×512の線画です。下にある「TEST 01」の文字も見てください。三つの方法で処理し、完成サイズを1024×1024にそろえると、線だけでなく文字がどうなるかも比べられます。

| 方法 | 比較で使った設定 | 結果の特徴 |
|---|---|---|
| 通常の拡大 | ImageScale、lanczos、crop disabled | 文字と図形を保ち、線は少し柔らかくなった |
| 専用モデルによる拡大 | RealESRGAN_x4plus_anime_6Bで4倍にした後、1024×1024へ縮小 | 文字を保ち、線の輪郭がくっきりした |
| 生成を伴う拡大 | SD1.5でlatentを2倍にし、denoise 0.35で再生成 | 線の質感が変わり、文字が読めなくなった |
この比較はComfyUI 0.37.0で行ったものです。三つ目はSD1.5を使った結果で、SDXLの比較ではありません。
ImageScale:文字と形を保って拡大する

専用モデル:線をくっきりさせる

KSamplerで描き直す:文字や質感も変わる

この線画を説明図として使うなら、「TEST 01」が読めるImageScaleか専用モデルを選びたいです。描き直した画像は質感が変わりましたが、文字を伝える目的には合いません。写真なら顔、イラストなら目や輪郭というように、自分の画像でも残したい部分を決めて比べてみてください。
写真と顔では、線画向けモデルが質感を変えた
2026年10月25日に、上の線画、人物写真、顔の切り出しをそれぞれ512×512から1024×1024へ拡大しました。写真はNASAが公開するニール・アームストロングの公式肖像を使っています。写真と顔は同じ原写真の別の切り出しで、独立した二人・二枚の写真による検証ではありません。
追加分は、ComfyUI同梱環境のPillow・PyTorch・Spandrelを直接CPUで動かした比較です。ComfyUIのノード操作や実行成功を確認したものではなく、上のComfyUI出力と画素が同じになるとも確かめていません。比較したのはPillowのLanczos拡大と、RealESRGAN_x4plus_anime_6Bの4倍出力をLanczosで1024pxへ縮小する処理です。
線画:文字を残し、線をはっきりさせたい


この線画では、どちらも「TEST 01」を読めます。図の線をくっきり見せたいなら専用モデル、元の線の柔らかさを保ちたいならLanczos、と用途に合わせて選べます。
写真:粒状感が減っても、元の細部が戻ったとは限らない


専用モデル側では、肌だけでなく背景の月面写真まで強く滑らかになりました。髪や口元の線も変わり、写真というよりイラストに近い質感です。粒が減ったことを、実物の細部が復元されたことと読み替えないでください。写真の質感を残したい用途なら、この組ではLanczos側を選びます。
顔の切り出し:肌と口元を同じ倍率で見る


顔を大きく見ると、滑らかな肌だけでなく、髪や口元の描写の違いも見つけやすくなります。今回の6Bモデルは公式にもアニメ画像向けと説明されるモデルです。線画でよい結果が出ても、そのまま写真や顔へ使う理由にはなりません。写真向けの候補を試すときも、同じ元画像へ戻り、目・口・肌の質感を比べてから採用しましょう。
追加比較の処理条件と記録
CPU float32、PyTorch 2.11.0、Spandrel 0.4.2、Pillow 12.3.0、PyTorch計算4スレッドで各一回です。次の秒数はモデル読込と4倍の中間PNG保存を含みます。別アプリも動いていたため、一般的な速度順位やComfyUIの所要時間には使えません。
| 入力 | 方法 | このCPU試行の処理秒数 |
|---|---|---|
| 線画 | Lanczos | 0.011 |
| 線画 | RealESRGAN+縮小 | 10.435 |
| 写真 | Lanczos | 0.010 |
| 写真 | RealESRGAN+縮小 | 9.234 |
| 顔の切り出し | Lanczos | 0.009 |
| 顔の切り出し | RealESRGAN+縮小 | 9.061 |
追加6枚の処理ではGPUを使用していません。VRAMとモデル処理のRAMピークは未測定です。入力PNG・元の出力・処理レシピとhashで条件を追えます。原写真はNASAの利用方針に沿う情報提供用の比較素材として使い、NASAのロゴ部分は入力から除いています。NASAが処理結果を確認・推奨したことを示すものではありません。
大きさを変えるだけならImageScaleを使う
ImageScaleは、元の画像の点の間を補いながら、大きさを変えます。描く内容を文章で指定し直さずに済むので、文字入りの図や、構図をそのまま使いたい画像から試すのに向いています。追加モデルも要りません。
- Load Imageで元画像を開きます。
- IMAGE出力を Upscale Image(ImageScale)へつなぎます。
upscale_methodをlanczos、幅と高さを目的のサイズにします。- 出力をSave Imageへつなぎ、実行して保存します。
上の線画を同じように拡大するなら、幅1024、高さ1024、crop=disabledにします。Save Imageに結果が出たらPNGを保存し、元画像と並べて文字や図が残っているか見てみましょう。
縦横比を保って幅だけを指定したい場合は、高さを 0にします。両方に元画像と異なる比率を指定し、cropをdisabledにすると、縦や横に引き伸ばされます。指定サイズに合わせて中央で切り抜く場合は、cropのcenterを使います。
大きくなったものの線のぼやけが気になるなら、次の専用モデルで同じ画像を試してみましょう。サイズが足りれば十分な用途なら、ここで保存して使えます。
線や細部を整えたいなら、専用モデルを試す
専用のアップスケールモデルは、学習した特徴から線や細部を補います。写真向けとイラスト向けでは得意な描写が違うので、配布ページで自分の画像に近い作例を見て選びましょう。掲載例で使ったのは RealESRGAN_x4plus_anime_6B.pthです。Real-ESRGAN公式READMEのアニメ画像向け案内に、モデルの取得先が載っています。
Portableなら、普段使う起動batのある展開先からComfyUI → models → upscale_modelsを開き、取得した.pthファイルを入れます。手動導入なら、起動するmain.pyと同じComfyUIフォルダーからmodels → upscale_modelsへ進んでください。
Stability Matrixで共有モデルをConfig方式にしている場合は、使っているComfyUIパッケージのフォルダーを開き、extra_model_paths.yamlをテキストエディターで表示します。stability_matrixの中のupscale_modelsに並んでいる保存先を一つ選び、エクスプローラーでそのフォルダーを開いて.pthを入れます。相対パスならbase_pathと組み合わせた場所です。公式実装ではESRGAN・RealESRGAN・SwinIRの共有先がここへ登録されるため、名前を推測して別のフォルダーを作るより、手元の設定に書かれた先を使いましょう。設定を書き換える操作は不要です。
共有がSymlink方式なら、ComfyUIパッケージのフォルダーからmodels → upscale_modelsを開き、実際につながるフォルダーへ入れます。Desktopを使っている場合は、環境別のモデル保存先から、その環境が参照するupscale_modelsを開いてください。
配置したらComfyUIを再起動し、一覧を更新してLoad Upscale Modelでそのファイルを選びます。選べたら、画像を次のようにつなぎます。
| 接続元 | 接続先 |
|---|---|
| Load ImageのIMAGE | Upscale Image(using Model)のimage |
| Load Upscale Modelの出力 | Upscale Image(using Model)のupscale_model |
| 拡大後のIMAGE | Save Image、または最終サイズを調整するImageScale |
欲しいのは1024なのに、2048になったわ。倍率の指定を間違えたの?
このモデルは4倍にするものなんだよ。その後ろで必要なサイズに整えれば、通常拡大の一枚とも比べられるよ。
512×512を入れると、いったん2048×2048になります。今回と同じ比較をするなら、モデルの後ろにImageScaleをつなぎ、lanczos、幅1024、高さ1024で縮小してからSave Imageへ渡してください。通常拡大の結果と同じ大きさで開くと、線の太さや細部の違いを見つけやすくなります。
描き直しも加えるなら、latentを拡大して再生成する
服や背景に描写を加えたいなら、生成計算で使うデータである潜在表現(latent)を拡大し、KSamplerで描き直す方法もあります。ここからは元画像を補うだけでなく、内容が変わることも受け入れて使います。
基本の流れは、Load Image → VAE Encode → Upscale Latent → KSampler → VAE Decode → Save Imageです。モデルと、それに合うVAE、プロンプトも使います。
Upscale Latentを通しただけでは、細部を描き足す処理まで終わりません。その後のKSamplerで再生成し、VAE Decodeで見える画像へ戻します。denoiseは描き直しの強さに関わり、高くすると元画像から離れやすくなります。最初の出力を開いたら、細かくなったかだけでなく、残したい顔や形が変わっていないかも見ましょう。
掲載したSD1.5の出力では、潜在表現をbilinearで2倍にしてから、次の設定で描き直しました。
| 項目 | 設定 |
|---|---|
| シード | 20260925 |
| ステップ | 12 |
| CFG | 6.5 |
| サンプラー | euler |
| スケジューラー | normal |
| ノイズ除去 | 0.35 |
ポジティブは次の文章です。
a clean line-art mountain scene with a small sun and two simple houses, crisp ink lines, neutral colors
ネガティブには、次を指定しています。
blurry, distorted, noisy, extra buildings, watermark, illegible text
ネガティブへillegible textを入れても、この結果では「TEST 01」を保てませんでした。「読めない文字を避けて」と頼むことと、元の文字を正確に写すことは違うんですね。文字が必要な図なら、通常拡大や専用モデルの方へ戻って選びましょう。
使いたい仕上がりを、元画像と並べて選ぶ
比べる前に、保存した画像の幅と高さを見てください。片方が2048、もう片方が1024のままだと、線の違いに表示倍率の違いも混ざります。まず最終サイズをそろえ、その後に同じ文字や輪郭を同じ倍率で開きましょう。
拡大した画像を画面いっぱいに表示すると、それだけできれいに見えることもあります。最後は実際に使う大きさで開き、元画像と並べてみてください。文字が読めるか、顔が変わっていないか、輪郭に不自然な線が増えていないかを見ると、採用する一枚を決めやすくなります。
この線画では、通常拡大は文字を残し、専用モデルは輪郭をはっきりさせ、再生成は質感と文字を変えました。自分の画像でも、まずImageScaleで必要なサイズにしてから、不足を感じるところに合う方法を足してみましょう。元画像、採用したPNG、動いたワークフローを残しておけば、次の画像でもそこから始められます。
処理中にCUDA out of memoryが出たら、まず最後に動いた設定へ戻し、バッチサイズや処理する画像の大きさを確認します。アップスケールでは、画像を分割して処理する方式が使えるかも確認してください。
まとめ
- サイズ変更だけならImageScale、線や細部を整えたいなら専用モデルから試す
- 掲載した線画では通常拡大と専用モデルが文字を残し、SD1.5の再生成では文字が崩れた
- 元画像と最終サイズをそろえ、変わってほしくない部分を見て選ぶ
参照した情報源(13件)
- Load Upscale Model ↗Comfy Org
- Image upscaling in ComfyUI ↗ComfyUI
- ComfyUI — current KSampler parameters and defaults ↗ComfyUI
- ComfyUI Image to Image Workflow ↗ComfyUI
- ComfyUI built-in ImageScale node ↗ComfyUI / Comfy-Org
- ComfyUI v0.37.0 ImageScale and latent upscale core nodes ↗Comfy-Org / ComfyUI
- ComfyUI v0.37.0 tiled image-upscale model node ↗Comfy-Org / ComfyUI
- Comfy-Org Stable Diffusion v1.5 archive and license ↗Comfy-Org
- CreativeML OpenRAIL-M generated-output terms ↗CompVis
- RealESRGAN_x4plus_anime_6B model and license record ↗OpenModelDB / Xinntao
- local-gen — 線画・NASA写真と顔切り出しのCPU拡大比較 ↗local-gen.jp
- Official Portrait of Neil Armstrong ↗NASA
- NASA Images and Media Usage Guidelines ↗NASA



