Files
worldmodel/plans/camera/zed2i_iterative_framework.md
T

9.7 KiB
Raw Blame History

ZED 2i 数据 Pipeline 迭代框架(面向 World Model 训练)

上层执行框架,承接 zed2i_stereo_imu_solution.md 的硬件/SDK 细节,向下细化为可独立执行的 todo 项。 设计哲学:时间维度多次迭代M1→M4 螺旋上升)× 空间维度从粗到细(场景→房间→物体→像素)。


0. 框架总览

0.1 两个正交维度

维度 取值 含义
时间(里程碑) M1 → M2 → M3 → M4 一次性原型 → 单场景达标 → 批量化迭代 → 评测发布
空间(粒度) L1 场景 / L2 房间 / L3 物体 / L4 像素 全局拓扑 → 房间布局 → 家具个体 → 深度/纹理质量

每个里程碑都在四个空间层级各完成一次切片,形成 4 × 4 = 16 个交叉单元格。下游 world model 训练所需的"多尺度时空数据"由此自然涌现。

0.2 框架矩阵

空间\时间 M1 环境搂环 M2 单场景达标 M3 批量化迭代 M4 评测与发布
L1 场景 跑通 30s 走廊录制 单客房 Spatial Mapping 闭合 ≥10 房型 SOP 化采集 场景级 benchmark split
L2 房间 房间数据目录契约 分区域稠密扫描覆盖率达标 自动质控 + 重采触发 房间布局/affordance 标注
L3 物体 物体级 schema 占位 近距离环拍 ±2cm 神经深度后处理消融 物体语义层(家具类别)
L4 像素 深度/位姿格式定义 置信度 mask + 失效分析 VIO/深度算法对比 像素级误差指标定版

