MMA Fighter Pose Estimation Dataset: Keypoint-Annotated UFC Stand-Up Combat Images for Computer Vision
Description
Dataset Description: This dataset is the second version of the MMA Fighter Detection Dataset, extending Version 1 (bounding box annotations) with 17-point COCO-style skeletal keypoint annotations for each detected fighter. It addresses the need for fine-grained body pose data in combat sports computer vision, enabling research into strike biomechanics, fighter posture analysis, and AI-assisted judging systems for mixed martial arts. Research Hypothesis and Purpose: Building on the hypothesis that automated fighter detection can serve as a foundation for AI-assisted judging, this version advances that goal by capturing full-body skeletal pose per fighter. Keypoint data enables quantification of body mechanics — guard positioning, weight distribution, striking extension, and defensive posture — directly relevant to judging criteria such as effective striking and aggression. What the Data Shows: The dataset contains 5,109 images from the same 20 professional UFC fights as Version 1, each annotated with 17 COCO-format keypoints per fighter instance in YOLO pose format. It captures stand-up striking exchanges, with keypoints following the standard COCO-17 skeleton (nose, eyes, ears, shoulders, elbows, wrists, hips, knees, ankles) and a per-point visibility flag (0 = not labeled, 1 = occluded, 2 = visible). Data Collection Methodology: Images were extracted from the same official UFC broadcast footage used in Version 1, selected to ensure diversity in fighter body types and styles (orthodox vs. southpaw), weight classes (bantamweight through light heavyweight), camera angles, and venue settings. All images are 640×640 pixels, split into train/valid/test sets (3,636 / 981 / 492). Keypoint annotations were generated through a semi-automated pipeline described in the Steps to Reproduce section. Notable Characteristics and Limitations: As with Version 1, the dataset is scoped to stand-up striking scenarios; ground grappling and cage clinch situations are excluded. Additional limitations: keypoints falling outside the Version 1 ground-truth bounding box were discarded to avoid cross-fighter contamination; heavily occluded keypoints carry lower visibility scores and should be used with caution; annotations are model-generated (YOLOv11x-pose) and may contain minor errors in complex poses. How to Interpret and Use the Data: Each .txt label file follows YOLO pose format — one instance per line: <class> <cx> <cy> <w> <h> <kp0_x> <kp0_y> <kp0_v> ... <kp16_x> <kp16_y> <kp16_v> All coordinates are normalised to [0, 1]. The included data.yaml enables immediate integration with Ultralytics YOLOv11 pose pipelines. For bounding boxes only, refer to Version 1 (DOI: 10.17632/c456bnk8bm.1).
Files
Steps to reproduce
Prerequisites: - Version 1 of this dataset (bounding box annotations): DOI 10.17632/c456bnk8bm.1 - Python 3.10+ - ultralytics>=8.3.0 - numpy, opencv-python Step 1: Load the pre-trained YOLOv11x-pose model Step 2: Run pose inference on all frames Step 3: Filter keypoints using V1 bounding boxes Step 4: Copy images (no modification) Step 5: Verify the output Step 6: Train (optional verification)
Institutions
- Bahria UniversityIslamabad, Islamabad