跳转至

LinStereo: Linear-Complexity Global Attention for Multi-Scale Iterative Stereo Matching

会议: ECCV2026
论文: ECCV 原文
代码: https://u7079256.github.io/LinStereo/
领域: 3D视觉
关键词: 立体匹配 / 迭代精修 / 线性注意力 / 单目深度先验 / 水下深度估计

一句话总结

LinStereo 把迭代式立体匹配里那个一直在局部窗口里打转的 ConvGRU 更新算子换成位置感知的线性注意力(PALA),让每一次精修都能在整张特征图上做 O(N) 的全局聚合,再配上逐尺度相关体(HSCV)与单目深度暖启动(DPI),只用 SceneFlow 训练就在标准基准上达到同级最强,并在无水下数据的情况下于 TartanAir-UW / SQUID 上拿到最好精度。

研究背景与动机

立体匹配这条线的主流转折发生在 RAFT-Stereo 之后:显式构造 3D/4D 代价体、再用 3D 卷积正则化的做法(PSMNet、GA-Net 一路)精度虽高,但计算量随视差范围线性膨胀,而且代价体只在单一分辨率上构建,多级语义信息进不去。迭代式方法换了个思路——固定一个相关体,用一个循环算子反复查询、逐步把视差从零推到位,迭代次数可以按算力预算自由伸缩,这使它成为近几年的主流范式,并进一步被两类改进推高上限:一是把常规编码器换成视觉基础模型(VFM)骨干(FoundationStereo、DEFOM-Stereo、MGStereo、Stereo Anywhere),靠大规模预训练特征换取零样本泛化;二是把单目深度先验融进来,给病态区域提供额外约束。

但这里出现了一个越来越明显的错配:骨干网络在变大、特征在变"全局",更新算子却还是老样子。具体说有三处信息通路被浪费。其一,更新算子每次只在局部空间邻域上推理,一条信息要跨过整张图得靠几十次迭代慢慢扩散,而纹理缺失区、遮挡区恰恰需要远处可靠像素的上下文;其二,VFM 给的是多层次特征,但相关体通常只在一个固定分辨率上构建(比如 1/4),细粒度的几何细节和粗粒度的语义结构被压成单级匹配证据;其三,骨干自己带出来的单目几何先验在初始化阶段基本没被用上,迭代还是从零视差起步,前若干次迭代白白花在把大体布局摆正上。已有工作各自补了其中一块(如 MGStereo 补单目先验、IGEV 换几何编码体),但没有人动那个"窄带宽的更新接口"本身。

本文的判断是:既然骨干已经能提供语义丰富、跨尺度一致的特征,那么真正该被重设计的不是输入,而是更新算子。核心 idea:用位置感知的线性注意力替代局部循环更新,让每次迭代以线性代价做全图聚合——注意力在空间维度上做全局加权(同时把跨尺度相关体作为匹配证据、把单目深度作为暖启动),从而在更少的迭代次数内把可靠区域的视差传播到退化区域。

方法详解

整体框架

LinStereo 的输入是校正后的立体图像对,输出是稠密视差图。整个框架建立在 Depth Anything V3(DA3)之上并完全冻结其权重:DA3 由一个 DINOv2 ViT-B/14 编码器加一个 Dual-DPT 头组成,Dual-DPT 先把 ViT 的多尺度中间表示重新组装,再分叉到深度与射线两支融合分支。LinStereo 从同一次前向里取两样东西——在共享重组层之后、融合分支之前取多尺度特征(下采样因子 \(s\in\{4,8,16\}\),统一投影到 128 通道)用于构造匹配证据;从深度融合分支取单目深度图用于初始化。也就是说,解码器是"一份骨干、两条通路、三处改造":HSCV 解决拿什么去匹配,DPI 解决从哪里开始迭代,PALA 解决每一轮怎么更新。三者不是三个可拆卸的独立模块,而是围绕 PALA 这一个算子配套的输入与初值设计(论文明确强调这一点)。

