微信扫一扫,关注公众号

  • 科技行者

  • 算力行者

见证连接与计算的「力量」

首页 复旦大学研发的AI"导演":终于能让画面里的人物站对前后位置了

复旦大学研发的AI"导演":终于能让画面里的人物站对前后位置了

2026-05-27 16:46
分享至:
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-
2026-05-27 16:46 科技行者

这项由复旦大学大数据学院计算机科学与人工智能学院主导的研究,发表于2026年第43届国际机器学习大会(ICML 2026),地点为韩国首尔,论文编号为arXiv:2605.21343v1,发布时间为2026年5月20日。感兴趣的读者可以通过该编号查询完整论文。

你有没有试过用AI来生成一张"家庭合照",结果发现前排的孩子透过了身后的大人,或者本该被椅子挡住一半的猫咪却完整地浮在空中?这类画面看起来像是有人在Photoshop里没对齐图层,明明前后关系一目了然,AI却视而不见。这个让许多人哭笑不得的问题,就是这篇论文要正面解决的核心挑战。

研究团队把这个问题称为"遮挡"——当两个物体在画面里有重叠时,离镜头近的那个应该把远的那个盖住一部分。这听起来是常识,但对于现有的AI图像生成系统来说,却是一道几乎没有人认真攻克过的难题。

这项研究的两大成果,一个是一套叫做"SA-Z"的超大规模数据集,专门记录了图片里物体之间的前后遮挡关系;另一个是建立在这套数据集之上的全新图像生成框架"OcclusionFormer"。这个框架借鉴了电影特效行业里的一种经典渲染思路,通过让AI明确理解"谁在前、谁在后"来彻底解决画面里的遮挡混乱问题。

---

一、我们平时看到的AI生图到底哪里出了问题

回到那张失败的家庭合照。当你用AI工具生成一张有多个人物的画面时,你通常会提供一些"框框"——告诉AI"这个位置放妈妈、那个位置放孩子"。这些框框在技术上叫做"边界框"(bounding box),就像在白纸上用铅笔画出各个演员站位的方格。

问题在于,当这些方格彼此重叠时,AI并不知道该怎么处理。举个更直观的比方:假设你在剧场排练一个场景,舞台监督只给了你"A站在左边、B站在中间偏左"这两个指令,却没有说B比A离观众近,那么到了正式演出,A和B的身体可能会奇怪地"合并"在一起,像两张透明胶片叠在了同一个位置。

现有的AI生图系统正是如此。它们接收到重叠的方格指令后,不是让前面的物体盖住后面的物体,而是把两个物体的外观特征混在一起,结果生成一个四不像的融合体,或者两个物体都被压缩到各自可见的区域里,完全违背了用户的原意。用户明明想要"老虎在沙滩上奔跑,女孩骑在老虎背上",AI却交出了一个老虎和女孩奇异融合的怪物。

这背后的根本原因是:现有方法缺少一个明确的"前后顺序"信息。在计算机图形学领域,这个顺序有个专业称呼叫"Z轴顺序"(Z-order),其中Z代表画面的深度方向,就像拍摄场景时镜头指向远处的那条轴线。传统的3D渲染软件用一个叫"Z缓冲区"的机制来精确控制谁盖谁,但AI生图系统里根本就没有这种机制。

此前有一个叫LaRender的方法尝试不经过专门训练、直接在推断阶段用技巧来模拟遮挡效果。然而它的做法是占用AI内部负责理解文字描述的注意力通道来传递遮挡信息,这就好比一个人同时用同一个耳朵听歌和接听电话,两件事都做不好。LaRender因此无法使用全局文字描述,而且对参数调节非常敏感,在复杂场景里经常失控——物体没放对位置,遮挡关系也乱成一团。

---

二、从零开始打造一张"前后关系地图":SA-Z数据集

要训练AI理解前后遮挡,首先需要海量的"带有前后标注的图片"作为教材。研究团队发现,已有的数据集要么太小,要么标注类型太单一,要么图片分辨率太低,完全不够用。于是他们决定自己动手,打造了这套名为SA-Z的数据集。

