乐于分享
好东西不私藏

让AI学会“不穿模”:CoInteract如何用双流训练逼出物理直觉

让AI学会“不穿模”:CoInteract如何用双流训练逼出物理直觉

CoInteract: Physically-Consistent Human-Object Interaction Video Synthesis via Spatially-Structured Co-Generation

你有没有发现,现在的视频生成模型画人已经相当逼真了,可一旦让人拿起东西——比如演示一个水杯、拆个快递——立刻原形毕露:手指穿过杯壁、物体悬浮在手心、脸在快速转头时糊成一团。这几乎是所有 RGB-centric 扩散模型的通病:它们从像素里学到的只是外观关联,根本没有“物体表面不可穿透”这种物理概念。

清华大学与阿里合作的这篇 CoInteract,直接冲着这个痛点来了。他们没走传统那条“先检测关键点再约束生成”的绕路,而是在 Diffusion Transformer 骨架上同时训练两条流——一条正常生成 RGB 视频,另一条生成纹理剥离的“交互结构图”——并设计了一套专家路由来专门照顾手和脸。最妙的是,结构流只在训练时用,推理时一卸了之,零额外开销。

下面我们就来仔细拆解,他们是怎么让模型在看不见结构图的情况下,依然老老实实遵守物理规则的。

为什么现有方法总在“穿模”上翻车

先简单梳理一下现状。音频驱动的数字人已经能做出相当自然的说话动作,但一旦从“说话”升级到“演示产品”,难度陡增。目前搞 HOI 视频合成的路子大体分两种:

• 多条件控制流:提前提取每一帧的人体姿态、物体坐标等信息,作为条件喂给扩散模型。这需要繁重的预处理,泛化性也成问题,换个没见过的东西就容易崩。

• 多参考图注入流:直接给模型人物参考图和产品参考图,让模型自己学着组合。灵活是灵活,但缺乏显式的交互几何约束,结果就是手和物体经常出现穿模。

这些问题的根源,在于扩散模型从像素级损失里学不到 3D 空间关系和身体拓扑。它看到的只是“这里有一片肤色像素,那里有一片金属色像素”,至于肤色像素该停在金属像素前面还是后面,它没有先验。

CoInteract 的核心思路很朴素:与其让模型去猜,不如在训练时直接告诉它“正确的交互结构长什么样”。

核心方法:双流共生成 + 人体感知 MoE

图1: 框架总览:双流 RGB-HOI 共生成与 Human-Aware MoE,HOI 分支推理时移除。

上面这张架构图把 CoInteract 的两大创新点串在了一起。左侧是双流输入:正常的 RGB 视频潜变量和辅助的 HOI 结构流潜变量,一起送进共享的 DiT 模块。右侧是插入在每个 DiT 块里的 Human-Aware MoE,通过空间监督的路由器把手和脸区域的 token 分发给专门的轻量专家。

我们分别展开。

双流共生成:给模型配一个“结构教练”

这里的设计非常巧妙。所谓 HOI 结构流,是把原始视频中的人物部分替换成人体网格投影(类似剪影),而物体部分保留原始 RGB 外观。这样一来,结构流清晰标出了人体轮廓与物体之间的接触边界,但去除了纹理、肤色等外观信息。

训练时,RGB 流和 HOI 流共享同一个 DiT 骨干的所有参数(注意力、FFN 等),只在自适应层归一化部分各自维护一套 scale/shift 参数。损失函数是两路的流匹配损失之和:

直觉上,这相当于让模型同时学两件事:一是“这个场景看起来应该是什么样”(RGB 流),二是“人和物体的空间关系应该怎么摆”(HOI 流)。由于骨干共享,模型被迫在内部形成对交互几何的表征,而不能只依赖外观捷径。

但这里有一个关键问题:如果两路一直双向注意,推理时就必须保留 HOI 分支,否则 RGB 流会因为缺少 HOI token 而输出异常。CoInteract 用了一个两阶段训练策略来解决。

图2: 两阶段训练策略:Stage1 全注意力耦合双流,Stage2 非对称掩码使 RGB 独立。

如上图所示,Stage 1 采用标准双向注意力,让两路 token 充分交互,快速建立 RGB 与结构之间的对应关系。到了 Stage 2,他们引入一个非对称的注意力掩码:

这个掩码的含义很清晰:RGB 查询只允许看 RGB 键,不能看 HOI 键;但 HOI 查询可以看所有 token,包括 RGB。这带来两个好处:

1. RGB 通路变得完全自给自足,推理时直接丢弃 HOI 分支即可,零额外计算。

2. HOI 损失通过 HOI→RGB 的交叉注意力回传到共享骨干参数,相当于 RGB 流在训练中“被动”吸收了结构监督。

3D RoPE:用坐标编码注入时空先验

要把运动帧、静态参考图、双流潜变量这么多异质输入塞进同一个 Transformer,位置编码必须精心设计。CoInteract 用 3D 旋转位置编码给每个 token 赋予 (h, w, t) 坐标,并做了几个关键设定:

