# EXP-3D-RGBD-ENSEMBLES-ARKIT-V1:两个集成在真实传感器数据(ARKitScenes)上的检验 **结论:** - **TTT 集成在真实数据上复现:B1 = TTT_ENSEMBLE_CONSISTENT,B2 = TTT_NEEDED。** - √(REPROJ7 × TTT) 在 71/80 个真实扫描上胜过 7 帧无模型重投影(+0.0049,SUPPORTED)。 - TTT 是必要的:60/80(SUPPORTED)。 - TTT 单独也稳定胜过无模型重投影(62/18)。 - 但绝对收益小:ALL AbsRel 从 0.121 降到 0.116(集成)或 0.114(TTT 单独),相对约 4–6%。 - **补全集成没有在真实数据上得到可信的复现:A1 = ENSEMBLE_PARTIAL,A2 = JEPA_NO_ADD。** - 预注册主检验 (调和 + J + G1) / 3:+0.422,56/24,PARTIAL。 - (调和 + G1) / 2 为 60/20,恰好达到 75% 的门槛(SUPPORTED)。 - 但事后检查表明,这主要是偏差抵消,而不是学到的补全提供了信息(见下文)。 - 逆向 JEPA 在 ARKit 上单独不比调和插值好(−0.023),加入集成也没有帮助(−0.009)。 **说明:** - 预注册见 [PROTOCOL.md](PROTOCOL.md)。2026-10-08 12:08:56 锁定,sha256 `6947f14f…`。 - 数据为 EXP-3D-RGBD-ARKIT-VAL-DATA-V1:ARKitScenes 3dod Validation 折,按种子顺序选场馆,按锁定的规则得到 80 个合格的真实扫描,共 160 个 episode、320 个查询。 - 所有模型都从没见过 ARKitScenes。 - 统计单位是场景,bootstrap 10,000 次,种子 20260928,判定用 V2 gate。分析运行两次,结果逐字节相同。 - ARKitScenes 只用于非商业研究,媒体文件放在 git 之外。 ## 主检验 | 检验 | 对比(> 0 表示右边更好) | 区域 | 均值 | 95% CI | 好/平/差 | 状态 | | --- | --- | --- | ---: | --- | --- | --- | | A1 | H3 − HJG | FAR | +0.4216 | [+0.2913, +0.5618] | 56/0/24 | PARTIAL | | A2 | HG − HJG | FAR | −0.0086 | [−0.0183, +0.0009] | 22/17/41 | NOT_ESTABLISHED | | B1 | R7 − √(R7 × TTT) | ALL | +0.0049 | [+0.0034, +0.0065] | 71/0/9 | **SUPPORTED** | | B2 | √(R7 × CACHE) − √(R7 × TTT) | ALL | +0.0031 | [+0.0012, +0.0050] | 60/0/20 | **SUPPORTED** | ## 次要分析 | 编号 | 对比(> 0 表示右边更好) | 区域 | 均值 | 好/平/差 | 状态 | | --- | --- | --- | ---: | --- | --- | | SA1 | H3 − HG | FAR | +0.4303 | 60/0/20 | SUPPORTED | | SA2 | H3 − G1 | FAR | +0.1504 | 47/0/33 | PARTIAL | | SA3 | H3 − J | FAR | −0.0226 | 30/17/33 | NOT_ESTABLISHED | | SA4 | H3 − JG | FAR | +0.1536 | 44/0/36 | PARTIAL | | SA5 | G1 − HG(向调和收缩) | FAR | +0.2799 | 63/0/17 | SUPPORTED | | SA6 | H3 − HJG | ALL | +0.4161 | 53/0/27 | PARTIAL | | SA7 | H3 − HG | ALL | +0.4180 | 60/0/20 | SUPPORTED | | SB1 | R7 − TTT | ALL | +0.0069 | 62/0/18 | SUPPORTED | | SB2 | CACHE − TTT | ALL | +0.0067 | 63/0/17 | SUPPORTED | | SB3 | R7 − (R7 + TTT) / 2 | ALL | +0.0047 | 71/0/9 | SUPPORTED | | SB4 | R7 − √(R7 × CACHE) | ALL | +0.0018 | 51/0/29 | PARTIAL | | SB5 | R7 − CACHE | ALL | +0.0001 | 39/0/41 | NOT_ESTABLISHED | | SB6 | B1 | NEAR7 | +0.0050 | 68/0/12 | SUPPORTED | | SB7 | B1 | FAR7 | +0.0027 | 52/8/15 | SUPPORTED | ## 各读出的均值(场景平均 AbsRel) | 补全集成(FAR) | 均值 | 中位数 | TTT 集成(ALL) | 均值 | 中位数 | | --- | ---: | ---: | --- | ---: | ---: | | H3(调和) | 0.839 | 0.597 | R7(7 帧重投影) | 0.1209 | 0.0844 | | G1 | 0.688 | 0.781 | CACHE | 0.1208 | — | | J(FAR 覆盖率 0.376) | 0.861 | 0.659 | TTT | 0.1141 | 0.0783 | | HG | 0.408 | 0.382 | √(R7 × TTT) | 0.1161 | 0.0803 | | HJG | 0.417 | — | √(R7 × CACHE) | 0.1191 | — | ## 探索性事后检查:补全集成的收益从哪里来(未预注册,`exploratory_posthoc/`) 在 ARKit 上,G1 的 FAR AbsRel 的 90 分位和最大值正好都是 1.0:它在大量像素上输出接近 0 的深度。这是旧载体的读出方式造成的:深度是 Σ w·t,没有除以可见度(V22 发现的偏差),不透明度低时深度就塌向 0。为此做了逐场景检查,同样的检查也在 Hypersim 的 EVAL34 上做了: | FAR | ARKit | EVAL34(Hypersim) | | --- | ---: | ---: | | G1 塌缩(G1 < 0.25 × H3)的像素比例 | 0.53 | 0.07 | | H3 中位对数偏差 log(预测 / 真值) | +0.10(偏远) | −0.06 | | G1 中位对数偏差 | −3.65 | −0.21 | | 纯收缩 0.5 × H3 相对 H3 | +0.305,35/45 | −0.086,19/60 | | 纯收缩 0.75 × H3 相对 H3 | +0.205,45/35 | +0.021,27/52 | | HG 相对 0.5 × H3 | +0.126,45/18/17 | +0.218,67/12 | **读法:** - **在 Hypersim 上:** 调和插值基本无偏,单纯收缩只会变差,HG 远好于 0.5 × H3。补全集成的收益来自 G1 提供的信息,COMPLETION-ENSEMBLE-V1 的结论成立。 - **在 ARKit 上:** G1 迁移失败,一半 FAR 像素塌缩到接近 0。在 18 个场景里,HG 与 0.5 × H3 完全相同。调和插值在 ARKit 上偏远;把它减半本身就能改善均值,但不稳定(35/45)。所以 ARKit 上 HG 的"通过",很大一部分是两种相反偏差的抵消,不能当作学到的补全在真实数据上有效的证据。 ### 归一化的 G1 读出(事后,`exploratory_posthoc/norm_g1_check_*.txt`) - **读出定义:** G1N 在不透明度 ≥ 0.5 处为 深度 / 不透明度,其余为 H3,再对种子平均;HGN = (H3 + G1N) / 2。 - **ARKit:** - G1 在 50% 的 FAR 像素上不透明度 < 0.5,即正好是塌缩区域。 - HGN 相对 H3:+0.046 [+0.025, +0.068],48/18/14(中位数 +0.005)。G1N 单独:+0.039,41/18/21。 - 去掉偏差抵消之后,学到的补全在真实数据上只剩一个小而大致一致的改善。 - **EVAL34:** G1 只在 0.9% 的像素上弃权,HGN 为 +0.139,64/15,与 HG 一致。 - **复现:** 这个读出要在新的真实扫描上预注册复现,见 EXP-3D-RGBD-COMPLETION-ENSEMBLE-ARKIT-CONFIRM-V1。 ## 解读 - **TTT 在真实传感器上站得住:** 在学到的 DepthSplat 状态上做测试时优化,再与测量驱动的重投影平均,稳定优于无模型方法;TTT 本身也是必要的。真实 LiDAR 测量已经相当准(R7 的 ALL 中位数 0.084),所以绝对收益小。 - **学到的补全在真实数据上没有得到支持:** - 旧载体 G1 只在合成数据上训练,在 ARKit 上大面积失效。 - 新基座上的逆向 JEPA(J)在 ARKit 上只覆盖 38% 的 FAR,单独不比调和插值好。 - 合成数据上通过的补全集成,在真实数据上的表面通过来自偏差抵消。 - **对整个项目的含义:** Core B(测试时写入)有跨数据来源的稳定证据。Core A(学到的补全)的价值目前只在合成数据上成立,在真实数据上需要能迁移的补全模型;至少需要在真实数据上训练,或使用归一化的深度读出。 ## 完整性 - 读真值前,arms 封存、几何封存(复核差 0.0)与 J1–J3、ZS 的 DepthSplat 封存都已完整,`query_depth_read = false`。 - TTT:160 个 episode 失败 0 次,7 帧上的深度项从 0.080 降到 0.021。 - 两次分析的结果逐字节相同(`audit/score.log`)。锁定的代码与协议没有改动。 ## 文件 - `PROTOCOL.md`、`preregistration.json`、`frame_role_lock.json`、`evaluation_contract.json`、`manifest_arkit_val80.json` - `code/` - `raw/eval/ARKIT_VAL/`:arms 封存 - `geometry/`:几何封存 - `ds/ARKIT_VAL/`:J1–J3 与 ZS 的封存 - `scores/`、`results/`、`exploratory_posthoc/`、`audit/` - 数据准备:`../EXP-3D-RGBD-ARKIT-VAL-DATA-V1/` ## 2026-10-09 补充(EXP-3D-RGBD-DEPTHSPLAT-JEPA-ARKIT-V1 的修订 1 与事后拆分) - **调和插值偏远的原因已查明。** - 本队列 320 个查询中,有 150 个与 3 个上下文帧完全没有重叠;其中 30 个场景的所有查询都如此。 - 在这些查询上,调和插值整张图都是补洞常数 2.37 m。事后偏差检查里看到的"调和插值偏远"就来自这里。 - **B1、B2(TTT 集成)不受影响:** 加上 4 个流式帧后,只有 2/320 个查询没有命中。 - **A 部分(补全集成)应按"是否有重叠"重新解读。** 只看有重叠的查询(50 个场景,探索性),归一化 G1 集成 H3 − HGN = +0.0406 [+0.0167, +0.0654],34/0/16。 - 详见 [EXP-3D-RGBD-DEPTHSPLAT-JEPA-ARKIT-V1](../EXP-3D-RGBD-DEPTHSPLAT-JEPA-ARKIT-V1/README.md)。