SA-Z的原材料来自一个现成的大型数据集SACap-1M,里面有大约100万张高清图片,以及每张图片里各个物体的精确轮廓(遮罩)。研究团队在这个基础上,系统地为每张图片增加了三类全新的标注信息。

第一类是"更精准的物体描述"。SACap-1M里原有的物体描述是通过给AI看一个方框区域来生成的,但方框通常比物体本身大,会把周围不相关的内容也包进去,导致描述里混入了干扰信息——比如描述一个苹果时,却把旁边的盘子也顺带描述进去了。研究团队换用了一个更精细的工具,叫做DescribeAnything,它能严格按照物体的实际轮廓边界来生成描述,描述的每一句话都只属于这个物体本身,干净得多。

第二类是"物体之间的前后关系"。两两之间哪个在前、哪个在后,这个判断用了另一个工具InstaOrderNet来自动预测,为每对有重叠的物体建立了明确的"遮挡方向"标注。就像在一张舞台平面图上,为每两个演员都画上一个箭头,清楚地说明"A挡着B"还是"B挡着A"。

第三类是最富有技术含量的"被遮挡物体的完整轮廓"。这个信息叫做"amodal标注"——amodal的意思是"不依赖于实际可见范围的"。换句话说,就算一把椅子有一半被桌子挡住了,研究团队也要标出这把椅子完整的形状,包括被桌子盖住的那一半。为了做到这一点,他们使用了SAM-3D这个工具。SAM-3D能把2D图片里的物体重建成3D模型,然后再把这个3D模型投影回2D平面,这样被遮挡的部分也就自然地"复原"出来了。这就好比你知道一个苹果被书本遮住了左半边,SAM-3D能帮你把整个苹果的完整轮廓估算出来,告诉AI"这里其实藏着一个完整的苹果"。

最终,SA-Z涵盖了约100万张高分辨率图片,共约569万个物体实例,每个实例都配有精准的文字描述、遮罩、边界框、与其他物体的前后关系,以及被遮挡时的完整轮廓标注。这在同类数据集里是独一无二的——其他数据集要么没有前后关系,要么没有完整轮廓,要么图片清晰度不够,只有SA-Z同时具备了所有这些信息。

---

三、OcclusionFormer如何像导演一样编排前后关系

有了教材,接下来是教AI怎么学。OcclusionFormer的设计思路可以用一个剧场舞台的比方来理解。

普通的AI生图系统就像一个只看到整个舞台全景的导演,所有演员都在他的视野里乱成一锅粥,他只能尽力协调,但根本没办法精确指定谁应该站在谁面前。OcclusionFormer则换了一种方式:它先把每个演员从舞台上"单独请到后台",为每个演员单独打磨其外形和细节;打磨完毕后,再让他们按照规定好的前后顺序回到舞台上站好,后排的演员被前排的演员遮住该遮的部分,最终呈现出一张完美的合照。

技术上来说,这套系统基于一个叫Flux.1-dev的扩散变换器(Diffusion Transformer)基础模型,整个框架由两个核心步骤组成。

第一步叫"实例解耦"(Instance Decoupling),也就是把每个物体单独处理。传统方法让所有物体共用一套全局注意力机制——相当于让所有演员同时在台上喊话,彼此干扰。OcclusionFormer则为每个物体单独划出一块区域,让这个物体的视觉特征只跟这个物体自己的文字描述对话,互不打扰。具体来说,系统先通过一个预处理的注意力模块为整张图提炼出初步的视觉特征,然后对于每个物体,精确找出这个物体所在位置对应的那些"视觉单元"(token),只让这些单元和这个物体的描述文字进行深入交互,其他位置的特征完全不参与。为了不破坏原有基础模型的能力,新增加的学习参数采用了一种叫LoRA的轻量化插件方式注入,冻结原始参数,只训练新插件。这样,每个物体都能在自己的"后台化妆间"里被精心打扮,不被邻居干扰。

