RayRoPE:让多视角Transformer真正理解3D几何的位置编码方案

多视角Transformer(Multi-View Attention)在处理来自多个已知位姿图像的token时,一直面临一个核心痛点:传统的位置编码方案(无论是绝对编码还是相对编码)都无法同时满足三个关键需求——唯一地编码每个图像块、在SE(3)变换下保持注意力不变性、以及能根据场景的几何结构自适应调整。简单说,你用一个网络看两张不同角度的照片,它应该知道这两个图像块是三维空间中的同一个点,而不是两张图片上坐标相同的无关像素。但现有的位置编码要么只认图片里的像素坐标(丢失几何信息),要么只认相机光线方向(无法区分光线上的远近点)。这导致模型在处理稀疏视图的3D重建或新视角合成时,经常会混淆对应关系,效果很拉垮。

解决方案叫做RayRoPE,思路非常巧妙。它不是直接拿光线的方向向量来做编码,而是用了一条射线上“预测出来的一个3D点”的投影坐标。具体分三步:第一步,对每个图像块,它根据相机位姿计算出一条三维射线。第二步,它不直接用这条射线,而是预测/回归一个沿着该射线的3D点的深度值,这个点的位置就编码了场景的几何信息。第三步,最关键的是,为了达到SE(3)不变性,RayRoPE把这些预测的3D点投影到查询Token(Query Token)所处的相机坐标系里,然后再用多频率的相似度函数(multi-frequency similarity)来做位置编码。这样,无论世界坐标系怎么转,两个对应的3D点在同一Query帧下的投影坐标始终一致。另外,考虑到深度预测不一定精确,RayRoPE还引入了一个解析公式,在对位置编码做期望计算时能融入不确定性。在CO3D数据集上新视角合成任务中,RayRoPE比之前的编码方案在LPIPS指标上带来了15%的相对提升,如果输入包含RGB-D信息,优势更大。

这个工作的启发在于,它揭示了位置编码的本质不仅仅是一个“位置标签”,更是几何先验和注意力机制的桥接器。过去大家做多视角Transformer,要么死磕像素坐标(绝对编码),要么靠光线方向(相对编码),但RayRoPE提醒我们:把场景几何结构显式地融入到token的“身份证”里,是解锁更强3D理解能力的关键一步。另一个看点在于“预测点+不确定性”的设计哲学——不追求深度预测的绝对精确,而是在编码层面宽容误差,这是工程实践里很聪明的折中。对于做3D重建、NeRF、稀疏视图立体匹配或者任何需要多视角对齐的下游任务,RayRoPE提供了一个即插即用的编码模块,它很可能成为未来多视角Transformer的标配组件,就像RoPE之于文本大模型一样。

RayRoPE: Projective Ray Positional Encoding for Multi-View Attention

查看原文