calvinyeungck / 3D-Shot-Posture-Dataset

Dataset and Code for the paper "AutoSoccerPose: Automated 3D posture Analysis of Soccer Shot Movements"
Apache License 2.0
29 stars 2 forks source link

3D Shot Posture Dataset

arXiv

The Offical repo for the CVsports at CVPR paper "AutoSoccerPose: Automated 3D posture Analysis of Soccer Shot Movements". This dataset consists of the 3d and 2d postures of professional football players under shot situations.

Content of the dataset:

Clustering:

We provide 2 clustering methods, with pca+kmean or deep learning+kmeam. For the result of the clustering, refer to our paper.

Image 1 Image 2

AutoSoccerPose: Automated 3D Shooter Posture Extraction:

Extracting the shooter 2D&3D Posture from broadcast video (from SoccerNet).

Data source

Result

Data collection method:

The broadcast videos were collected from SoccerNet, and with annotation on actions, the videos were clipped (0.5 before and after the annotated ms, 25 frames total). The tracklet for the clips was then generated using a fine-tuned YOLO v8 and BoT-Sort. Furthermore, the shooter's traklet id was manually selected, and the cropped image was generated using the Bbox. The first 20 images' 2D postures (determined empirically) were manually annotated and lifted to 3D using the MotionAGFormer. This repository includes the modified code for BoT-Sort and MotionAGFormer.

The guide for downloading the dataset, the dataset structure explanation, and performing additional annotation and visualization are available below.

Getting Started

Download dataset

Step 1. Clone this repo

git clone https://github.com/calvinyeungck/3D-Shot-Posture-Dataset.git

Step 2. Locate the repo

cd path/to/this/repo/

Step 3. Unzip the file

unzip 3dsp.zip

The following are not required for retrieving the dataset.

Annotation and Visualization functions

Step 4. Install required package

pip install -r requirements.txt

Step 5. Download the required models parameters

Download the parameters for the following models and place them accordingly.

Step 6.1. Automated 3D Shooter Posture Extraction, results in /3dsp_utils/output.

cd path/to/this/repo/
cd 3dsp_utils
python demo.py -t <path/to/target/clips>

Step 6.2. Perform additional annotation on SoccerNet

cd path/to/this/repo/
cd 3dsp_utils
python dataset_annotation.py

Step 7. Visualize the 2d and 3d posture

cd path/to/this/repo/
cd 3dsp_utils
python vis_post.py

Step 8. Pre-process the 3d posture

cd path/to/this/repo/
cd 3dsp_utils
python pre_process.py

Dataset Structure

The following shows the overall structure of the dataset and the format of each file.

xxxxx  --- img --- 001.jpg
            |   |- 002.jpg
            |   |- ...
            |   |- 020.jpg
            |   
            posture --- 001.json (H3WB format)
            |        |- 002.json
            |        |- ...
            |        |- 020.json
            |
            gt --- gt.txt (MOT20 format)
            |
            info --- info.ini

H3WB format

MOT20 format

info.ini

@inproceedings{yeung2024autosoccerpose,
  title={AutoSoccerPose: Automated 3D posture Analysis of Soccer Shot Movements},
  author={Yeung, Calvin and Ide, Kenjiro and Fujii, Keisuke},
  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  pages={3214--3224},
  year={2024}
}