细看下整体怎么转:校正后的图像对先过冻结的 DA3 得到 \(s=4,8,16\) 三个尺度的左右特征和一张仿射不变的单目深度;HSCV 在每个尺度上沿极线方向算 1D 相关体,并把每个相关体沿视差轴再组织成 4 级金字塔(与空间分辨率无关,所以能在保持空间细节的同时扩大搜索范围);DPI 用 SIFT 稀疏匹配拟合一个尺度-平移变换,把单目深度换算成度量视差当作第 0 轮估计;随后进入迭代精修,三个尺度各有一个 PALA 更新器,每轮按粗到细的顺序 \(h_{16}\rightarrow h_8\rightarrow h_4\) 更新隐状态(相邻尺度之间互相传递隐状态),只有最细尺度 \(h_4\) 的隐状态被解码成视差残差。训练时每个迭代步都受监督,越晚的迭代权重越高。整体是"一次编码 + 三条通路 + 一个循环"的结构,而不是级联式的多阶段网络。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    A["校正后的立体图像对"] --> B["冻结的 DA3 骨干<br/>DINOv2 ViT-B + Dual-DPT"]
    B --> C["多尺度 VFM 特征<br/>s = 4 / 8 / 16"]
    B --> D["仿射不变单目深度"]
    C --> E["Hierarchical Semantic Cost Volumes<br/>逐尺度相关体 + 视差金字塔"]
    D --> F["Depth Prior Initialization<br/>稀疏匹配 + 尺度-平移对齐"]
    E --> G["Position-Aware Linear Attention<br/>逐尺度全局线性注意力更新"]
    F --> G
    G -->|"T 次迭代,粗到细 h16→h8→h4"| H["视差更新头 → 稠密视差"]

关键设计

1. Hierarchical Semantic Cost Volumes(HSCV):让每个尺度都拿到语义对齐的匹配证据

痛点很直接:现有迭代方法(RAFT-Stereo、IGEV)只在某个固定分辨率上建一个相关体,VFM 骨干辛苦给出的多尺度层次被压成单级相关,匹配的"语义带宽"被人为收窄;而多尺度融合的替代做法(如把多尺度特征池化成一份)又会一次性消费掉粗层信息。HSCV 在两个层面上做了改进。利用方式上,它为 \(s\in\{4,8,16\}\) 的每一层各自建一个相关体并同时保留,PALA 在每一轮迭代里都可以重新查询任意一层,而不是走一次粗到细的级联——这一点与"一次融合"和"一次性消费粗层"都不同。表示形式上,每个逐尺度相关体内部沿视差轴再降采样成 4 级金字塔,得到"粗视差范围 + 细空间分辨率"的组内层级,因此粗匹配和细匹配共享同一个空间分辨率,不需要靠下采样图像来扩大搜索范围。

具体做法是:先用带实例归一化的残差块加 1×1 卷积把每个尺度的左右特征投影到统一通道数 \(C_f\),再沿极线算 1D 相关:

\[C_s(i,j,d)=\frac{1}{\sqrt{C_f}}\left\langle \hat{\mathbf{F}}_{L,s}(i,j),\ \hat{\mathbf{F}}_{R,s}(i,j-d)\right\rangle\]

其中 \(i,j\) 是空间位置、\(d\) 是视差偏移。这样就形成了一个两级匹配层级:跨尺度(VFM 的语义层次)与尺度内(视差金字塔)。它的价值在于,每次迭代在自己工作的分辨率上就能拿到语义上合适的匹配信号,而不必依赖隐状态在不同尺度之间的间接传递——后者既慢又不可靠。消融里把逐尺度相关体换成"池化后的单一多尺度特征"后精度下降(KITTI 2015 EPE 1.01→1.07),说明"逐尺度对齐"而不是"多尺度融合"才是关键。

2. Depth Prior Initialization(DPI):把仿射不变的单目深度换成度量视差暖启动

用单目先验做初始化本身不新(MonSter、Stereo Anywhere 都做),但常见做法要么直接搬度量单目模型(Depth Pro、Metric3D v2)的绝对尺度,要么干脆不动、仍从零视差起步。前者的绝对尺度本质是个统计先验,在分布外场景(比如水下)会明显漂移;后者的代价是前几次迭代全花在把整体布局摆正上。LinStereo 的选择是:保留仿射不变模型在跨域相对结构上的鲁棒性,把度量尺度交给标定立体对本身去解——因为校正后的立体对已经提供了几何对应关系,度量尺度是可以直接从数据里恢复出来的。

具体做法是先用 \(d=\alpha/\hat{D}_{\text{mono}}+\beta\) 把深度域的单目预测映射到视差域(视差与深度成反比,\(\alpha\) 吸收未知的度量尺度、\(\beta\) 吸收加性偏移),再用校正图上沿极线匹配得到的 SIFT 关键点对 \(\{(p_k,d^{\text{sp}}_k)\}\) 做最小二乘拟合:

