
这项由亚琛工业大学(RWTH Aachen University)与埃因霍温理工大学(Eindhoven University of Technology)联合开展的研究,以预印本形式于2026年5月29日发布在arXiv平台,论文编号为arXiv:2605.31577。感兴趣的读者可以通过这个编号在arXiv上找到完整论文。
**一、从一张照片重建整个世界,难在哪里**
手机拍一张照片,AI自动生成对应的三维场景——这件事听起来像魔法,但如今已有多个模型能做到。近年来,一类叫做"点图预测"(point map prediction)的技术快速崛起,让这个方向取得了显著进展。
所谓点图,可以把它理解为一张特殊的地图。普通照片的每个像素记录的是颜色,而点图的每个像素记录的是那个位置对应的三维坐标,也就是说,图中每一个点到底在空间的哪个位置上。把整张图的点图拼在一起,就能得到一个粗略的三维场景。
这类技术最早由DUSt3R提出用于双视角三维重建,随后MoGe将其引入单张图片的几何估计领域,后来VGGT又把它推广到多视角场景。可以说,这个领域在短短几年内经历了一次爆发式发展。然而,不论这些模型在整体上表现多么出色,它们有一个共同的"顽疾":局部表面总是不太对劲。
具体来说,当你用这些模型处理一张包含路灯、椅子腿、水龙头等细长结构的照片时,生成出来的三维点云往往会显得弯曲、颤抖,甚至像是在空中随机抖动。整体大概轮廓还算像那么回事,但细节一看就很假。
亚琛工业大学的研究团队发现,这个问题其实并不是AI在识别边缘时出了差错,而是一个纯粹的三维形状问题。换句话说,当你把预测结果以深度图形式来看时,可能还挺合理;但一旦把相邻的三维点放在一起看,会发现它们根本无法构成一个连贯、平整的表面。这就好像你拼了一块拼图,每一块单独看都不错,但拼在一起之后接缝全是歪的,整个画面凹凸不平。
这正是SurGe这篇论文想要解决的核心问题。
**二、老方法为什么发现不了这个问题**
在解释SurGe做了什么之前,有必要先弄清楚一件事:既然这个问题这么明显,为什么之前的评估方法没能及时发现它?
答案藏在评估指标的设计方式里。目前主流的点图评估标准,是先对预测结果做一个全局对齐——相当于先缩放、平移整个预测,让它尽量贴近真实值——然后计算每个像素预测点和真实点之间的平均距离误差,这个指标叫做AbsRel(绝对相对误差)。
这个指标的问题在于,它关注的是每个点的绝对位置是否准确,而不是相邻点之间是否构成了一个合理的平面。举个例子:假设一个完美平整的桌面,真实情况下所有点都在同一高度,而模型预测的点在高度上微微起伏,就像波浪一样。这种起伏使得桌面在三维空间中看起来像揉皱的纸,但如果每个点的平均误差很小,AbsRel仍然会给出一个不错的分数——因为每个点单独来看并没有偏差太多,只是彼此之间的相对关系不对。
MoGe还提出了一个局部版本的AbsRel,把图像按物体实例分区域单独评估,精度确实提升了,但它同样停留在逐点误差的框架内,没有真正衡量相邻点是否共同构成了一个有意义的表面。
研究团队通过一个直观的实验说明了这个问题:他们对同一个真实点图分别施加两种扰动,一种是低频的、平缓的变形,另一种是高频的、密集的微小颤抖。两种扰动之后,AbsRel全局误差和局部误差几乎没有变化,分数差不多一样好。但如果你亲眼看那两个点图的法线图,就会发现高频扰动的版本已经面目全非,表面到处是杂乱的方向,根本不像任何真实物体的表面。
这就说明,旧指标在高频表面噪声面前基本上是"睁眼瞎"。要真正衡量局部表面质量,需要一种全新的指标。
**三、一把测量"表面方向"的新尺子**
研究团队提出的新指标叫做MAEnormal,中文可以叫做"点图法线平均角度误差"。
法线这个概念在三维图形学里很基础,但用日常语言来说,就是"表面朝向哪个方向"。一张平铺在桌上的纸,它的法线朝正上方;一堵竖直的墙,它的法线朝正前方。法线方向代表了表面的姿态。
MAEnormal的计算方式是:对点图中的每个像素,找它上下左右相邻的几个点,利用这些点之间的差值计算出当前位置的表面朝向(也就是法线方向),然后比较预测法线和真实法线之间的角度差,取平均值。角度差越小,说明预测的局部表面越准确。
这个指标的关键在于,它是从"相邻点之间的关系"出发来评价质量,而不是单独看每个点的位置。就像评价一条路平不平整,你不是去量每块砖离地面的高度,而是看相邻砖块之间是否平顺过渡。高频扰动会让相邻点的方向大幅跳变,MAEnormal会立刻给出一个很差的分数;而低频扰动下相邻点之间的方向变化平缓,分数相对较好。这和人眼对表面质量的判断更为一致。
回到前面那个对比实验:低频扰动后的MAEnormal是19.0度,而高频扰动后的MAEnormal急剧攀升至85.1度——足足差了四倍多。而AbsRel在两种情况下几乎毫无区别。这说明MAEnormal确实能捕捉到旧指标遗漏的信息。
**四、让损失函数真正关心"邻居之间的关系"**
发现了问题,接下来就要解决它。SurGe的第一个核心贡献是设计了一个新的训练损失函数——点梯度匹配损失(Lpgm,point gradient matching loss)。
训练损失函数是深度学习模型学习的"标准"。模型每次预测完,系统会计算预测值和真实值之间的差距,这个差距叫损失,然后调整模型参数来减小损失。损失函数设计得好不好,直接决定了模型学到什么。
现有模型的损失函数基本上都是逐点计算误差——每个点预测得准不准,然后加总平均。这相当于评价一幅马赛克画时,只看每块格子的颜色对不对,而不看相邻格子的颜色是否能拼出连贯的图案。
早期也有人尝试用"深度梯度匹配"这个思路,即比较相邻像素的深度比值而非绝对值,这样可以做到对全局尺度不敏感——不管场景整体距离远近,只要相邻点的深度比例正确,损失就小。这个想法最早来自MegaDepth这项研究的对数深度梯度匹配损失。
但这个方法有个局限:深度只是一个标量数字,而点图是一个三维向量。直接把这个方法搬到点图上,只能作用在深度(z坐标)这一个维度,没有办法约束三维方向上的变化,也没有办法让模型学会让相邻点在三维空间里构成正确的表面朝向。
SurGe的做法是把这个思路推广到三维点图。他们计算相邻像素点之间的三维位移,然后用这两个点中较近那个点的深度来对这个位移进行归一化。归一化的目的和对数深度梯度匹配一样:让损失对全局尺度不敏感,只关心相邻点之间的局部关系。预测的归一化位移和真实的归一化位移之间的欧式距离,就构成了Lpgm损失。
用一个生活比喻来说:传统损失函数就像测量地图上每个城市的绝对坐标是否准确,而Lpgm更像是检查相邻城市之间的路程和方向是否正确——即使地图整体被放大或缩小了,只要城市之间的相对关系正确,损失就小。而且,Lpgm衡量的是真正的三维位移,相当于不仅检查两城市之间的距离,还检查方向——是不是真的向北走了五公里,而不是向东走了五公里。
在实际训练中,研究团队还对Lpgm做了一个细节处理:跳过遮挡边界附近的像素对。在两个物体的边界处,前景物体和背景物体在图像上相邻,但在三维空间里距离可能天差地别,强行要求这两个点的位移关系正确会引入无法消除的误差。排除这些像素对后,训练更加稳定,效果也有所提升。
最终的完整训练目标包含全局点图损失、三个不同尺度的局部点图损失,以及加权系数为10的Lpgm。系数10是研究团队通过实验调试得到的,能在局部表面质量和全局几何精度之间取得较好的平衡。
**五、解码器:决定细节质量的"最后一公里"**
有了更好的损失函数,研究团队发现模型表现确实有所提升,但问题并没有完全解决。细长结构的弯曲和振荡依然存在,只是有所减弱。
这说明问题不只出在训练目标上,解码器的架构本身也有局限。
在现有的点图预测模型中,通常的做法是:先用一个ViT(Vision Transformer,视觉变换器)主干网络处理输入图像,得到一个低分辨率的特征网格;再用一个解码器把这个低分辨率特征逐步"放大"到原始分辨率,最终生成每个像素的三维坐标。这个过程有点像先把一张照片压缩成缩略图,提取关键信息,然后再把缩略图放大还原成原图。
解码器的主流设计分两类:一类是基于卷积神经网络的多分辨率解码器,比如DPT头或ConvStack;另一类是纯Transformer的解码器,比如π?所使用的方式。
卷积解码器的问题在于,卷积核是固定的——它对每个位置的处理方式完全相同,不会因为局部内容的不同而做出调整。对于细长结构来说,前景物体和背景物体往往在同一个小邻域内同时出现,固定的卷积核很难区分"这是前景的椅子腿"还是"这是后面的墙",结果往往把两者混在一起处理,导致椅子腿的边缘出现融合或扭曲。
把卷积解码器做得更大会有帮助,但效果提升很快就趋于平缓,像是在用更多的力量做同一件本质上受限的事情。
纯Transformer解码器则走向了另一个极端。它的好处是注意力机制会根据内容动态决定关注哪些位置,不受固定卷积核的限制。但它的缺点是处理所有特征都在同一个低分辨率下进行,受ViT分块(patch)大小的影响,预测结果往往会出现明显的方块状伪影,就像早期数码相机低像素拍出来的图片,能看出一块一块的马赛克感。
研究团队由此产生了一个核心想法:能不能把两种方式的优点结合起来?保留卷积解码器那种多分辨率、逐步放大的结构,但把每个阶段内部的特征混合机制,从固定卷积换成基于注意力的方式?
答案就是他们提出的邻域注意力解码器(NAD,Neighborhood Attention Decoder)。
**六、邻域注意力:一种"只看周围邻居"的注意力机制**
NAD的核心是邻域注意力(Neighborhood Attention,NA)这种机制。普通的自注意力机制在处理某个位置时,会同时考虑图像中所有其他位置的特征——就像开一个全班会议,每个人的发言都要考虑进去,计算量随着图像尺寸的增加呈平方级增长。这在高分辨率阶段非常昂贵,几乎不可行。
邻域注意力的做法是:每个位置只和它附近的一小块邻域交换信息,就像开一个小组讨论而不是全班大会。这样既保留了注意力机制"根据内容动态决定权重"的灵活性,又把计算量控制在了线性范围内,适合在高分辨率阶段使用。
NAD的整体结构由五个阶段组成。最开始接收ViT主干网络输出的低分辨率特征,然后每个阶段的特征都通过邻域注意力块进行特征混合,之后用转置卷积把分辨率翻倍,直到恢复到原始图像分辨率。这种逐步放大的方式避免了纯Transformer解码器的方块伪影问题。
在具体实现上,NAD的每个注意力块和标准Transformer块有一些不同之处。首先,研究团队发现去掉通常位于注意力层和前馈网络层之前的层归一化(LayerNorm)能提升精度——他们的解释是,三维坐标的预测本质上是一个无界回归任务,特征的幅度信息本身含有和场景几何相关的线索,归一化会抹掉这些信息。但完全去掉归一化会导致训练不稳定,于是他们改用了QK归一化,只在注意力计算的查询(Q)和键(K)上做归一化,既稳定了训练,又不影响特征幅度的保留。
其次,他们使用了一种叫做RoPE(旋转位置编码)的位置编码方式,并把它的频率参数和注意力窗口的尺寸匹配起来。这样,每个注意力窗口内的位置编码能在窗口范围内提供有意义的相位变化,让模型更容易学到局部的相对位置关系。
所有阶段的特征维度从高到低依次是1024、512、256、128、64,每个阶段包含三个NAD块,注意力窗口大小统一为9×9,注意力头的维度为64。这种设计在高分辨率阶段使用较小的特征维度,在低分辨率阶段保留更丰富的特征,是一种常见的多分辨率设计惯例。
**七、实验结果:三项成绩全面领先**
研究团队用二十个合成和真实数据集的混合数据训练SurGe,涵盖室外、室内、驾驶场景、物体级别等多种场景。训练分两个阶段:前80%的步骤使用固定面积的低分辨率图像,后20%逐步提升分辨率并引入更多细节。整个训练过程在16到32块H100显卡上运行,耗时约39小时。
评估则完全在训练数据之外的八个标准基准数据集上进行,包括NYUv2、KITTI、ETH3D、iBims-1、GSO、Sintel、DDAD和DIODE,覆盖室内场景、户外场景、驾驶场景、合成物体等多种类型。
在局部点图精度(AbsRelloc)方面,SurGe在所有评估的数据集上均取得了最低误差。以ETH3D为例,SurGe的误差为2.66%,而最接近的竞争对手MoGe的误差为3.16%,MoGe-2为3.27%。在法线误差(MAEnormal)方面同样如此,SurGe在所有数据集上均排名第一,相比MoGe有约1度左右的稳定提升。
全局点图精度(AbsRelglob)方面,SurGe在八个数据集中有四个排名第一,综合平均排名为1.62,明显优于MoGe的2.25和MoGe-2的3.25。这说明对局部表面质量的改进并没有以牺牲全局几何准确性为代价,两者可以同时提升。
研究团队还做了详细的消融实验,分别对解码器架构和损失函数设计进行了独立测试。
在解码器对比中,他们对比了DPT头、MoGe的ConvStack、参数量更大的ConvStack-L(和NAD参数规模相当)以及纯ViT解码器。结果显示,ConvStack-L比原版ConvStack有所提升,但仍明显不如NAD;纯ViT解码器在全局评估上还算有竞争力,但在局部评估和法线评估上是所有方案中最差的,方块伪影是主要原因。NAD在AbsRelloc和MAEnormal两项指标上均以最低误差超过所有对比方案,在AbsRelglob上的综合平均排名也是最好的。
在损失函数对比中,他们对比了无额外表面损失、点图法线损失(Lnormal)、仅作用在z坐标的对数梯度匹配(Lgm)以及完整的三维点梯度匹配(Lpgm)。Lgm相比Lnormal对局部指标有帮助,但在全局指标上往往反而更差——这和它只作用在一个坐标维度有关,它的修正信号和全局点图损失的三维空间不完全对齐。Lpgm则在局部和全局两方面都优于Lgm和Lnormal,验证了把梯度匹配推广到完整三维空间的必要性。
**八、代价与权衡:速度和精度之间的取舍**
SurGe并非没有代价。NAD相比卷积解码器的计算开销更高。研究团队在H100显卡上对512×512分辨率的图像进行了基准测试,结果显示,单独比较解码器时,NAD比ConvStack-L慢了2.28倍,但在完整模型中(包含ViT主干),由于主干的计算量占了相当大一部分,实际减速幅度缩小到1.30倍至1.46倍之间,峰值显存增加也相当有限。
对于追求极致速度的场景,这仍然是一个需要权衡的取舍。研究团队也明确指出,提升邻域注意力解码的计算效率是未来重要的研究方向。
此外,在标注质量不同的数据上,研究团队采用了分级的损失策略:合成数据使用完整的损失(包含Lpgm和细粒度局部损失),SfM重建数据去掉最精细的局部损失和Lpgm,LiDAR数据只保留全局和粗糙的局部损失。这是因为SfM和LiDAR的标注本身存在噪声或稀疏性,在高频细节上的监督信号不可靠,强行使用Lpgm反而会引入错误信号。
**九、这一切对你意味着什么**
说到底,SurGe这篇研究解决的问题虽然专业,但它影响的应用场景却非常具体和日常。当你用手机拍一张房间照片,然后想让AI生成一个可以在虚拟现实里逛的三维模型时;当AR应用需要把虚拟物体精准放置在桌面或地板上时;当电商平台想让消费者通过照片直接生成产品的三维展示时——所有这些场景都依赖于从图片重建出高质量的三维几何。而SurGe解决的,正是这类技术在细节层面最明显的缺陷。
椅子腿不再弯曲,路灯不再颤抖,墙面不再凹凸,这些改进虽然听起来微小,却是从"看起来差不多"到"真正可用"的关键一步。
同时,SurGe提出的MAEnormal指标本身也是一个值得关注的贡献。它填补了现有评估体系的一个空白,为整个领域提供了一把能真正衡量局部表面质量的新尺子。如果这个指标被更广泛地采用,未来其他研究者也会被引导去关注和改善这一维度的性能,推动整个领域向更高质量的三维重建发展。
有兴趣深入了解技术细节的读者,可以通过arXiv:2605.31577查找完整论文,或访问研究团队的主页https://vision.rwth-aachen.de/surge获取更多资料和可视化结果。
---
Q&A
Q1:点图(point map)和普通的深度图有什么区别?
A:深度图记录的是每个像素到相机的距离,是一个标量;而点图记录的是每个像素对应的完整三维坐标(x、y、z三个数值),包含了位置的方向信息。点图可以直接还原出三维场景,而深度图还需要知道相机内参才能做到同样的事情,信息量更丰富但处理起来也更复杂。
Q2:邻域注意力(Neighborhood Attention)和普通自注意力有什么实际区别?
A:普通自注意力让图像中每个位置都和其他所有位置交换信息,计算量随分辨率的平方增长,高分辨率图像上非常慢。邻域注意力则限制每个位置只和它附近一个小窗口内的邻居交换信息,计算量线性增长,速度快很多,同时保留了注意力机制根据内容动态调整权重的能力,而不是像卷积那样对所有位置用同一套固定权重。
Q3:SurGe训练用的数据集都是公开的吗?
A:是的,SurGe使用的二十个训练数据集均为可公开获取的学术数据集,涵盖Argoverse2、ARKitScenes、BlendedMVS、Hypersim、TartanAir、Waymo等,覆盖室内、室外、驾驶、合成场景等多种类型,数据总量从几千帧到数百万帧不等。
好文章,需要你的鼓励
本文介绍了弗莱堡大学等机构提出的3D-SC框架,通过引入三维基础模型的几何先验,无需人工标注即可解决AI图像匹配中的左右混淆和重复部件分不清的问题。
这项来自诺基亚贝尔实验室与巴黎理工学院的研究提出了In-Writing框架,让大语言模型先自由推理、再套用格式约束,准确率最高提升27%。
KAIST与MIT研究发现,RLHF对齐训练存在"对齐篡改"漏洞:当AI生成的偏见回答与高质量回答相关联时,对齐流程会反向放大偏见,现有缓解方法均未能有效解决这一结构性缺陷。
这项研究提出Skill0.5框架,通过区分通用技能(内化进参数)和特定技能(动态外置使用),配合难度感知路由和反走捷径机制,显著提升AI智能体在未见新任务上的泛化表现。