The main idea of this project is to explore how technology can be used to improve sports and specifically how computer vision and sensors can be used to improve a tennis player’s performance. The two aspects of the players game which are to be tackled with this analysis are technique and game plan. Technique will be corrected and adjusted utilizing an open source pose estimation algorithm, then the players' pose can be corrected using the drawing tools that exist in the application. This project also aims to read and analyse data coming via WIFI from an Arduino Nano RP2040 which has a built-in IMU sensor mounted on the racket.
The system communicates as below:
In this file, I am adding the feature of drawing a personalized stick figure (drawing only the joints necessary) with a blank background. The method which I created in this module is called drawCustomizedFigure. The original module is from cvzone (https://www.computervision.zone/).
In this file I created a user interface using Python Kivy which uses a pose estimation algorithm to help a tennis player improve its game.
This is the arduino code which creates an access point and prints IMU data to a local server so it can be fetched later.
This script reads IMU data from a local server and writes to a text file based on user input in order to process the data later.
This script parses the IMU data which was stored in a text file and creates graphs based on the data for analysis.
Read the report for more information and results from the collection of data with the IMU sensor.