ControlNet Tile模型:高质量图片放大的秘诀

Chuck

January 18, 2024

什么是 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 或其他分享平台上常见的埃佛勒斯山照片。构图完美,光线恰到好处。但是,由于图像压缩和小型传感器的限制,照片中的细节变得模糊不清。

mount everest in low resolution

现在,来看看由 Stable Diffusion 在 ControlNet Tile 模型的辅助下增强处理后的版本。虽然保留了原始的布局和构图,但云层和珠穆朗玛峰的纹理重现了清晰度。“前”和“后”的对比令人惊叹。

mount everest in low resolution

超分辨率低分辨率图像

ControlNet Tile 模型以能够将低分辨率图像转换为高清图像而闻名。然而,它的功能不仅限于超分辨率。要真正放大图像,它需要与AI超分辨率模型(如 ESRGAN)合作。ControlNet Tile 模型擅长细化缺陷、增强纹理和提高清晰度,即使不增加图像尺寸也是如此。

这项技术的变革力量体现在整合了 ESRGAN 和 ControlNet Tile 模型的典型超分辨率过程中。观察一张微小的狗狗图像(仅是一张较大图片的一个片段)经过 16 倍放大后的变化。结果如何?狗狗的毛发和周围环境以令人惊叹的清晰度呈现出来。

fluffy dog in 64 pixels by 64 pixels

给好奇者的更多细节

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操作就支持这样的方式。

fluffy dog in 64 pixels by 64 pixels

传统的图像编辑工具采用了不同的策略:它们根据原始像素及其邻居像素,对新像素进行插值。插值方法有所不同,通常涉及二次、三次或贝塞尔函数。虽然这种方式产生的结果比天真方法更加平滑,但图像依然明显模糊。

fluffy dog in 64 pixels by 64 pixels

与此不同,AI 超分辨率工具摒弃了确定性像素函数,而是利用从海量数据集中获得的见解。这个过程类似于通过人眼观察世界,分辨出哪些元素需要更加清晰。正是在这里,ControlNet Tile 将细节增强的艺术推向了新的高度。尽管传统 AI 超分辨率工具擅长处理较大的图像,但对于小至 64x64 像素的微小图像,它们往往会力有未逮。例如,Real-ESRGAN 由于其训练数据通常在每个维度上跨越数百像素,因此难以填补这些间隙。

fluffy dog in 64 pixels by 64 pixels

经过训练,能够从降质图像重建出高分辨率图像的数据集对,ControlNet Tile 模型熟练掌握了这一技能。它借助 Stable Diffusion 的力量,精确地编织出错综复杂的纹理。对于熟悉 Stable Diffusion 的 img2img 功能的人来说,这个过程可能会让人联想到一个去噪过程。然而,它最终汇聚成一场视觉交响乐:一个孤立的像素绽放出 255 个像素编织而成的绚丽画卷,展现出一个曾经难以觊觎的细节世界——这确实是图像转换技术的一大飞跃!

fluffy dog resized to 1024 pixels by 1024 pixels with pixel duplication

结语

要透彻理解 ControlNet Tile 模型的工作原理,需要深入探索它们所训练的数据集。与需要预处理的其他 ControlNet 变体(如为线条艺术设计的变体)不同,指导 Stable Diffusion 去噪过程的数据并不那么显而易见,为探索和理解留下了广阔空间。

与此同时,这些模型在恢复低质量图像方面的实用性也变得昭然若揭。我坚信 ControlNet Tile 必将成为任何创意专业人士武器库中的宝贵利器。

© 2024 上海循径趋优科技有限公司
beian沪ICP备2023019247号-1 | 沪公网安备31011802004837号