第二步叫"Z轴顺序编排"(Z-order Arranging),也就是让物体按照前后关系依次登场、相互遮挡。这一步借鉴了电影特效和神经辐射场(NeRF)领域里的"体积渲染"(Volumetric Rendering)思路。

体积渲染的核心思路是这样的:假设你从正面往一个场景里射出无数条光线,每条光线穿过多个物体。光线先遇到的物体会阻挡光线的传播,挡得越密实,后面的物体就越不可见。OcclusionFormer把这个思路搬进了AI生图系统:每个物体被赋予一个"密度"参数,密度越高表示这个物体越不透明,越能挡住它后面的物体。前景物体的密度高,大量"吸收"了光线,背景物体的透射率(transmittance)就低,它的视觉特征在最终合成图里的权重也就低,从而实现了"被遮挡"的效果。

关键在于,这个"密度"参数不是人工设定的固定值,而是由AI根据当前的生成状态(时间步t)和物体的文字描述动态预测的。就好比一个演员的"存在感"会随着剧情的推进而动态变化——在某些阶段她应该特别突出,在另一些阶段她应该退居幕后。AI能根据生成过程的不同阶段自动调整每个物体的"存在感强度",使得遮挡关系在生成的整个过程中都保持正确。

当两个物体的边界框有重叠,但彼此之间没有明确规定谁前谁后时(比如两个并排摆放但略微重叠的盘子),系统会自动切换到简单的平均融合模式,避免产生错误的遮挡。整个合成过程用一个残差连接(residual connection)把合成结果叠加回原始特征上,保证基础生成质量不受损。

---

四、用"查询对齐"机制给物体装上GPS定位

解决了前后关系之后,还有一个问题:即便每个物体被单独处理,它的形状边界是否真的精准对齐了用户指定的位置?

研究团队观察到,仅仅依靠体积渲染来约束前后关系是不够的——系统还需要一个明确的机制来确保每个物体的视觉特征真的"长"在了正确的形状里,而不是在边界框内随机扩散。这就像你告诉一位雕塑家"在这个轮廓里刻一只猫",如果没有进一步的指导,雕塑家可能会把猫的耳朵长在本该是眼睛的地方。

为此,他们引入了一个叫"查询对齐损失"(Queried Alignment Loss)的机制。具体做法是:为每个物体生成一个动态的"语义锚"向量(query vector),这个向量代表了"这个物体应该长什么样子"的抽象语义信息。然后,系统用这个语义锚在对应位置的视觉特征上做一次逐像素的相似度计算,找出哪些像素在语义上最符合这个物体的特征。得到这个相似度热力图之后,再把它送入一个轻量级的卷积神经网络(CNN),预测出每个像素是属于这个物体还是背景的概率图。在训练时,系统用SA-Z数据集里标注好的实际轮廓遮罩来监督这个预测,强迫AI把物体的视觉特征精确地分布在正确的形状区域内。

从论文附录展示的可视化结果来看,这个机制的效果非常直观:在生成过程的早期阶段,预测出的物体遮罩比较粗糙,大致覆盖整个边界框;随着生成过程推进,遮罩逐渐收缩并贴合物体的真实轮廓,到最后几步时已经相当精准。这套机制确保了物体不只是"大概在那个位置",而是"精确地沿着那个形状长出来"。

此外,在训练时还有一个精心设计的细节:在生成过程的前期(噪声比较多的阶段),用来监督的是物体的"完整轮廓"(amodal mask,也就是包含被遮挡部分的完整形状);在后期(噪声较少的精细化阶段),则切换为"可见轮廓"(modal mask,只包含实际可见的部分)。这种课程式训练的安排让AI先学会把握物体的整体结构,再专注于精修可见区域的细节,两阶段互相配合,效果比始终用同一种监督信号要好。

整个训练目标是两项损失的加权组合:基础的流匹配生成损失(负责保证图片整体质量)和对齐损失(负责保证形状精度),权重比例经过实验确定为1:0.5。

---

五、实战测试:在两个评测场地打擂台