\[(\alpha^*,\beta^*)=\arg\min_{\alpha,\beta}\sum_{k=1}^{K}\left\|d^{\text{sp}}_k-\left(\frac{\alpha}{\hat{\mathbf{D}}_{\text{mono}}(p_k)}+\beta\right)\right\|^2,\qquad \mathbf{d}^{(0)}=\frac{\alpha^*}{\hat{\mathbf{D}}_{\text{mono}}}+\beta^*\]

这里用 SIFT 而不是学习型匹配器是刻意的:只需要稀疏对应,手工特征足够,而且不引入额外网络。当内点数少于 \(K_{\min}=20\) 时回退到零视差初始化(实测 TartanAir-UW 上 0% 的帧触发、SQUID 上 3.7% 触发,代价仅 +0.08 px EPE)。作者也很坦诚地指出 \(\mathbf{d}^{(0)}\) 只是粗暖启动:VFM 深度并不严格服从全局仿射模型,手工匹配本身也有定位噪声,所以细粒度视差仍然依赖后面的 PALA 迭代去恢复。

3. Position-Aware Linear Attention(PALA):用非对称 2D RoPE 把线性注意力"救"回空间感知

这是全文的核心算子,替换掉了 ConvGRU。动机在于:立体精修本质上需要把可靠深度从纹理丰富区传播到邻近的弱纹理区,而局部循环算子每次只能看一小圈邻域,一条信息跨越整幅图需要几十次迭代;软注意力(softmax attention)能做全图推理,但代价是 \(O(N^2)\),在高分辨率特征图上不可接受。

线性注意力通过利用矩阵乘法的结合律把复杂度降到 \(O(N)\):不算 \(N\times N\) 的注意力矩阵,而是预先算一次 key-value 乘积 \(K^{\top}V\) 并在所有查询位置共享。但正是这个"共享"带来了新问题——所有成对空间关系被压成一个全局概要,注意力因此完全不知道位置。对视差精修来说这很致命:邻近像素的深度通常相近、视差的不连续总是对齐物体边界,这些恰恰都是"位置相关"的结构,位置盲的算子区分不了。

PALA 的做法是引入旋转位置编码(RoPE)来恢复空间感知而不破坏线性复杂度,并把它扩展到高度与宽度两个轴上(2D RoPE)。给定经非负核 \(\phi\) 映射后的查询与键 \(\hat{Q}=\phi(W_Qx)\)\(\hat{K}=\phi(W_Kx)\),先得到位置感知版本 \(\tilde{Q}=\mathrm{RoPE}(\hat{Q})\)\(\tilde{K}=\mathrm{RoPE}(\hat{K})\),再输出

\[\mathbf{O}_{\text{attn}}=\frac{\tilde{\mathbf{Q}}\left(\tilde{\mathbf{K}}^{\top}\mathbf{V}\right)}{\hat{\mathbf{Q}}\left(\overline{\hat{\mathbf{K}}}^{\top}\mathbf{1}\right)},\qquad \overline{\hat{\mathbf{K}}}=\frac{1}{N}\sum_j \hat{\mathbf{K}}_j\]

(⚠️ 分母的归一化项在提取文本中残缺,此处按"分子用旋转后的 \(Q,K\)、分母保留原始 \(\hat{K}\) 均值"的写法还原,精确形式以原文为准。)关键在于 RoPE 是"非对称"使用的:只有分子用位置增强后的 \(\tilde{Q},\tilde{K}\) 去编码相对空间关系,分母仍保留原始的 \(\hat{Q},\hat{K}\) 以保证归一化稳定。如果两边都套 RoPE,归一化因子就会变成位置相关的,注意力幅值被扭曲、训练不稳定——这是这篇论文里最不起眼但最要紧的一个工程判断,消融也印证了它:对称 RoPE 在 KITTI 2015 上 EPE 1.05、TartanAir-UW AbsRel 0.042,都差于非对称版本的 1.01 / 0.04。复杂度仍是 \(O(N\cdot C_h^2)\),与图像分辨率线性相关。

