Skip to content

Latest commit

 

History

History
126 lines (92 loc) · 5.63 KB

README.md

File metadata and controls

126 lines (92 loc) · 5.63 KB

Python Logo

Calculadora de RM e Progressão de Carga: um sistema para registrar treinos e sugerir cargas com base na progressão semanal e princípios científicos de treino.

Python Version License Docker Compatible FastAPI Framework


🏋️ Pose Analysis Project 📸

Um projeto focado no aprendizado e desenvolvimento de tecnologias para análise de poses corporais. Utilizando Python, Docker, Machine Learning e Inteligência Artificial, o objetivo é detectar landmarks corporais, calcular ângulos e identificar poses clássicas, alinhando-se aos critérios estabelecidos pelo IFBB Pro.

⚠️ Nota: Este projeto está em desenvolvimento contínuo e tem como foco o aprendizado de tecnologias como Python, Docker, Machine Learning e IA. Ainda há diversos pontos a melhorar, mas ele está sendo aprimorado regularmente!


Objetivos do Projeto

  • 📏 Análise de Poses: Detectar landmarks corporais e calcular ângulos para avaliação precisa.
  • 🏋️ Reconhecimento de Poses: Identificar poses clássicas como "Duplo Bíceps de Frente".
  • 🤖 Evolução em IA: Criar um pipeline para aprendizado de máquina, capaz de identificar poses automaticamente.
  • 🔧 Foco em aprendizado: Utilizar ferramentas como Docker, Machine Learning e Python de forma prática.

🛠️ Tecnologias Utilizadas

  • Python 3.9
  • FastAPI para criação da API
  • Mediapipe para detecção de landmarks
  • OpenCV para processamento de imagens
  • Docker para gerenciamento de containers
  • React para o frontend
  • Node.js para o ambiente do frontend

⚙️ Como Configurar o Projeto

Pré-requisitos

  1. Instalar Python 3.11:

  2. Instalar Docker e Docker Compose:

  3. Instalar Make:

  4. Clone o repositório:

    git clone <seu-repo-url>
    cd <nome-do-repo>

Utilizando o Makefile

O projeto utiliza um Makefile para simplificar os comandos com Docker. Aqui estão os comandos disponíveis:

Comando Descrição
make build Constrói as imagens Docker
make up Inicia os containers Docker
make down Para e remove os containers
make logs Exibe os logs de todos os serviços
make backend-bash Acessa o shell do container do backend
make frontend-bash Acessa o shell do container do frontend
make restart Reinicia os containers

Passo a Passo para Uso

  1. Builda e Subir a aplicação:

    make up
  2. Acesse a aplicação:

  3. Realize o upload de uma imagem de pose:

    • Utilize o botão de upload no frontend.
    • Verifique os resultados no painel de resposta e visualize a imagem anotada.

📚 Como Funciona o Projeto

  1. O Frontend permite o upload de imagens e exibe os resultados da análise.
  2. O Backend processa as imagens utilizando o Mediapipe para detecção de landmarks e cálculo de ângulos.
  3. O sistema tenta identificar a pose e gera feedbacks com base nos critérios definidos.
  4. Uma imagem anotada é gerada, destacando os landmarks detectados.

🚧 Pontos a Melhorar

  • Reconhecimento Avançado de Poses: Melhorar o reconhecimento automático de poses como "Duplo Bíceps de Frente".
  • Feedbacks Detalhados: Implementar análises mais completas e detalhadas baseadas em critérios de simetria e alinhamento.
  • Detecção Facial Avançada: Refinar o uso de MediaPipe para validar a presença e o alinhamento do rosto.
  • Suporte a Novas Poses: Adicionar mais poses clássicas ao sistema.
  • Integração com Machine Learning: Treinar um modelo personalizado para identificação de poses específicas.

🧪 Contribuindo

Contribuições são bem-vindas! Sinta-se à vontade para abrir issues ou pull requests para discutir melhorias ou adicionar funcionalidades.


📄 Licença

Este projeto é de código aberto e licenciado sob os termos da MIT License.


Desenvolvido com 💪 e ☕ para aprender, crescer e explorar o mundo de Machine Learning, IA e Python!