从两张关键帧到完整动画:ToonCrafter 卡通插值教程
【免费下载链接】ToonCrafter[SIGGRAPH Asia 2024, Journal Track] ToonCrafter: Generative Cartoon Interpolation项目地址: https://gitcode.com/GitHub_Trending/to/ToonCrafter
ToonCrafter 是一个面向卡通动画插值的开源工具,出自 SIGGRAPH Asia 2024:输入两张静态卡通图,它会自动生成 16 帧的平滑过渡动画,输出 512x320 的视频。它基于预训练的图到视频扩散模型实现,还支持用草图引导运动、给黑白线稿上色。下面我会带你从环境搭好到跑起来一步步走通,最后再讲几个进阶玩法和值得记的参数。
🎬 先看效果:卡通帧间插值长什么样
最直观的方式是直接看官方示例。两张关键帧、一段动画,中间所有帧都由模型生成:
| 起始帧 | 结束帧 | 生成动画 |
|---|---|---|
再看一组例子,人物动作在动画里保持连续,没有明显的闪烁或跳帧:
🚀 快速上手:三步搭好 ToonCrafter 环境与模型
第一步,把仓库克隆到本地并进入项目目录,后续所有命令都以这个目录为基准。
git clone https://gitcode.com/GitHub_Trending/to/ToonCrafter cd ToonCrafter第二步,创建独立的 conda 环境并安装依赖。官方要求 Python 3.8.5,直接拿高版本 Python 容易遇到兼容性问题。
conda create -n tooncrafter python=3.8.5 conda activate tooncrafter pip install -r requirements.txt第三步,从 Hugging Face 下载 ToonCrafter_512 模型权重(一个 model.ckpt 文件),放到固定目录,推理脚本只认这个路径:
mkdir -p checkpoints/tooncrafter_512_interp_v1把 model.ckpt 放进刚建的目录即可。这一步不能省,后面两种启动方式都依赖它。
🖥 两种运行方式:命令行与 Gradio 的最短启动命令
命令行方式,一条命令跑完。输入与参数都固定在脚本里:输入图放在prompts/512_interp/目录(成对的起始帧、结束帧加 prompts.txt),结果输出到results/目录。适合批量出片和参数固定的实验。
sh scripts/run.shGradio 界面方式,同样一条命令。启动后在浏览器打开本地地址,直接上传图片,拖动滑块调整步数、引导强度和随机种子。适合随手玩、反复对比参数。
python gradio_app.py🎨 进阶玩法:草图引导与草图上色的三个用法
如果只用关键帧插值还不够,可以给生成过程加一层"控制"。仓库里自带了官方示例:
稀疏草图引导。画几帧稀疏的草图,生成动画的动作会跟着草图走。适合需要精确控制角色运动轨迹的场景。
参考图草图上色。黑白草图配一张参考彩色图,模型输出配色一致的彩色动画。适合快速验证场景设计稿。
卡通草图关键帧插值。两张黑白草图帧直接插值成动画,不用上色,适合前期分镜阶段检查动作流程。
⚙️ 参数与源码速览:最快调出推理的参数
推理脚本里调这三个参数最见效:
--interp:打开生成式帧插值模式,输入两张图时必须带上;--ddim_steps:默认 50 步,调小能直接缩短推理时间,代价是画质略降;--frame_stride:控制帧间动作幅度,推荐范围 5-30,值越小动作越大,模型本身按 FPS=5 训练。
配置文件在 configs/inference_512_v1.0.yaml,分辨率、模型行为等都写在这里。核心模型代码集中在 lvdm/models/ 目录,autoencoder.py 负责图像压缩,ddpm3d.py 是 3D 扩散模型主体,想读源码从这里入手。
❓ 常见问题与限制:帧数上限、推理耗时与效果不佳时怎么办
Q:最多能生成多少帧?分辨率多大?A:当前版本上限 16 帧,分辨率 512x320。想更长需要等项目后续更新。
Q:生成一次要多久?A:取决于 GPU 性能和 DDIM 步数。官方参考是 A100 跑 50 步,减少步数可以按比例缩短时间。
Q:生成结果闪烁、动作不对怎么办?A:官方明确提示成功率不作保证,生成式视频先验方差较大。换个随机种子、调整 frame_stride,或换一组输入图重试;复杂场景可能要多试几次。
Q:能拿来做商用吗?A:它属于研究用途的开源项目,不是商业产品。使用时请遵守当地法律法规,开发者不对滥用行为负责。
ToonCrafter 是 SIGGRAPH Asia 2024 Journal Track 的生成式卡通插值项目,定位是研究探索而非生产级工具。仓库对社区开放,遇到 bug 或有功能想法,欢迎直接提交 PR 或提 issue。
【免费下载链接】ToonCrafter[SIGGRAPH Asia 2024, Journal Track] ToonCrafter: Generative Cartoon Interpolation项目地址: https://gitcode.com/GitHub_Trending/to/ToonCrafter
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考