The goal of the project is to perform time series prediction of player poses and ball trajectory in tennis matches. In order to limit computational complexity, a feature extraction pipeline will be built using open source models for object detection and pose estimation, to convert dense video into a sparse 3D representation of the point. These extracted features will serve to build a time series prediction model based on graph neural networks and recursive neural networks. The ability to predict the movement of players and ball in a tennis point is projected to unlock many downstream applications, from analytics to coaching.
The authors of this project are:
The repository is structured as follows.
src: The source directory contains the project's implementation code, divided into four subparts:data,model,trainandeval.data: This directory is where the data set should be stored, it can be downloaded from Google Drive.models: Our pre-trained model weights are saved in this directory. Additionally, the model weights needed for pre-processing should be saved here.
Finally, the root directory of this repository also contains the project slides and report.
Clone the repository to make a local copy and change directory.
git clone [email protected]:FlorSanders/Tennis_Shot_Prediction.git
cd adl_ai_tennis_coachThe dependencies to run the code are included as an environment.yml file.
They can be installed using conda by executing the following commands.
conda env create -f environment.yml
conda activate tecoSeparate install instructions are required for the data pre-processing.
These are provided in the README of the src/data directory.
