线稿是视觉艺术的灵魂。在艺术家投入绘制一幅完整的渲染画作之前,他们会先画一幅线条稿——这是一张捕捉最终作品核心结构、布局和比例的蓝图。这个过程直观而高效,因为编辑线稿远比在一幅完成的彩色图像上进行像素级精细调整要容易得多。

尽管近年来生成式 AI 领域发展迅猛——尤其是可以从文本生成惊艳逼真图像的扩散模型——但在自动化线稿生成方面的研究却出奇地寂静。现有工具往往无法满足艺术家的真正需求: 对最终输出的精确控制。生成“一只坐在垫子上的猫”是一回事,但明确指定这只猫应位于左上角、面朝右、并且有特定大小,则是完全不同的挑战。

这正是新研究论文 CoProSketch 打算填补的空白。研究人员提出了一种全新框架,不仅能从文本生成高质量线稿,还具备高度可控性,并采用一种渐进式工作流,让人类创意自然融入创作过程。CoProSketch 不是一次性给出最终成品,而是先生成一个粗略草稿,供你在模型添加最终细节前自行编辑。

CoProSketch 流水线的高层级概览,展示了用户如何从一个创意想法出发,生成粗略草图,进行编辑,并将多个草图组合成一个最终的详细场景。

如上图所示,其核心理念是构建一个协作过程: 你提供文本提示和一个简单的边界框定义布局,模型生成粗略线稿。如果不理想,你可以编辑线条,并将修改后的线稿回馈给模型进行细化。这种迭代的、人在回路中的方法为希望精准掌控作品的艺术家、设计师和创意人士带来了全新可能。


挑战: 为什么扩散模型难以处理线稿

乍一看,生成线稿似乎比生成照片级真实图像更简单——不就是白纸上的黑线吗?但这种二元特性恰恰是标准扩散模型难以处理的关键原因

像 Stable Diffusion 这样的扩散模型擅长处理连续、平滑的数值分布——比如照片中柔和的色彩梯度。而二值化线稿在纯白 (像素值 255) 和纯黑 (像素值 0) 之间存在突然变化。若直接使用线稿数据进行微调,这些模型往往会输出混乱、斑驳的结果,而不是干净、明确的线条。

CoProSketch 团队将这一问题视为核心技术难题。他们的解决方案是: 不要将线稿表示为二值图像,而是引入 3D 图形中的一种概念——无符号距离场 (Unsigned Distance Field, UDF)


秘诀: 将线稿表示为 UDF

无符号距离场为每个像素存储其与最近边缘或笔画的距离。相比生硬的黑白位图,这是一种平滑渐变: 离线条近的像素值较低,离得远的像素值较高。

一个关于如何将二值化线稿转换为原始 UDF,然后再转换为变换后的 UDF 以便更好地训练网络的视觉解释。

这种连续表示形式更容易被扩散模型学习。研究人员还通过一个变换进一步优化了 UDF:

\[ f(u) = 1 - \exp\left(-\frac{u}{T}\right) \]

这里,\( T \) 是基于图像尺寸的缩放参数。该函数增强了笔画附近的对比度,使神经网络获得更清晰的学习信号。通过这种方式,有效训练扩散模型处理线稿的主要难题迎刃而解。


CoProSketch 流水线: 分步解析

以 UDF 为基础,流水线分为两个阶段: 先生成粗略线稿,再细化为精致的最终线稿。

CoProSketch 流水线的详细架构,展示了两阶段过程 (粗略和详细) 以及修改后的 U-Net 架构。

1. SketchGenerator: 系统核心

SketchGenerator 是一个针对 Stable Diffusion XL (SDXL) 微调的模型,负责生成 UDF。它有两项关键改动实现了可控性:

  • 位置控制: 将用户边界框转换为掩码,通过变分自编码器 (VAE) 编码,并与 U-Net 输入处的带噪声 UDF 潜变量拼接,准确告知模型绘制位置。
  • 细节级别控制: “阶段指示器”标识是生成粗略轮廓还是详细线稿。该阶段嵌入被添加到时间嵌入中——类似扩散时间步的处理——无需大幅修改架构即可实现控制。

2. UDF2Sketch: 将距离场转为线条

SketchGenerator 输出的是 UDF,而最终需要的是干净的线稿。简单阈值化或 Marching Squares 提取会导致锯齿且不美观。受 InformativeDrawing 启发,研究人员训练了 UDF2Sketch——一个带 ResNet 模块的轻量编码器-解码器网络,采用对抗性损失 (匹配目标风格) 、基于 CLIP 的语义损失 (保持内容) 和循环损失 (保持一致性) 进行优化,从而生成清晰、富有表现力的线条。

