ComfyUI高级应用之图片放大
我们时常会因为设备性能问题,不能一次性生成大尺寸的图片,通常会先生成小尺寸的图像然后再进行放大。在 ComfyUI 中对图片进行放大(超分)的方法多样,可根据需求(如放大倍率、画质优先级、速度)选择不同方案。
1. 像素重新采样
(1)这种放大方式主要是将加载的图片通过【缩放图像节点】将图片放大到1.5~2倍,放大后的图像输入到这个潜空间中,然后再重新进行一个潜空间采样的一个过程。
(2)这种方法放大生成的图片在细节上会与原图会有些许的不同,会有图像元素的变化。
(3)使用这种方式的核心在于不要将k-Sampler的降噪(denoise)设置为1,如果你把降噪设为1,那么图片将会完全变为噪声输入潜空间,导致输出图片完全与原始图片没有关联,一般将降噪参数设置为0.45~0.5之间。
2. 二次采样放大

(1) 工作流两个K采样器,第一个文生图,第一个K采样器的降噪参数设置1,让AI完全自由发挥生成一张图片。
(2) 生成图片尺寸512 * 512,不满足我们的需要,需要放大1024 * 1024,在第一个K采样器Lantent输出图像加一个【图像放缩节点】,将图像放大2倍。
(3) 放大的图像进行二次采样,第二个采样器的降噪参数不能设置1,如果你把降噪设为1,那么图片将会完全变为噪声输入潜空间,导致输出图片完全与原始图片没有关联,一般将降噪参数设置为0.45~0.5之间。
3. 使用放大模型放大图片
基于深度学习模型、网络对抗模型等现代算法来放大图片,在提高分辨率的同时保持能增强图像的细节、清晰度和逼真度。耳熟能详的有ESRGAN系列和它的升级版4x-ultrasharp。

使用放大模型工作流,非常重要的节点【使用放大模型】
【输入参数】
放大模型:需要添加另一个加载器节点【加载放大模型】,这里选择合适放大模型。
图像:通过【加载图像】载入需要放大的图像
【输出参数】
放大成功的图像。
有很多放大模型,如果配置自己本地环境,首先去下载对应的放大模型文件,将其放入ComfyUI-master\models\upscale_models (其中ComfyUI-master根目录)。
📁ComfyUI
├── 📁models
│ ├── 📁upscale_models
│ │ └── BSRGANx2.pth // 在 upscale_models 文件夹下保存你下载到的对应模型
放大模型的介绍:

模型放大优势
质量保持:更好地保持图像的原始质量,减少模糊和伪影
细节增强:模型能够恢复图像中的细节
灵活性:模型可以针对不同的应用场景进行定制
模型放大劣势
较高的计算资源
4. SD放大
将图片切成好几个小块(Tile),通常是 512×512 或 128×128,然后对每一个小块进行放大,最后再拼回一张大图,这样不仅可以确保放大的效果和视觉品质,同时也能在提升提示的同时,节省计算和储存空间可以说,SD UpScale是目前放大图片的最佳手法,也是许多图像处理软件中经常会用到的一种技术。

参数说明:
图像: 【加载图像】输入载入的图像。
模型: 【checkpoint加载器】载入大模型。
正面/负面条件:条件约束输入,通常可以分别连接clip文本编辑,分别对应正向提示词与负向提示词输入。
VAE: 对于VAE模型,可以使用基础模型自带VAE连接,或者也可以使用VAE加载器载入其他的VAE模型。
放大模型:通过【放大模型加载器】载入放大模型。
放大系数:直观描述就是放大到原来的多少倍。
模式类型:
直线(Linear)模式 这是最常见的插值方式之一,基于线性插值,像素值按照图像的现有数值做平滑过渡,逐行处理。
特点:适合处理均匀渐变的图像,不会引入太多伪影或失真。它提供了一种平滑的放大效果,但是对于图像细节丰富或复杂的图像来说,细节部分可能丢失或模糊。
应用场景:适用于自然风景、渐变背景等图像放大。
Chess(棋盘格)模式 棋盘格模式通过分割图像为多个区块(像棋盘的格子一样)分别进行处理。这种方法可以更好地处理图像中的局部细节,因为每个区块都可以独立进行运算和优化。
特点:适合处理复杂图像,尤其是具有较多细节或纹理的图像。由于分割成小区块处理,这种方法在保证局部细节方面较好,但可能会导致一些边缘过渡不自然的情况。
应用场景:适合用于人脸、建筑物等图像,需要保持细节清晰的场景
分块宽高:分区块的宽高,模型会按照这个设置进行区块划分,在每一个区块上进行重绘。
模糊: 用来调节图像在放大时的细节保留和边缘锐化。
减少细节冲突 在图像放大的过程中,如果图像原本的细节过多或者过于锐利,放大后的图像可能会出现不自然的锐边或不连贯的细节。通过预先模糊处理,可以平滑一些过度复杂的细节,使图像在放大后更自然、过渡更平滑。
防止噪点放大 当低分辨率的图像中存在一些噪点(如像素颗粒感),直接放大会导致这些噪点也被放大并显得更加明显和刺眼。通过在放大前先模糊掉这些噪点,能够减少它们在放大图像中的影响,提升图像的整体质量。
接缝修复: 用于处理区块边缘接缝时的处理方式
工作流示意图:

5. SUPIR放大
SUPIR放大不仅可以放大图片,还可以用来修复模糊图片和增强图片细节。SUPIR通过使用深度学习模型来实现图像的高质量放大,提供了一种“无损放大”的解决方案,即使在极大提高细节的同时,也能保持原图内容的不变。

