Task Overview
Input: Panoramic 4K video (full match)
Output: Temporal action labels for 12 ball event classes with global timestamps
Alignment with SoccerNet Ball Action Spotting:
✅ Same: 12 action classes, temporal detection, team assignment
⚠️ Different: Panoramic view + full match (not broadcast clips)
✅ Same: 12 action classes, temporal detection, team assignment
⚠️ Different: Panoramic view + full match (not broadcast clips)
Input / Output Definition
Input
videos/match_XXXXX.mp4— Full match panoramic video (4K)
Output (per action)
| Field | Type | Description |
|---|---|---|
time |
float | Global timestamp in video (seconds) |
event_class |
string | One of 12 action classes (see below) |
team |
string | left / right / null |
player_id |
int/null | Track ID (when available) |
12 Action Classes
Pass
Drive
Header
High Pass
Out
Cross
Throw In
Shot
Ball Player Block
Player Successful Tackle
Free Kick
Goal
File Layout
production/
├── videos/
│ ├── 117093.mp4
│ └── ...
├── gsr/
├── bas/
│ ├── 117093/
│ │ └── 117093.json
│ ├── 117094/
│ │ └── 117094.json
│ └── ...
├── mot/
└── raw/
├── 117093/
│ ├── 117093_12_class_events.json # Original BePro events
│ └── ...
└── ...
Each match has one annotation file in its own directory containing all ball action events.
Original BePro event files are preserved in raw/ for reference.
Schema & SoccerNet Mapping
Example JSON Structure
{
"match_id": "117093",
"fps": 25.0,
"actions": [
{
"time": 12.5,
"event_class": "Pass",
"team": "left",
"player_id": 10
},
{
"time": 45.2,
"event_class": "Shot",
"team": "right",
"player_id": 7
},
...
]
}
SoccerNet BAS Correspondence
| SoccerTrack v2 | SoccerNet BAS | Notes |
|---|---|---|
time |
timestamp |
Global time in seconds |
event_class |
label |
12 action classes |
team |
team |
left / right |
player_id |
— | Unique to SoccerTrack v2 |
Evaluation / Metrics
Evaluation uses Average-mAP at various temporal tolerances (e.g., ±1s, ±2s), following the SoccerNet Ball Action Spotting Challenge.
- Tight tolerance: ±0.5s (precise detection)
- Loose tolerance: ±2s (event detection)
Official devkit: Coming soon
Differences vs SoccerNet BAS
Key Differences:
- Camera view: Panoramic (full-pitch visibility) vs. broadcast (partial/zoomed)
- Duration: Full match (~90 min) vs. half/clip segments
- Additional info: Player IDs available (linked to GSR tracks)
- Camera setup: Fixed panoramic vs. moving broadcast camera