Files
worldmodel/plans/PRISM/09_roadmap.md
T

12 KiB
Raw Blame History

Chapter 09 — 实施路线图(8 周原型 + 4 个月生产)

本章目标:把 PRISM 从"文档"变成"能跑的代码"。给出8 周原型计划(达到 demo 可演示)+ 4 个月生产计划(达到上线可交付)。


9.1 总览

gantt
    title PRISM 实施路线图(8 周原型 + 4 个月生产)
    dateFormat  X
    axisFormat  W%s

    section 8 周原型
    Phase 0:准备 硬件 + 环境           :p0, 0, 1
    Phase 1:单边管线 iPhone & ZED      :p1, 1, 3
    Phase 2:核心握手 重定位 MVP        :p2, 3, 5
    Phase 3:在线感知 + delta           :p3, 5, 7
    Phase 4:巩固机制                  :p4, 7, 8
    Phase 5:端到端 demo                :milestone, m1, 8, 8

    section 4 个月生产
    Phase 6:鲁棒性 / 多房间 / 评测     :p6, 8, 16
    Phase 7:集成 LLM Agent / 任务系统  :p7, 16, 20
    Phase 8:生产部署 / 文档 / 开源     :p8, 20, 24

9.2 Phase 0 — 准备(W0 = 部署前)

硬件清单

类别 物品 数量 价格 用途
扫描 iPhone 15 Pro Max 1 ¥10 k RoomPlan
扫描 DJI OM 6 稳定器 1 ¥0.9 k 减抖
扫描 ArUco 标识板(铝) 3 ¥0.2 k 公共原点
机器人 ZED 2i 1 ¥4 k 在线感知
机器人 Jetson Orin AGX 64 GB 1 ¥18 k 计算
机器人 移动底盘(差速 / 麦轮) 1 ¥1030 k 载体
机器人 2D LiDAR (RPLIDAR S2) 1 ¥2 k 安全冗余
工作站 RTX 4090 + 64 GB 1 ¥25 k 训练 / 烘焙
合计 ~ ¥73 k

软件环境

# 工作站
Ubuntu 22.04
CUDA 12.2 + cuDNN 8.9
ROS 2 Humble
Python 3.10 + conda env "prism"
  - open3d>=0.18
  - pyzed>=4.1
  - open_clip
  - ultralytics (YOLO-World)
  - nerfstudio
  - octomap-python
  - networkx + neo4j (optional)

# 机器人 (Jetson Orin)
JetPack 6.0
ROS 2 Humble
同上 Python 包(Jetson 编译版)
ZED SDK 4.1

团队配置(最小)

角色 人数 重点
Robotics 工程师 1 ZED + ROS 2 + 控制
ML 工程师 1 CLIP / YOLO / 3DGS
系统工程师 1 PRISM 主框架 + Schema
iOS 开发(兼) 0.5 PRISMScanner App

