AniDoc: Animation Creation Made Easier
视频线稿上色工具, 根据参考角色规格自动将草图序列转换为彩色动画, 模型对参考角色与每帧线稿之间的变化表现出很强的鲁棒性, 甚至可以自动化中间画过程, 用户只需提供一个角色图像以及起始和结束草图, 就可以轻松创建时间上一致的动画.
介绍
上色重要, 美学价值, 故事体验, 降低劳动力成本, 加速内容创作.
介绍传统方法流程, 该论文工作无缝衔接这一流程, 同时保持对原始角色设计的忠实度, 并确保跨帧的时间一致性.
介绍挑战: 1)角色设计与线稿草图之间的不匹配, 2)时间上的一致性至关重要, 先前的方法通常假设关键帧有彩色版本, 并依赖于密集的线稿指导, 这增加了工作量, 颜色泄漏问题.
提出一体化模型, 利用预训练diffusion, 通过引入显式的对应机制来解决参考角色设计与输入线稿之间的错位问题; 条件草图二值化, 迫使模型真正学会从参考角色设计中提取颜色信息; 背景增强策略, 缓解由于信息减少而导致的训练不稳定性.
当前方法能够有效地为视频中的线稿上色, 保持与参考角色设计的高度保真度, 并确保帧间的时序一致性. 即使这些线稿在比例, 姿势和动作上与参考设计有很大差异, 单个参考角色图像可以用来为不同片段中出现的相同角色的线稿上色.
方法
动机和pipeline设计
总结了SOTA在处理实际动画制作场景时的不足, 并设计了模块来克服这些问题.
角色设计图和输入草图之间的细节对不上. 现在很多自动上色工具都默认一个前提——你给的"参考图"必须和动画草图的第一帧"完全重合". 但如果参考图不是第一帧, 而是从另一个角度画的角色设计,它就不知道怎么把设计图里的颜色准确"搬"到草图的对应位置上, 结果颜色涂错, 细节丢失. 为了解决这个问题, 作者开发了一个新方法: 用一个"对应关系引导的控制模块", 先把设计图和草图的"特征对齐", 再把设计图的颜色信息精准转移到草图上, 这样即使参考图不是第一帧, 也能自动正确上色(3.2节).
降级与二值化草图. 以往的方法通常依赖于使用学习的神经网络从彩色图像中提取的草图, 这些非二值化的草图虽然肉眼不可见, 但包含了从原始彩色图像中泄露的不必要颜色信息. 颜色泄漏导致效果不佳, 为了解决这个问题, 通过在训练中采用二值化草图并应用背景增强来模拟实际生产条件, 以提高鲁棒性(3.3节)
依赖密集草图作为条件. 以前的方法通常需要密集的草图来保持时间一致性, 成本高, 提出了稀疏草图训练方案(3.4节).
pipeline设计. 3D-Unet用于视频生成, 显式地提取了对应的特征点并构建了点图, 实现将参考角色设计与草图之间的对应关系注入, 数据集为Sakuga-42M数据集中的长视频.
对应引导的着色
核心目标是让计算机参考一张彩色参考图像, 给一段视频的每一帧自动上色, 确保上色后的颜色与参考图像一致.
训练阶段. 1)用现成的工具(LightGlue+SIFT)在"参考图像"和"训练视频的第一帧"之间找到相同的特征点, 这些点叫“匹配关键点”. 2)根据这些匹配点, 生成"点图"——本质上是一张和图像一样大的"坐标标签图", 匹配的位置标记相同数字, 不匹配的位置标记0. 3)用另一个跟踪工具(Co-Tracker)跟踪这些关键点在视频每一帧的位置, 为每一帧都生成一个点图, 最终得到一个"点图序列", 记录了参考图像和视频中每一帧的对应关系. 4)把参考图像和这个点图序列一起输入模型, 模型通过点图就能知道: 视频某一帧的某个位置, 对应参考图像的哪个位置, 从而提取参考图像的颜色信息来上色.
推理阶段. 改用"语义级匹配"工具, 先用X-Pose在参考图像里提取关键点, 再用DIFT(基于扩散模型的特征匹配工具)在草图里找到对应的关键点.
二值化和背景对齐
把像素值大于200的点(接近白色)全变成255(纯白), 其余变成0(纯黑), 得到一张只有黑白两色的图. 用这种纯黑白线稿作为模型的"输入条件"时, 背景和前景中的大面积白色区域在图像里都是纯白, 模型分不清哪个是"该上色的角色", 哪个是"不该上色的背景". 解决方案是训练时随机把参考图(带颜色的角色图)的背景去掉(50%概率), 用现成的背景移除工具实现.
稀疏素描训练
动画制作通常需要画出很多中间帧的素描, 但有些动作很简单, 画太多中间帧太麻烦, 于是提出"稀疏素描训练"策略. 先用所有中间帧的完整素描训练模型, 训练完成后, 不再给中间帧的完整素描, 只给"关键点"信息.
训练时, 中间帧的关键点是通过工具从真实视频中跟踪出来的, 而推理时, 只需要在起始和结束素描上找到对应的关键点, 让它们线性插值就能生成中间轨迹. 为了让模型重点处理"重要动作", 在稀疏训练时会随机选最多5个关键点(对应5条运动轨迹), 运动幅度大的点更容易被选中——这样模型就能用最少的素描信息, 生成平滑的中间动画了.
实验
Sakuga-42M数据集, 包含约150k个动画剪辑, 排除少于50帧的片段, 第一阶段使用所有帧的草图, 在256×256分辨率下训练100k步(AdamW优化器, 学习率1×10⁻⁵), 随后在512×320分辨率下微调10k步, 第二阶段移除中间帧草图, 使用关键点插值引导, 训练100k步. 测试集从10个不同时代和风格的动画中随机选择200个剪辑, 提取对应角色设计图像作为参考图像, 在16块A100上训练5天.
实验证明AniDoc在着色质量, 时序一致性和角色保持方面显著优于现有方法, 消融研究验证了对应匹配, 二值化及背景增强的必要性. 模型支持稀疏输入和灵活参考, 但需进一步解决跨对象和服装变化的泛化问题.