| --- |
| license: agpl-3.0 |
| tags: |
| - soccer |
| - video |
| - spotting |
| - localization |
| --- |
| # β½ OpenSportsLib Localization Model (E2E) |
|
|
| ## π Overview |
|
|
| This model is a **video-based localization model** built using the **OpenSportsLib**, designed for **soccer action localization**. |
|
|
| - **Task**: Action Spotting / Localization |
| - **Architecture**: E2E |
| - **Backend**: Dali |
| - **Library**: OpenSportsLib |
| - **Input**: Video clips (224p) |
|
|
| --- |
|
|
| ## π Dataset |
|
|
| ### Training Dataset |
|
|
| This model is trained on the **SoccerNet β Ball Action Spotting 2025 (12 classes)**: |
|
|
| π https://huggingface.co/datasets/OpenSportsLab/soccernetpro-localization-snbas/tree/224p |
|
|
| - **Domain**: Soccer video understanding |
| - **Task**: Action Spotting |
| - **Modality**: Video |
| - **Classes**: [PASS, DRIVE, HEADER, HIGH PASS, OUT, CROSS, THROW IN, SHOT, BALL PLAYER BLOCK, PLAYER SUCCESSFUL TACKLE, FREE KICK, GOAL] |
|
|
| --- |
|
|
| ## π Benchmark Results |
|
|
| | Metric | Score | |
| |--------------|------| |
| | tight mAP | 47.98 | |
| | loose mAP | 58.35 | |
|
|
| --- |
|
|
| ## π§ Using with OpenSportsLib |
|
|
| For more details about OpenSportsLib visit the below link |
|
|
| π Github - https://github.com/OpenSportsLab/opensportslib |
|
|
| π PyPi - https://pypi.org/project/opensportslib/ |
|
|
| π Documentations - https://opensportslab.github.io/opensportslib/ |
|
|
|
|
| ### Import the library |
|
|
| ```python |
| import opensportslib |
| print("OpenSportsLib imported successfully") |
| ``` |
|
|
| ### Run inference |
|
|
| ```python |
| from opensportslib.apis import LocalizationModel |
| |
| my_model = LocalizationModel( |
| config="/path/to/localization.yaml", |
| π weights="OpenSportsLab/OSL-loc-snbas-2025-e2e", |
| ) |
| |
| predictions = my_model.infer( |
| test_set="/path/to/test.json", |
| ) |
| |
| saved_predictions = my_model.save_predictions( |
| output_path="/path/to/predictions.json", |
| predictions=predictions, |
| ) |
| |
| metrics = my_model.evaluate( |
| test_set="/path/to/test.json", |
| predictions=saved_predictions, |
| ) |
| |
| print(metrics) |
| ``` |
| --- |
|
|
| ## π License |
|
|
| - **Open source license**: AGPL 3.0 for research, academic, and community use. |
|
|
| - **Commercial license**: For proprietary or commercial deployment, please contact the project maintainers. |
|
|
| __ |
|
|
| ## π Citation |
| ``` |
| @misc{opensportslib_e2e_localization_snbas_2025, |
| title={OpenSportsLib Localization E2E SNBAS 2025}, |
| author={OpenSportsLab}, |
| year={2026}, |
| howpublished={https://huggingface.co/OpenSportsLab/oslib-e2e-localization-snbas-2025} |
| } |
| ``` |
|
|
| --- |
|
|
| ## π Acknowledgements |
|
|
| - **Dataset**: SoccerNet / OpenSportsLab |
| - **Library**: https://github.com/OpenSportsLab/opensportslib |