How shukkkur/volleyvision works
VolleyVision is a volleyball-video computer-vision project organized as three stages: ball detection/tracking, player and action recognition, and court detection. The documented goal includes tracking and game statistics, but the README says statistics and deployment were not completed. Stage I’s sampled code shows video inference and ball-box postprocessing; Stage II and III connections are limited to documented capabilities because their source was not excerpted. The model and utility layer is represented without implying that the stages form an implemented end-to-end pipeline.
Main entry points: yolo.py YOLO Model · general.py Detection Utilities · detect.py Ball Inference · experimental.py Model Variants
Components 21
Ball Detection & Tracking
- Ball Inference
Stage I - Volleyball/detect.py - Ball Helpers
Stage I - Volleyball/my_utils.py - Ball Tracking
Stage I - Volleyball/volley_track.py
YOLO Runtime
- YOLO Model
Stage I - Volleyball/models/yolo.py - Model Layers
Stage I - Volleyball/models/common.py - Model Variants
Stage I - Volleyball/models/experimental.py - Video & Datasets
Stage I - Volleyball/utils/datasets.py - Detection Utilities
Stage I - Volleyball/utils/general.py - Training Losses
Stage I - Volleyball/utils/loss.py - Validation Metrics
Stage I - Volleyball/utils/metrics.py - Training Plots
Stage I - Volleyball/utils/plots.py - Device Utilities
Stage I - Volleyball/utils/torch_utils.py - Anchor Utilities
Stage I - Volleyball/utils/autoanchor.py - Download Utilities
Stage I - Volleyball/utils/google_utils.py - W&B Logging
Stage I - Volleyball/utils/wandb_logging/wandb_utils.py
Players & Actions
- Player & Action Detection
Stage II - Players & Actions/main.py - Temporal Filtering
Stage II - Players & Actions/sliding_wndow.py - Verbose Filtering
Stage II - Players & Actions/sliding_window_verbose.py
Court Detection
- Court Detection
Stage III - Court Detection/court_detect.py
Other components
- Volleyball Video
- Roboflow Model
Connections 24
- Volleyball Video → Ball Inference: supplies frames
Stage I - Volleyball/detect.py - Ball Inference → Ball Helpers: uses helpers
Stage I - Volleyball/detect.py - Ball Inference → Roboflow Model: queries optionally
Stage I - Volleyball/detect.py - Ball Helpers → YOLO Model: constructs model
Stage I - Volleyball/my_utils.py - Ball Tracking → Ball Helpers: uses helpers
Stage I - Volleyball/volley_track.py - YOLO Model → Model Layers: uses layers
Stage I - Volleyball/models/yolo.py - YOLO Model → Model Variants: uses variants
Stage I - Volleyball/models/yolo.py - YOLO Model → Training Losses: uses losses
Stage I - Volleyball/models/yolo.py - YOLO Model → Device Utilities: uses utilities
Stage I - Volleyball/models/yolo.py - YOLO Model → Detection Utilities: uses utilities
Stage I - Volleyball/models/yolo.py - YOLO Model → Anchor Utilities: checks anchors
Stage I - Volleyball/models/yolo.py - Model Variants → Model Layers: imports layers
Stage I - Volleyball/models/experimental.py - Model Variants → Download Utilities: downloads weights
Stage I - Volleyball/models/experimental.py - Video & Datasets → Detection Utilities: uses utilities
Stage I - Volleyball/utils/datasets.py - Detection Utilities → Device Utilities: uses utilities
Stage I - Volleyball/utils/general.py - Detection Utilities → Validation Metrics: uses metrics
Stage I - Volleyball/utils/general.py - Training Plots → Detection Utilities: uses utilities
Stage I - Volleyball/utils/plots.py - Training Plots → Validation Metrics: uses metrics
Stage I - Volleyball/utils/plots.py - W&B Logging → Video & Datasets: loads datasets
Stage I - Volleyball/utils/wandb_logging/wandb_utils.py - W&B Logging → Detection Utilities: uses utilities
Stage I - Volleyball/utils/wandb_logging/wandb_utils.py - Volleyball Video → Player & Action Detection: input documented
README.md - Player & Action Detection → Temporal Filtering: temporal filtering
README.md - Player & Action Detection → Verbose Filtering: filtering variant
- Volleyball Video → Court Detection: input documented
README.md