dbcbdbb59e
- 处理: 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
9.5 KiB
9.5 KiB
title, date, draft, tags, categories
| title | date | draft | tags | categories | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chapter 01 — 两方案能力解构 | 2026-05-20 | false |
|
|
Chapter 01 — 两方案能力解构
本章目标:把 iPhone 与 ZED 2i 两个采集方案逐项拆开,建立"谁该干什么"的明确边界,作为后续所有分层决策的依据。
1.1 决策框架:传感器画像 (Sensor Persona)
在做任何融合之前,必须先回答 7 个问题:
1. WHEN 何时采集? (离线 vs 在线)
2. WHO 谁来用? (人 vs 机器人)
3. WHERE 覆盖多大? (场景级 vs 视锥级)
4. HOW MUCH 精度多少? (cm vs %)
5. WHAT 语义多丰富? (结构化 vs 像素级)
6. HOW FAST 多快? (秒/分钟 vs Hz)
7. WHY FAIL 什么时候坏? (失效模式)
按这 7 个问题给两个传感器各做一张画像。
1.2 iPhone (RoomPlan + LiDAR) 画像
名称: iPhone Pro (15/14/13 Pro 系列)
角色: 先验地图源 (Prior Map Provider)
WHEN:
- 部署前一次性扫描
- 场景大改时重扫(建议季度级)
- 不参与机器人运行时
WHO:
- 由"人"持机扫描(10–20 分钟/房间)
- 机器人**不携带** iPhone
WHERE:
- 房间级 30–100 m²(单次扫描)
- 多房间需多次扫描 + 走廊串联
- 最大有效范围 ≤ 5 m(LiDAR 物理限制)
HOW MUCH:
- 墙面定位精度: ±3 cm
- 家具尺寸误差: ±5 cm
- 朝向误差: ±2°
- 全局拓扑(房间相对位置): ±10 cm
WHAT:
RoomPlan 直接产出:
- 结构化几何:参数化的 wall/door/window 平面方程 + OBB
- 家具语义:bed/sofa/chair/table/storage/... (≈ 16 类)
- USDZ / JSON 格式
额外可得(用 ARKit 原始数据):
- 稠密点云(LiDAR 深度,640×480)
- RGB 图像序列
- ARKit 位姿轨迹
HOW FAST:
- 扫描期间: 30 fps 实时预览
- 处理出图: 10–60 秒(设备端)
- 不是"实时机器人感知"
WHY FAIL:
- ❌ 强光直射(窗边):LiDAR 失效
- ❌ 全黑环境:RGB 失效,IMU 漂移
- ❌ 完全镜面 / 玻璃墙:几何错乱(与 ZED 2i 共同弱点)
- ❌ 弱纹理大白墙:照片建模失败(LiDAR 可补)
- ⚠️ 家具被移动后:所有家具节点过时
- ⚠️ 动态物体(人/宠物):会被错误烘到 mesh
一句话:iPhone 是**"建筑师的图纸 + 摄影师的照片"——稀疏精确、有语义,但冻结在过去某一时刻**。
1.3 ZED 2i (双目 + IMU) 画像
名称: Stereolabs ZED 2i
角色: 在线感知器 (Live Perceptor)
WHEN:
- 机器人运行时持续工作
- 30 fps 流式输出
- 与控制循环同步
WHO:
- 装在机器人前向(建议 1.0–1.3 m 高度)
- 机器人随身携带
- 没有人参与
WHERE:
- 视锥级:水平 110° × 垂直 70°
- 深度有效范围: 0.3–20 m(QUALITY 模式下 0.5–10 m 最稳)
- 单次只能看一个视锥(≈ 30% 房间)
HOW MUCH:
- 深度精度: ±1% @ 1 m, ±2% @ 3 m, ±4% @ 5 m
- VIO 位姿漂移: 0.1% 行驶距离(即 100 m 内 < 10 cm)
- 长时间累计漂移: 1 km 后约 1 m
- IMU 短时积分: 角速度 ±2000 dps, 加速度 ±16 g, 400 Hz
WHAT:
原始数据:
- 左右 RGB 图像(2208×1242 @ 15fps,或 1280×720 @ 60fps)
- 深度图(与左目对齐)
- IMU (陀螺 + 加速度 + 磁力计 + 气压计)
SDK 直接给出:
- 6-DoF 位姿(VIO)
- 稀疏关键点轨迹
- 实时 spatial mapping(mesh)
- 物体检测(内置 SOTA 类别有限,建议外挂 YOLO-World)
没有语义:
- 默认不识别房间、不分割物体
- 需自己接 CLIP/SAM/Grounding-DINO
HOW FAST:
- 深度 + VIO: 30 Hz
- 1080p RGB: 30 Hz
- IMU: 400 Hz
- 端到端延迟(采集→深度可用): 50–80 ms
WHY FAIL:
- ❌ 镜面、玻璃:双目失配,深度伪影(与 iPhone 共同弱点)
- ❌ 极弱纹理(白墙、纯色地毯):匹配失败
- ❌ 强光直射镜头:过曝
- ⚠️ 长时间静止 + 转动:VIO 漂移大(IMU bias 累积)
- ⚠️ 快速旋转(> 180°/s):图像运动模糊
- ⚠️ 跨房间(穿门瞬间):可能丢失定位 → 需重定位
一句话:ZED 2i 是**"驾驶员的眼睛 + 内耳前庭"——视锥窄但连续、稠密、随身,但只看到当下、不记得过去**。
1.4 并排对比表
| 维度 | iPhone (RoomPlan/LiDAR) | ZED 2i (双目+IMU) | 谁占优 |
|---|---|---|---|
| 部署成本 | ¥10 k(一次性) | ¥4 k(一次性) | ZED |
| 单次覆盖 | 30–100 m² | 一个视锥 | iPhone |
| 几何精度 | ±3 cm(墙) | ±1–4%(深度) | iPhone(近场打平,远场胜出) |
| 语义丰富度 | 16 类家具,开箱即用 | 0 类(需外挂) | iPhone |
| 时间分辨率 | 离线 | 30 Hz | ZED |
| 动态物体处理 | 无 | 可在线检测 | ZED |
| 镜面/玻璃 | 失败 | 失败 | 平手(都差) |
| 弱纹理 | LiDAR 可救 | 失败 | iPhone |
| 大场景拼接 | 多扫多拼,易漂 | VIO 长漂 | 平手(都需校正) |
| 是否上机器人 | 否 | 是 | — |
1.5 互补性可视化
quadrantChart
title iPhone vs ZED 2i 能力象限
x-axis 低更新率 --> 高更新率
y-axis 低覆盖 --> 高覆盖
quadrant-1 高覆盖+高频率 理想不存在
quadrant-2 高覆盖+低频率 iPhone
quadrant-3 低覆盖+低频率 盲区
quadrant-4 低覆盖+高频率 ZED 2i
iPhone RoomPlan: [0.15, 0.85]
ZED 2i VIO Depth: [0.85, 0.20]
L2 度量层 会合点: [0.5, 0.5]
- iPhone 在"高覆盖×低更新"象限 → 自然落位为 L3/L4 的稳定结构
- ZED 2i 在"低覆盖×高更新"象限 → 自然落位为 L1/L2 的即时感知
- 中间的 L2 度量层是两者必然相遇的地方 → 配准与差异检测必须发生在这里
1.6 互补性的三个具体维度
维度 1:空间分布互补
- iPhone 覆盖全场景但静态
- ZED 2i 覆盖视锥但穿越所有视锥后也能覆盖全场景
- → ZED 2i 是 iPhone 的时间扩展(补未来的变化);iPhone 是 ZED 2i 的空间扩展(补它没看到的部分)
维度 2:语义粒度互补
- iPhone 给粗粒度建筑语义:房间、墙、门、大件家具
- ZED 2i + VLM 给细粒度物品语义:遥控器、水杯、毛巾
- → 大小语义嵌套形成 L4 场景图的两级(房间→家具→物品)
维度 3:失败模式互补
- iPhone 在镜面失败 → ZED 2i 也失败 → 这是真共同弱点,需第三方案(偏振相机,见
hotel_scene_implementation_plan_part2.md) - iPhone 在弱纹理仍能 LiDAR 救场 → ZED 2i 在此处需依赖 iPhone 的先验填充
- ZED 2i 在动态场景胜出 → 在此处需 ZED 来告诉 iPhone "你的图过期了"
1.7 反例:什么情况下单一传感器够用?
为了诚实,列出 PRISM 不必要的场景:
| 场景 | 推荐 | 原因 |
|---|---|---|
| 仅做静态房间数字孪生展示(不上机器人) | 只用 iPhone | 不需要在线感知 |
| 已有完整 BIM/CAD 图纸的工厂 | BIM + ZED 2i(跳过 iPhone) | BIM 比 RoomPlan 更准 |
| 完全开放的户外环境(公里级) | LiDAR 主导(如 Livox + FAST-LIO2) | RoomPlan 不支持户外 |
| 实验室桌面操作(毫米级) | 桌面级 RGB-D + AprilTag | RoomPlan/VIO 精度都不够 |
| 一次性快速 demo(不留长期记忆) | 只用 ZED 2i | 不需要先验 |
适用 PRISM 的甜区:室内 + 多房间 + 服务机器人 + 需要长期运行 + 场景偶尔变化。酒店、家居、办公、医院走廊都属于此。
1.8 把画像翻译为分层决策
| 画像观察 | 引出的设计决策 | 在 PRISM 中的体现 |
|---|---|---|
| iPhone 离线 + 高精度 + 有语义 | 应充当"先验/宪法" | L3/L4 主写者 |
| ZED 2i 在线 + 视锥窄 + 无语义 | 应充当"补丁/快讯" | L1 唯一写者,L2/L4 增量写者 |
| 两者都在镜面失败 | 镜面区单独打标"no-update" | 见 12_risks.md |
| 两者精度量级相近(cm 级) | 配准用 ICP 足够,不必更复杂 | 见 05_pipeline_B_relocalization.md |
| iPhone 偶尔过时 | 必须有"差异检测 + 巩固"机制 | 见 06_pipeline_C_online_perception.md, 07_pipeline_D_consolidation.md |
| ZED 2i 会漂 | 必须有"锚点重定位刷新" | 见 05_pipeline_B_relocalization.md |
1.9 本章小结
| 关键词 | 一句话 |
|---|---|
| iPhone 的本质 | 高质量但冻结的"过去快照",给 L3/L4 |
| ZED 2i 的本质 | 实时但视锥窄的"当下流",给 L1/L2 |
| 不可调和的共同弱点 | 镜面/玻璃 → 单独打掩膜 |
| 天然互补的关键点 | 覆盖×频率象限完全错开 |
| 甜区 | 室内多房间服务机器人 |
读完本章你应知道:为什么必须分层,以及每一层应该由谁主导。
下一章 02_architecture.md 会把这 4 层结构完整展开,说明每一层的数据结构、更新规则、查询接口。
章节版本:v1.0 估计阅读时间:12 分钟 关键收获:建立"传感器画像 → 分层决策"的映射逻辑