Inspiration

This idea was born out of a collective passion for promoting a holistic approach to well-being. We felt a calling to make a positive impact on the health of Canadians, emphasizing the importance of a healthy lifestyle. To tackle this issue, we created FitQuest; an app that motivates people to work out and achieve their health goals using gaming features. Utilizing the ever-increasing love for video games among youth, we hope to influence their choices towards living a healthier lifestyle, consequently decreasing the number of poor health-related deaths each year.

What it does

FitQuest allows the user to create an account and track their fitness progress. It offers features such as fitness quests, exercise games and a leaderboard. As an example for the exercise game, the prototype uses the user's webcam to detect jumping jack movements. Then, after 1 minute (standard amount of time) it tracks how many jumping jacks they were able to do and puts their name on a universal leaderboard to compete with other users. The user can continuously track their saved scores, progress, etc through the app.

How we built it

OpenCV was used to build the feature of the user's webcam tracking their jumping jacks. Furthermore, we used Flask for the framework, leaderboard, and log-in. HTML and CSS were used for the front-end of the website.

Challenges we ran into

Some of us had never coded using Flask before, so naturally, there were some challenges that we had to overcome to be able to create the front-end and back-end of the project. Furthermore, OpenCV was a completely new concept to us, and we had to find a way for it to detect jumping jacks in a relatively short amount of time! Overall, we tried learning many new techniques and software during this project allowing us to expand our skills.

Accomplishments that we're proud of

One of the main components that we are proud of is the implementation of OpenCV to use computer vision to detect jumping jack movements in our project. We collaborated and overcame the countless challenges that we faced while learning and utilizing this new software. Furthermore, despite many of our teammates being new to Flask, we managed to find our way through it, showcasing our team's ability to adapt to unfamiliar frameworks and deliver a functional prototype. Lastly, we kept getting various errors with the leaderboard, however, we were eventually able to make it work.

What we learned

Our team members gained valuable experience in working with Flask. This learning opportunity enhanced our skills in web development and backend architecture. Delving into the world of computer vision, we acquired knowledge and hands-on experience in implementing OpenCV for motion detection. This newfound expertise broadens our capabilities in utilizing computer vision for various applications.

What's next for FitQuest

In the future, we hope to make the tracking system (OpenCV) more foolproof. Currently, if the user were only waving their arms above a 90-degree angle (kind of like a chicken dance), the program would still determine that they're doing a jumping jack. To fix this issue we are planning to program it to detect a change in the height, and maybe even take the user's leg movements into account. We also want to turn our project into a mobile application in the future to allow for a better user experience. Furthermore, we wish to expand the app to recognize and track a variety of exercises that will provide users with a more comprehensive fitness experience. Lastly, gathering user feedback through forms and surveys will allow us to improve FitQuest.

Built With

Share this project:

Updates