BDByteDrive-Toy

Multi-sensor behavior cloning for CARLA

GitHub

OPEN RESEARCH SYSTEM · CARLA 0.9.15

ByteDrive-Toy: From Pixels to Steering

从像素到方向盘:多传感器、双帧时序行为克隆驾驶研究系统

Status这个项目保留了早期的 “Toy” 名字,但已经是一套复杂研究原型。它不是商业产品,也不是可部署到真实车辆的完整自动驾驶系统。
ByteDrive Team·Independent Open Research
视觉输入三目 + 双帧
空间表征Geometry-aware BEV
未来预测8 模态轨迹
执行环境CARLA 闭环

Abstract 摘要

ByteDrive-Toy 将自动驾驶研究拆成两个连续阶段:首先使用冻结的 DINOv3 视觉骨干联合学习 29 类语义分割与米制深度估计;随后复用感知表征,把三路相机 frustum、LiDAR 体素与刚性对齐的历史 BEV 聚合到前向鸟瞰空间,并联合预测空间场、道路结构、交通控制、多模态轨迹和行为标签。

训练完成后,闭环运行器把模型接入 CARLA 同步仿真,形成“观测 → 双帧推理 → 轨迹选择 → 纯追踪 / PID 控制 → 下一观测”的反馈回路,并记录 episode 终态、进度、诊断和录像。

准确定位

这是一套开放、可检查、仍在演进的研究基础设施。页面只陈述仓库中已经存在的实现与结果,不使用商业产品式的性能承诺。

1 System Overview 系统全景

仓库覆盖从数据生成到仿真执行的完整链路。复杂度来自模块之间真实存在的依赖关系,而不是功能标签的堆叠。

1.1 异构数据系统 Data System

Python 3.7 worker 驱动 CARLA 0.9.15,Python 3.12 collector 负责编排、编码和落盘。两个运行时通过共享内存 arena 交接帧数据,传感器以 2Hz、运动学以 10Hz 异频记录;RGB 保存为 H.265,非 RGB 数据进入 LMDB。

SENSORSRGB / Depth / Semantic / Flow / LiDAR
STORAGEH.265 + LMDB
RUNTIMEPython 3.7 ↔ 3.12

1.2 感知预训练 Perception Pretraining

冻结 DINOv3 ViT-S+/16 视觉骨干,提取第 3、6、12 层完整 Token 序列。多尺度表征共同服务于 29 类语义分割、Symlog 深度回归和量程内外分类,并在驾驶模型中继续复用。

1.3 几何 BEV 与联合规划 Driving Model

相机内外参把 patch 中心与四角沿深度采样到三维空间;相机 frustum、LiDAR 体素和上一帧 BEV 在前向 64m × 64m 的鸟瞰空间汇合。规划分支使用 8 个可学习 Mode Token 查询 BEV 主干第 3、6 层特征,并以目标点和 ego 平面速度为条件。

Spatial fields

风险场、可行驶场、轨迹分布场

Road structure

道路类别、有向切线、停止线与灯色

Future modes

8 模态 × 20 个 10Hz 航点与模态置信度

Behavior

8 类行为标签与辅助多任务监督

2 Qualitative Results 可视化结果

以下图像与视频由仓库内工具直接生成。它们不是装饰性素材,而是用于检查预测质量、空间对齐与闭环行为的实验输出。

Figure 2. 感知预测与真值对照。每列为一帧,从上至下依次为 RGB、预测语义、预测深度、语义真值和深度真值。
Figure 3. 驾驶预测可视化。展示风险 / 可行驶 / 轨迹分布三场、道路线、交通控制和候选轨迹,并以统一几何范围比较预测与真值。

2.1 CARLA 闭环执行 Closed-loop Episode

视频顶部显示左 / 前 / 右三目与车辆状态,中部显示空间场和道路结构预测,底部显示全部候选轨迹与最终执行轨迹。

Video 1. CARLA 闭环 episode A
Video 2. CARLA 闭环 episode B

3 Implementation Status 实现状态

下表描述仓库当前实际范围。这里区分“已经运行”和“尚未实现”,避免把研究目标写成产品能力。

模块当前范围状态
数据采集

多传感器异频采集、共享内存交接、H.265 / LMDB 存储

已实现
感知训练

29 类语义、米制深度、冻结骨干、多任务训练

已实现
驾驶训练

双帧几何 BEV、空间场、道路、交通、多模态轨迹与行为

已实现
闭环执行

同步推理、安全重排、低层控制、episode 记录与录像

已实现
闭环强化学习

无奖励函数、无在线采样更新、无闭环梯度回传

未实现

4 Scope & Limitations 研究边界

闭环运行 ≠ 闭环学习

当前模型从 CARLA BehaviorAgent 专家轨迹进行离线监督学习。闭环只表示模型输出作用于仿真环境后,系统继续读取下一帧推理;其中没有奖励优化、策略更新或在线梯度回传。

  • 数据分布有限。 当前训练与演示数据集中在 Town02_Opt、单一专家行为风格和固定采集配方。
  • 仅双帧时序。 系统融合一帧刚性对齐的历史 BEV,不具备长时序记忆。
  • 行为克隆会累积误差。 停车、偏航、碰撞和路线完成率低仍是现阶段可能出现的行为。
  • 仅用于 CARLA 仿真研究。 不可直接用于真实道路、真实车辆或任何安全关键决策。

5 Start from the Repository 从仓库开始

完整 README 记录了模型张量、训练方法、配置系统、数据格式、权重、闭环执行和已知限制。这个页面提供入口,而仓库才是项目的主要文档。

ByteDriveTeam / ByteDrive-ToyBuild · inspect · drive · repeat.

Apache-2.0 · Python 3.12 · CARLA 0.9.15

打开仓库 ↗
放大的项目可视化结果