文章

:construction:施工中-MUSt3R, input的扩展

Spann3R, SLAM3R, VGGT以及现在的MUSt3R

都对DUSt3R和MASt3R的pairwise输入结构进行了扩展。

why

how

Spann3R

🔁 第一次 Forward Pass(用于 Query memory)

目标:提取图像特征,读取 memory,并更新下一时刻的 query。

对应公式为:

图像编码:

\[f_t^I = \text{Encoder}_I(I_t) \tag{1}\]

读取 memory 得到 fused feature(使用前一时刻的 query):

\[f_{t-1}^G = \text{MemoryRead}(f_{t-1}^Q, f^K, f^V) \tag{2}\]

将视觉特征和 memory 特征输入 decoder:

\[f_t^{H’}, f_{t-1}^H = \text{Decoder}(f_t^I, f_{t-1}^G) \tag{3}\]

得到当前帧的 query feature,用于下一帧 memory 查询:

\[f_t^Q = \text{head}_{\text{target\_query}}(f_t^{H’}, f_t^I) \tag{4}\]

🔁 第二次 Forward Pass(用于生成点图 + 写入 memory)

目标:使用上一步提取的参考特征,预测点图,并将其编码进 memory。

对应公式为:

利用 reference decoder 预测点图和置信度:

\[X_{t-1}, C_{t-1} = \text{head}_{\text{ref\_out}}(f_{t-1}^H) \tag{5}\]

构造 memory key(视觉 + 几何特征):

\[f_{t-1}^K = \text{head}_{\text{ref\_key}}(f_{t-1}^H, f_{t-1}^I) \tag{6}\]

构造 memory value(包含点图编码和 key):

\[f_{t-1}^V = \text{Encoder}^V(X_{t-1}) + f_{t-1}^K \tag{7}\]
本文由作者按照 CC BY 4.0 进行授权