Skip to content

Squatty is a multithreaded computer vision software that tracks squats, but with a twist: you have to keep squatting, or else

License

Notifications You must be signed in to change notification settings

alex-lin64/Squatty

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Squatty

Unlock your squat potentials - "Squid Game" style 😉🔫
View Demo »

Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About The Project

Check Out a Quick Demo Here!

In our increasingly digital age, we find ourselves glued to screens and chairs, a far cry from the active lifestyles of our ancestors 300 years ago—a concerning shift in our well-being. Today's youth, from little Jimmy to college John, spend an astonishing 7.5 hours daily, equivalent to 114 full days per year, in front of screens (I actually did the research). Wtf, that's a whole third of a year!

I felt like I needed to do something. I had to make these kids move, and so I took inspiration from the CCP and their love for labor and surveillance.

I give to you, Squatty! Using a camera or webcam, Squatty tracks your squats, records your squat count, and monitors the time since your last squat. By Xi's request, a punishment mode can even be activated, compelling you to complete squats at specified intervals. Keep squatting, or you'll feel the consequences!

(back to top)

Built With

  • Tensorflow
  • React
  • Arduino
  • Flask
  • Docker

(back to top)

Getting Started

To get a local copy up and running follow these simple example steps.

Important

This project is a work in progress. Installation steps are subject to change.

Prerequisites

Navigate to the

pip install -r requirements.txt

Installation

  1. Clone the repo (main branch)

    git clone https://github.com/alex-lin64/Squatty.git
  2. Install prerequisites (conda environment is recommended)

    pip install -r requirements.txt
  3. If punishment feature is desired, wire up the arduino and relay to your punishment of choice according to example is given below and connect the arduino to your device serially.

    • add diagram of arduino wiring

(back to top)

Usage

Important

This project is a work in progress. Usage steps are subject to change.

  1. Navigate to the project directory and start the script with
    python ./main.py
  2. Start squatting! Here are the controls
    • Press 'q' to quit the script
    • Press 'u' to start punishment mode
    • Press 'p' to pause punishment mode

(back to top)

Roadmap

  • Flask web-app for controls & GUI
  • Deploy Flask app w/ docker
  • Wireless punishment
    • Bluetooth
    • Change punishment to TENS Unit

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Alex Lin - alex_lin@brown.edu

Project Link: https://github.com/alex-lin64/Squatty

(back to top)

Acknowledgments

(back to top)

About

Squatty is a multithreaded computer vision software that tracks squats, but with a twist: you have to keep squatting, or else

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages