# ACCIDENT @ CVPR — Data

来源：https://www.kaggle.com/competitions/accident/data

本地 Meta Kaggle 快照；不是本次实时页面。

# Dataset Description

The competition is built around **real traffic accidents recorded by fixed CCTV cameras**. The benchmark is intentionally **training-free on real footage**: there is **no labeled real training split**. The real clips are used for evaluation.

To help you develop and test ideas anyway, we also provide a **synthetic (simulated) dataset** generated from CCTV-style viewpoints, with automatic annotations.

![](https://www.googleapis.com/download/storage/v1/b/kaggle-user-content/o/inbox%2F1518097%2F88b5022120067bfcb4cb0f46f96b1d5f%2Fmain.png?generation=1770320940834061&alt=media)

##  Test set --> Real CCTV clips

The real set is assembled from **public traffic-camera feeds** (including aggregator channels). Clips are curated to remove edited, duplicate, or unusable footage while preserving the typical challenges of CCTV video—low resolution, compression artifacts, occlusions, and wide fields of view.

All relevant information is provided in **`test_metadata.csv`**, which lists the **test videos** along with a few **coarse scene tags** (e.g., lighting, weather, layout). These tags are meant to help with analysis (for example, checking whether performance drops at night), but they are **not used for scoring**.

## Synthetic CCTV-style clips (development support)

Because there is **no labeled real training data** (real accidents are rare, and labeling CCTV reliably is expensive), the competition is set up as a **training-free / zero-shot** benchmark on real footage. To keep it practical to work on, we provide a **CARLA-based synthetic dataset** that mimics fixed-camera (CCTV-style) accident videos—so you can train, debug, and iterate your pipeline before running it on the real test clips.

### What’s included in the synthetic set?

**1) An index with labels (`labels.csv`)**  
This is the “table of contents” for the synthetic dataset. Each row corresponds to one synthetic video and includes:
- `rgb_path` — path to the RGB video clip
- `type` — collision type label (string)
- `accident_time` and `accident_frame` — when the crash happens (in seconds and as a frame index)
- `center_x`, `center_y` — impact point in the frame (**normalized** to `[0, 1]`)
- `x1`, `y1`, `x2`, `y2` — a **normalized** bounding box around the crash participants at impact
- scenario metadata like `map`, `weather`, `camera_position`, plus `duration`, `no_frames`, `height`, `width`
- `annotations_path` — path to a per-video annotation file (`.json.gz`)
- `annotations_start_offset` — an offset used to align timestamps when reading the annotation file

**2) Per-video annotation files (`*.json.gz`)**  
These contain richer, frame-level information exported from the simulator (useful if you want more supervision than just a single time/location/type label). Think of them as “extra signals” you can optionally use for training or analysis.

**3) A class map for segmentation (`annotation_classes.yaml`)**  
This maps numeric IDs to semantic classes used in the synthetic segmentation output. Examples include:
`Roads`, `SideWalks`, `Building`, `TrafficLight`, `TrafficSign`, and dynamic agents like
`Pedestrian`, `Car`, `Truck`, `Bus`, `Motorcycle`, `Bicycle`, etc.

#### Important note

The synthetic set is provided **only to support development**. Your final score is computed on the **real CCTV test set**.