Skip to content

CashMemory/SeniorProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

From Flab to Ab: A Smart Home Gym

This project contains the source code for our Computer Engineering Senior Project, satisfying the requirements for ECE 4710 at the University of Utah. The project includes backend code for pose estimation, frontend code for display on the mirror, and a Flask server for communication with the iOS application that accompanies this project.

Overview

The purpose of this project is to provide real-time visual feedback and auto-logging capability to a user who is exercising. The project currently supports three exercises: bicep curl, shoulder press, and squat.

Dependencies

This project makes use of the TensorRT Pose Estimation library for model inference accelerated by NVIDIA TensorRT. Please refer to relevant documentation their for full installation instructions.

Models

We used the following followed which was pre-trained on the MSCOCO dataset.

Model Jetson Nano Weights
resnet18_baseline_att_224x224_A 14 download (81MB)

Running

To run this application, navigate to the tasks/human_pose directory and run the get_video.py script.

  • python3 get_video.py

In addition to loading the model, running this script also starts up a server running on port 5000. To begin an exercise, connect to this server and hit one of the supported HTTP endpoints using a browser or the iOS application that accompanies this project.

Endpoints

  • startSession: Begin a workout session
  • endSession: End a workout session
  • rightCurl: Initiate right bicep curl exercise
  • leftCurl: Initiate left bicep curl exercise
  • shoulderPress: Initiate shoulder press exercise
  • squat: Initiate squat exercise

About

Computer Vision Workout Assistant

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published