Recently, my friend Maansi Singh began her journey as a tennis coach, and to support her in analyzing her students' gameplay, Hozefa Millwala and I developed a system that automates key aspects of tennis video analysis.

Using OpenCV and YOLO, we've created a tool where Maansi can simply drag and drop a video, and the system processes it to highlight all the critical elements: player movements, ball speed, and running speed.

Additionally, we implemented a feature to analyze and visualize the ball's path on a minimap for an easier understanding of each shot's trajectory.

Since YOLO and OpenCV alone struggled to detect the ball's path at every frame, we employed Pandas for interpolation, predicting missing points to provide a comprehensive and clear path visualization. This makes it straightforward for Maansi to assess the trajectory without ambiguity.

The entire application has been deployed on Amazon Web Services (AWS), with Flask managing the frontend interface.

Despite some challenges caused by limited training data, which we're addressing incrementally, this project was a valuable and fulfilling endeavour to assist Maansi in enhancing her coaching capabilities.

Project showcase image
Project showcase image

More Projects