Inspiration
My family run a small amateur sports team consisting of mens, ladies and disabled teams. Gaining footage of the games is a challenge. Whilst camera phones are much more accessible, they lack focal length and require someone to make sure the camera tracks the ball throughout the game, which can be especially difficult if disabled. Other options are just too expensive for most amateur sports teams unless you are wealthy.
What it does
My project has a computer vision model which tracks the ball and players. The games are filmed with a more accessible wide angle lens action camera (go-pro style) where the whole pitch is covered by the camera in one shot. The software tracks the ball, converts and undistorts the wide angle equirectangular footage and converts it into a rectilinear panorama which we can use within an ML model. The footage is then cropped dependant on the location of the ball.
How we built it
I have built a custom trained dataset run on a Roboflow Yolo V11 ML model. OpenCV was used for much of the distortion and camera modification. MakeSense.ai was used for training/valid labelling.
Challenges we ran into
Distortion wasn't expected post unwrapping the cubemap which meant any extra distortion step. One of the cubes was also curiously mirrored which I couldn't quite understand. To get it accurately distorted I would need to do a camera checkerboard test. I also had a long wait with training the model so had to manage tasks aimed at further down the line whilst this occured.
Accomplishments that we're proud of
I'm proud of the whole project. It's a very nearly finished project with real world applications which solves a real issue that I hear about very often within my circles. Without prompt, I even heard two people discussing this problem whilst waiting for a haircut.
What we learned
Learned much more about computer vision tasks as it's not my particular background as a core Computer Science grad who took no computer vision modules. I've also learnt to eat less chocolate at 3am.
What's next for YOLO V12 sports ball tracking with rectilinear footage
Mostly refinement and then a way of making it accessible to the masses! Refinement includes camera calibration, frame reduction and model refinement.
Log in or sign up for Devpost to join the conversation.