• 双流空间对齐:RGB 和 HOI 在宽度维度上拼接,RGB 分配 w ∈ [0, W],HOI 分配 w ∈ [-W, 0],共享高度和时间索引。这样模型可以通过相对位置距离学习跨流对齐。

• 时间因果:历史运动帧用负时间索引(t ∈ -N, , -1\),生成帧用正索引,让模型自然理解时间先后。

• 参考图远场锚定:静态参考图被映射到极远的时间位置(如 t=30,31),迫使模型把它们当成全局身份锚点,而非相邻帧。

这种显式的时空结构化编码,比让模型自己从数据里硬学位置关系要高效得多,尤其对于需要精确时空对齐的 HOI 任务。

Human-Aware MoE:手和脸的“专科门诊”

即使有了结构流监督,手和脸这些高频细节区域仍然容易出问题。CoInteract 在 DiT 的 FFN 层引入了一个轻量的 Mixture-of-Experts 模块。

图3: Human-Aware MoE 路由机制:空间监督路由器将头、手 token 分发给区域专家。

这个 MoE 包含四个专家:一个共享专家直接复用原 DiT 的 FFN 作为捷径,外加三个轻量专家——Head、Hand、Base——每个只是隐层维度 256 的小 FFN。路由器是一个两层的 MLP,训练时通过人脸和手部检测框提供空间监督:

注意那个 sg[·] 是 stop-gradient 操作,目的是防止路由优化干扰 DiT 的主干表示学习。总损失为:

这套设计的聪明之处在于,它用极小的参数增量(仅 1.04× 推理开销)换来了手部清晰度和人脸身份一致性的显著提升。而且因为路由是空间监督的,不像普通 MoE 那样需要负载均衡损失,训练更稳定。

数据是怎么准备的

图4: 数据预处理流程:从原始视频构建成对的 RGB 与 HOI 结构表示。

上图展示了从原始 HOI 视频到训练数据的完整管线。首先用 Qwen-Edit 解耦人物和产品,生成独立的参考图,再经过一个验证模块过滤不匹配的三元组。几何监督方面,用 SAM3 提取物体掩码,用 SAM3D-body 恢复人体网格并投影到图像平面,融合后形成纹理剥离的 HOI 结构流。最后,RGB 视频和 HOI 结构流通过预训练 VAE 编码到共享潜空间。

这套流程保证了结构流的像素级对齐,让模型能在训练中精确学习交互边界。

实验结果:数字会说话

论文在 12K 高质量 HOI 视频片段上训练,测试集 50 个片段覆盖多种品类和未见身份。对比方法包括 AnchorCrafter、Phantom、Humo、VACE、InteractAvatar、SkyReels-V3 等近期工作。

定量对比

方法
AES↑
IQ↑
Smooth↑
VLM-QA↑
HQ↑
DINO_id↑
DINO_obj↑
FaceSim↑
Sync_conf↑
AnchorCrafter
0.448
0.643
0.9743
0.22
0.596
0.538
0.453
0.487
Phantom
0.579
0.724
0.9916
0.50
0.650
0.654
0.595
0.593
Humo
0.565
0.741
0.9919
0.56
0.664
0.643
0.629
0.618
5.71
VACE
0.530
0.733
0.9904
0.46
0.627
0.623
0.635
0.647
InteractAvatar
0.528
0.722
0.9938
0.62
0.696
0.658
0.608
0.681
5.82
SkyReels-V3
0.563
0.720
0.9861
0.44
0.626
0.637
0.564
0.569
CoInteract 0.554 0.749 0.9951 0.72 0.724 0.671 0.624 0.696 5.87

解读

• VLM-QA 上 CoInteract 拿到 0.72,比第二名 InteractAvatar 高出 10 个百分点,说明 Gemini-3-Pro 判断它的交互更合理。

• HQ(手部质量)以 0.724 领先,比去掉 MoE 的变体高出近 7 个点,验证了区域专家的有效性。

• DINO_id 和 FaceSim 均为最优,说明身份保持能力最强。

• AES 略低于 Phantom 和 Humo,但这是因为后两者倾向于“脑补”出更美观但与参考图不一致的背景,CoInteract 则忠实保留参考场景,牺牲了一点美学分换来了更高的一致性。

用户调研

24 名评估者对三个维度打分(均值排名,越低越好):

准则
AnchorCrafter
Phantom
Humo
VACE
InteractAvatar
SkyReels-V3
CoInteract
物体一致性↓
6.08
4.13
4.42
3.54
3.08
4.58
2.17
人物/背景一致性↓
6.28
4.38
4.21
3.46
2.92
4.83
1.92
交互合理性↓
6.55
4.29
3.92
3.58
3.33
4.54
1.79

解读

• 三个维度全部第一,交互合理性优势最大(1.79 vs 第二名 3.33),与 HOI 结构流的设计目标完全吻合。

• InteractAvatar 在物体一致性上表现不错(3.08),得益于 Qwen-Image 合成的初始帧质量高,但交互合理性仍不如 CoInteract,说明初始帧好不代表整个序列的物理约束能持续。

定性结果

图5: 与现有方法定性对比,CoInteract 交互保真度更高且更贴合输入提示。