在此之外还补了两处位置信息:因为立体视差场本身是局部平滑的(同一表面上相邻像素深度接近),在 value 分支上加局部空间编码强化邻域一致性;在 block 两端加绝对位置编码,让网络能区分图像不同区域的系统性深度差异。最后,由于 PALA 处在迭代回路里,用一个门控更新控制跨迭代的信息流:

\[\mathbf{z}_g=\sigma\!\left(\mathrm{Conv}_{3\times3}\left([\mathbf{h},\mathbf{O}_{\text{attn}}]\right)\right),\qquad \mathbf{h}^{(t+1)}=(1-\mathbf{z}_g)\odot \mathbf{h}^{(t)}+\mathbf{z}_g\odot \tanh(\cdot)\]

(⚠️ 更新分支中被 tanh 包裹的具体内容在提取文本里残缺,以原文为准。)门控的必要性来自立体匹配的证据本身是不均匀的:纹理区给出强而唯一的匹配,遮挡区与弱纹理区给出的是噪声信号。有了 \(\mathbf{z}_g\),每个位置在匹配可信时可以激进地吸收新证据、在不可信时可以保留已积累的估计,可靠视差因此能随迭代逐步向不确定区域扩散。三个尺度各有自己的 PALA 更新器(每个只含一个 PALA block),隐状态按粗到细顺序更新且相邻尺度互传隐状态,最细尺度的隐状态才输出视差残差。

一个完整示例

拿 SQUID 里一块因颜色衰减而几乎无纹理的礁石区域走一遍(\(T=8\),三个尺度 4/8/16)。DPI 先把 DA3 的单目深度按尺度-平移公式映射到视差域:如果这块区域周围能匹配到 20 个以上 SIFT 内点,就得到一组 \((\alpha^*,\beta^*)\),给出一个量级大致正确的初始视差;如果内点不足(SQUID 上约 3.7% 的帧会这样),就退回零视差,靠后面的迭代补。进入第 1 轮迭代,最粗的尺度 16 上先做 PALA:相关体从 HSCV 里取出该尺度(以及其视差金字塔各层)的匹配证据,全局线性注意力把整幅图上"纹理清晰、匹配可靠"区域的视差估计加权聚合过来——这一步在局部 ConvGRU 里是做不到的,因为距离远超其感受野。到了门控环节,礁石像素的匹配置信度低,\(\mathbf{z}_g\) 取值偏小,于是它更倾向于保留上一轮的估计而不是被噪声带跑;相反纹理区的 \(\mathbf{z}_g\) 大,会迅速吸收新证据。尺度 16 更新完把隐状态传给尺度 8,尺度 8 再传给尺度 4,每层都拿到自己尺度上语义对齐的相关信号。整个过程重复 8 次,随着迭代推进,可靠区域的视差一层层"渗"进弱纹理区,最细尺度的残差逐轮把这团粗糙估计打磨成边界清晰的稠密视差。这也解释了为什么遮挡区提升最明显:Middlebury(H) 遮挡区 EPE 从既有最好的 2.11 降到 1.33(−37%),正是"全局传播"直接受益的区域。

损失函数 / 训练策略

最细尺度隐状态 \(h_4^{(t+1)}\) 经若干深度可分离卷积块解码为视差残差 \(\Delta d^{(t)}\)。训练目标对每一个迭代步都施加监督,且越晚的迭代权重越高

\[\mathcal{L}=\sum_{t=1}^{T}\gamma^{\,T-t}\Big(\left\|\mathbf{d}^{(t)}-\mathbf{d}_{\text{gt}}\right\|_1+\lambda_s\mathcal{L}_{\text{smooth}}(\mathbf{d}^{(t)})+\lambda_g\mathcal{L}_{\text{grad}}(\mathbf{d}^{(t)})\Big)\]

其中 \(\mathcal{L}_{\text{smooth}}\) 是边缘感知平滑项,只在图像梯度小的区域惩罚视差梯度,从而鼓励分片光滑的预测同时保住物体边界处的不连续;\(\mathcal{L}_{\text{grad}}\) 在多尺度上比较预测与真值视差的梯度 \(\ell_1\) 差,帮助恢复准确的深度边缘;两项辅助损失权重都很小。

