5分钟跑通 ToonCrafter:两帧静态图生成一段卡通动画
【免费下载链接】ToonCrafter[SIGGRAPH Asia 2024, Journal Track] ToonCrafter: Generative Cartoon Interpolation项目地址: https://gitcode.com/GitHub_Trending/to/ToonCrafter
上次接了个卡通 demo 的单,客户只甩来两张设计稿,中间一句"你们看着补"。手绘能补到地老天荒,我直接跑 ToonCrafter——开源的卡通动画生成工具,干的就是图像插值:喂它首尾两帧,还你一段 16 帧的过渡动画,装好环境就能用。
🎬 先看图:两帧进,16帧出
下面两组就是全部输入:左边起始帧,中间结束帧,右边是模型自己补出来的动画,两帧图生成动画就这么直接。
| 输入起始帧 | 输入结束帧 | 生成的 16 帧动画 |
|---|---|---|
第一组里人物的表情和光效过渡得很顺,第二组这种大动作也没崩。这两组都是仓库里的官方示例,你本地跑出来大概就是这个水平。
🧠 30秒懂原理:它凭什么能补帧
扩散模型的思路有点反直觉:训练时,它先学会"把一张图加噪,加到只剩纯雪花";再反过来练"从雪花一步步去噪,把画面还原出来"。推理时就从一团噪声出发,去噪几十轮,每一轮都把画面往"更像一张合理的卡通图"上修一点,修完一段动画就"长"出来了。
说白了,它不是逐张"猜"中间帧,而是把整个视频当成一大团噪声一起去噪,首尾两帧全程盯着它,所以动作才不会飘。ToonCrafter 站在图生视频的现成先验上,又教会模型两件事:首尾两帧当"钉子"钉死不许动,中间过程顺着文字提示自由发挥。出自 SIGGRAPH Asia 2024 的论文,代码和权重全开源,不用训模型,下载权重直接推。
🚀 跑起来:环境、权重、出片
第一步,克隆仓库 + 装依赖:Python 版本得是 3.8.5,依赖是按它锁的,高版本容易翻车。
git clone https://gitcode.com/GitHub_Trending/to/ToonCrafter && cd ToonCrafter conda create -n tooncrafter python=3.8.5 && conda activate tooncrafter pip install -r requirements.txt第二步,权重下载放哪:去 Hugging Face 搜 ToonCrafter,把 model.ckpt 放进这个固定路径,放错位置脚本会直接报错找不到权重。
mkdir -p checkpoints/tooncrafter_512_interp_v1第三步,出片:跑推理脚本,默认读 prompts/512_interp/ 里的示例图对和 prompts.txt 的文字提示,结果存进 results/。512×320 的分辨率,做 demo、发片都够用;多卡机器记得改脚本里的CUDA_VISIBLE_DEVICES=0。
sh scripts/run.sh不想敲命令也有路:仓库自带 Gradio 界面,运行python gradio_app.py,浏览器里上传两张图就能出片。
🔧 效果不对调哪里:只动这三个参数
都写在 scripts/run.sh 里,改完重跑即生效:
| 参数 | 默认值 | 调大 / 调小会怎样 |
|---|---|---|
| ddim_steps | 50 | 采样步数。调小出片快、细节糙一点;调大更顺滑,但更慢更吃显存 |
| frame_stride | 10 | 相当于帧率(FPS)。越小两帧之间运动幅度越大,官方建议 5~30 |
| seed | 123 | 随机数种子。不动它结果就固定;抽到不满意的一版,换个数字重跑 |
硬件一句话带过:官方在 A100 上测的 512×320、16 帧,消费级显卡显存吃紧时,先降 ddim_steps 再说话。
翻车了怎么办
- 目前一次最多出 16 帧,这是模型上限,别想着直接出长片。
- 生成带随机性,官方 README 也明说成功率不保证。崩了就换个 seed,别死磕一张图。
- 输入两帧差异太大(换场景、换构图)容易出鬼影,两帧越"像同一时刻"越稳。
🖼️ 换自己的图,两步收工
把 prompts/512_interp/ 里的示例图换成你自己的首尾两帧,顺手把 prompts.txt 里的英文描述改成你画面里的内容,再敲一句sh scripts/run.sh,新动画就躺在 results/ 里。
文件名排序很重要:脚本按名字排序后两两配对,第一张当起始帧、第二张当结束帧,命名别乱来。
README 里还展示了一档草图引导玩法(1.2 节):给中间过程加几笔线条,运动走向你说了算。
免费卡通视频生成这事,门槛就剩一块还行的 NVIDIA 显卡。下次客户再说"中间帧你们看着补",直接把 results/ 里的 mp4 甩过去就行。
【免费下载链接】ToonCrafter[SIGGRAPH Asia 2024, Journal Track] ToonCrafter: Generative Cartoon Interpolation项目地址: https://gitcode.com/GitHub_Trending/to/ToonCrafter
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考