1. 模块概览
1.1 定位
维度 |
说明 |
|---|---|
感知层级 |
传感器融合 → 特征提取 → 语义/几何理解 |
输入 |
|
输出 |
|
上游 |
|
下游 |
|
对标 |
Apollo Perception、ROS 2 |
1.2 核心能力
能力 |
状态 |
说明 |
|---|---|---|
|
⏳ 占位 |
类已声明,构造/析构与业务逻辑待实现 |
插件化感知接口 |
⏳ 待完成 |
|
Lua → Proto 配置管线 |
⏳ 空壳 |
|
ONNX 视觉推理基础设施 |
✅ 已实现 |
|
|
✅ 部分 |
2D/3D 检测框、分类消息已定义 |
激光/点云障碍写入 costmap |
✅ 已实现 |
|
系统启动集成 |
❌ 未接入 |
|
当前阶段:Perception 模块处于扩展占位阶段;实际导航栈中的障碍感知由
map/costmap_2d承担,视觉推理基础设施在common/network中已就绪,等待 Perception 模块接线。
1.3 源码结构
autonomy/perception/
├── perception_server.* # 感知服务入口(占位)
├── common/
│ └── perception_interface.* # LoadOptions + 未来插件接口
└── proto/
└── perception_options.proto # 空 PerceptionOptions
# 相关基础设施(非 perception 包内)
autonomy/common/network/ # ONNX / TensorRT 推理管线
autonomy/commsgs/vision_msgs.* # 感知输出消息
autonomy/map/costmap_2d/layers/ # ObstacleLayer, VoxelLayer
config/perception/perception.lua # 空配置表
1.4 导航栈数据流
传感器 ──→ PerceptionServer ──→ vision_msgs / 障碍列表 ──→ Prediction
│ │ │
│ └──────────────→ map/costmap_2d ──────────────┘
│ │
└──────────────────────────────────────┴──→ Planning → Control
当前实际数据流(Perception 未启动时):
激光/点云 ──→ ObstacleLayer ──→ local/global costmap ──→ Planning → Control
1.5 相关模块
模块 |
关系 |
|---|---|
|
ONNX 推理、图像预处理、检测后处理(NMS) |
|
感知输出消息定义 |
|
激光/点云障碍层,当前承担主要障碍感知 |
|
消费动态障碍,预测未来轨迹 |
|
相机 |
|
|
1.6 与业界方案对照
业界组件 |
Autonomy 对应 |
备注 |
|---|---|---|
Apollo |
|
骨架阶段 |
ROS 2 |
|
消息已对齐 |
Nav2 |
|
已实现 |
YOLO / ONNX Runtime |
|
推理管线就绪 |
OpenPCDet / PointPillars |
— |
待引入 |