-
backend pipeline
-
depth mapping from LiDAR sensors to get the 3d position of the birdie
-
roboflow court mapping using camera extrinsics to calculate the court
-
calculating the trajectory of the birdie with roboflow
-
a nextjs frontend hooked up by websocket to display score
-
physics calculations to keep track of the birdie's position when it's unable to be detected
-
where it all began.
Goodminton
Object-permanent 3D computer vision for fast-moving small objects.
Inspiration
Goodminton was inspired by your everyday game of backyard badminton.
What it does
Goodminton uses a combination of LiDAR cameras, RoboFlow computer vision, and 11th-grade physics to track the three-dimensional position of a badminton shuttlecock, even when moving at high speeds. By virtually generating a "court" and "net", Goodminton enables you to play badminton in your backyard or at school or anywhere else, and keeps track of the score for you.
How we built it
Goodminton was incredibly technically challenging to create. The video processing uses multiple layers of videos to build the most accurate location map of the birdie. It first gathered camera, depth, and gyroscope data from the iPhone, before processing through a motion detector, and into Roboflow's YOLO8 pre-trained models. By keeping track of the data using physics calculations (including an acceleration for gravity), using camera intrinsics and extrinsics, Goodminton keeps flawless track of where the birdie is.
The frontend, made with Next.js, listens by websockets for all the game data, tracked in a game state object built in Python.
Challenges we ran into
The backend pipeline with Roboflow was easily the greatest challenge of the project, as combining three different inputs from the iPhone was so much data that we literally had to use a wire.
Accomplishments that we're proud of
- We got real-time shuttlecock tracking working end-to-end, from the iPhone camera all the way to the scoreboard.
- Managed to combine motion detection, AI, and physics in one pipeline without it breaking.
- Built a working demo where the shuttle’s position, speed, and trajectory actually update live.
- Designed a clean frontend that makes it easy to see what’s happening during a game.
What we learned
- Physics equations (like gravity and velocity) can actually fill in gaps when the AI model drops frames.
- Using a WebSocket allowed us to seamlessly integrate our backend with our frontend
What's next for Goodminton
- Multi-camera support: Expand court coverage and tracking accuracy from multiple angles.
- Player tracking & shot classification: Identify player movements and classify types of shots like smashes, drops, and clears.
- Performance analytics: Provide training insights, heatmaps, shot speed distributions, and more.
- Mobile & AR app: Bring badminton tracking to the phone—with augmented overlays showing scores, net lines, and shuttle trajectories in real-time.
- Cloud deployment: Make Goodminton accessible anywhere—remotely and wirelessly—so users don’t need local hardware to play.


Log in or sign up for Devpost to join the conversation.