重要的参数:
【SUPIR模型】
SUPIR-v0Q.ckpt 是 SUPIR 系列模型的一个量化版本(“Q” 通常代表 Quantized,即量化压缩),属于字节跳动字节跳动推出的图像超分辨率与修复模型体系,主要面向轻量级部署和低资源设备,兼顾效果与计算效率。
SUPIR-v0F.ckpt 是 SUPIR 系列中的一个专注于快速推理与实时处理的优化版本(“F” 通常代表 “Fast” 或 “Faster”,即侧重速度优化),由字节跳动团队开发,主打在保证图像增强效果的同时,显著提升处理速度,适合对实时性有要求的场景。
【SDXL模型】 选择SDXL类型的模型**(SUPIR放大仅适用SDXL模型)
【放缩系数】 设置放大的倍数。
【CFG缩放】CFG越大,图像就越锐利,越小就越平滑,一般控制在4到6之间。
【噪波量】 噪波量通常指的是图像放大过程中引入的额外噪声。在SUPIR放大中,噪波量的大小直接影响到图像放大后的质量。如果噪波量较大,即使图像的分辨率得到了提升,放大后的图像也可能因为噪声过多而显得模糊不清,细节丢失。一般保持1不变即可。
【工作流示意图】

工作流:
{"id": "74308a86-6949-4c0d-a3cc-c2e683c447cf","revision": 0,"last_node_id": 20,"last_link_id": 22,"nodes": [{"id": 11,"type": "LoadImage","pos": {"0": -250.2694549560547,"1": 124.43089294433594},"size": {"0": 315,"1": 314},"flags": {},"order": 0,"mode": 0,"inputs": [],"outputs": [{"label": "图像","localized_name": "图像","name": "IMAGE","type": "IMAGE","links": [20,21]},{"label": "遮罩","localized_name": "遮罩","name": "MASK","type": "MASK","links": null}],"properties": {"enableTabs": false,"tabWidth": 65,"tabXOffset": 10,"hasSecondTab": false,"secondTabText": "Send Back","secondTabOffset": 80,"secondTabWidth": 65,"Node name for S&R": "LoadImage"},"widgets_values": ["001.jpg","image",""],"_widget_cache_map": {"001.jpg": {"value": "img/23d7c6941e034303b65eb92fec14d332/f08f13921f5d3c1b6da67e2e974e2bf9d3611ce13ae372d5b12e269dce52af97.jpg","name": "001.jpg","url": "https://liblibai-tmp-image.liblib.cloud/img/23d7c6941e034303b65eb92fec14d332/f08f13921f5d3c1b6da67e2e974e2bf9d3611ce13ae372d5b12e269dce52af97.jpg","width": 371,"height": 512}}},{"id": 20,"type": "Image Comparer (rgthree)","pos": {"0": 529.46484375,"1": 124.40528106689453},"size": {"0": 432.5966796875,"1": 408.2457580566406},"flags": {},"order": 2,"mode": 0,"inputs": [{"dir": 3,"label": "图像_A","name": "image_a","type": "IMAGE","link": 21},{"dir": 3,"label": "图像_B","name": "image_b","type": "IMAGE","link": 22}],"outputs": [],"properties": {"enableTabs": false,"tabWidth": 65,"tabXOffset": 10,"hasSecondTab": false,"secondTabText": "Send Back","secondTabOffset": 80,"secondTabWidth": 65,"comparer_mode": "Slide"},"widgets_values": [[]]},{"id": 18,"type": "SUPIR_Upscale","pos": {"0": 101.33345031738281,"1": 93.2764663696289},"size": {"0": 400,"1": 838},"flags": {},"order": 1,"mode": 0,"inputs": [{"label": "图像","localized_name": "image","name": "image","type": "IMAGE","link": 20},{"name": "captions","shape": 7,"type": "STRING","widget": {"name": "captions"},"link": null}],"outputs": [{"label": "图像","localized_name": "upscaled_image","name": "upscaled_image","type": "IMAGE","links": [22]}],"properties": {"enableTabs": false,"tabWidth": 65,"tabXOffset": 10,"hasSecondTab": false,"secondTabText": "Send Back","secondTabOffset": 80,"secondTabWidth": 65,"Node name for S&R": "SUPIR_Upscale"},"widgets_values": ["SUPIR-v0Q_fp16.safetensors","majicMIX realistic 麦橘写实_v7",823246402263630,"randomize","lanczos",4,45,-1,4,"high quality, detailed","bad quality, blurry, messy",5,1.003,1,4,0,"Wavelet",true,true,512,64,"","auto","auto",1,false,1024,512,false,false,"RestoreEDMSampler"],"_widget_cache_map": {"ComicTrainee丨动漫插画模型_v2.0": {"name": "ComicTrainee丨动漫插画模型_v2.0","baseType": 1,"value": "c291e0d339f44a98a973f138e6b0b9dc"},"majicMIX realistic 麦橘写实_v7": {"name": "majicMIX realistic 麦橘写实_v7","baseType": 1,"value": "d303ad58c0fc4c989b60351d5eac68e6"}}}],"links": [[20,11,0,18,0,"IMAGE"],[21,11,0,20,0,"IMAGE"],[22,18,0,20,1,"IMAGE"]],"groups": [],"config": {},"extra": {"ds": {"scale": 1.0610764609500023,"offset": [249.78316028402122,-48.9450189949779]},"ue_links": []},"version": 0.4
}
