Inspiration

All the members of our team are into fitness and have experienced some kind of injury during workouts. One member even sprained his back from rounding his lower back during lifts. That made us realize how common and avoidable many of these injuries are. Since proper form is key but not always easy to maintain without guidance, we wanted to create a tool that could help people correct their form in real time. Not everyone who initially starts working out has a more experienced person to help guide them, so we created Romus to assist those in need.

What it does

Romus is a real-time form analysis tool that uses a camera to track the user’s joints and body position during exercise. It creates a live skeletal model and analyzes posture as the user moves. If improper form is detected, like poor back alignment or incorrect joint position, the system immediately flags it and provides feedback. This helps users avoid injuries, improve technique, and build better habits without needing a personal trainer.

How we built it

We built Romus using MediaPipe for pose detection, which allows us to track body landmarks like shoulders, hips, and knees in real time. We then created algorithms to analyze joint angles and posture, comparing them to proper form standards. On the frontend, we designed a simple interface that overlays a skeletal model on the user’s video feed and displays alerts when form is incorrect.

Challenges we ran into

One challenge was dealing with merge conflicts while working as a team. We had to improve our coordination and version control practices. Another challenge was ensuring accurate form detection, since factors like camera angle and lighting can affect tracking. We also had to balance performance and speed to keep the feedback real time.

Accomplishments that we're proud of

We’re proud of successfully using MediaPipe to build a working real-time skeletal tracking system. We also turned raw tracking data into meaningful feedback, allowing the app to actually help users improve their form. Lastly, we’re proud of overcoming collaboration challenges and completing the project as a team.

What we learned

We learned a lot about computer vision and real-time data processing. We also gained experience working with shared codebases, resolving conflicts, and collaborating effectively. Additionally, we learned how to design a tool that is both functional and user-friendly.

What's next for Romus

In the future, we want to expand the variety of workouts that Romus can support. Right now, it only works for a select number of exercises, so increasing that range will make the tool more useful for a wider audience. We also plan to add exercise-specific feedback so the system can recognize movements like squats or push-ups and provide more detailed guidance. Additionally, we want to improve accuracy with better models, incorporate features like voice feedback, and potentially turn Romus into a mobile or web app for greater accessibility.

Built With

Share this project:

Updates