Files
worldmodel/plans/camera/zed2i_iterative_framework.md
T
gaojie dbcbdbb59e chore: 为所有 md 文件添加 Hugo front matter
- 处理: 74 个 .md 文件
- 跳过: 0 个(无已存在的 front matter)
- 异常: 3 个(H1 缺失,用文件名兜底)
  - plans/PRISM/.research/readmes/3d-llm.md
  - plans/PRISM/.research/readmes/openmask3d.md
  - plans/PRISM/.research/readmes/openscene.md
2026-05-20 22:42:22 +08:00

232 lines
9.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "ZED 2i 数据 Pipeline 迭代框架(面向 World Model 训练)"
date: 2026-05-20
draft: false
tags: ["相机", "ZED2i", "立体视觉", "VIO", "数据结构", "评测"]
categories: ["worldmodel"]
---
# ZED 2i 数据 Pipeline 迭代框架(面向 World Model 训练)
> 上层执行框架,承接 [`zed2i_stereo_imu_solution.md`](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
```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_Explorer``basic_capture.py` 烟囱测试 | `env_setup.md` + 一段 30s SVO |
| M1-2 | L2 | 数据格式契约:目录树、命名、时间戳对齐、JSON/YAML schema | [`data_contract.md`](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 空间下沉示意
```mermaid
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
```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 | L1–L4 | 评测基准定版:轨迹/深度/几何/时序/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 接口示意
```mermaid
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
```mermaid
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. 与既有文档的关系
- **底层硬件/SDK**[`zed2i_stereo_imu_solution.md`](zed2i_stereo_imu_solution.md)
- **横向方案对比**[`camera_solutions_comprehensive.md`](camera_solutions_comprehensive.md)
- **开源工具链**[`github_opensource_projects.md`](github_opensource_projects.md)
- **场景上层规划**[`../hotel_scene_implementation_plan.md`](../hotel_scene_implementation_plan.md)
- **iPhone 对照方案**[`../iphone/README.md`](../iphone/README.md) / [`../iphone/iphone_simplified_plan.md`](../iphone/iphone_simplified_plan.md) / [`../iphone/roomplan_accuracy_and_cad_export.md`](../iphone/roomplan_accuracy_and_cad_export.md)
---
**版本**v0.1(框架草案)
**维护者**:项目规划团队