实现上,DA3 骨干全程冻结,只训练解码器。AdamW、200K 步、batch size 8、\(320\times640\) 随机裁剪、单张 H100;one-cycle 学习率峰值 \(2\times10^{-4}\)\(T=8\)\(\gamma=0.9\)\(\lambda_s=0.001\)\(\lambda_g=0.01\)。训练数据只有 SceneFlow(约 35K 立体对),不含任何真实、水下或域特定数据;面向实时场景时迭代预算可以降到 \(T=2\)。论文另外贡献了一个物理渲染的水下立体语料 SeaStereo-Dataset(约 40K 对,ShapeNetCore 前景 + 珊瑚/鱼/沉船背景 + 不同 Jerlov 水体类型)和一个实验室水箱采集的近距离(<2 m)真实评测集,细节均在补充材料。

实验关键数据

主实验

标准基准上所有方法都用官方发布权重、在带公开真值的训练划分上评测(Middlebury 取半分辨率 H)。本文刻意把模型保持在 ViT-B + 仅 SceneFlow 的规模,以隔离解码器本身的贡献;FoundationStereo(ViT-L + 大量额外数据)因此在这些基准上领先是可以预期的。下表的"同数据最强基线"仅指不使用额外训练数据的方法中最好者。

数据集 指标 本文 (ViT-B, 仅 SceneFlow) 同数据最强基线 说明
KITTI 2015 EPE / bad-3 1.01 / 4.54 MonSter 0.89 / 3.58 ViT-B 与 ViT-L 同台,仅在 EPE 上输给 MonSter
KITTI 2012 EPE / bad-3 0.76 / 3.49 MonSter 0.75 / 3.58 bad-3 最好,EPE 与 MonSter 基本持平
Middlebury (H) 全区域 EPE / bad-2 0.83 / 6.01 DEFOM-Stereo 0.84 / 5.91 全区域 EPE 最低
Middlebury (H) 遮挡区 EPE / bad-2 1.33 / 8.69 DEFOM-Stereo 2.11 / 19.34 遮挡区 EPE 低 37%,全场最大单项提升
ETH3D EPE / bad-1 0.24 / 2.41 MonSter 0.23 / 1.41 唯一明显落后项(bad-1 2.41 vs BridgeDepth 1.33)
Booster (Q) EPE / bad-2 2.14 / 9.93 Stereo Anywhere 2.21 / 9.91 透明/镜面场景,bad-2 差 0.02,属统计波动
TartanAir-UW AbsRel / RMSE 0.04 / 2.08 DEFOM-Stereo 0.05 / 3.13 RMSE 比 FoundationStereo(3.01) 低 31%
SQUID(真实水下) AbsRel / RMSE 0.04 / 0.90 RAFT-Stereo 0.07 / 1.25 甚至优于带额外数据的 IGEV++(0.06/1.11)
实验室水箱 (<2 m) AbsRel / RMSE 0.04 / 0.07 IGEV++ 0.05 / 0.12 近距真实水下,全面最好

水下两表(Tab. 2)里,只训 SceneFlow 的 LinStereo 在 TartanAir-UW 与 SQUID 上都拿到最优,且超过使用真实/域内数据的 Selective-Stereo、IGEV-Stereo、IGEV++ 与 FoundationStereo。最大增益出现的方向与各基准的主导退化因子一致:TartanAir-UW 是长程回散射(RMSE 领先),SQUID 是颜色衰减(AbsRel 领先)。⚠️ 摘要称 TartanAir-UW 上 AbsRel 降低 28%、SQUID 上降低 26%,但按表格数值(0.05→0.04、0.06→0.04)反推约为 20% 与 33%,与正文的 31% RMSE / 26% AbsRel 表述也不完全对齐,以原文为准。

消融实验

(a) PALA 逐项添加(Tab. 4,KITTI 2015 / TartanAir-UW,\(T=8\)):

配置 KITTI EPE / bad-3 TartanAir-UW AbsRel / RMSE 说明
(A) 全局线性注意力 1.18 / 5.32 0.052 / 2.55 位置无关的原始线性注意力基线
(B) (A) + 全局空间编码 1.12 / 5.05 0.047 / 2.38 单步增益最大的一步
(C) (B) + 局部空间编码 1.06 / 4.76 0.043 / 2.22 强化邻域一致性
(D) (C) + 自适应门控(Full PALA) 1.01 / 4.54 0.04 / 2.08 完整版
(D) 但改用对称 RoPE 1.05 / 4.76 0.042 / 2.18 非对称使用 RoPE 的必要性

(b) 三组件组合(Tab. 5a,同样在 KITTI 2015 / TartanAir-UW 上评测):