为了验证OcclusionFormer是否真的有效,研究团队在两个评测数据集上进行了测试,并与六种现有方法展开了正面比较。这六种方法分别是GLIGEN、MIGC、Eligen、Creatilayout、InstanceAssemble和LaRender,涵盖了基于U-Net架构和基于扩散变换器架构的多种代表性方案。

第一个评测场地是OverLayBench,这是专门为测试遮挡场景设计的基准数据集,里面的图片按照重叠复杂程度分成了三个子集:简单(Simple)、常规(Regular)和复杂(Complex)。不过这个数据集的图片本身是用Flux模型生成的合成图,存在一定的领域偏差。

因此研究团队还专门从SA-Z里抽取了1000张真实照片构建了第二个评测场地"SA-Z Eval",专门挑选物体数量多、遮挡关系复杂的场景,而且这些图片完全没有出现在训练集里。这使得SA-Z Eval成为一个更贴近真实世界难度的评测场地,不同方法在这里受到的考验更为严格。

评测指标涵盖了三个维度。空间精度方面,用mIoU(整体区域重合度)和O-mIoU(专门针对重叠区域的重合度)来衡量;语义一致性方面,用VQA问答正确率(SRE和SRR)以及CLIP文图对齐分(CLIP-G和CLIP-L)来衡量;图像质量方面,用FID(图片真实感评分,越低越好)来衡量。此外还有两个专门针对遮挡关系的指标:Occ.(遮挡顺序准确率,越高越好)和Dep.(深度顺序误差,越低越好)。

测试结果显示,OcclusionFormer在几乎所有指标上都拿到了最高分。在最有代表性的遮挡顺序指标(Occ.)上,即便是复杂子集,OcclusionFormer也达到了0.7797,而第二名InstanceAssemble只有0.6987,LaRender更是只有0.6026。在真实世界数据集SA-Z Eval上,OcclusionFormer的Occ.分数为0.7568,其他方法最高只到0.6947。深度顺序误差(Dep.)方面,OcclusionFormer在所有场景下都是最低的,说明它对物体前后层次的理解是最准确的。

从视觉上来看,论文里展示了多组对比图。在"女孩骑老虎"这个简单场景里,其他方法要么让女孩和老虎在重叠区域融成一团,要么让老虎把女孩挤到一旁,只有OcclusionFormer清楚地展示了女孩坐在老虎背上的正确前后关系。在多人合影场景里,其他方法经常出现人脸扭曲或人物融合的情况,OcclusionFormer则保持了每个人物清晰独立的轮廓,前后层次分明。在复杂的室内场景(包含时钟、长颈鹿、钢琴、沙发等多个物体)里,OcclusionFormer是唯一一个能正确处理所有物体相互遮挡关系的方法。

---

六、拆开来看:每个组件各自贡献了什么

研究团队还做了一系列"拆配件"实验,依次把框架的不同组件去掉,观察性能如何变化,从而确认每个设计的必要性。

影响最大的是实例解耦这一步。一旦把它换回全局注意力(去掉实例解耦),无论是在OverLayBench还是SA-Z Eval上,性能都出现了最大幅度的崩塌。在复杂子集上,空间精度指标mIoU从0.6037掉到了0.5177,遮挡顺序准确率Occ.从0.7797掉到了0.6109。这验证了"先把每个演员单独请到后台打磨"这个思路是整个框架的根基。

去掉显式遮挡条件信息之后,在简单场景里性能下降不明显,但在复杂场景里Occ.指标明显下滑。这说明对于简单的遮挡关系,AI或许能从上下文里隐式猜到前后顺序,但一旦遮挡关系变得复杂,没有显式的Z轴顺序信息就撑不住了。

把动态预测的密度参数换成一个固定的常数(设为5)之后,性能在所有子集上都有所下滑,说明密度需要根据生成过程的不同阶段动态调整,固定值是不够的。

去掉查询对齐损失之后,空间精度和语义一致性都有所下降,而如果把它替换为一种更简单粗暴的基于注意力图的BCE损失,性能下降得更多,说明研究团队设计的这套查询机制有其独特的价值。