0.3 主线流程(Mermaid

flowchart LR
    M1[M1 环境搂环<br/>格式契约] --> M2[M2 单场景达标<br/>一间客房闭环]
    M2 --> M3[M3 批量化迭代<br/>多场景 + 算法消融]
    M3 --> M4[M4 评测发布<br/>World Model 接口]
    M4 -.反馈.-> M2
    M4 -.反馈.-> M3

    subgraph 每个里程碑内部
        L1[L1 场景级] --> L2[L2 房间级]
        L2 --> L3[L3 物体级]
        L3 --> L4[L4 像素级]
    end

1. M1:环境搂环与数据格式契约

目标:把"一段 30 秒走廊 SVO"完整跑通从录制到落盘到读取的全链路,建立后续所有工作的数据契约评测脚手架出口判据:任一新人按文档可在 1 小时内复现"录制→解析→评测桩输出"全流程。

1.1 任务分解

ID 空间层 任务 关键产出
M1-1 L1 ZED SDK + CUDA + pyzed + ROS 2 安装;ZED_Explorerbasic_capture.py 烟囱测试 env_setup.md + 一段 30s SVO
M1-2 L2 数据格式契约:目录树、命名、时间戳对齐、JSON/YAML schema data_contract.md(待建)
M1-3 L3/L4 相机内参导出、IMU-Camera 外参、世界坐标系约定(Z-up)、与 world model 坐标系映射 calibration.yaml
M1-4 L4 评测脚手架(指标桩:ATE/RPE/深度误差/覆盖率/重投影) eval/ 目录骨架

1.2 推荐目录契约(落到 M1-2

dataset_root/
├── sessions/
│   └── {hotel_id}/{room_id}/{session_ts}/
│       ├── raw.svo2                    # ZED 原生录制
│       ├── images/{left,right}/000000.png
│       ├── depth/000000.npz            # float32 + confidence
│       ├── imu.parquet                 # 400Hz, 时间戳对齐
│       ├── poses.tum                   # TUM 格式轨迹
│       ├── pointcloud.ply              # 融合点云
│       ├── mesh.obj                    # Spatial Mapping 网格
│       ├── area_memory.area            # ZED 区域记忆
│       └── meta.yaml                   # 设备、参数、环境、操作员
├── calibration/{device_serial}.yaml
└── eval/                               # M1-4 脚手架
    ├── metrics/
    └── reports/

2. M2:单场景达标(一间客房闭环)

目标:把一间客房做到"world model 训练可直接使用"的质量,所有指标都有量化判据。空间上完成 L1→L4 一次完整下沉。 出口判据:单房间数据包通过 M1-4 评测脚本所有阈值。

2.1 任务分解

ID 空间层 任务 量化判据
M2-1 L1 场景 一次性环绕扫描,输出 Spatial Mapping 网格 + 轨迹 环回误差 < 5cm,覆盖率 > 85%
M2-2 L2 房间 分区域慢扫(床区/卫浴/桌面/角落) 每区域深度覆盖 ≥ 90%,空洞率 ≤ 5%
M2-3 L3 物体 家具/电器/装饰物 0.5–1m 环拍(ULTRA 模式) 几何精度 ±2cm(用卷尺锚点验证)
M2-4 L4 像素 反光/透明/弱纹理失效分析;置信度过滤 mask 失效区 mask 召回 > 90%
M2-5 综合 单场景出口验收 通过 M1-4 全部阈值

2.2 空间下沉示意

flowchart TB
    A[L1 场景级 一次性环绕] --> B[L2 房间级 分区慢扫]
    B --> C[L3 物体级 近距环拍]
    C --> D[L4 像素级 失效mask]
    D --> E[出口验收包]
    E -.指标不达标.-> A

2.3 采集动作规范(落到 SOP

  • L1 走位:门口起步,沿墙顺时针一圈,1m/s,相机略下倾 15°
  • L2 走位:每个功能区慢扫 30s,0.3 m/s,多视角往返
  • L3 走位:物体距离 0.5–1m,环拍 ≥ 270°,含俯视
  • L4 标注:人工标记反光/透明区域作为失效 GT

3. M3:批量化迭代(多场景 + 算法消融)

目标:把 M2 的单房成功复制到 ≥10 个房型,同时通过算法消融把整体质量再推高一档。 出口判据:10+ 房型数据全部通过质控;至少一项算法迭代带来可量化提升(如深度 RMSE ↓ 20%)。

3.1 任务分解

ID 空间层 任务 关键消融变量
M3-1 L1 多房型批量采集 SOP(走位/时长/光照) 房型 × 光照 × 操作员
M3-2 L2 数据质控自动化(PASS/FAIL 报告 + 自动重采) 阈值参数
M3-3 L4 位姿算法对比:ZED VIO vs ORB-SLAM3 vs VINS-FusionIMU 融合开关 算法 × IMU on/off
M3-4 L4 深度算法对比:ZED ULTRA vs FoundationStereo/UniDepth 后处理 神经后处理 on/off
M3-5 L1/L2 多会话融合:.area 拼接、TSDF/Nerfacto/3DGS 后端选型 后端 × 输入子集
M3-6 综合 数据湖目录、按房间/时间/质量打标、子集导出工具

3.2 算法消融流(Mermaid

flowchart LR
    DATA[M2 单场景数据] --> SPLIT[10 房型采集池]
    SPLIT --> VIO{位姿后端}
    SPLIT --> DEP{深度后端}
    VIO --> EVAL1[ATE/RPE]
    DEP --> EVAL2[深度 RMSE/覆盖]
    EVAL1 --> PICK[最优配置]
    EVAL2 --> PICK
    PICK --> FUSE[M3-5 融合建图]

4. M4:评测基准与 World Model 接口

目标:把数据资产对外可用——定版评测基准、对齐主流 world model 训练框架、跑通基线模型回灌验证。 出口判据:用本数据训练的小规模 world model 收敛并复现公开任务指标。

4.1 任务分解

ID 空间层 任务 关键产出
M4-1 L1L4 评测基准定版:轨迹/深度/几何/时序/NVS 指标 + benchmark split benchmark/
M4-2 综合 World Model 数据接口:webdataset / HDF5 / LeRobot 格式 导出脚本 + sample schema
M4-3 L2/L3/L4 任务化标注层:家具类别、可交互性、affordance 多层级监督标签
M4-4 综合 基线回灌:训练 video prediction 或 NeRF 小模型 复现报告
M4-5 综合 数据卡(Datasheet for Datasets+ 复现指南 + license 发布包

4.2 World Model 接口示意

flowchart LR
    RAW[原始 SVO/RGB-D/IMU/Pose] --> EXPORT[M4-2 导出器]
    EXPORT --> WDS[webdataset]
    EXPORT --> H5[HDF5]
    EXPORT --> LEROBOT[LeRobot]
    WDS --> TRAIN[video prediction]
    H5 --> NERF[NeRF/3DGS]
    LEROBOT --> POLICY[robot policy]
    TRAIN & NERF & POLICY --> METRIC[M4-1 评测基准]

5. 跨里程碑的"螺旋反馈"

框架不是单向瀑布,而是螺旋

  • M4 评测发现的弱点 → 反馈到 M3 算法消融
  • M3 算法消融的最优配置 → 反向更新 M2 的采集 SOP
  • M2 的失败案例 → 暴露 M1 数据契约的缺陷 → 修订 schema
flowchart LR
    M1 --> M2 --> M3 --> M4
    M4 -- 弱点 --> M3
    M3 -- 最优配置 --> M2
    M2 -- 失败案例 --> M1

6. 风险与缓解

风险 触发里程碑 缓解策略
反光/玻璃区域深度大面积失效 M2-4 偏振滤镜 + 神经深度后处理(M3-4)
IMU 温度漂移导致长序列轨迹偏移 M2-1 / M3-3 预热 5 分钟 + 多会话 .area 重定位
数据量爆炸(10 房型 × N 会话) M3-6 早期建立数据湖 + 质量打标 + 子集导出
World Model 框架接口频繁变动 M4-2 中间层 schema 隔离,导出器适配多目标格式
标注成本高 M4-3 先半自动(ZED OD + SAM2)再人工修正

7. 与既有文档的关系


版本v0.1(框架草案) 维护者:项目规划团队