54 lines
2.6 KiB
Markdown
54 lines
2.6 KiB
Markdown
# 车辆多传感器外参标定
|
||
|
||
本仓库维护两条彼此独立的外参标定流程:**雷达–IMU** 和 **RTK–IMU**。两条流程复用少量通用的几何、IMU 读取和预积分代码,但不共用观测模型、求解器或验收结论。
|
||
|
||
## 从这里开始
|
||
|
||
| 目标 | 阅读文档 | 当前可交付范围 |
|
||
| --- | --- | --- |
|
||
| 标定雷达与 IMU | [雷达–IMU 标定](docs/雷达-IMU标定.md) | 旋转与时间关系已有实车候选;平移尚不可交付。 |
|
||
| 标定双天线 RTK 与 IMU | [RTK–IMU 标定](docs/RTK-IMU标定.md) | 旋转已固定;杆臂以机械测量为基准,并完成动态一致性验证,尚未获得正式工程放行。 |
|
||
|
||
不要将任何一条流程中被拒绝的平移结果当作完整六自由度外参。是否接受结果,以相应结果 JSON 的 `accepted` 字段和门禁结论为准,而不是仅看优化是否收敛。
|
||
|
||
## 两条流程的关系
|
||
|
||
```text
|
||
雷达–IMU
|
||
点云相对运动 + IMU 预积分
|
||
→ 旋转与时间关系;平移受 IMU 位移误差和激励不足限制
|
||
|
||
RTK–IMU
|
||
双天线基线 + GNSS 位置/速度 + IMU
|
||
→ 天线相位中心相对 IMU 的旋转和杆臂一致性验证
|
||
```
|
||
|
||
选择 RTK–IMU 不是用 RTK 替换雷达。它用于解决“雷达–IMU 的平移在当前实车数据上不可可靠交付”这一独立问题;RTK–IMU 的外参也不能自动转换为雷达–IMU 外参。
|
||
|
||
## 仓库结构
|
||
|
||
```text
|
||
calibration/
|
||
├─ imu_lidar/ 雷达–IMU 专用算法和命令行入口
|
||
├─ rtk_imu/ RTK–IMU 专用算法
|
||
├─ tools/ 原始数据导出、求解、审计和结果汇总入口
|
||
├─ docs/ 两份规范说明:雷达–IMU、RTK–IMU
|
||
├─ artifacts/ 已提交的结果摘要与审核证据
|
||
├─ config/ 车辆安装与流程配置
|
||
└─ tests/ 自动化测试
|
||
```
|
||
|
||
`rtk_imu/` 只允许复用 `imu_lidar/` 中的通用模块:`contracts.py`、`geometry.py`、`geodesy.py`、`imu_io.py`、`imu_preintegration.py` 与 `rotation_handeye.py`。它不依赖雷达专用的点云读取、去畸变、配准、雷达流程编排或雷达联合优化器。
|
||
|
||
## 数据与过程文件
|
||
|
||
原始 `.rscap`、统一导出数据、节点状态、检查点和调试中间结果只保留本地;仓库只提交可复核的代码、工具、配置、说明和结果摘要。RTK–IMU 的正式结果索引在 [artifacts/rtk_imu_calibration_v3/README.md](artifacts/rtk_imu_calibration_v3/README.md)。
|
||
|
||
## 开发与验证
|
||
|
||
```powershell
|
||
python -m pip install -e ".[dev]"
|
||
python -m pytest -q
|
||
```
|
||
|
||
雷达点云处理需要时再安装可选依赖:`python -m pip install -e ".[open3d]"`。 |