Sistema de reconhecimento facial em tempo real usando Python e OpenCV. O projeto utiliza princípios SOLID e uma arquitetura limpa para facilitar manutenção e extensibilidade.
- Detecção facial em tempo real
- Cadastro de pessoas através da webcam
- Reconhecimento facial em tempo real
- Interface via linha de comando
- Captura múltiplas fotos para melhor precisão
- Python 3.8+
- OpenCV
- Webcam funcional
- Sistema operacional Linux (testado em Ubuntu/Debian)
- Clone o repositório:
git clone [url-do-repositorio]
cd reconhecimento-facial- Crie e ative um ambiente virtual:
python3 -m venv venv
source venv/bin/activateSair
deactivate - Instale as dependências:
pip install opencv-python
pip install opencv-contrib-python
pip install numpy- Configure o PYTHONPATH (necessário para Linux):
export PYTHONPATH=$(pwd)/src:$PYTHONPATH- run
python main.py O projeto segue princípios SOLID e Clean Architecture:
-
Domain:
- Interfaces e contratos do sistema
- Independente de implementações
-
Infrastructure:
- Implementações concretas das interfaces
- Adaptadores para bibliotecas externas
-
Presentation:
- Interface com usuário
- Gerenciamento de câmera
Veja o arquivo CONTRIBUTING.md para detalhes sobre como implementar novas funcionalidades.
Este projeto está sob a licença MIT.
- A precisão do reconhecimento depende da qualidade das fotos de cadastro
- Iluminação pode afetar o reconhecimento
- Performance depende do hardware
Para suporte, abra uma issue no repositório.