Upload README.md with huggingface_hub
Browse files
README.md
ADDED
|
@@ -0,0 +1,116 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
tags:
|
| 4 |
+
- yolo
|
| 5 |
+
- object-detection
|
| 6 |
+
- pose-estimation
|
| 7 |
+
- volleyball
|
| 8 |
+
- sports
|
| 9 |
+
- computer-vision
|
| 10 |
+
- pytorch
|
| 11 |
+
datasets:
|
| 12 |
+
- volleyball-court-keypoints
|
| 13 |
+
- volleyball-detection
|
| 14 |
+
language:
|
| 15 |
+
- en
|
| 16 |
+
pipeline_tag: object-detection
|
| 17 |
+
---
|
| 18 |
+
|
| 19 |
+
# VOLLEY-REF AI Models
|
| 20 |
+
|
| 21 |
+
AI-powered volleyball referee system for automatic IN/OUT line call detection.
|
| 22 |
+
|
| 23 |
+
## Models Included
|
| 24 |
+
|
| 25 |
+
### 1. Court Keypoints Model (`yolo_court_keypoints.pt`)
|
| 26 |
+
- **Architecture**: YOLOv11n-pose
|
| 27 |
+
- **Task**: Detect 14 keypoints of a volleyball court
|
| 28 |
+
- **Training**: 100 epochs on volleyball-court-keypoints dataset
|
| 29 |
+
- **Performance**: 99% box mAP@50, 29% pose mAP@50
|
| 30 |
+
|
| 31 |
+
### 2. Ball Detection Model (`yolo_volleyball_ball.pt`)
|
| 32 |
+
- **Architecture**: YOLOv11s
|
| 33 |
+
- **Task**: Detect volleyball in video frames
|
| 34 |
+
- **Training**: 57 epochs on volleyball_detection dataset
|
| 35 |
+
- **Performance**: 98.8% mAP@50
|
| 36 |
+
|
| 37 |
+
## Usage
|
| 38 |
+
|
| 39 |
+
### Download Models
|
| 40 |
+
|
| 41 |
+
```python
|
| 42 |
+
from huggingface_hub import hf_hub_download
|
| 43 |
+
|
| 44 |
+
# Download court model
|
| 45 |
+
court_model = hf_hub_download(
|
| 46 |
+
repo_id="David-dsv/volley-ref-ai",
|
| 47 |
+
filename="yolo_court_keypoints.pt"
|
| 48 |
+
)
|
| 49 |
+
|
| 50 |
+
# Download ball model
|
| 51 |
+
ball_model = hf_hub_download(
|
| 52 |
+
repo_id="David-dsv/volley-ref-ai",
|
| 53 |
+
filename="yolo_volleyball_ball.pt"
|
| 54 |
+
)
|
| 55 |
+
```
|
| 56 |
+
|
| 57 |
+
### Inference with Ultralytics
|
| 58 |
+
|
| 59 |
+
```python
|
| 60 |
+
from ultralytics import YOLO
|
| 61 |
+
|
| 62 |
+
# Court keypoints detection
|
| 63 |
+
court_model = YOLO("yolo_court_keypoints.pt")
|
| 64 |
+
results = court_model("volleyball_frame.jpg")
|
| 65 |
+
|
| 66 |
+
# Ball detection
|
| 67 |
+
ball_model = YOLO("yolo_volleyball_ball.pt")
|
| 68 |
+
results = ball_model("volleyball_frame.jpg", conf=0.7)
|
| 69 |
+
```
|
| 70 |
+
|
| 71 |
+
### Full Pipeline
|
| 72 |
+
|
| 73 |
+
See the [GitHub repository](https://github.com/David-dsv/volley-ref-ai) for the complete VOLLEY-REF AI pipeline that combines both models for automatic IN/OUT detection.
|
| 74 |
+
|
| 75 |
+
## Training Details
|
| 76 |
+
|
| 77 |
+
### Court Model
|
| 78 |
+
- Base: `yolo11n-pose.pt`
|
| 79 |
+
- Dataset: volleyball-court-keypoints (495 images)
|
| 80 |
+
- Epochs: 100
|
| 81 |
+
- Image size: 640
|
| 82 |
+
- Augmentation: Default YOLO augmentations
|
| 83 |
+
|
| 84 |
+
### Ball Model
|
| 85 |
+
- Base: `yolo11s.pt`
|
| 86 |
+
- Dataset: volleyball_detection (1091 images)
|
| 87 |
+
- Epochs: 57 (early stopped from 150)
|
| 88 |
+
- Image size: 640
|
| 89 |
+
- Augmentation: Default YOLO augmentations
|
| 90 |
+
|
| 91 |
+
## Limitations
|
| 92 |
+
|
| 93 |
+
- Trained primarily on indoor volleyball footage
|
| 94 |
+
- Performance may vary with different camera angles
|
| 95 |
+
- Ball detection works best with clear visibility (no motion blur)
|
| 96 |
+
- Court detection requires visible court lines
|
| 97 |
+
|
| 98 |
+
## License
|
| 99 |
+
|
| 100 |
+
MIT License
|
| 101 |
+
|
| 102 |
+
## Citation
|
| 103 |
+
|
| 104 |
+
```bibtex
|
| 105 |
+
@software{volley_ref_ai_2025,
|
| 106 |
+
author = {Vuong},
|
| 107 |
+
title = {VOLLEY-REF AI: AI-Powered Volleyball Referee System},
|
| 108 |
+
year = {2025},
|
| 109 |
+
url = {https://github.com/David-dsv/volley-ref-ai}
|
| 110 |
+
}
|
| 111 |
+
```
|
| 112 |
+
|
| 113 |
+
## Acknowledgments
|
| 114 |
+
|
| 115 |
+
- [Ultralytics](https://github.com/ultralytics/ultralytics) for YOLOv11
|
| 116 |
+
- [Roboflow](https://roboflow.com/) for the training datasets
|