Este projeto tem como objetivo detectar e traduzir gestos da Língua Brasileira de Sinais (LIBRAS) para texto, reconhecendo letras isoladas em tempo real a partir de capturas de vídeo via webcam. O sistema utiliza landmarks das mãos para identificar sinais e exibir a letra correspondente diretamente na tela.
- Descrição Geral
- Tecnologias Utilizadas
- Como Funciona
- Execução do Projeto
- Estrutura do Projeto
- Exemplo Visual
- Dependências e Instalação
Este sistema de leitura de LIBRAS funciona em tempo real utilizando a webcam. Um modelo de rede neural densa (MLP) foi treinado do zero para classificar gestos de letras do alfabeto com base nas posições das mãos, capturadas por meio da biblioteca MediaPipe. O modelo classifica os gestos e retorna uma letra correspondente.
- MediaPipe: Para rastreamento das mãos e extração de landmarks.
- OpenCV: Para captura e exibição das imagens da webcam.
- NumPy: Manipulação numérica dos dados.
- Pickle: Salvamento e carregamento do modelo treinado.
- tqdm: Barra de progresso usada na criação do dataset.
- A webcam captura o vídeo em tempo real.
- O MediaPipe extrai os pontos de referência (landmarks) da mão.
- Esses pontos são usados como entrada para o modelo MLP treinado.
- O modelo prediz uma letra do alfabeto correspondente ao gesto.
- A letra é exibida diretamente na tela, sobre o vídeo.
Crie um ambiente virtual (opcional) e instale as dependências com o comando:
pip install -r requirements.txtNo terminal, execute o script principal:
python main.pyAo executar, a webcam será ativada e as letras reconhecidas serão exibidas na tela.
Abaixo, um exemplo do sistema em funcionamento:
O gesto da mão foi reconhecido como a letra A.
As principais bibliotecas utilizadas estão listadas no arquivo requirements.txt. Para instalar todas elas:
pip install -r requirements.txtEm caso de problemas com ambientes virtuais, considere usar o Conda ou recriar o ambiente com o Python compatível.
O projeto não depende das imagens originais capturadas, apenas dos arquivos .model e .pkl com os dados e o modelo já treinado. Por isso, imagens brutas não estão incluídas no repositório.
O modelo reconhece apenas letras que não envolvem movimentos, ou seja, A, B, C, D, E, F, G, I, L, M, N, O, P, Q, R, S, T, U, V, W, Y.
Letras que requerem movimento dinâmico como H, J, K, X, Z ainda não estão implementadas, pois exigem análise temporal (sequência de frames) e tratamento mais avançado com séries temporais ou modelos baseados em vídeo.
📌 Este projeto é uma demonstração de um sistema simples de reconhecimento de sinais em LIBRAS, útil como base para sistemas mais complexos de tradução de linguagem de sinais para texto ou fala.
