Este projeto une Visão Computacional e Sistemas Embarcados para criar uma interface de reconhecimento de sinais baseada na contagem de dedos, com foco em aplicações de acessibilidade e tradução básica de Libras.
O objetivo principal é utilizar a câmera para detectar a mão do usuário, contar os dedos estendidos através de algoritmos de processamento de imagem e enviar esses dados para um Arduino, que pode reagir fisicamente (ex: acender LEDs, mover servos ou exibir em um display).
- Python: Linguagem principal para o processamento de imagem.
- OpenCV: Biblioteca para visão computacional.
- MediaPipe: Framework do Google para detecção de mãos e pontos de articulação.
- C++ / Arduino IDE: Programação do microcontrolador.
- Firmata / Serial Protocol: Comunicação entre o computador e o hardware.
- Captura: A webcam captura o vídeo em tempo real.
- Processamento: O script Python identifica a mão e extrai os marcos (landmarks) dos dedos.
- Lógica de Contagem: Com base na posição das pontas dos dedos em relação às articulações, o sistema determina quantos dedos estão abertos.
- Interação: O valor é enviado via porta Serial para o Arduino, executando uma ação programada.
/python: Scripts para detecção e contagem de dedos./arduino: Código (.ino) para ser carregado no microcontrolador./assets: Imagens e demonstrações do projeto.
- Clone o repositório:
git clone https://github.com/euclidespaim/finger-counting.git
- Instale as dependências:
pip install opencv-python mediapipe pyserial
- Carregue o código do Arduino usando a Arduino IDE.
- Execute o script principal:
python main.py
Sinta-se à vontade para abrir Issues ou enviar Pull Requests com melhorias na precisão da detecção ou novos recursos de interação.
Desenvolvido por Euclides Paim.