3. UDF2Mask: 生成精确细化掩码

在详细阶段,需要更精准的掩码。UDF2Mask 基于 MobileSAM,从粗略 UDF 和边界框生成像素级精确的实例掩码。这一改进的控制信号保证了细化草稿与编辑过的粗稿严格对齐。训练损失函数为:

\[ L = \lambda_f \times L_{focal} + \lambda_d \times L_{dice} \]

构建线稿数据引擎

优质模型需要优质数据。由于缺乏大规模成对的文本-线稿数据集,作者自行构建了一个自动化的线稿数据引擎

用于构建训练数据集的流水线,从 RGB 图像开始,生成文本描述、掩码和线稿。

流水线步骤:

  1. 从 RGB 图像开始: 数据源包括 COCO2017、Anime Colorization 以及显著性物体检测 (SOD) 数据集。
  2. 生成详细描述: 使用 Gemini AI 生成丰富的图像描述,这对扩散效果至关重要。
  3. 提取掩码: 合并显著性物体检测模型与 SAM2 输出,得到精确物体掩码,并由此生成边界框与轮廓。
  4. 生成详细线稿: 使用 InformativeDrawing 模型将 RGB 图像转为细致线稿。
  5. 过滤结果: 丢弃低质量或掩码过小样本,最终得到约 10 万个高质量文本-线稿对。

来自定制数据集的粗略和详细线稿示例。


CoProSketch 的表现如何?

定性比较

CoProSketch 与各种基线方法针对不同提示生成的线稿的并排比较。

CoProSketch 生成的线稿干净利落,且严格限定在指定边界框内——这是 DiffSketcher 所不具备的。依赖中间 RGB 图像的双阶段流水线常导致线稿越界并引入杂乱元素。

定量指标

在**美学得分 **(预测人类偏好) 与 **CLIP 分数 **(线稿与文本语义一致性) 上,CoProSketch 均获得最高成绩。

一个表格,显示了 CoProSketch 与几种基线方法的美学得分和 CLIP 分数的比较。

用户研究结果

为超越自动化指标的验证,研究团队邀请 33 名参与者对输出在美感、语义相似性与位置控制准确度上的表现进行评分。

用户研究的结果,显示用户在语义相似性和位置控制方面压倒性地偏爱 CoProSketch。

结果显示,参与者在语义一致性与位置精确控制方面高度偏爱 CoProSketch,印证了其在创意工作中的实用优势。


为何每个组件都至关重要: 消融研究

移除关键组件的实验验证了它们的重要性:

一个视觉消融研究,显示当移除 UDF 表示或 UDF2Sketch 模块等关键组件时,质量的下降情况。 一个定量消融研究,显示当移除组件时性能分数的下降。

  • 无 UDF 表示: 直接在二值线稿上训练会产生杂乱、低一致性的输出。
  • 无 UDF2Mask: 详细线稿经常超出边界框。
  • 无 UDF2Sketch: 传统解码方式输出的结果零碎且不美观。

应用: 不止于精美画作

直观编辑

一个对比图,展示了在 CoProSketch 流水线中编辑粗略草图比编辑最终 RGB 图像要容易和有效得多。

如上例所示,拉直火烈鸟脖子的任务中,直接修改最终 RGB 图像引发伪影,而先编辑粗稿并重新生成,得到的成品图像完美无瑕。

组合复杂场景

一个通过生成单个家具部件并将它们层叠在一起,来组合复杂客厅场景的例子。

利用单一提示生成复杂多物体场景常因遮挡与定位问题失败。CoProSketch 允许逐个生成物体,并通过精确掩码分层组合到同一画布中。


结论

CoProSketch 是可控、以艺术家为中心的生成式 AI 的重要进展。通过用 UDF 解决表示瓶颈,并引入渐进、可编辑的创作流程,作者构建了一个在质量、控制与创作自由度之间取得平衡的系统。

其突出优势在于将用户重新带回创作循环——让他们从被动的提示提供者变为主动的共同创作者。尽管当前美学表现受限于用于数据生成的图像转线稿模型,但该框架具备前瞻性: 随着更优方法的出现,可直接嵌入现有流水线。

如果你重视生成工具的精确度、适应性与艺术表现力,CoProSketch 将为下一代创意型 AI 奠定范式。