Inspiration
Since I started spending more time with my extended family, I've come to realize that many of them are intense soccer fans. Many of the players that they love encounter sprains, strains, concussions and other injuries involved in playing sports. My family members want their favorite players to be safe, which is why it's important that they receive medical attention immediately. I've been experimenting with Computer Vision since last year and explored its' ability to track people and create fun interfaces, but I wanted to combine this field with sports in order to help solve the problem of unnoticed injuries.
What it does
SportsGuard tracks players on the court/field and monitors them for any potential injuries. It takes images of the different players and outputs a log containing when a potential injury may have occurred and who it may have occurred between.
How we built it
This was built with Python, relying on the YOLO11s and YOLO11m models for tracking. With OpenCV, we export each frame out to a flash server, which displays the current (live) frame and the players' conditions (falls, bumps, normal).
Challenges we ran into
We were unable to get the accompanying Android apps to communicate with the Flask server (via Firebase) before the deadline It's also difficult to read WearOS sensor data due to poor documentation; there isn't much support since WearOS isn't a popular platform for developers to use.
Accomplishments that we're proud of
I'm proud that I was able to develop this system on my own and create a product that looked similar to my prototype.
What we learned
This was my first time using Flask, and so I learned about running servers locally from my machine.
What's next for SportsGuard
I want to finish implementing these apps so that we can have live wearable alerts and detections added to the system. I also want to track the individual skeletons of the users rather than just boxes to be more precise with injuries. We also hope to deploy an application like this to the web and allow for cloud processing.
Built With
- python
- yolo11
Log in or sign up for Devpost to join the conversation.