什么是 ControlNet Tile 模型?
你是否曾好奇过 ControlNet Tile 模型到底是什么?如果你还不太明白,别担心,你并不是一个人。ControlNet Tile 模型可能是最容易被理解错误的模型。
不同于其他 ControlNet 模型从图像中提取特定特征来指导扩散生成过程,ControlNet Tile 模型不需要任何预处理。它的工作方式与 ControlNet Depth、Scribble 等模型有所不同。
快速回顾:Stable Diffusion 和 ControlNet
Stable Diffusion 是由 Stability AI 推出的一套模型,它代表了对以往最先进的图像生成模型(如 GAN)的重大突破。它的架构允许在大量数据集上进行高效训练,从而赋予它渲染细节纹理的非凡能力。
然而,在构图方面,Stable Diffusion 确实存在一些缺陷。它臭名昭著地会产生不需要的伪影,如多余的数字、物体或人物位置错误,以及身体形态扭曲等。简而言之,尽管 Stable Diffusion 擅长以细节填充像素,但它还无法达到大师级画家的精湛艺术水平。
这就是 ControlNet 作为 Stable Diffusion 的有力补充的用武之地。作为一个支持性伙伴,ControlNet 允许 Stable Diffusion 精心处理纹理细节,同时自身专注于训练缺乏此类细节的辅助图像对。这些图像对经过精心设计,确保每对图像共享线条、光照或构图等共同元素。通过训练这些数据集,ControlNet 模型可以集中精力应对 Stable Diffusion 可能失灵的领域——即生成图像的构图。我们已经看到 ControlNet 模型能够熟练地将线条艺术注入生动的色彩,实现各种艺术风格。但是,分块重新采样或 ControlNet Tile 模型又扮演着什么角色呢?
ControlNet Tile 的能力
根据其作者的说法,ControlNet Tile 在两个关键领域表现出色:
- 它能够灵活地替换图像中缺失的细节,同时保留整体结构。
- 如果全局提示与局部语义发生冲突,它可以忽略全局提示,而以局部上下文指导扩散过程。
这些能力对图像质量的影响可能不太明显。但是,请思考一下:ControlNet Tile 模型赋予你布置舞台的能力——无论是在画布上勾勒轮廓,还是构图拍摄完美的照片。然后,它会精心精雕细琢细节和纹理。这不仅仅是另一个工具,更是艺术家和摄影师多年来一直在追求的那把神奇画笔,提供了连传统软件如 Photoshop 都无法企及的细节和精湛程度。
ControlNet Tile 实战
清晰模糊图像
智能手机相机已经成为我们日常生活中的一个常态,但它带来的妥协却常被人忽视。其中一个妥协就是自然摄影中缺乏细节,这是由于紧凑设备中的小型传感器所导致的。
想象一张在 Instagram 或其他分享平台上常见的埃佛勒斯山照片。构图完美,光线恰到好处。但是,由于图像压缩和小型传感器的限制,照片中的细节变得模糊不清。
现在,来看看由 Stable Diffusion 在 ControlNet Tile 模型的辅助下增强处理后的版本。虽然保留了原始的布局和构图,但云层和珠穆朗玛峰的纹理重现了清晰度。“前”和“后”的对比令人惊叹。
超分辨率低分辨率图像
ControlNet Tile 模型以能够将低分辨率图像转换为高清图像而闻名。然而,它的功能不仅限于超分辨率。要真正放大图像,它需要与AI超分辨率模型(如 ESRGAN)合作。ControlNet Tile 模型擅长细化缺陷、增强纹理和提高清晰度,即使不增加图像尺寸也是如此。
这项技术的变革力量体现在整合了 ESRGAN 和 ControlNet Tile 模型的典型超分辨率过程中。观察一张微小的狗狗图像(仅是一张较大图片的一个片段)经过 16 倍放大后的变化。结果如何?狗狗的毛发和周围环境以令人惊叹的清晰度呈现出来。
给好奇者的更多细节
ControlNet Tile 训练
官方代码库提供了有关 ControlNet 模型训练和功能的有趣见解。ControlNet 模型独立于 Stable Diffusion 的权重进行训练(参照这里的训练指南)。这与 Stable Diffusion 模型的典型微调方法不同,因为 ControlNet 并不修改 Stable Diffusion 的权重。相反,它训练一个辅助神经网络与 Stable Diffusion 接口。该网络在一个新颖的数据集上进行训练,该数据集由成对图像组成:每对图像包含一张原始图像和经过预处理的版本,或按 ControlNet 术语称为由"标注器"处理过的图像。通常,标注器会从图像中提取线条或轮廓,使经过成功训练的 ControlNet 模型能够从简单的线条或轮廓预测出详细的图像。
虽然 ControlNet 的训练和推理代码是公开共享的,但各种模型的数据集却并非公开可用。不过,该库提供了一个示例数据集,帮助开发人员了解训练过程。
ControlNet Tile 推理
ControlNet Tile 模型的工作方式类似于超分辨率工具,但并不局限于图像超分辨率(原代码库说明)。它的数据集类似于一种像素化、“Mine craft”式的高分辨率图像对渲染。它利用扩散模型增强模糊或缺失的局部细节,同时保持原始的构图。
想象一下将 64x64 分辨率的图像放大 16 倍的过程。这需要为原始图像中的每一个像素生成 255 个新像素。问题是:我们如何根据根据一个像素确定这 255 个新像素的内容?
一种天真的方法是简单地将原始像素复制到 255 个新像素中,这将导致极度像素化且放大的图像,没有任何新增细节。ImageMagick的scale操作就支持这样的方式。
传统的图像编辑工具采用了不同的策略:它们根据原始像素及其邻居像素,对新像素进行插值。插值方法有所不同,通常涉及二次、三次或贝塞尔函数。虽然这种方式产生的结果比天真方法更加平滑,但图像依然明显模糊。
与此不同,AI 超分辨率工具摒弃了确定性像素函数,而是利用从海量数据集中获得的见解。这个过程类似于通过人眼观察世界,分辨出哪些元素需要更加清晰。正是在这里,ControlNet Tile 将细节增强的艺术推向了新的高度。尽管传统 AI 超分辨率工具擅长处理较大的图像,但对于小至 64x64 像素的微小图像,它们往往会力有未逮。例如,Real-ESRGAN 由于其训练数据通常在每个维度上跨越数百像素,因此难以填补这些间隙。
经过训练,能够从降质图像重建出高分辨率图像的数据集对,ControlNet Tile 模型熟练掌握了这一技能。它借助 Stable Diffusion 的力量,精确地编织出错综复杂的纹理。对于熟悉 Stable Diffusion 的 img2img 功能的人来说,这个过程可能会让人联想到一个去噪过程。然而,它最终汇聚成一场视觉交响乐:一个孤立的像素绽放出 255 个像素编织而成的绚丽画卷,展现出一个曾经难以觊觎的细节世界——这确实是图像转换技术的一大飞跃!
结语
要透彻理解 ControlNet Tile 模型的工作原理,需要深入探索它们所训练的数据集。与需要预处理的其他 ControlNet 变体(如为线条艺术设计的变体)不同,指导 Stable Diffusion 去噪过程的数据并不那么显而易见,为探索和理解留下了广阔空间。
与此同时,这些模型在恢复低质量图像方面的实用性也变得昭然若揭。我坚信 ControlNet Tile 必将成为任何创意专业人士武器库中的宝贵利器。