马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?免费注册
x
本帖最后由 明心亘青 于 2026-3-23 10:33 编辑
本文所阐述的大部分内容在WebUI 里只要点一下那个高清重绘(Hire.fix)就能一步完成。
本文的演示图像均为 NSFW,这样一方面体现「你只有在老王才能看到这个教程」(并不),另一方面其实也能展现高清重绘在皮肤上的作用。 我们知道(如果你不知道,那你现在就知道了),SD1.5 系列的模型,其训练数据多为 512*512,在训练完毕以后才增补,额外增添了 512*768, 728*512 等分辨率的训练,也因此 SD1.5 系列模型大部分生图都是这个分辨率大小。而到了 SDXL,训练数据的分辨率提高,开始使用 1024*1024 分辨率的图片进行训练,并且增加了如 768*1024 的训练数据,总像素量维持在 1024*1024 左右。这种数据一直到现在的 SD3.5,Flux。那么,你有没有想过,如果想让模型直接生成高分辨率图像,会怎么样?
我们可以发现,1080*1920 的人体非常抽象。我不知道是不是 Waiillustrious 太强了,修复过这些问题导致的(更新:这里很可能是因为 Wai-illustrious-V15 以后,作者将底模从 IllustriousXL v0.1 替换为了 IllustriousXL v2.0,对于 1536*1536 的图像也进行了一定的训练,以至于其有能力直出 1024*1536 的图像——虽然还是可能崩——可能也因此此处 1920*1080 的图像未出现重大构图失误),在事实上我曾经不知道高清重绘的重要性,直出 1080p 的图,诞生了三头六臂的奇景,可惜被我删了。这是因为模型在绘图时终究只认识那么大点空间,我们在为其设定过大的 Latent 时,模型在生图完毕后面对空出来的部分,会一拍脑门,在那块地方再画一些东西,如此一来不管是哪吒还是连体人,都是正常的结果。 可是,1024*1024 终究还是不够高清,我自己平时使用的 832*1216,放大看也是糊成一团,怎么办呢?这时候就需要使用高清重绘了。 高清重绘在本质上的流程就是图生图,一般有三种方式:缩放 Latent、像素放大与第三方插件。我们这次讲前二者,以及一个 SD 放大,因为第三方插件太多太多了,除了有 SD 放大,还有 SeedVR 和各种各样的东西,我也不怎么会用,所以就不细讲了。 先来看看缩放 Latent 的工作流: 可以看到,主要多出来的步骤是将K 采样器输出的 Latent 按比例缩放扩大了 1.5 倍后重新输入K 采样器进行重采样,然后解码输出图像。这里的本质是对潜空间噪声进行大致确定(初步生成),然后扩大潜空间噪声的分辨率,降低降噪幅度(类比 Wambui 的重绘幅度,使用这个推荐 0.5 降噪),使其大致保留原来的样子,但分辨率得到提升。通过对比我们可以看到,潜空间放大后的细节是多了一些的,但是也多了些不该多的东西,例如腰部的褶皱多了一层,这也是 Latent 缩放的一个弊端。 (单纯扩大 1.5 倍的原因是因为这是对「潜空间」进行操作,放大二倍的话出问题的概率会增加,例如这张对比图中男性的左手,就从四根手指在放大的过程中由于重绘幅度略高,被放大成了八根手指: 毕竟终究超出了 1024*1024 的范畴,只是 1.5 倍超出得更少) 另一种是像素放大,其工作流长这样: 可以看到,像素放大的工作流多出来的是「使用放大放大模型」将图像放大,然后重新编码为 Latent 数据并放入 K 采样器进行重采样这一步。同样的,降噪幅度也要降低,不过可以比缩放 Latent 更低。 可以看到放大效果是很明显的。 另外你可能会注意到,像素放大的工作流中增加了一个按比例「缩放图像」的节点,这是因为我在示例(也是平时)中使用的 RealESRGAN_x4plus_anime_6B模型默认是放大四倍,但是四倍以后,原本的 832*1216 的分辨率会被直接放大到一个恐怖的3328*4864(平时所说的「4k」也不过3840*2160,两个值都比不过了属于是),极其吃性能,也因此会使用一个缩放图像,把实际放大倍率调整为 2 倍,降低生成压力和提高效率。1664*2432 也足够清晰了。 顺带一提你可以使用 Easy-Use 节点包中的「高清修复」节点,将「使用模型进行放大」「加载放大模型」「缩放图像(比例)」「VAE编码」这四个节点全部集成,搭配效率节点可以使工作流简洁得不像话,总共六个节点,印度飞线还少,看着是真舒服吧:
像素放大最大的优势在于对比缩放 Latent 的方式,它对潜空间的操作略少,也因此能够以更低的降噪幅度、更高的分辨率进行高清修复(具体原理我也不知道)。但同样是因为没有修改Latent,它对细节的补充也显著降低,甚至会放大原本生成的图像的缺陷。 (其实这两个为什么同样都是对 Latent 进行重采样而像素放大需要的降噪更少这一点我也不知道。Gemini如此解释:Latent Upscale (潜空间放大) 实际上是对潜空间向量进行插值。因为潜空间是高度压缩的,这种简单的数学插值会引入大量的伪影和破坏性的噪声,所以必须用较高的降噪幅度(0.5-0.6)来“重写”这些破碎的像素。像素放大(PixelUpscale) 使用的是经过训练的 AI 超分模型(如RealESRGAN)。它在放大时已经根据图像内容补全了缺失的像素细节,给采样器提供的“底图”质量更高、更完整。因此,采样器只需要少量的降噪(0.3-0.4)来修饰接缝和微调纹理,而不需要大规模重构。) 顺带一提,「放大模型」的路径是\ComfyUI\models\upscale_models。 上述两种方法都是直接对整张图像进行放大,对性能略有要求。性能不足的可以考虑使用 Ultimate SD Upscale,也就是SD 放大: SD 放大在实际上是把图像拆成多个分块,分别放大,然后合并到一起,因此对性能占用较为友好,但在放大原理上与像素放大是一样的。借助这玩意,哪怕显存只有8G 都能跑 4k 乃至 8k 图像(只是用时有亿点久,但不至于爆显存,起码存在可能性了不是)。不过也有一个缺点,就是概率生成鬼图。实际原因我推测是每个放大区块都加载了一遍Prompt,而降噪幅度又太高,导致每个区块都根据 Prompt 单独重绘了一遍,拼凑出了毕加索都画不出来的神经图片。 通常情况下,在你遵循我目前所写过的两篇教程的内容后跑出来的图其实已经吊打 Pixiv 上一大堆量大动辄几十张,但十分劣质的 AI 图了。不过抽奖终究是个麻烦事,就算使用 FaceDetailer 也不一定能有较好的效果(也因此我其实不是很愿意讲这玩意,因为作用不明显),SDXL模型还是参数太小,出得太早,不能像 Nano Banana 那样有堪称变态的人体解剖学(闭源模型,很可怕吧),也不如后来的Z-image 等对肢体的把控能力。Anima,你崛起吧! (Anima是这几天新出现的开源二次元生图大模型,接入了 Qwen3 文本编码器(但是好像不支持中文?有点诡异),同时Danbooru 标签数据同步到了 2025 年9 月,只是因为听说 NSFW 和画师串效果似乎都不太好,以及我有黑奴要当(悲伤寒假工),就没具体测试,我在此大胆预测一下,等微调和生态构建起来了说不定能平替光辉,因为目前SDXL 的编码器都太落后,学习成本太高了。也许 Anima 会是二次元版 Flux也说不定呢) |