FrontDrive / README.md
HenryYHW's picture
model card: results, showcase figures (hosted in the GitHub repo), loading notes
d955b09 verified
|
Raw History Blame Contribute Delete
3.56 kB
---
license: cc-by-4.0
tags:
- autonomous-driving
- navsim
- end-to-end-planning
- drive-jepa
- single-camera
---
# FrontDrive — single-front-camera NAVSIM planners (Drive-JEPA perception-based, continued on all of navtrain)
Three checkpoints of the same recipe (three seeds), submitted together to the NAVSIM v1 navtest leaderboard as a multi-seed entry.
Each is the released Drive-JEPA perception-based ViT-L checkpoint continued for 5 epochs on **all 1,192 navtrain logs** (train + val,
103,288 samples) with Adam 3e-5 (backbone 0.1×), cosine decay to 3e-6 after 200 warm-up steps, effective batch 64, and the five
per-epoch fp16 exports averaged into one weight soup. Input: the front camera only (CAM_F0 at t and t−0.5 s, 512×256) plus the ego
status; the side cameras are used only through their calibration (no side-camera pixels). Output: one trajectory per scene.
| file | seed | navtest PDMS | sha256 (prefix) |
|---|---|---|---|
| `pb_off_ft_all_s0_soup_1_5.ckpt` | 0 | 93.86 | `ac0331f9a5d44ec1` |
| `pb_off_ft_all_s1_soup_1_5.ckpt` | 1 | 93.78 | `c7cb6ca5617cdb8f` |
| `pb_off_ft_all_s2_soup_1_5.ckpt` | 2 | 93.94 | `fc0ca06034e85939` |
Mean 93.86 (SD 0.08). The released Drive-JEPA checkpoint scores 93.69 with the same evaluation code; our from-scratch baseline
(e50 encoder, upstream recipe, dev-selected) 93.50. Sub-scores relative to the released checkpoint: more ego progress (+1.0),
higher drivable-area compliance (+0.35), slightly lower no-at-fault-collision (−0.4), TTC (−0.8…−1.2) and driving-direction (−1.0).
## Where the FrontDrive models do better than the released checkpoint
![PDMS and sub-scores, released checkpoint vs the three seeds](https://raw.githubusercontent.com/WangYuHang-cmd/FrontDrive/main/assets/summary_subscores.png)
![per-scene PDMS differences](https://raw.githubusercontent.com/WangYuHang-cmd/FrontDrive/main/assets/summary_scene_gains.png)
| released checkpoint rolls into the stopped car ahead | released checkpoint rolls into the crossing car |
|---|---|
| ![collision scene 1](https://raw.githubusercontent.com/WangYuHang-cmd/FrontDrive/main/assets/showcase_5d7eedc503ef575c.gif) | ![collision scene 2](https://raw.githubusercontent.com/WangYuHang-cmd/FrontDrive/main/assets/showcase_2833a305300f5394.gif) |
| released checkpoint leaves the drivable area (curb) | released checkpoint veers off the road |
|---|---|
| ![off-road scene 1](https://raw.githubusercontent.com/WangYuHang-cmd/FrontDrive/main/assets/showcase_6c4bebeaa24a53ce.gif) | ![off-road scene 2](https://raw.githubusercontent.com/WangYuHang-cmd/FrontDrive/main/assets/showcase_df11795878cb5419.gif) |
Green: FrontDrive seed 0; red: released Drive-JEPA checkpoint; white dashed: human driver. Rendered from the navtest metric cache and
the two models' trajectories by `frontdrive/viz/navtest_showcase.py` in the code repository (images are hosted there).
**Loading.** Each file is a Lightning-style state dict (`{"state_dict": {"agent._pad_model.*": …}}`, fp16) that
`DriveJEPAAgent.initialize()` loads when passed as `agent.checkpoint_path` (navsim v1 config
`agent=drive_jepa_perception_based_agent agent.config.latent=False +agent.config.side_cams_from_calibration=true`). Code, patches
and the exact training / evaluation scripts: https://github.com/WangYuHang-cmd/FrontDrive
**Provenance.** Derived from `LinhanWang/Drive-JEPA` `drive_jepa_perception_based_agent_vitl.ckpt` (Drive-JEPA, Apache-2.0 code)
and trained only on public NAVSIM navtrain data; navtest was never used for training or model selection.