Este Repositório é dedicado à parte prática do projeto, desenvolvido como Trabalho de Graduação da Fatec Pompéia.
Clique aqui para ler o artigo.
• Python |
• Flask |
• HTML5 |
• CSS3 |
• Arduino
O circuito do Arduino deve ser montado da seguinte forma:
O código no arquivo 'abrir_trava.ino' deve então ser carregado no Arduino por meio do cabo USB.
Inicialização do Flask
flask --app flaskr run --debug
Inicialização do Algoritmo de Reconhecimento Facial
Requisitos:
pip install opencv-python
pip install opencv-contrib-python --upgrade
oupip install opencv-contrib-python --user.
pip install pySerial
pip install threading
cmd: python face_taker.py
- Tire fotos usando o script
face_taker.py
. Ele salvará 40 imagens do seu rosto, criando a pastaimages
(se ela não existir) após você inserir a sua ID. (DEVE ser int e crescente (1, 2, 3...))
cmd: python face_train.py
-
O script
face_train.py
irá treinar um modelo para reconhecer todas as faces das 40 imagens tiradas peloface_taker.py
, e salvar o output do treinamento no arquivotraining.yml
. -
O script
face_recognizer.py
é utilizado para salvar o nome de cada pessoa cujas fotos foram tiradas peloface_taker.py
. O programa reconhecerá o rosto de acordo com a ID informada. Se João informou a ID 1, seu nome deve aparecer da seguinte formanames = [None, 'João'] # mantenha o None e adicione o nome à lista
cmd: python start.py
- O script
start.py
é o principal do projeto. Ao executá-lo, o threading se iniciará, o que executará ambos oface_recognizer.py
e oapp.py
, e a conexão com o Arduino se iniciará. A URL do Site será informada no Console, e a janela de Reconhecimento Facial se abrirá.