Volleyball Match Analysis
Capstone Silver AwardOne camera to a point-by-point match record: court, players, 3D ball flights and rallies
- Role
- Team lead (capstone), then sole researcher
- Timeline
- Nov. 2024 – present
- Team
- 3-person capstone team, then solo
Turns one camera's recording of a volleyball match into a reviewable, point-by-point record. It began as my NTOU CSE senior capstone — a three-person team I led, with a 50% share of the work — combining VballNet ball tracking and in/out landing judgment with a YOLOv11m action detector (validation mAP@0.5 0.945 over 24,806 images from two public datasets), and won Silver in the department's Software Development Special Award and an Honorable Mention in its 2025 capstone competition.
I have since continued it on my own as a research project and rebuilt the pipeline in stages: court registration that follows a panning, zooming camera (0.10 m median court-position error on held-out broadcast clips), player tracking with YOLO26s + BoT-SORT (IDF1 0.690, HOTA 0.636 on SportsMOT volleyball), a per-player action classifier that lifts macro F1 from 0.303 to 0.678 on 16 unseen matches, shirt numbers voted over time, ballistic 3D ball flights anchored to the touching player, and a rally classifier (F1 0.742 on held-out broadcast matches).
Each stage is versioned and cached and reports why it could not produce a result, and every number comes from a script and a labelled split. The results feed a React + FastAPI review app with a timeline, 2D and 3D tactics boards and per-player statistics.
Gallery