上面这张对比图很能说明问题。其他方法在不同程度上出现了手-物穿模、产品外观漂移、背景偏离参考等典型失败模式。AnchorCrafter 在训练集内见过的物体上表现尚可,但遇到未见物体时身份漂移明显。InteractAvatar 虽然有强初始帧,但随着生成进行,抓取姿势逐渐变得不自然。CoInteract 则在整个序列中保持了物理上合理的交互和结构稳定。

图6: 双流共生成与 MoE 路由可视化,HOI 流与 RGB 流时空对齐,路由精准分离手脸区域。

这张内部机制的可视化非常有说服力。上半部分显示 HOI 结构流与 RGB 视频帧精确时空同步,即使在打开垃圾桶盖子这种剧烈动作下,结构骨架依然稳固,为 RGB 生成提供了可靠的几何约束。下半部分的路由热力图表明,MoE 路由器能准确锁定人脸和手部 token,把它们分发给对应的专家处理,从而在快速运动中保持高频细节。

消融实验

变体
AES
IQ
Smooth
VLM-QA
HQ
DINO_id
DINO_obj
FaceSim
Sync_conf
推理开销
w/o MoE
0.541
0.736
0.993
0.66
0.658
0.659
0.611
0.662
5.64
1.00×
w/o Co-Gen
0.536
0.753
0.991
0.48
0.706
0.664
0.597
0.678
5.86
1.04×
w/o Asym. Mask
0.548
0.742
0.994
0.76
0.738
0.668
0.618
0.689
5.81
4.13×
Full Model 0.554 0.749 0.995 0.72 0.724 0.671 0.624 0.696 5.87 1.04×

图7: 消融实验定性对比,去除共生成导致交互不自然,去除 MoE 导致手部坍塌与面部模糊。

解读

• 去掉 MoE 后,HQ 从 0.724 跌到 0.658,FaceSim 从 0.696 跌到 0.662,证明区域专家对手脸质量的贡献是实实在在的。

• 去掉共生成(即纯 RGB 单流训练)是杀伤力最大的操作:VLM-QA 直接腰斩到 0.48,降幅 33.3%。这说明没有结构流教练,模型根本学不会物理交互约束。

• 保留 HOI 分支推理(w/o Asym. Mask)虽然 VLM-QA 和 HQ 略有提升,但推理开销暴涨到 4.13×。CoInteract 用两个点的交互分换来了近 4 倍的推理加速,这个 trade-off 非常划算。

个人视角:为什么这件事值得关注

CoInteract 的真正贡献不在于它又刷了几个 SOTA 指标,而在于它提供了一套可推广的“结构注入”范式

传统思路是“先检测再约束”——用外部模型提取姿态、分割,然后作为条件输入。这条路的问题在于,外部模型本身就有误差,而且模型并没有真正内化物理规则,只是在条件信号的“拐杖”下走路。一旦条件信号不准或缺失,立刻摔跤。

CoInteract 换了一种思路:让模型在训练时亲眼看到正确的结构,然后通过巧妙的注意力掩码设计,把这种结构理解内化到共享参数里,推理时不需要任何额外输入。 这类似于老师上课时给你看解题步骤,考试时你虽然看不到步骤了,但思路已经刻在脑子里。

这种“训练时多流、推理时单流”的范式,其实可以迁移到很多其他任务上。比如,训练时加一流通用深度图或法线图来监督 3D 一致性,推理时去掉;或者训练时加一流通用分割图来改善物体边界,推理时去掉。CoInteract 的非对称注意力掩码提供了一个干净的模板。

当然,这篇工作也有几个明显的局限:

1. 数据依赖:HOI 结构流的构建需要人体网格恢复和物体分割,这两个步骤的精度直接影响训练质量。SAM3 和 SAM3D-body 虽然强,但在严重遮挡、极端姿态下还是会出错,这些错误会被模型学到。

2. 结构流的信息瓶颈:目前 HOI 流是纹理剥离的剪影+物体 RGB,虽然能标出接触边界,但缺乏深度信息。对于需要精确 3D 理解的复杂操作(如拧瓶盖),仅靠 2D 投影的边界约束可能不够。

3. MoE 路由的泛化性:空间监督的路由器依赖检测框,对于训练集中没见过的极端视角或遮挡情况,路由可能不准。论文没有讨论这方面的鲁棒性。

后续值得关注的方向:一是把结构流从 2D 剪影升级为带深度的 2.5D 表示,甚至直接引入点云监督;二是探索更灵活的 MoE 路由策略,比如用可学习的 token 聚类代替固定的空间监督,让模型自己发现哪些区域需要专门处理;三是把这种范式推广到多人物、多物体的复杂交互场景。

一句话总结:CoInteract 用双流训练和区域专家,给视频扩散模型装上了“物理直觉”,而且这套机制推理时完全隐身——这可能是 HOI 视频生成走向实用的关键一步。

❤️❤️❤️如果这篇内容对你有帮助,欢迎点个赞、点个在看,也欢迎转发给更多有需要的朋友。你的每一次互动,都是我持续更新的动力。❤️❤️❤️


论文原文: https://arxiv.org/abs/2604.19636