FoldingAgent:从演示视频推断参数化折纸折叠程序 FoldingAgent: Inferring Parametric Origami Procedures from Demonstration Videos
用VLM智能体联动折纸模拟器、批评家与回滚机制,从教学视频还原可执行折叠程序。
前置知识
Pureland 折纸
由 John Smith 于 1980 年提出的折纸流派,规定每次只允许沿一条直线折痕做一个山折或谷折,辅以 unfold(展开)、rotate(旋转)、flip(翻面)三种操作,不允许多层齐折等复杂技法。它对初学者友好,且保证每个中间态都是平坦铺叠的多边形面组合,使几何表示与模拟大幅简化,同时保有可观表达力。
本文的任务定义、五原语动作空间与整个 PurelandFold 基准都构建在 Pureland 约束之上;只有理解「一次一折、必须平折」这一限制,才能理解作者为何只需 5 个原语动作就能覆盖全部 27 段评测序列。
折痕图(CP)与 FOLD 数据结构
折痕图是把成品纸摊平后标注全部山线/谷线的静态、与折叠顺序无关的表示,是传统计算折纸方法的标准输入。FOLD(Flexible Origami List Datastructure)是 Demaine 等人 2016 年提出的 JSON 交换格式,用顶点、边、面加每条边的标签(B 边界/F 平/M 山/V 谷)描述折纸,已被众多设计与模拟工具采用。
本文的状态表示 $S=(V,F,E,O,L)$ 直接扩展 FOLD;主消融基线 VLM-CP 就是在标准 FOLD 折痕图上做预测。理解这两者是看懂表示设计动机与对比实验的前提。
平坦可折叠性定理(Maekawa / Kawasaki)
判断一组折痕能否把纸平整折起(所有层面共面堆叠)的组合几何性质。Maekawa 定理要求每个内部顶点满足 $M - V = \pm 2$,即山线与谷线数量之差为 2;Kawasaki 定理要求顶点周圈交替角之和为 $\pm 180°$。两者是折痕图可平折的经典必要条件,常用于快速物理可行性检查。
这些定理构成了本文约束满足度指标 CS 的一部分,也写进了批评家的验证提示词;理解它们才能明白系统中「物理合理性验证」环节的数学基础。
VLM 智能体与工具调用(ReAct 范式)
视觉-语言模型通过原生函数调用接口,在 ReAct 式「推理-行动」循环中交替产生思考与工具调用:查看图像、执行操作、请求外部验证,再把工具返回结果纳入上下文继续推理,直到完成任务。该范式把大模型的通用推理能力嫁接到外部确定性系统(渲染器、模拟器、求解器)上,使其能产出可编辑、可执行的产物。
FoldingAgent 的本质就是把预训练 VLM 变成一个会调用折纸模拟器、渲染器与独立批评家的智能体;看懂工具调用循环才能理解其流水线设计、误差控制机制与成本结构。
层序(layer ordering)与平面(plane)
平折后的纸会出现大量共面叠放的面,仅靠 2D 坐标无法区分谁上谁下。层序显式记录叠放先后关系;本文以「平面」为粒度组织——由平边相连、处于同一拓扑深度、随后续折叠整体移动的最大面集合构成一个平面,层即自底向上的平面列表,作用类似 FOLD 格式的 faceOrders 字段,但粒度更粗、重算更可行。
层序是折叠模拟正确性与最终折叠态指标 FFS 的关键;理解它才能明白 fold 操作中「移动集」构造与层关系 DAG $G_P$ 更新的意义。
研究动机
折纸知识在人类社区中主要通过非结构化的视觉演示传播——分步图解和教学视频,而计算折纸的主流方法(可折性分析、逆向前设计、机器人折叠)都假设输入已经是显式结构化表示,最典型的是折痕图(CP):一种与操作顺序无关、标注了全部山线谷线的静态展开图。这造成了「人类折叠语言」与机器表示之间的语义鸿沟。直接从视频反推折叠程序异常困难:动作空间多样且复杂,从基础山折到需搬移多层的花瓣折,几何效果差异巨大,如何把人类直觉动作映射为计算操作并不显然;演示者的手经常遮挡纸面,随模型推进自遮挡层不断累积,纸的内部配置从单一机位根本不可见;折叠之间还存在长程依赖——一次动作可同时搬动许多层,并在远离可见折痕处诱发新折痕,因此每一步都必须结合纸的完整累积状态来解读。现有视觉方法或局限于干净图解的折痕识别、受控机位的状态分类,或如 Kato et al. 2025 只能从前后帧对预测单条折痕,不支持 unfold、rotate、flip 等完整 Pureland 动作词表,更无法输出多步可执行程序。
本文的目标是本文提出并形式化一个新任务:给定教学折纸视频的关键帧序列 $\{I_1,\dots,I_K\}$(每帧展示演示者与纸的一次有意义交互),推断出参数化、可执行的折叠程序——即每个关键帧处纸面的几何状态 $\{S_1,\dots,S_K\}$(含顶点 2D 坐标、边标签、面朝向与层序),以及把每个状态转换为下一个的 Pureland 动作序列 $\{a_2,\dots,a_K\}$。目标是把人类通过非结构化视觉演示分享的折纸知识,转化为机器可重渲染、可编辑、可分析、可在模拟器中直接执行的正式表示,为下游应用铺路:让机器人直接从网上数千个教学视频学习复杂纸张操作技能、支撑折纸生成模型与自动化设计。为保证任务可解且可评估,作者把范围限定在 Pureland 折纸(每次一个平坦折叠,配合 unfold/rotate/flip),并构建了带真值几何与逐步动作标注的新基准 PurelandFold,系统评估程序级重建的物理有效性与几何保真度。
与已有工作不同的是,本文的独特切入是「零样本 VLM 智能体 + 领域专用工具」的逆向视觉范式,而非端到端网络或微调。与预测静态折痕图的常规路线不同,作者定义了全新的参数化动作空间并配备确定性模拟器,让模型在「提出动作→模拟执行→渲染自查→批评家验证→必要时回滚」的闭环中逐帧推进,每个决策都基于此前操作累积出的真实状态。与 Learn2Fold 从给定折痕图出发生成折叠序列的方向正好相反;与 VIGA 这类通用 3D 场景生成智能体不同,本文把「单张连通纸、山/谷标签、层叠顺序、平折约束」直接编码进表示与动作空间本身。三个关键设计洞察:把验证职责分离给独立的批评家 VLM,防止智能体自我合理化错误;用检查点回滚协议对抗多步折叠固有的长程误差复合;用有界探索(每帧 $C=5$ 次尝试、选择器兜底、已解决前缀锁定)保证搜索过程和成本可控。作者认为这是首个把非结构化折纸视频转成可执行程序化表示的闭环系统。
核心方法
直觉上,与其让模型一口气猜出整段折纸程序,不如让它像人类学习者一样「边折边看」:每一步先看前后两帧照片,提出一个或一串模拟器动作,把模拟结果渲染成与照片同风格的图示,交给独立批评家对照判分;通过则保存检查点进入下一帧,不通过则换参数重试或回滚到更早的检查点重来。技术路线上系统由四部分构成: 扩展自 FOLD 格式的状态表示 $S=(V,F,E,O,L)$——在顶点、面、边之外,新增每面正/反面朝向 $O$ 与自底向上的平面层序 $L$; 五原语参数化动作空间 add_vertex、fold、unfold、rotate、flip,配套确定性几何模拟器 Origami-Sim,满足 $\text{Origami-Sim}(S_{t-1}, a_{t-1}) = S_t$; 工具库(折纸动作/查看/检查点/验证四类)与确定性 Controller 执行层; 预训练 VLM(Gemini 3.1 Pro Preview)驱动的智能体,外加另一个独立 VLM 充当视觉批评家。整个过程零样本、不微调,以顺序方式逐关键帧推进。
核心创新是把「从视频逆向几何」重构为一个由物理模拟器接地的序列决策问题,并配上系统性的自我纠错机制。与已有方法的本质区别有三: 以可执行动作而非几何本身作为预测单元——模型只输出符号化动作,几何由确定性模拟器推导,保证每一步物理可行,且预测误差被压缩到低维参数(哪条边、分数位置、方向)上,而不是整张网格的坐标; 状态条件化的顺序决策——每个动作都在此前全部操作累积出的状态上做出,天然编码「此刻哪层在上」的层间长程依赖,而这正是与顺序无关的折痕图原理上无法表达的信息; 提议者-验证者分离加可回滚检查点——批评家是另一个 VLM,对「源/目标照片 + 源/候选渲染」四图网格做关系式比较(判断照片对与模拟器对是否表达了同一几何变化,而非孤立打分),返回 Match/Mismatch/Extreme Divergence 三级裁决并附差异列表;配合 save/restore_checkpoint 与 generate_checkpoint_overview,智能体能自主定位最早漂移的检查点并回滚重做。这是长序列折叠中对抗误差复合的关键机制。
方法步骤详情
完整流程: 人工提取视频关键帧 $\{I_1,\dots,I_K\}$,模拟器初始化为平放正方形 $S_1$,先 save_checkpoint(1)。 对每个转移 $I_{t-1}\to I_t$,智能体用 view_frame 看两帧照片,无法消歧时调 observe_movement 看帧间运动条带。 发射动作调用:add_vertex($e,p$) 在边 $e$ 的分数位置 $p\in[0,1]$ 插入新顶点;fold($e,d$) 沿边 $e$ 以方向 $d\in\{+1,-1\}$ 折叠;unfold($e$) 留折痕记号;rotate($\theta$)、flip($\alpha$) 重定向。模拟器执行 fold 时分裂跨折线 $\ell$ 的面与平面、构造移动集、把移动集顶点关于 $\ell$ 镜像反射、更新层关系 DAG $G_P$,返回新状态 JSON;非法调用被 Controller 按 schema 拦截回传。 调 render_current 得到正/反面着色、实线折痕、虚线记号的图示自查。 调 ask_critic:批评家收到四图网格(两帧照片+两帧渲染)与几何 JSON,输出 Match/Mismatch/Extreme Divergence 裁决;Match 则 save_checkpoint($t$) 前进,Mismatch 换参数重试,三次失败后用 generate_checkpoint_overview 定位最早漂移并 restore_checkpoint 回滚。 每帧预算 $C=5$ 次尝试,耗尽则由选择器挑最像目标的候选并锁定前缀;全序列上限 300 次工具调用。输出为动作序列、中间状态图与累积折痕图。
技术新颖性
新颖性体现在四个层面。任务层面:首次提出「视频→程序化折叠序列」的逆向折纸问题——Learn2Fold 从结构化折痕图出发、方向相反,Kato et al. 2025 只做受控设定下的单步折痕预测,VIGA 等通用 3D 智能体完全没有纸张连通性与层序概念。表示层面:为视觉任务扩展 FOLD——显式建模 rotate/flip(纯几何分析不需要,但演示者会转纸翻面)、用「边」而非任意直线锚定 fold 以消除多层歧义、新增面朝向 $O$ 与平面粒度层序 $L$,使每次折叠后的层重算可解。系统层面:把 ReAct 式工具调用用于带确定性物理引擎的长期程序合成,配套批评家分离、检查点回滚、有界探索与选择器四件套管理误差与成本。评估层面:构建首个带逐步真值几何与动作标注的真实视频基准 PurelandFold,并移植 OrigamiSpace 指标与 CPD 形成程序级评估协议。消融证明每个组件都必要:表示使编译率从 8% 升至 96%,批评家把 CPD 从 268 降到 216,完整智能体再推至最优(完成率 100%、TSS 0.90、CPD 189)。
实验结果
(1) 主消融(Table 1,27 段):VLM-CP 虽完成 96% 序列但仅 8% 输出可编译,GS 0.20、CPD 363±179;VLM-S 换用本文表示后编译率 96%、GS 0.51、CPD 268±191;VLM-S-C 加批评家后 CPD 216±159;完整 FoldingAgent 全面最优:完成率 100%、编译率 96%、TSS 0.90±0.1、GS 0.58、CS 0.77±0.3、FFS 0.39、CPD 189±145。用户研究(10 段、600 判断)中 84%±5% 偏好本文胜过 VLM-S、80%±7% 胜过 VLM-S-C。(2) Fig. 8:各方法随序列进度衰减,但本文斜率最平缓、差距随复杂度增大,证明回滚抑制误差复合。(3) 跨骨干泛化(Table 2,5 段):GPT-5.5 完成 0/5→4/5(CPD 283→57);Claude 0/5→5/5(252→61);Gemini 1/5→5/5(170→49)。 (4) few-shot 劣于 zero-shot(Table 3:4/5 vs 5/5,CPD 124 vs 49)。(5) VIGA 对比:末帧重建 96 次迭代后把单张纸碎成 20 个不连通组件;逐帧编辑第 2 次折叠即停滞。定性上可处理 13–14 帧长序列与多处手部遮挡。成本:每序列平均 140 次查询、400 万输入 token、$8.9、31 分钟;批评家准确率约 88%。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 折纸序列重建(PurelandFold,27 段) | 序列完成率 #Comp ↑ | 100% | VLM-CP 96% / VLM-S 85% / VLM-S-C 85% | 唯一完成全部序列 |
| 折纸序列重建 | 编译有效率 CV ↑ | 96% | VLM-CP 8% | +88 个百分点 |
| 折纸序列重建 | 拓扑结构相似度 TSS ↑ | 0.90±0.1 | VLM-CP 0.76 / VLM-S 0.79 / VLM-S-C 0.80 | +0.10(相对最强基线) |
| 折纸序列重建 | 几何相似度 GS ↑ | 0.58±0.1 | VLM-S 0.51 / VLM-S-C 0.48 / VLM-CP 0.20 | +0.07 |
| 折纸序列重建 | 约束满足 CS ↑ | 0.77±0.3 | VLM-S 0.53 / VLM-S-C 0.49 / VLM-CP 0.20 | +0.24 |
| 折纸序列重建 | 最终折叠态 FFS ↑ | 0.39±0.3 | VLM-CP 0.30 / VLM-S 0.21 / VLM-S-C 0.19 | +0.09 至 +0.20 |
| 折纸序列重建 | 折痕图相异性 CPD ↓ | 189±145 | VLM-CP 363±179 / VLM-S 268±191 / VLM-S-C 216±159 | 相对 VLM-S-C 降 12.5%,相对 VLM-CP 降 48% |
| 人类感知相似度用户研究(10 段 / 600 次判断) | 偏好本文渲染的比例 | 84%±5% vs VLM-S;80%±7% vs VLM-S-C | VLM-S / VLM-S-C 渲染 | 显著人类偏好 |
| 跨骨干泛化(5 段,GPT-5.5) | 完成数 / 平均相似度 / CPD | 4/5,0.73,57 | VLM-CP:0/5,0.37,283 | CPD 降 80% |
| 跨骨干泛化(Claude Opus-4.8) | 完成数 / 平均相似度 / CPD | 5/5,0.75,61 | VLM-CP:0/5,0.38,252 | CPD 降 76% |
| 跨骨干泛化(Gemini 3.1 Pro Preview) | 完成数 / 平均相似度 / CPD | 5/5,0.79,49 | VLM-CP:1/5,0.55,170 | CPD 降 71% |
| 与通用 3D 智能体 VIGA 对比(末帧重建) | 纸张结构正确性(定性) | 单张连通纸、多层叠放正确 | VIGA:96 次迭代后碎成 20 个不连通组件、仅 2 个重叠层 | VIGA 完全违反纸张基本约束 |
局限与改进
作者承认的局限:性能高度依赖 VLM 的推理能力,被演示者或累积纸层严重遮挡的折叠仍难以从原始关键帧准确识别;无法处理复合同时动作(如边旋转边翻面),因为这类动作打破了参数化动作空间的顺序假设;范围限于 Pureland 折纸,扩展到高级技法虽概念可行,但需扩充动作空间并可能需要当前尚不具备的更强视觉-语言推理。我的补充观察:关键帧是人工提取的,端到端自动化尚缺一环;批评家约 88% 的准确率意味着每步约 1/8 概率放行错误(Fig. 7 中第 5→6 帧的错误折痕被批准并传播到第 7 帧),虽可回滚但显著推高成本;每序列 8.9 美元、平均 31 分钟、400 万输入 token,难以规模化到数千视频的挖掘;评测指标全部为作者自行实现(OrigamiSpace 与 CPD 均无公开代码),存在实现偏差风险;数据集仅 27 段、全部自拍自标注、来源单一(OrigamiWay),跨拍摄风格与跨折纸流派的泛化未验证;有界探索失败时选择器只能在坏候选中挑选且随后锁定前缀(Fig. 12 底行),错误会被固化;智能体倾向复用既有顶点而非 add_vertex,导致折翼比例系统性偏差(附录 F.1)。
独立分析的弱点
(1) 成本与速度:平均 31 分钟、8.9 美元/序列,仅处理 OrigamiWay 60 个模型就需约 534 美元与 31 小时,还不含人工关键帧提取。改进方向:用智能体轨迹蒸馏微调小模型做「一步直通」预测,仅当批评家判 Mismatch 时才升级到完整循环。(2) 批评家误判传导:88% 准确率意味着假阳性会进入检查点(Fig. 7)。改进方向:双批评家投票,或加入 Kawasaki/Maekawa 定理与层序一致性的符号校验。(3) 动作空间局限:不支持复合动作与多层齐折。改进方向:引入组合宏动作,或允许并行发射多个 fold 并支持「抓取子层堆」。(4) 选择器锁定风险:预算耗尽后前缀被永久锁定,选中错误候选即固化(Fig. 12)。改进方向:允许高成本解锁重开,或让选择器借助几何分析。(5) 顶点放置精度:倾向复用既有顶点导致折痕与折翼比例错误。改进方向:渲染中高亮「复用 vs 新增」差异,或强制中点偏移折痕先 add_vertex。(6) 关键帧依赖人工提取,可引入基于手部动作或外观突变的自动检测。
未来方向
作者提出的方向:扩展到更高级折纸技法(需扩充动作空间、依赖更强的视觉-语言推理);把推断出的参数化程序作为中间表示,让机器人从网络教学视频学习纸张操作技能;构建交互式教学系统;支撑自动化生成式设计。基于本文成果可自然延伸的方向: 把「提议-模拟-批评-回滚」框架迁移到其它形变材料的逆向任务,如 4D 打印与自折叠结构的形态推断; 把折叠程序作为可控条件输入折纸生成模型,实现「视频→程序→结构变体生成」的编辑流水线; 研究神经批评家与符号验证器(平折定理、层序约束、Flat-Folder 编译)的最优配比,目标是把每步验证准确率从 88% 提到接近 100% 以减少回滚开销; 用 beam-search 式检查点树让多个假设路径并行探索,替代单路回滚,降低对单一批评家的依赖; 在更大、跨来源、含非 Pureland 序列的公开基准上验证,并统一逐步真值标注协议; 把最终折痕图接入 OrigamiSimulator 等物理引擎预测应力与刚折性,打通「视频→程序→工程分析」链路,服务可展结构设计。
复现评估
项目页(maya-moriya.github.io/origami-page)公开了全部重建结果、每条智能体交互轨迹的可视化仪表盘,以及 PurelandFold 数据集链接,透明度较高。附录 D 完整公开了智能体、批评家、选择器与 VIGA 的全部提示词——这是复刻系统行为的关键资产;附录 B.3 给出模拟器 fold 操作的算法级描述(面/平面分裂、移动集构造、镜像反射、层关系 DAG 更新),附录 E.3 给出全部指标的公式定义。复现所需算力极低:无需任何训练,只需调用 Gemini 3.1 Pro Preview 的 API;但按报告成本跑完 27 段序列约需 240 美元与约 14 小时。主要难点: 模拟器需自行实现,平面分裂与「夹心」移动集判定的边界情况容易出错; 指标需按公式重新实现(OrigamiSpace 与 CPD 无官方代码); 数据集依赖作者自拍视频与人工标注,第三方难以核对标注一致性; 依赖商业闭源模型,模型版本更新可能引起行为漂移。总体:有工程能力的团队照提示词与算法描述复刻一个可用版本是可行的(难度中等),但逐指标对齐论文数字较难。
论文图表
论文题图:上排为教学视频关键帧,下方对每个转移展示当前估计的纸面几何、预测的模拟器动作(如 rotate(45°)、fold([1,3],1)、add_vertex(0.75,[1,7])、unfold())以及随之累积的折痕图,最终得到参数化、可重渲染、可编辑的程序。
一张图完整呈现任务定义(视频→可执行程序)与系统输出形态,是理解全文的问题陈述。
典型失败案例:上两行为源/目标关键帧与几何——左例中智能体复用既有顶点而非新增顶点,导致折痕位置与折翼比例错误;右例中手部遮挡使目标折叠产生歧义、重建出错;下行为预算耗尽时选择器面对 $C=5$ 个全部欠佳的候选仍必须挑选其一,错误随之进入后续步骤。
揭示方法的系统性失败模式(顶点复用偏置、遮挡歧义、选择器固化坏前缀),直接对应局限性与改进方向。