From Perspective to Fisheye Depth Estimation and Open-Vocabulary Segmentation¶
会议: ECCV2026
论文: ECCV 2026
代码: https://github.com/Suchisrit/DEX
领域: 3D 视觉
关键词: 鱼眼相机 / 单目深度估计 / 开放词汇分割 / 畸变适配 / 隐空间对齐
一句话总结¶
本文提出 Distortion Extenders(DEX)——一组插进冻结主干每一层的轻量可学习调制器,通过在隐空间把鱼眼图像的特征分布拉回透视图像的特征分布,让只在透视数据上预训练的深度估计与开放词汇分割基础模型零样本迁移到鱼眼相机,训练不需要真值深度也不需要真实鱼眼图像,测试时不需要标定或重投影;在 ScanNet++、KITTI-360 与 WoodScape 三个真实鱼眼数据集上同时改善了 RMSE/δ1 与 mIoU,并且 DEX 的激活还能被解码回 KB 畸变系数用于相机标定。
研究背景与动机¶
今天的视觉基础模型是在上亿张互联网图像上训出来的,而这些图像绝大多数由普通透视相机拍摄,其成像几何可以被简单的针孔投影很好地近似。于是相机的投影几何偏见被"烤"进了这些模型的权重里:它们能泛化到千差万别的 3D 场景,却对投影模型本身高度敏感。现实部署(XR、机器人操作、自动驾驶)往往是混合相机系统,其中必然包含鱼眼等宽视场(wide FoV)镜头;这类镜头的投影是高度非线性的,越靠图像边缘的物体被压得越扭曲,局部像素排布与透视图像发生了系统性错位,特征编码随之偏移,最终表现为扭曲的 3D 重建和退化的识别结果——这是典型的协变量偏移(covariate shift),而不是模型"不够大"。
现有两条应对路线都不太令人满意。第一条是先把畸变"抹掉":用已知内参做矫正,或把图像重投影到等距柱状(ERP)、切平面、球面、cube map 等标准表示再送进网络。它们保持了与透视预训练模型的兼容性,代价是多次重采样、对测试时标定的强依赖,以及各自的固有伪影——ERP 在极点处纵向拉伸与角度压缩、切平面在边缘径向拉伸、cube map 在面的接缝处不连续;这些伪影还会被后续的卷积、token 化、patch embedding 进一步放大。第二条是为特定相机训练专用模型,或在大规模预训练模型上微调;但鱼眼数据的采集与标注规模远不及透视数据,微调又会带来参数漂移的风险——为了某台相机牺牲掉原本跨场景、跨相机的泛化性,而且混合相机平台不得不为每种镜头维护一套模型,工程复杂度陡增。
更关键的是,这两条路都试图把"相机模型的归纳偏置"重新塞回设计里:要么针对某类投影定制算子,要么为某种任务定制损失,于是用户在选择骨干架构和任务时都被绑住了手脚。本文的切入角度是换一个假设:既然冻结的预训练模型已经能从透视图像忠实推断 3D 场景,鱼眼图像上的错误就来自隐嵌入数值的偏移(源于畸变把像素位移、重排后局部算子的作用结果变了),那么只要把这些数值调制回"当初产生高保真估计的分布",就能把模型的能力延伸到鱼眼相机,而无须触碰投影几何、也无须重训骨干。核心 idea:冻结骨干、只在每一层插入一组可学习的"畸变扩展器",用输入特征自身的亲和度做凸组合来调制隐嵌入,并以"透视图像 + 其合成鱼眼副本"的反向几何对齐做自监督训练——同一套机制同时适用于 CNN 与 Transformer、适用于深度回归与开放词汇分割,且测试时无需标定。
方法详解¶
整体框架¶
形式化地说,给定一个在透视图像上预训练好的模型,它由图像编码器 \(f(\cdot)\) 与任务解码器 \(g(\cdot)\) 组成,两者在本文中都被冻结;推理就是 \(\hat{y}=g(f(I))\),回归任务(单目深度)时 \(C=1\),分类任务(开放词汇分割)时 \(C\) 随类别/文本标签数变化,\(\hat{y}\) 是图像与文本特征的亲和度 logits。DEX 要做的是在不改 \(f\)、\(g\) 的前提下,把鱼眼图像 \(I_f\) 的隐嵌入"翻译"成透视图像的隐嵌入分布。这件事需要两步:先判断畸变有多强、它在隐空间造成了什么影响,再决定要施加多大的反向调制——于是 DEX 由两部分构成:一组 \(M\) 个 Extender 调制参数 \(\mathbf{E}\in\mathbb{R}^{M\times D}\) 充当隐空间里的离散"中心",以及一个由权重矩阵 \(\mathbf{W}\) 参数化的"软"选择机制,让每个特征向量自己决定该用哪些中心的凸组合来纠正自身。整套参数按层组织为 \(\theta=\{\mathbf{E}^{(l)},\mathbf{W}^{(l)}\}_{l=1}^{L}\),插入到编码器的 \(L\) 个 block 之后。
训练阶段是自监督的:拿一张校准过的透视图像,用已知的 KB 畸变模型合成它的鱼眼副本,透视图过冻结主干得到参考输出,鱼眼图过"加了 DEX 的同一主干"得到待对齐的输出,再把鱼眼分支的输出用逆变换 \(T^{-1}\) 搬回透视参考系做空间对齐,最小化两者的差异。整个流程不需要任何真值、也不需要一张真实鱼眼图。测试阶段则完全相反地简单:把鱼眼图直接喂进加了 DEX 的模型即可,不需要标定、不需要重投影、不需要任何额外的推理时几何信息;多出来的开销只有几 MB 参数与毫秒级时延。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["校准透视图像 I"] --> B["合成鱼眼图像<br/>KB 畸变模型 T"]
A --> C["冻结主干 f<br/>透视参考输出"]
B --> D["Extender 软选择调制<br/>按畸变程度做凸组合"]
C --> E["反向几何对齐<br/>T⁻¹ 后最小化对齐损失"]
D --> E
E -->|深度任务| F["球面 range 参数化"]
E -->|分割任务| G["隐空间分割对齐"]
关键设计¶
1. Extender 软选择调制:用凸组合按畸变程度搬移隐特征
重投影、专用卷积核、相机专属归纳偏置这些做法有一个共同的隐含假设——整幅图的畸变程度是均匀的。可鱼眼畸变恰恰是径向且非均匀的:画面中心几乎等同于透视投影,越靠边缘偏差越大。用一个全局固定变换去纠正,等于让中心区域"过度矫正"、边缘区域"矫正不足"。DEX 的应对是把纠正动作下沉到每个特征向量:在编码器第 \(l\) 层的输出 \(\mathbf{X}^{(l)}\in\mathbb{R}^{(h\times w)\times D}\) 上(ViT 是 token,CNN 是展平的 feature vector,这一点正是架构无关的来源),先用 \(\mathbf{E}\) 与 \(\mathbf{W}\) 生成查询,再让特征与查询做缩放点积注意力得到亲和度,最后以亲和度为权重对 \(\mathbf{E}\) 取凸组合加回特征:
softmax 保证了权重非负且和为 1,因此 \(\mathbf{X}\mathbf{A}\mathbf{E}\) 是一组 Extender 的凸组合:\(\mathbf{E}\) 相当于隐空间里的一组"中心"或码本条目,而每个特征向量依据自身与查询的亲和度,自己挑选落在哪几个中心之间。因为畸变范围是连续的,而组合权重是连续的,这些中心就围出了一片能覆盖连续畸变强度的调制边界——输入特征越扭曲,选中的组合就越远离"无畸变"那一端。调制后的嵌入 \(\mathbf{X}^{(l)}+\mathbf{A}\mathbf{E}\) 被送入下一层以及各条 skip connection(⚠️ 公式 (2) 在缓存的 PDF 抽取结果中已损坏,此处按原文叙述还原,以原文为准)。为了抑制过参数化,\(\mathbf{W}\) 用低秩形式 \(\mathbf{W}_2\mathbf{W}_1^{\top}\) 表示(\(\mathbf{W}_1,\mathbf{W}_2\in\mathbb{R}^{d\times D}\),\(d\ll D\)),这来自一个具体判断:协变量偏移的源头是相机标定参数的变化,而标定空间的维度本就很低,所以承载它的变换也应该是低维的。与 Calibration Tokens 相比,DEX 既不需要向残差流里追加 token、也不需要逐层手动丢弃它们,还因为直接作用于特征向量的集合而天然支持 CNN;与 LoRA 相比,LoRA 是学一个权重矩阵把输入直接投影成加性偏置,而 DEX 是学一组调制器加一个选择投影,让输入特征自己决定凸组合的权重。
2. 反向几何对齐:只用透视图像做自监督训练
鱼眼数据的稀缺是这条路线最硬的约束:既没有足够多的真实鱼眼图,更难有配套的真值深度。本文绕开这个约束的方式是把"域偏移"本身做成监督信号:给定校准过的透视图像 \(I\),用 KB 畸变模型施加正向变换 \(T\) 得到合成鱼眼图 \(I_f=T(I)\);透视分支输出 \(\hat{y}=g(f(I))\) 作为参考,鱼眼分支输出 \(\hat{y}_f=g(f_\theta(I_f))\) 作为待对齐量;由于两者只是一次已知几何变换的差别,可以对 \(\hat{y}_f\) 施加逆变换 \(T^{-1}\) 把它搬回透视参考系,再最小化对齐损失,即优化
这一设计的巧妙之处在于监督信号与被监督量之间只隔着一个已知且可逆的几何变换。模型因此被逼着去学"如何让畸变特征产生与透视特征一致的预测",而不是去拟合某台特定相机的成像特例;整个训练过程既不需要真值也不需要真实鱼眼图像,唯一的成本是合成畸变的那几步重采样。它也解释了后文那个有点反直觉的结果:同一套 Extender 能同时服务室内(ScanNet++)与室外(KITTI-360)两个畸变参数、场景类型都不同的域——它借用的其实是冻结骨干自身已有的泛化能力,DEX 只是把这份能力"重新对齐"到宽视场输入上。整体训练范式沿用 AugUndo 的自监督思路,与直接微调骨干相比,冻结骨干从根本上规避了参数漂移。
3. 球面 range 参数化:把深度输出从笛卡尔换成沿视线距离
透视模型输出的是 z 深度(笛卡尔坐标下的前向距离)。当 FoV 变大,图像边缘像素的射线几乎与光轴垂直,同样的物理距离在 z 方向上被压得极大——这正是透视预训练模型在鱼眼边缘出现"径向衰减"的直接原因;而 KITTI-360 这类室外数据的 FoV 比室内更大、畸变更剧烈,笛卡尔参数化要求模型在不同畸变强度下重新学一遍尺度关系。DEX 因此在深度分支上顺手改掉输出参数化:把透视分支的深度图按像素转成球面 range,让鱼眼分支直接回归 \(R\)。对每个像素,由归一化像平面坐标与深度组合,可得
由于 DEX 本身就是在学"如何把一种坐标下的输出搬到另一种坐标下",从笛卡尔到球面的重投影对它来说只是多了一个可学目标,两者共用同一套 Extender。\(R\) 沿视线方向度量、与像素落在画面何处无关,边缘处不会出现 z 那样的数值爆炸。消融实验把这一点量化得很清楚:去掉 \(R\) 扩展后,ScanNet++ 的 RMSE 从 0.200 涨到 0.249、δ1 从 0.872 跌到 0.792;室外 KITTI-360 上更是从 1.663 崩到 7.024、δ1 从 0.842 掉到 0.271,是全部消融项里最大的一次掉点,也印证了"FoV 越大,坐标参数化越关键"。
4. 隐空间分割对齐:在图像嵌入上监督,绕开文本模态
开放词汇分割的架构通常是把图像编码器和文本编码器分开,最后用内积比较图像嵌入与文本嵌入来给像素定类。如果把对齐损失直接加在网络最终输出(也就是与文本模态相乘之后的 logits)上,监督信号会被文本侧的不确定性稀释;而畸变实际污染的只有图像编码器这一段,文本编码器与它无关。DEX 因此把监督位置前移到图像编码器最后一层的嵌入:比较透视图像嵌入与(对齐后的)鱼眼图像嵌入,
(⚠️ 原 PDF 中该式的抽取有损,等号右侧是否显式包含 \(T^{-1}\) 请以原文为准。)文本分支保持冻结,推理时照常做内积取类别。这个改动看着小,却是 DEX "任务无关"的由来:深度与分割用的是同一形式的目标,只是被对齐的张量不同——一个在输出空间、一个在隐空间。也正因为监督压在隐层,才能顺带用 t-SNE 直接观察到"加了 DEX 之后,鱼眼图像特征与同一场景的透视图像特征几乎重合"这一现象。
损失函数 / 训练策略¶
训练目标是统一的:先在输出空间对齐(深度分支),\(\mathcal{L}(\hat{R},\hat{R}_f)=\log(|\hat{R}-\hat{R}_f|+1)\) 形式,用 log 压缩大误差;分割分支则改在隐空间对齐(上式)。训练数据全部是校准过的透视图像——NYUv2(室内通用)、VOID(办公室/教室/楼梯间)、IRS(合成室内)、Hypersim(高质量真实感室内)与 Waymo(城市驾驶),混合成约 200K 规模的训练集(VNL 用 80K),按 KB 模型合成鱼眼副本。整套 Extender 参数共享于室内与室外两个评测域。推理开销极小:UniDepthV2 上只多 2.8 MB 显存、+0.3 ms;LSeg 上多 6.1 MB、+2.21 ms,相对 0.7 GB / 2.9 GB 的骨干内存几乎可以忽略。此外,作为副产品,DEX 的激活可以被解码回畸变系数(见实验部分),这部分引入的线性探针 \(\mathbf{W}_D\) 与跨层加权 \(\mathbf{W}_L\) 用同一批训练数据优化。
实验关键数据¶
主实验¶
表 1:单目深度估计(MDE)在真实鱼眼数据集上的零样本表现(RMSE↓ / δ1↑)。同一套 Extender 同时用于室内与室外。
| 测试集 | 模型 | 训练数据 | Base | +LoRA | +Calibration Tokens | +DEX |
|---|---|---|---|---|---|---|
| ScanNet++ [68] | MiDaS [39] | Mix 1.4M / 200K | 0.672 / 0.479 | 0.561 / 0.599 | 0.413 / 0.688 | 0.397 / 0.702 |
| ScanNet++ [68] | DepthAnything [65] | Mix 63.5M / 200K | 0.705 / 0.454 | 0.706 / 0.445 | 0.479 / 0.667 | 0.414 / 0.708 |
| ScanNet++ [68] | UniDepthV2 [36] | Mix 16M / 200K | 0.329 / 0.671 | 0.235 / 0.854 | 0.223 / 0.841 | 0.200 / 0.872 |
| ScanNet++ [68] | VNL [69](CNN) | NYUD-V2 29K / Mix 80K | 0.680 / 0.521 | — | — | 0.372 / 0.704 |
| ScanNet++ [68] | UniK3D [35](对比方法) | Mix 12M / 200K | 0.223 / 0.825 | 0.218 / 0.835 | — | — |
| ScanNet++ [68] | DepthAnyCamera [13](对比方法) | Indoor 670K | 0.390 / 0.852 | — | — | — |
| KITTI-360 [26] | MiDaS [39] | Mix 1.4M / 200K | 6.111 / 0.312 | 2.479 / 0.601 | 2.588 / 0.699 | 2.451 / 0.657 |
| KITTI-360 [26] | DepthAnything [65] | Mix 63.5M / 200K | 6.484 / 0.318 | 2.224 / 0.676 | 2.897 / 0.550 | 2.022 / 0.745 |
| KITTI-360 [26] | UniDepthV2 [36] | Mix 16M / 200K | 7.093 / 0.262 | 1.916 / 0.771 | 1.788 / 0.763 | 1.663 / 0.842 |
| KITTI-360 [26] | VNL [69](CNN) | KITTI 24K / Mix 80K | 7.719 / 0.245 | — | — | 2.222 / 0.605 |
| KITTI-360 [26] | UniK3D [35](对比方法) | Mix 12M / 200K | 2.969 / 0.812 | 2.802 / 0.818 | — | — |
| KITTI-360 [26] | DepthAnyCamera [13](对比方法) | Outdoor 130K | 3.641 / 0.789 | — | — | — |
表 2:开放词汇分割与多任务。LSeg/SED 在 WoodScape 上评测(mIoU↑ / weighted IoU↑);PanopticDepth 是深度 + depth-aware 全景分割的多任务框架。
| 测试集 | 模型 | 配置 | 训练数据 | mIoU ↑ | weighted IoU ↑ |
|---|---|---|---|---|---|
| WoodScape [70] | LSeg [22] | Baseline | Mix 500K | 0.305 | 0.819 |
| WoodScape [70] | LSeg [22] | w/ Calibration Tokens | Mix 50K | 0.321 | 0.823 |
| WoodScape [70] | LSeg [22] | w/ Distortion Extenders | Mix 50K | 0.362 | 0.838 |
| WoodScape [70] | SED [62](CNN) | Baseline | Mix 120K | 0.439 | 0.829 |
| WoodScape [70] | SED [62](CNN) | w/ Distortion Extenders | Mix 50K | 0.449 | 0.832 |
| WoodScape [70] / KITTI-360 [26] | PanopticDepth [11] | Baseline | — | 0.160(mIoU)/ RMSE 7.273 | 0.300 |
| WoodScape [70] / KITTI-360 [26] | PanopticDepth [11] | w/ Distortion Extenders | — | 0.282(mIoU)/ RMSE 3.583 | 0.833 |
消融实验¶
表 3:以 UniDepthV2 为骨干的消融(RMSE↓ / δ1↑)。去低秩分解与去掉球面 \(R\) 扩展各自代表一项架构决策。
| 数据集 | 配置 | RMSE ↓ | δ1 ↑ | 说明 |
|---|---|---|---|---|
| ScanNet++ [68] | Distortion Extenders | 0.200 | 0.872 | 完整模型 |
| ScanNet++ [68] | w/o \(\hat{R}\) Extension | 0.249 | 0.792 | 退回笛卡尔 z 深度,室内也明显掉点 |
| ScanNet++ [68] | w/o Low-Rank Decomposition | 0.216 | 0.849 | 过参数化带来轻微退化 |
| KITTI-360 [26] | Distortion Extenders | 1.663 | 0.842 | 完整模型 |
| KITTI-360 [26] | w/o \(\hat{R}\) Extension | 7.024 | 0.271 | 室外宽 FoV 下几乎失效 |
| KITTI-360 [26] | w/o Low-Rank Decomposition | 1.777 | 0.800 | 掉点幅度小于 \(R\) 扩展 |
表 4:DEX 激活解码 KB 畸变系数(ScanNet++,误差越低越好)。
| 指标 | k1 | k2 | k3 | k4 | 平均 |
|---|---|---|---|---|---|
| MSE ↓ | 2.04×10⁻⁶ | 1.53×10⁻⁶ | 3.53×10⁻⁷ | 8.87×10⁻⁹ | 9.81×10⁻⁷ |
| MAE ↓ | 1.17×10⁻³ | 9.88×10⁻⁴ | 5.27×10⁻⁴ | 7.05×10⁻⁵ | 6.88×10⁻⁴ |
| MAPE (%) ↓ | 3.91 | 14.30 | 41.86 | 78.61 | 34.67 |
关键发现¶
- 球面 \(R\) 参数化是贡献最大的单项,且随 FoV 放大而放大:ScanNet++ 上从 0.200 → 0.249,KITTI-360 上从 1.663 → 7.024。室内外差距如此悬殊,说明笛卡尔 z 深度在宽 FoV 边缘的数值退化是主要失效模式,而不是次要细节。
- 低秩分解的收益是"防过参数化"性质的,量级不大但稳定:ScanNet++ 0.200 → 0.216,KITTI-360 1.663 → 1.777;与 \(R\) 扩展相比属于锦上添花。
- 平均指标上的提升幅度:室内 MDE 相对 LoRA 与 Calibration Tokens 平均改善 RMSE 19%、δ1 15%;UniDepthV2 + DEX 相对 UniK3D 在各项指标上平均改善 8%。室外 KITTI-360 上相对两者平均改善 RMSE 11%、δ1 11%。分割上,DEX 相对 Calibration Tokens 提升 mIoU 约 13%。
- 诚实标注一处反例:KITTI-360 的 MiDaS 一行,DEX 的 RMSE 更低(2.451 vs 2.588)但 δ1 略低于 Calibration Tokens(0.657 vs 0.699),说明"全面优于"的说法在个别指标上并不成立;把三个骨干合起来看,DEX 的优势才稳定成立。
- 对比 UniK3D 需要 caveat:UniK3D 本身已在大规模鱼眼数据(ASE、aiMotive、HOI4D、DL3DV 合计约 3.263M 样本)上训练过,而 DEX 只用了约 200K 混合样本;对 UniK3D 再套一层 LoRA 也只能小幅改善(2.969 → 2.802),作者据此推测其性能已接近饱和,小规模适配难以带来额外增益。两者训练数据规模不可直接比大小。
- 预训练数据的广度是前提条件:由于监督信号来自冻结骨干的透视输出,DEX 的性能上限就是骨干自身的质量。作者强调骨干(FMDE 与开放词汇分割模型)都在数千万到上亿张图上训练过,因此训练集可以"随便挑";但对小规模模型,选训练集就得格外小心。
- 网络确实在"用"Extender,而不只是把它当噪声:DEX 激活经简单线性探针可解码 KB 系数,且精度严格按 \(k_1 > k_2 > k_3 > k_4\) 衰减(MAPE 3.91% → 14.30% → 41.86% → 78.61%)。这与畸变系数的视觉效应一致——\(k_1\) 的微小变化在图像上的影响远大于 \(k_4\),因此靠后的系数本身鉴别力弱、恢复不确定性大。作者也用可视化验证了这一点:把全部系数按平均误差扰动后,合成出的两张鱼眼图肉眼几乎无差别,说明后段系数本就难以高保真恢复。
亮点与洞察¶
- 把"几何问题"重构成"分布对齐问题":整篇论文最"啊哈"的地方是不去建模投影几何、不做重投影,而是主张畸变的后果只体现在隐嵌入的数值已经偏离了预训练时见过的分布,于是把相机适配变成一个纯隐空间的分布搬移任务。这一步换视角直接消掉了标定依赖、重采样伪影和相机专属归纳偏置三件事。
- "已知且可逆的几何变换"充当免费监督:透视图 → 合成鱼眼图的畸变是可逆的,于是透视分支的输出天然成为鱼眼分支的标签,训练不需要任何真值。这个套路(冻结骨干 + 合成域偏移 + 逆变换对齐 + 轻量调制器)本身是通用的,可以迁移到任何"输入被已知变换污染、但任务输出应当不变"的场景,例如运动模糊、卷帘快门、色彩/曝光偏移,甚至传感器域差异。
- 任务无关性来自损失写在哪一层:分割任务没有把损失压在 logits 上,而是压到图像编码器末层嵌入,绕开了文本模态带来的稀释。这种"把对齐放在两种模态分叉之前"的做法,可以迁移到任何图文双塔的适配场景(检索、指代分割、开放词汇检测)。
- 副产品:适配器激活 = 标定信息:DEX 的凸组合权重其实是逐层、逐样本的畸变强度表征,用线性探针就能读出 KB 系数,且不需要额外的标定网络。这对需要在线标定或标定漂移监测的部署场景很实用。
- 可插拔且极轻:2.8 MB / +0.3 ms(深度)与 6.1 MB / +2.21 ms(分割)的开销,使它能作为"外挂"装到已有模型上,而不必替换整套部署栈——这在混合相机系统里比训练一个统一模型更现实。
局限与展望¶
- 性能上限被骨干锁死(作者主动承认):因为监督信号是冻结骨干在透视图上的输出,骨干错了 DEX 就学错;作者用"骨干都是在数千万到上亿张图上训过"来论证训练集可以随意选,但也承认对小规模模型必须谨慎选择训练集。一个直接后果是:DEX 无法纠正骨干在透视图像上就已经存在的系统性错误。
- 合成畸变与真实镜头的域差没有被量化:训练用的是 KB 模型合成的鱼眼图,评测却落在真实鱼眼数据上,论文没有给出"合成→真实"的敏感性分析(例如训练时用非 KB 模型、或合成参数分布与测试镜头不匹配时性能如何退化)。
- 对比基线里缺少"直连微调"一行:目前比的是 LoRA、Calibration Tokens 与 UniK3D,没有把"直接在 200K 鱼眼(合成)数据上微调骨干"作为对照。由于 DEX 冻结骨干,这个对照恰好能验证"冻结"这一设计选择的收益究竟来自何处。
- 校准副产品的精度在后段系数上较弱:\(k_3\)、\(k_4\) 的 MAPE 分别达 41.86% 与 78.61%,作者用视觉不敏感性解释了这个现象,但这意味着"DEX 可直接当标定器用"的说法只对前两个系数成立;若真要用于标定,需要额外的约束(例如只回归 \(k_1,k_2\),或结合标定板等强先验)。
- 可改进方向:(1) 把 Extender 数 \(M\) 与秩 \(d\) 的选择做成显式消融,并考察它们与畸变强度分布的关系;(2) 引入真实鱼眼数据做少量弱监督校准,缩小合成→真实域差;(3) 把同一框架推广到鱼眼上的其他任务(光流、3D 检测、VLA),检验"隐空间对齐"是否真的与任务无关。
相关工作与启发¶
- vs Calibration Tokens [10](最接近的同期工作):它也把透视预训练的 FMDE 扩展到鱼眼,但做法是向 Transformer block 追加可训练 token。四点区别:(1) DEX 架构无关,CNN 与 Transformer 都能用,token 方案绑死 Transformer;(2) Calibration Tokens 需要在每层之后手动移除追加的 token,DEX 不追加也不丢弃任何元素,而是用亲和度自动决定凸组合权重;(3) Calibration Tokens 的损失是深度专属的,DEX 的损失形式对深度与分割都适用;(4) 一个次要区别是 Calibration Tokens 输出 z 深度(笛卡尔),DEX 输出 range(欧氏)。表 1、表 2 显示 DEX 在两类任务上都优于它。
- vs LoRA [16]:LoRA 学一个权重矩阵,把输入直接投影成加性偏置;DEX 学的是"一组调制器 + 一个选择投影",让输入特征自己决定凸组合权重。表 1 里 LoRA 在 DepthAnything 上甚至比 base 还差(0.706 vs 0.705),说明一般的参数高效微调并不自动适合畸变适配——因为畸变造成的偏移不是低秩权重扰动那种形式。
- vs UniK3D [35] / DepthAnyCamera [13] / FoVA-Depth [27]:这一线走的是"输入或内部表示重投影到标准空间"(球面内部表示、ERP、cube map)并混合多相机数据训练。DEX 与之相反,既不重投影也不引入球面算子,而是在隐空间对齐;代价是性能依赖骨干,收益是极低的部署成本与对畸形输入零假设。
- vs AugUndo [61]:DEX 的自监督训练范式直接建立在 AugUndo 之上(用合成增广及其逆变换构造监督),但 AugUndo 面向的是深度补全/估计的增广扩展,而 DEX 把"域偏移"本身当作要消除的对象,并引入了可插拔的调制器而不是微调主干。
- 启发:这套"冻结骨干 + 轻量隐空间调制 + 逆变换自监督"的三件套,本质上是给任何"输入分布被已知机制改变、任务语义不变"的适配问题提供了一个通用模板;其可迁移性已在同一篇论文里由深度(输出空间对齐)与分割(隐空间对齐)两个任务各自验证过一次,值得作为后续多传感器/多模态适配的默认起点。
评分¶
- 新颖性: ⭐⭐⭐⭐☆ 把鱼眼适配从"几何矫正"重构成"隐空间分布对齐",并给出架构/任务无关的轻量实现与标定副产品,角度干净;但组件层面(低秩调制 + 亲和度凸组合)与 LoRA/注意力写法有亲缘,属于组合式创新。
- 实验充分度: ⭐⭐⭐⭐☆ 覆盖 3 个真实鱼眼数据集、5 个骨干(含 CNN 与 ViT)、两类任务,还有 t-SNE、低秩与坐标参数化消融、开销对比;不足是缺"直接微调骨干"的对照与合成→真实的域差分析。
- 写作质量: ⭐⭐⭐⭐☆ 动机链条清楚,与 Calibration Tokens 的四点区分写得很具体;但方法章节的公式在原文排版中部分损坏,且表 1 的排布密集,需要读者自己对齐行。
- 价值: ⭐⭐⭐⭐☆ 部署成本低(MB 级参数、毫秒级时延)、即插即用、不改骨干,对混合相机系统与已有基础模型流水线的改造门槛极低;同时把"适配器激活即标定信息"做成可用副产品,实用价值高于同类适配工作。