CoolFace
Modelpublic

Huydinh1205/court_yolo11n_pose

sourceHugging Faceagpl-3.0updated 3mo agoView on Hugging Face
0likes43downloads
Model Card

Badminton Court Keypoint Detector (YOLOv11n-pose, fine-tuned)

A YOLOv11n-pose model that localises a single badminton court as one object with 30 keypoints. The keypoints are ordered in a boustrophedon (snake) layout so they can be mapped to known court coordinates and used to estimate a perspective homography (image ↔ real-world metres) for single-camera broadcast footage.

  • —Task: pose / keypoint detection (task=pose)
  • —Classes: item (the court), 1 class
  • —Keypoints: 30 per court (kpt_shape = [30, 3])
  • —Base checkpoint: yolo11n-pose.pt (Ultralytics)
  • —Framework: Ultralytics 8.4.47

Intended use

Detect the court and its 30 keypoints in a broadcast frame, then solve a homography to convert player/shuttle pixel positions into court-plane coordinates. Part of a hybrid CV + VLM tactical-analysis pipeline.

Not intended for: non-broadcast angles, doubles-court markings it was not trained on, or as a general keypoint detector outside badminton.

How to use

python
from ultralytics import YOLO
from huggingface_hub import hf_hub_download

w = hf_hub_download("<your-username>/badminton-court-keypoints-yolov11", "court_yolo11n_pose.pt")
model = YOLO(w)

res = model.predict("frame.jpg", imgsz=640, conf=0.25)[0]
kpts = res.keypoints.xy    # (num_courts, 30, 2) pixel coordinates

Training

Base modelyolo11n-pose.pt
Epochs200
Image size640
Batch16
DatasetRoboflow Universe — Badminton Court Keypoint Dataset (learning-9i34b)
Dataset linkhttps://universe.roboflow.com/learning-9i34b/badminton-court-keypoint-dataset

Evaluation (validation split, from the training checkpoint)

MetricValue
Precision (box)0.999
Recall (box)1.000
mAP@50 (box)0.995
mAP@50-95 (box)0.933
mAP@50 (pose)0.995
mAP@50-95 (pose)0.199
These are the metrics baked into the checkpoint on the dataset's own validation split. The low pose mAP@50-95 reflects strict keypoint-localisation tolerance; for homography the downstream reprojection error is the more meaningful figure (~0.042 m in our pipeline on the evaluated segment — measured downstream, not a checkpoint metric).

Limitations

  • —Single fixed broadcast viewpoint; not validated on other camera angles or venues.
  • —Validation split is small (see source dataset); treat metrics as in-domain.

License

Inherits AGPL-3.0 from Ultralytics YOLO. If you use these weights in a network service, AGPL obligations apply.

Citation

bibtex
@software{jocher2023yolo,
  author  = {Jocher, Glenn and Qiu, Jing and Chaurasia, Ayush},
  title   = {Ultralytics YOLO},
  url     = {https://github.com/ultralytics/ultralytics},
  version = {11.0.0}, year = {2024}
}
@misc{roboflow_badminton_court,
  title        = {Badminton Court Keypoint Dataset},
  author       = {learning-9i34b},
  howpublished = {\url{https://universe.roboflow.com/learning-9i34b/badminton-court-keypoint-dataset}},
  journal      = {Roboflow Universe}, publisher = {Roboflow}, year = {20XX}
}