O Tradutor de Libras é um projeto do PET Computação que visa ajudar os membros a aprenderem e aplicarem modelos de previsão, bem como ajudar de incentivo ao aprendizado de Libras.
O projeto foca na previsão de sinais do alfabeto de Libras que não exigem movimento (ou seja, todas as letras, excluindo H, J, K, X e Z).
O dataset foi coletado pelos próprios membros do PET e voluntários.
Esse projeto foi fortemente inspirado nesse repositório: https://github.com/computervisioneng/sign-language-detector-python
sudo apt install python3-pip
pip3 install -U scikit-learn
sudo apt-get install python3-opencv
pip install mediapipe
Caso queira apenas usar a aplicação diretamente, siga esses passos:
Os dados do projeto estão separados por pessoa, e o primeiro passo é juntá-los em apenas um arquivo. Execute o código "merge_data.py":
python3 datasets/merge_data.py
Os dados serão salvos no arquivo "datasets/base_dataset.pickle".
Para ser possível treinar o modelo e posteriormente testá-lo, é necessário fazer o split dos dados Execute o código "merge_data.py":
python3 models/create_split.py
Os dados serão salvos na pasta "models/TrainTestData".
O melhor modelo dentro os analisados deve ser criado para ser utilizado na aplicação. Execute o código "create_best_model.py":
python3 models/create_best_model.py
O modelo está salvo no arquivo "models/best_model.sav".
Cria a aplicação que irá acessar a câmera e analisar os sinais feitos e tentar prevê-los. Execute o código "application.py":
python3 ./application.py
Dependendo da máquina, os comando acimas podem usar "python" ou "python3".
Nos arquivos que usam câmera, pode ser necessário mudar o argumento do cv2.VideoCapture. Para a maioria das máquinas, usar 0 como argumento deve funcionar, mas dependendo da situação pode ser necessário usar outros valores (por exemplo, se tiver mais de uma câmera ligada ao sistema). Nesses casos, 1 ou 2 como argumento devem funcionar.