Fatequino

Visão

Equipe responsável por pesquisar e desenvolver a solução de identificação e reconhecimento visual de alunos, professores, funcionários e visitantes.

Requisitos:

  • Identificar visualmente pessoas.
  • Reconhecer pessoas.
  • Talvez auxiliar no deslocamento autônomo.

Integrantes

  • Gabriel Pinho
  • Jhonatan Paixão
  • Matheus Bezerra
  • Samuel Gonçalves


Introdução

Quando iniciamos o projeto nosso primeiro pensamento foi: “Como vamos fazer o reconhecimento através de uma câmera?”. E em uma simples busca na internet vimos que essa questão é relativamente fácil de ser resolvida, há diversos métodos de reconhecimento de imagens. Porém, surge um outro problema, qual deles é o melhor para nossa situação?

Tivemos de pensar em diversas questões: qual seria o hardware de processamento disponível, a conexão com a internet, armazenamento e que o programa estará atuando com outras funcionalidades ao mesmo tempo. Dado isso, encontramos soluções on-line que: teriam pouco custo no hardware mas em contrapartida seriam lentas e poderiam faltar em funções da rede; e as soluções que utilizam o processamento em hardware quanto melhor a precisão maior o custo de processamento. Então tivemos que encontrar um meio termo entre solução não tão precisa mas que atenderia nossa necessidade e que ao mesmo tempo não fosse custosa para a mente do nosso robozinho.


Instalação das Ferramentas utilizadas

A equipe de visão mostra nesse passo a passo toda a instalação das ferramentas e suas bibliotecas utilizadas para elaboração do algoritmo de reconhecimento facial.

Passo 1: Preparar ambiente

Baixar e instalar ferramentas de desenvolvimento e de controle de versão em seus respectivos links abaixo

Passo 2: Nomear repositório local

Criar pasta com o nome do projeto.

Passo 3: Clonar repositório no GitHub

Na pasta criada, iremos clonar o repositório com o código fonte. Para isso utilizaremos o Git. Abra um prompt de comando (ou terminal, no Linux) e digite os seguintes comandos:

cd “caminho da pasta”
git clone <url do repositório>

Passo 4: Acessar a pasta com repositório clonado

No mesmo prompt de comando digite o comando:

cd “caminho da pasta”

Passo 5: Instalar bibliotecas em Python:

Para facilitar o desenvolvimento, são utilizadas algumas bibliotecas em Python. São elas:

Para instalá-las utilizaremos o PIP. No mesmo prompt de comando, digite os seguintes comandos:

pip install dlib
pip install face_recognition
pip install imutils
pip install numpy
pip install opencv-python

Passo 6: Desenvolvimento

Na pasta dataset está contida todas as fotos que serão utilizadas no treinamento da rede neural. Cada pessoa deve ter uma pasta com suas fotos e não podem ser misturadas em hipótese alguma. Para treinar a rede neural, se executa o seguinte comando com os seguintes parâmetros:

python encode_faces.py –dataset dataset –encodings encodings.pickle

Aonde:

  • encode_faces.py: Script python contendo o código fonte.
  • –dataset: Pasta contendo as imagens que serão utilizadas no treinamento.
  • –encodings: Nome do arquivo cujo resultado do treinamento será salvo. Obs: SEMPRE utilizar a extensão “.pickle”

Não é recomendável rodar esse script no raspberry, visto que é um processo intenso e com alto custo de processamento.


Após realizar o treinamento da rede neural estamos prontos para utilizar o script de reconhecimento facial. Para tal, utilizamos o seguinte comando:

python recognize_faces_video.py –encodings encodings.pickle –display 1

  • recognize_faces_video.py: Script python contendo o código fonte
  • –encodings: arquivo com o resultado do treinamento gerado no último passo
  • –display: 1 caso deseje mostrar o vídeo com o resultado frame por frame, 0 caso não.


Page Reader Press Enter to Read Page Content Out Loud Press Enter to Pause or Restart Reading Page Content Out Loud Press Enter to Stop Reading Page Content Out Loud Screen Reader Support