📐 传感器融合重建方案(视频 + IMU)

任务书编号 P2-FUSION · 2026-09-09 · 方案评审中,未实施

一、命题

只靠手机视频 + 手机 IMU 两种传感器,把室内重建做好。不重新采集,先在现有两段视频(69MB/49s 与 17.4MB/19s,均含 IMU)上死磕验证。

二、现状与差距(质检实测,2026-09-09)

指标69MB 段17.4MB 段目标值
每机位三角化点数14.224.4> 200
最大平面内点占比4.7%3.4%地板 > 30%
竖直(Y)范围漂移全负±15m 乱飘0 ~ 3m(真实层高内)
场景结构无定形点团雾状椭圆斑墙面/地板/走廊可辨识
机位轨迹连续性✅ 连续✅ 连续保持

诊断结论:配准(轨迹)没问题,输在两处——①纯视觉 SfM 无重力约束,竖直漂移无人拉住;②弱纹理段(白墙正推)视觉匹配大面积失败,三角化点稀疏且外点多。这两处恰好都是 IMU 能治的病。

三、IMU 弹药盘点(已核实)

项目实测
传感器陀螺仪(角速度)+ 加速度计,各 50Hz
覆盖69MB 段 49.2s / 17.4MB 段 19s,与视频时长吻合
时间对齐双钟锚定(t0nano ↔ t0sensor),帧级对齐可插值
重力信号静止段 |a|=9.83 m/s²,重力主轴清晰(竖屏 Y 轴朝天),信号干净
数据格式JSONL:首行 {t0nano,t0sensor},其后 {t, g:[3]} / {t, a:[3]} 交替

四、融合方案(三层,按性价比排序)

P0 必做 层 1 · 重力约束全局对齐(治竖直漂移)

原理:每帧时刻 t,从加速度计序列低通滤波插值出「重力在手机坐标系的方向」g_phone(t)(低通截止 ~0.5Hz,滤掉手抖运动加速度,只留恒定重力分量)。

对 SfM 解出的每帧相机旋转 Rw2c(t):
重力变换到世界系 → g_world(t) = Rw2c(t) · g_phone(t)
物理事实:无论相机怎么动,所有帧的 g_world 必须同一个方向(真实重力)。
求解:收集全部帧的 g_world 向量 → SVD 求主方向 ĝ 与各帧偏差 → 构造旋转 Ralign 使 ĝ → −Y → 全局一次性旋转校正。

收益:竖直漂移被真实重力拉正(替代现在 RANSAC 猜地板法向的碰运气),Y 轴直接变干净;同时暴露哪些帧位姿可疑(g_world 偏离 ĝ 大 = 该帧旋转解错了)。

改动面:worker 导出阶段(纯后处理,不动 SfM 本体),风险低。

P0 必做 层 2 · 陀螺仪旋转先验(治弱纹理配错)

原理:陀螺仪角速度 ω(t) 在相邻两帧 ti→ti+1 间积分,得帧间相对旋转 ΔRimu(对Roll-Pitch用重力二次校正,Yaw 纯积分)。SfM 解出的帧间旋转 ΔRsfm 与之比对:

d(i) = angle( ΔRsfm(i) · ΔRimu(i)−1 ) (旋转差角度)
d(i) > 阈值(建议 5°)→ 该帧对为可疑配准 → 从增量建图初始帧集中剔除/延后

收益:白墙正推段视觉匹配乱猜时,IMU 是唯一说真话的——错误配对被旋转一致性拦下,增量建图少走歪路就少丢帧、少产外点。另有免费副产品:给 pycolmap 增量建图提供图像先验旋转(prior_qvec),加速收敛。

改动面:worker SfM 阶段(配对筛选 + 建图先验注入),中等。

P1 视效果 层 3 · 加速度计尺度校正(任意尺度 → 真实米)

原理:SfM 输出尺度任意(up-to-scale)。对加速度计去重力后双重积分得平移轨迹 timu(s)(有漂移,但短时可信),与 SfM 平移轨迹做相似变换拟合(Umeyama),求真实尺度因子 s → 全场缩放。

收益:点云从"某种单位"变"真米",包围盒/房间尺寸可直接读出;为后续定位(米制位姿)打基础。

风险:50Hz 消费级 IMU 双重积分漂移快于 10s 不可信,需分段拟合。先跑层 1+2 看效果再决定。

五、实施管线(融合后)

视频+IMU 下载→ 抽帧+QC→ IMU 预处理
g_phone(t) 低通
ω(t) 积分 ΔR
→ SP 特征→ 配对+匹配
IMU 旋转一致性筛选
→ 增量建图
prior_qvec 注入
→ 重力对齐
SVD 一致重力
替代 RANSAC 猜地板
→ SOR 滤波
已上线
→ 导出上站

蓝色高亮 = 本次新增的融合环节;其余为已运行链路。

六、验收标准(与质检同口径,可量化)

指标当前基线融合后目标怎么算
每机位三角化点数14 ~ 24≥ 100(5 倍+)点数 / 注册帧数
最大平面内点占比3 ~ 5%≥ 25%(地板或墙面)RANSAC 平面拟合
竖直 Y 范围漂移 ±15m≤ 3.5m 且中位在 0~2.5m点 Y 分布 p1~p99
重力一致性残差(无此约束)各帧 g_world 与 ĝ 夹角中位 ≤ 3°arccos(g·ĝ)
视觉(人工)无定形可辨识房间结构(墙线/地板面)结果页多视角截图

两段视频都跑「纯视觉(现基线)」与「融合版」各一次,同口径对比后上结果页。

七、风险与对策

风险概率对策
IMU-视频时间对齐误差 > 1 帧低(双钟锚定)对齐残差也做 SVD 估计并报告;±2 帧容差扫描取最优
层 2 把对的配对误杀(IMU 积分误差累积)中只筛帧间相邻对(Δt<0.5s 积分误差小),检索配对不筛;阈值 5° 从宽起调
数据本身覆盖不足,融合后仍达不到目标中验收指标未达但显著改善(如 3 倍密度)→ 如实报告,再议是否重采
层 3 双积分漂移污染尺度高层 3 仅在层 1+2 达标后启动;分段(≤5s)拟合取中位尺度

八、不做的事(边界)

九、里程碑

步内容产出预计
F1IMU 预处理模块(g_phone 低通 / ΔR 积分)+ 单元验证(静止段重力误差 <1°)代码+验证数据0.5 天
F2层 1 重力对齐进 worker 导出段,69MB 段对比首跑对比结果页0.5 天
F3层 2 旋转筛选+先验注入,两段全跑两段对比1 天
F4质检 Agent 同口径复验(本页第六节指标)复验报告回填本页0.5 天
F5(视 F4 结果)层 3 尺度校正米制点云0.5 天

VL 项目 · indoor.sunearthl2.cn · 方案页 v1.0(2026-09-09)· 返回主页 · 重建结果