去掉amodal标注数据(只用可见遮罩训练)之后,遮挡相关的指标也有明显下滑,证明了"即便被遮挡的部分看不到,AI也需要知道它在那里"这一直觉是正确的。

研究团队还进行了用户研究,邀请15名参与者对7种方法生成的300张图片从遮挡准确性、布局对齐、局部细节和整体一致性四个维度打分。OcclusionFormer在所有四个维度上都获得了最高的人类主观评分,与自动指标的结论完全一致。

---

七、这套系统目前还有哪些局限

任何研究都有其边界,这篇论文也直接在结尾坦承了目前存在的一个明显问题。研究团队用相同的布局和随机种子,只改变遮挡顺序,生成了多组对比图(论文里是四只颜色不同的泰迪熊)。虽然前后遮挡关系确实随着Z轴顺序的变化而正确改变了,但同一只泰迪熊在不同遮挡顺序的图里,外观细节(毛色、纹理)并不完全一致。

这说明OcclusionFormer还没有完全把"物体的外观特征"和"物体在画面里的前后位置"解耦开来。简单说就是:当你改变谁在前谁在后,物体的样子也可能跟着小幅变化,这并不符合现实物理逻辑。研究团队认为,未来可以通过强化学习等后处理训练策略来进一步解决这个问题,使得物体的外观在不同遮挡配置下保持稳定一致。

在推理速度方面,研究团队测试了物体数量从1到25个时系统的运行速度。结果显示速度随物体增多而线性下降(而不是急剧下降),说明系统的计算复杂度是可控的,在密集场景下仍然具有实际可用性。

---

归根结底,OcclusionFormer解决的是一个看似简单、实则一直被忽视的问题:AI生图系统不应该只知道"把什么放在哪里",还需要知道"它们在三维空间里谁更靠近镜头"。研究团队通过构建有史以来标注最完整的遮挡数据集、设计一套模拟光线穿透物体的体积渲染合成机制、再配上一个精确监督物体形状的对齐损失,把这个问题系统地解决了。这意味着未来的AI生图工具在面对"前景人物遮住背景建筑"、"桌上叠放的书本"、"人群中前后排列的面孔"这类场景时,能够生成更加符合物理直觉的画面。对于从事设计、内容创作或影视制作的人来说,这项技术的成熟意味着他们可以更直接地用语言和方框来指定复杂场景的构图,而不必担心AI把前后关系搞乱。有兴趣深入了解这套系统细节的读者,可以通过论文编号arXiv:2605.21343查阅完整原文。

---

Q&A

Q1:OcclusionFormer和普通AI生图工具相比,最核心的区别是什么?

A:普通AI生图工具在处理多个物体位置重叠时,没有"谁在前谁在后"的概念,常常把重叠的物体融合在一起或随机安排顺序。OcclusionFormer明确引入了Z轴顺序(前后遮挡关系),通过体积渲染机制让前面的物体自然遮住后面的物体,生成符合现实物理逻辑的画面。

Q2:SA-Z数据集和其他数据集有什么不一样的地方?

A:SA-Z最独特的地方在于同时具备四类标注:物体遮罩、边界框、物体之间的前后遮挡顺序,以及被其他物体遮住时的完整轮廓(amodal标注)。其他大型数据集通常只有前两类,而那些有遮挡标注的数据集图片分辨率又太低、种类太少,SA-Z是目前唯一兼顾高分辨率、开放词汇和完整遮挡标注的大规模数据集。

Q3:OcclusionFormer生成图片时需要用户提供哪些额外信息?

A:用户需要像使用普通布局生图工具一样提供物体的边界框和文字描述,额外增加的只是每对重叠物体之间的遮挡顺序(即告诉系统"A在B前面")。这个信息非常直观,和用户自然构思画面时的思维习惯完全一致,不需要任何专业的3D知识。

分享至
0赞

好文章,需要你的鼓励

推荐文章
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-