Link to project

Open on GitHub

Introduction

This project represents my very first attempt of trying to incorporate Data Science concepts and a Machine Learning algorithm into an useful application.

Its main purpose is to compute the optimal parameters of a basketball player’s shooting motion and the shot percentage at those parameters. Afterwards, they can train in order to shoot at those parameters more and more consistently, to ensure a higher success rate of making the shot.

The ideas behind this project stem from my hobby and passion of playing basketball. In addition, apart from the game itself, I love the analytical side of it and one of my favourite NBA teams is the Dallas Mavericks, as they base a lot of their play on analytics.

Acquiring the data

An intriguing part of the project was acquiring the necessary data.

This was accomplished along with my colleague and friend, Eduard Scăueru. We filmed eachother while shooting Free Throws and measured two shooting motion parameters (body-arm angle and elbow angle) for each of our ~100 shots.

Creating the application

The entire code for the application was developed by me in Python.

Key concepts used:

  • Support Vector Classification, Probability Calibration
  • Plots, Colormaps, Contour lines
  • Computational geometry (through the use of a Convex Hull)

Application Interface

Final notes

At the moment, the project is by no means finished. I will continue to work on it and try to add support for multiple shooting motion parameters.

Thank you for taking the time to read and I certainly hope you will try my application.