9.3 Phase 1 — 单边管线(W1W2

W1iPhone 端管线打通

目标:跑通 04_pipeline_A_iphone_offline.md 全流程,得到一个房间的 LTM。

Day 任务 验收
Mon PRISMScanner Swift App(最小版:调 RoomPlan + 存 USDZ + JSON iPhone 真机可扫房间
Tue 实现 parser_iphone.py + align_to_map.py 一个房间 → JSON,节点 ≥ 20
Wed 实现 extract_furniture_mesh.py + bake_octomap.py 每件家具一份 .glboctomap.bt 可视化通过
Thu 实现 bake_tsdf.py + CLIP 计算 tsdf.vbg + 节点 embedding
Fri 实现 build_anchors.py + prism_ingest_iphone CLI;写单元测试 prism ingest 一行命令完成

周末验收:扫一个真实卧室 → 跑 ingest → prism viz ltm 在 RViz 看到房间 + 床 + 桌(带标签)。

W2ZED 2i 端管线打通

目标:跑通 ZED 实时数据采集 + VIO + 关键帧保存,与 PRISM Schema 对接。

Day 任务 验收
Mon ZED SDK 安装 + ROS 2 wrapper;输出 RGB+Depth+Pose rqt 看到三路 topic
Tue 实现 FrameProducer(环形缓冲 + 关键帧)+ PerceptualFrame 序列化 关键帧落盘 stm/keyframes/
Wed 实现 TSDF Worker(局部融合,先不接 prior_mask) RViz 看到实时 mesh
Thu 实现 DetectorWorkerYOLO-World,开放词表) prism viz detection 在 RGB 上画框
Fri TF 树整理 + 时间戳同步检查 所有节点 lag < 100 ms

周末验收:手推机器人在一个房间转一圈,得到 stm/ 目录有 100+ 关键帧,TSDF 完整。


9.4 Phase 2 — 核心握手:重定位 MVP(W3–W4)

W3:粗匹配 + 精配准

目标:在 1 个房间内实现冷启动重定位成功率 > 90%。

Day 任务 验收
Mon 实现 CoarseRelocalizerCLIP Top-K 单次匹配 < 100 ms
Tue 实现 fine_registerFPFH+RANSAC → ICP 单次配准 < 500 ms
Wed 串成 relocalize() + 在 10 个不同位置测试 成功率 ≥ 8/10
Thu 加多帧投票 + DINOv2 重排 成功率 ≥ 9/10
Fri 发布 TF map → zed2i_init;写 ROS 2 节点 完整 ROS 流水线运行

周末验收:把 ZED 在房间内随机放 10 个位置,每次 < 1 s 给出位姿,平移误差 < 15 cm。

W4:跨房间 + 异常处理

目标:扩到多房间,加入容错。

Day 任务 验收
Mon 扩到 3 个房间 LTMCLIP 检索 Top-3 房间 → 逐个 ICP 跨房成功率 ≥ 85%
Tue 实现 anchor 级超精配(5.6)作为兜底 fitness 提升 0.1+
Wed 实现 OnlineRelocalizer(在线 anchor 校正) 巡逻 30 min 漂移 < 30 cm
Thu 实现 ArUco 兜底 + 绑架恢复 绑架到另一房间 30 s 内恢复
Fri 写自动化重定位评测脚本 prism eval reloc 输出报表

周末验收05_pipeline_B_relocalization.md §5.10 评测协议全部通过。


9.5 Phase 3 — 在线感知 + deltaW5W6

W5:完整在线感知

目标:实现 Chapter 06 的所有 worker,跑稳。

Day 任务 验收
Mon TSDF Worker 接入 prior_mask / no_update_zone 镜面区不被污染
Tue Detector Worker 接入 associate_hybrid + EMA 更新 已知家具不漂
Wed 实现 ChangeDetectorTSDF diff + DBSCAN 手动搬走一把椅子,10 s 内出 delta
Thu 实现 DeltaLog(去重 + JSONL 重复事件不重写
Fri 整体压测:跑 2 小时 无内存泄漏,30 Hz 稳定

W6:差异检测与告警

Day 任务 验收
Mon 实现"新增物体"提案流程;与现有节点 disambiguate 新拖鞋出现写 delta,不重复
Tue 隐私过滤(person → 不写语义) 人入镜不写入 LTM
Wed dashboards: prism viz live + prism viz delta 两个可视化能跑
Thu 写 ROS 2 launch 文件,整套节点一键启动 ros2 launch prism online.launch.yaml
Fri Bug fix + 性能 profile CPU < 50%GPU < 60%

周末验收:连续运行 4 小时,delta 累积 ≥ 500 条,无崩溃。


9.6 Phase 4 — 巩固机制(W7

目标:跑通 Chapter 07 的 prism consolidate 完整流程。

Day 任务 验收
Mon 实现 classify + 晋升规则;单元测试 1000 模拟 delta,准确分类率 100%
Tue 实现 arbitrate(冲突合并) remove+add 自动合并为 moved
Wed 实现 apply_eventsdeepcopy + 整体替换) 应用后 validate() 0 errors
Thu 实现 incremental_update_tsdf + warmstart 3DGS 单房间增量 < 5 min
Fri staging + sanity_relocalize + commit;回滚测试 注入故意错误能成功回滚

周末验收:跑一次完整 prism consolidate --mode=full,前后对比 LTM 健康度提升。


9.7 Phase 5 — 端到端 demoW8

目标:完整演示一个 "T0–T4 一天" 剧本(参考 08_runtime_timeline.md)。

Day 任务 验收
Mon 选定真实场景(实验室 + 2 房间),完成 iPhone 扫描 LTM 节点 ≥ 50anchors ≥ 6
Tue 部署到机器人 + 完整启动;冷启动 demo 视频 1:开机 → 重定位
Wed 巡逻 + delta 累积 demo 视频 2:搬走椅子,10 s 内提示
Thu LLM Agent 集成(GPT-4o 调用 PRISM API);任务 demo 视频 3:"取遥控器" 任务成功
Fri 充电触发 consolidate + 第二天重启 demo 视频 4:巩固前后对比

周末交付

  • 📹 4 段演示视频(每段 < 2 min)
  • 📊 性能报告(重定位 / 在线感知 / 巩固指标)
  • 📚 README + Quickstart 文档
  • 🎤 15 分钟 demo PPT

此时 PRISM v0.1 原型可对外展示


9.8 Phase 6 — 鲁棒性与多房间(M3–M4,2 个月)

周次 主题
M3-W1 扩到 8 房间 + 走廊(真实酒店楼层)
M3-W2 重定位在跨多 session 拼接 LTM 上的稳定性
M3-W3 镜面 / 玻璃 / 弱纹理的特殊处理(接 hotel_scene_implementation_plan_part2.md
M3-W4 长时(72 h 不间断)压测
M4-W1 自动化评测套件(13 章指标)
M4-W2 数据集采集(HotelScene-Bench v0.5
M4-W3 性能优化(FP16 / TensorRT / nvblox
M4-W4 第一轮内部用户测试 + 修 bug

9.9 Phase 7 — LLM Agent 集成(M5

任务
W1 SpatialMemoryAPI(高层接口)+ Function-Calling schema
W2 GPT-4o / Qwen-VL 接入;任务规划器
W3 6 类典型任务实现:取物、引路、检查、补货、问询、迎宾
W4 多轮对话 + 上下文管理 + 错误恢复

9.10 Phase 8 — 生产 / 开源(M6

任务
W1 安装脚本 / Docker 镜像 / 一键部署
W2 完整文档(API ref + 教程 + FAQ
W3 开源准备(GitHub 仓库 + README + LICENSE
W4 发布 v1.0 + 论文撰写启动

9.11 关键里程碑(Go/No-Go gates

时刻 Gate 通过标准 不通过怎么办
W2 末 单边管线 两条管线各自 demo 成功 延期 1 周;不能进 W3
W4 末 重定位 多房间冷启动 ≥ 85% 不能进 W5;换 DINOv2 + anchor 兜底
W6 末 在线感知稳定 4 h 无崩溃 + 资源占用合理 优化或简化 worker
W8 末 端到端 demo 4 段视频 + 报告 缩小 demo 范围
M4 末 鲁棒性 72 h 压测通过 暴露真实问题再迭代
M6 末 生产就绪 文档 + Docker + 开源 推迟 release

9.12 风险驱动的调整规则

每周五开 30 min sync,按下表决定下周计划:

信号 调整
重定位 fitness 持续 < 0.7 暂停新功能,先解决(可能要补 DINOv2 / SuperPoint
Detector 误检率高 增加训练时间或换 Grounding-DINO
delta/pending 增长太快 提前实现 consolidate 的轻量版
iPhone 扫描人工成本太高 简化采集 SOP,或试用 Polycam 替代 RoomPlan
Jetson 资源不足 砍 3DGS(用 Mesh 代替)或换 Orin AGX 64 GB

9.13 团队任务分配建议

Sprint Robotics ML System iOS
W1 (env setup) (env setup) parser_iphone PRISMScanner
W2 ZED ROS2 + FrameProducer YOLO-World TSDF Worker
W3 TF / 控制 CLIP coarse fine_register / ICP
W4 OnlineReloc / Anchor DINOv2 rerank ChangeDetector (ArUco 兜底)
W5 Avoidance 接入 EMA 更新 DeltaLog
W6 Launch + 压测 dashboards
W7 集成 3DGS warmstart consolidate full
W8 E2E demo demo 物料 docs / quickstart

9.14 预算(8 周原型阶段)

类别 金额
硬件(一次性) ~ ¥73 k
软件订阅(Roboflow / Polycam Pro / OpenAI API ¥3 k
云 GPU 备用(恒源云) ¥2 k
场地租用(一个酒店楼层 1 周) ¥10 k
人力(3.5 FTE × 2 月) ¥150 k
合计 ~ ¥240 k

→ 即 8 周原型阶段约需 ¥24 万。生产阶段(M3-M6)再追加约 ¥80 万。


9.15 本章小结

关键里程碑 时刻 一句话
单边可跑 W2 末 iPhone & ZED 分别打通
握手成功 W4 末 任意位置 1 s 内重定位
在线稳定 W6 末 4 h 压测无崩溃
巩固闭环 W7 末 充电 → 巩固 → 重启验证
端到端 demo W8 末 4 段视频 + 报告
生产就绪 M6 开源 + 文档 + Docker

读完本章你应能:

  • 制定一份 PRISM 的 Gantt 图
  • 在每个 gate 决定 Go/No-Go
  • 估算预算与团队配置

下一章 10_tech_stack.md 细化具体技术栈选型与版本依赖。


章节版本v1.0 估计阅读时间12 分钟 关键收获:从今天起到 8 周后能演示,每天该做什么