HSCV DPI PALA KITTI EPE / bad-3 TartanAir-UW AbsRel / RMSE
1.42 / 6.58 0.068 / 3.21
1.33 / 6.14 0.061 / 2.91
1.32 / 6.02 0.059 / 2.85
1.26 / 5.78 0.055 / 2.64
1.21 / 5.51 0.052 / 2.52
1.10 / 4.95 0.045 / 2.28
1.13 / 5.12 0.047 / 2.35
1.01 / 4.54 0.04 / 2.08
池化 1.07 / 4.82 0.043 / 2.21

(c) 效率(Tab. 6/Tab. 7,480×640,单张 RTX 4500 24 GB):

方法 参数量 (M) GFLOPs 时间 (ms) FPS
LightStereo-S 3.44 45.4 9.9 101.0
CoEx 2.73 70.6 11.0 91.0
RAFT-Stereo† 9.87 296.4 18.0 55.7
RT-IGEV 4.17 354.2 24.7 40.5
本文(\(T=2\) 127.0 770.4 80 12.5

单次更新算子延迟(Tab. 7):PALA 3.50 ± 0.05 ms,对比 RAFT-Stereo 的 ConvGRU 3.63 ± 0.06 ms、IGEV 的 ConvGRU 3.43 ± 0.03 ms——即全局线性注意力的一轮更新与局部 ConvGRU 同价。

关键发现

  • PALA 是单项贡献最大的组件,这与它是主要架构改动相符:单独加入即可把 KITTI EPE 从 1.42 降到 1.26,两个组件的组合里 HSCV + PALA 也仅次于全组合(1.10),说明全局注意力最需要的是逐尺度对齐的匹配信号。
  • 三组件是超加性的:三者单独带来的增益之和明显小于同时启用的 1.42→1.01;原因是 PALA 的全局推理要靠 HSCV 提供的逐尺度相关才有语义对齐的证据可用,而 DPI 的暖启动让精修能在更少迭代里收敛。
  • 恢复位置感知是"救活"线性注意力的关键:从 (A) 到 (B) 加入全局空间编码是整条添加链里单步增益最大的一步;而在位置编码内部,把 RoPE 非对称使用(只在分子)又比对称版本好一截(1.05→1.01)。
  • 迭代次数在 8 次附近饱和\(T=12\)\(T=16\) 相对 \(T=8\) 几乎没有收益(EPE 1.03 / 1.02 vs 1.01),而 \(T=2\) 会掉到 1.24——这既说明全局聚合让收敛更快,也为实时档位(\(T=2\))提供了依据。
  • 逐尺度对齐优于多尺度池化:把 HSCV 换成"池化后的单一多尺度特征"后 EPE 从 1.01 退化到 1.07,证实不是"用了多尺度"而是"每一级用与自己分辨率语义对齐的相关"在起作用。
  • 优势集中在退化区域:遮挡区(Middlebury H 遮挡 EPE −37%)、透明/镜面(Booster Q 与最强持平)、水下(AbsRel 0.04)这些"光度线索不可靠"的场景受益最大,符合"从可靠区向退化区传播"的机制解释;反过来,在有充足光度线索且极看重边缘细节的 ETH3D bad-1 上反而落后(2.41 vs 1.33)。

亮点与洞察

  • 非对称 RoPE:这是把线性注意力用到稠密预测任务上最实用的一条经验——分子加旋转位置编码拿回空间结构,分母保持原样守住归一化的稳定性。凡是"线性注意力 + 需要位置结构(光流、视差、可变形配准)"的场景都可以直接照搬这个写法。
  • 效率换了个维度:以往高效立体匹配都在砍架构(剪视差搜索空间、用 2D 聚合替 3D、去掉显式代价体),本文不动架构而是让每次迭代走得更远、从而减少所需迭代次数。Tab. 6 里 770 GFLOPs / 80 ms 的绝对值并不便宜(骨干占了 94% 参数),所以这个"效率"是"用更少迭代达到同等精度",和轻量化路线不可直接比大小——这一点读表时要心里有数。
  • 单目先验的正确用法:不去追度量单目模型的绝对尺度(分布外会漂),而是保留仿射不变表示的跨域鲁棒结构,把尺度交给标定立体对用几十个 SIFT 内点解一个二元最小二乘。极小的代价换来一个几何上合理的起点,且内点不足时能优雅回退。
  • "骨架可换"的设计取舍:论文刻意锁定 ViT-B + SceneFlow,把比较放到同一资源条件下,让"解码器带来多少增益"这个问题可被回答;换到 ViT-L 或更多数据应当继续受益(作者称设计是骨干无关的)。

局限与展望

  • 推理成本仍高:冻结的 DA3 占约 94% 参数(127 M 中约 120 M)与大部分推理时间,\(T=2\) 时也只有 12.5 FPS(480×640, RTX 4500),在算力受限平台上按完整迭代预算部署有困难。作者提出的方向是把骨干蒸馏成轻量模型。⚠️ 另外论文只报告了 \(T=2\) 的延迟与 Tab. 6 的 80 ms(与正文 \(T=2\) 一致),未给出 \(T=8\) 的完整延迟/FPS,读者无法直接比较"完整精度档"的实时性。
  • DPI 依赖手工稀疏匹配:SIFT 只做粗对齐,定位噪声会进入初值;在弱纹理或强退化场景内点可能不足(SQUID 上 3.7% 的帧回退到零视差)。作者建议未来换成轻量学习型稀疏匹配器。
  • 水下评测的指标与口径:TartanAir-UW / SQUID 只有深度真值,因此用 AbsRel 等深度域指标,与视差域 EPE 不能横比;实验室水箱一节只统计 AprilTag 有效真值像素,部分基线在背景上的大误差落在评测口径之外——作者已明示这一点,但这也意味着 Tab. 3 的优势需要配合定性结果一起读。
  • 自洽性上的小瑕疵:摘要与正文给出的百分比降低幅度与表格数值对不上(见上节注),主干结论方向不变,但读者应以表格为准。

相关工作与启发

  • vs RAFT-Stereo / IGEV 类迭代方法: 它们固定相关体、用局部 ConvGRU 反复查询,信息在图上的传播靠迭代次数堆积;IGEV 还额外引入了几何编码体并常配额外训练数据。本文保持"迭代 + 相关体查询"的范式不变,只把更新算子换成位置感知的线性注意力,于是每轮更新就能覆盖全图,在更少迭代下收敛(且单轮更新延迟与 ConvGRU 持平)。代价是更新算子的实现复杂度上升(RoPE、门控、双路编码)。
  • vs FoundationStereo / DEFOM-Stereo / Stereo Anywhere / MGStereo: 这批工作在"输入侧"做文章——换更强的 VFM 骨干、融单目先验、做零样本鲁棒化,但更新接口仍是局部的,因此存在"骨干能力 ↔ 更新触达范围"的错配。本文补的正是这一环,且刻意在同等骨干/数据规模下比较以证明增益来自解码器;在标准基准上它仍让位于 ViT-L + 额外数据的 FoundationStereo,属于比较条件差异而非方法劣势。
  • vs 高效立体匹配(LightStereo / CoEx / CGI-Stereo / Fast-ACVNet 等): 它们靠压搜索空间、换轻量聚合把 GFLOPs 降到几十、把 FPS 推到 80–100,但在水下等退化场景明显掉队(\(T=2\) 的本文 AbsRel 0.05 时最强高效基线仍 ≥0.07 一档)。两条路线并不互斥:把 HSCV/DPI 的效率设计与轻量骨干结合,是自然的下一步。

评分

  • 新颖性: ⭐⭐⭐⭐ 把线性注意力及其位置感知改造引入迭代式立体匹配的更新算子,非对称 RoPE 的取舍有实际洞察;但三组件各自(VFM 多尺度相关、单目暖启动、线性注意力)都有先例,贡献主要在组合与算子替换。
  • 实验充分度: ⭐⭐⭐⭐⭐ 五个标准基准 + 两个水下基准 + 一个自采实验室水箱,零样本与 \(T\) 扫描、组件消融、算子延迟对照齐备;扣分项是 \(T=8\) 的延迟未报、摘要与表格百分比不一致。
  • 写作质量: ⭐⭐⭐⭐ 动机—机制的链条讲得清楚,三组件定位明确;扣分在公式排版与若干数值表述的前后不一致。
  • 价值: ⭐⭐⭐⭐ "用更少的迭代换精度"是迭代式深度估计里一条可复用的路线,非对称 RoPE 与尺度-平移暖启动两个部件都能直接迁移到光流、多视图等任务。