Git Product home page Git Product logo

mohesmail143 / coach-ai Goto Github PK

View Code? Open in Web Editor NEW
4.0 2.0 2.0 37.22 MB

A Flutter app that utlises TensorFlow's MoveNet model for pose detection, in order to count a user's reps and detect the correctness of their pose, with additional modules for BMI calculation, nutrition.

License: MIT License

Kotlin 0.02% Batchfile 0.16% Swift 0.41% Objective-C 0.01% Dart 25.58% CMake 3.05% C++ 3.92% C 0.23% HTML 0.30% Jupyter Notebook 66.32%
android artificial-intelligence dart deep-learning exercise fitness-tracker flutter ios jupyter-notebook movenet movenet-thunder pose pose-detection pose-estimation tensorflow tensorflow-lite

coach-ai's Introduction

Coach.ai

Coach.ai is a mobile application built using Flutter that uses TensorFlow's MoveNet model for pose detection to help users count their reps and detect the correctness of their pose. In addition to this, the app has additional modules for BMI calculation, nutrition tracking, and user authentication using Firebase.

This was my senior project for the Fall 2022 - Spring 2023 semesters at the Faculty of Engineering, Alexandria University, under the Computer and Communications Engineering department, supervised by Dr. Onsy Abdelalim.

Features

The following are the key features of the Coach.ai app:

  • Reps counter: The app uses the MoveNet model to detect the user's pose and count the number of reps they perform for a specific exercise.
  • Pose correctness detection: The app also checks the correctness of the user's pose and provides feedback on how to improve their form. The app uses custom machine learning models trained on MoveNet keypoints as input to classify the correctness of the user's pose.
  • BMI calculator: The app has a module for calculating the user's BMI (Body Mass Index), based on their height and weight inputs.
  • Nutrition tracker: The app allows users to track their daily food intake and provides insights into their nutrient consumption.
  • User authentication: The app uses Firebase for user authentication, allowing users to securely create an account, sign in, and manage their profile.

Technologies Used

The following technologies were used to build the Coach.ai app:

  • Flutter: Flutter is an open-source UI software development kit created by Google. It is used for building high-performance, high-fidelity apps for Android, iOS, web, and desktop from a single codebase.
  • TensorFlow: TensorFlow is an open-source software library for dataflow and differentiable programming across a range of tasks. It is used for building and training machine learning models.
  • MoveNet: MoveNet is a lightweight and efficient neural network architecture for human pose estimation that can run on mobile devices.
  • Firebase: Firebase is a mobile and web application development platform that provides a suite of services to help developers build, grow, and monetize their apps.

Getting Started

To get started with the Coach.ai app, follow these steps:

  1. Clone the repository to your local machine.
git clone https://github.com/MohEsmail143/coach-ai.git
  1. Navigate to the root directory of the project and run the following command to install the dependencies:
flutter pub get
  1. Launch the app on an emulator or a physical device
flutter run

Contributing

If you would like to contribute to the development of Coach.ai, please follow these guidelines:

  1. Fork the repository and create a new branch for your feature or bug fix.

  2. Write clean and concise code that adheres to the project's coding standards.

  3. Test your changes thoroughly and ensure that they do not break any existing functionality.

  4. Submit a pull request with a detailed description of your changes.

License

This project is licensed under the MIT License - see the LICENSE file for details.

coach-ai's People

Contributors

mohesmail143 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.