Buscar

Monografia - Método Eigenface para Reconhecimento Digital de Faces

Prévia do material em texto

�PAGE �18�
INTRODUÇÃO
O presente trabalho pertence ao programa de Pré-Iniciação Científica proposto pela parceria entre Secretaria da Educação (SEE), Universidade de São Paulo (USP), Fundação de Apoio à Universidade de São Paulo (FUSP) e Banco Santander S/A. Foi desenvolvido junto ao Núcleo de Estudos e Pesquisa em Educação de Pedreira, laboratório vinculado ao Instituto de Matemática e Estatística (IME) da Universidade de São Paulo, campus Cidade Universitária. 
Desde o nosso nascimento, o ser humano possui a capacidade de reconhecer pessoas. Quando chegamos ao mundo, nossos olhos começam a se deparar com rostos de nossa convivência, como os dos pais, dos irmãos, dos avós e dos tios, dentre outras pessoas que estão em nossas vidas, e ao olharmos sempre para os mesmos, sua face, em diferentes posições e seus jeitos ficam armazenados em nossa memória. Sendo assim, todas as vezes que vemos tais pessoas, as reconhecemos imediatamente, sabendo diferenciá-lo dos outros. 
Em inúmeros momentos da vida, como na fase da adolescência e da adulta, frequentamos diversos meios sociais, em que continuamos a conhecer outras pessoas e lugares, adicionando em nossa memória mais conteúdo e faces para que possamos lembrar ou reconhecer futuramente. 
Pode-se dizer que o poder de reconhecimento do ser humano, é inexplicável, devido à grande percepção que possuímos, ou seja, não importa a posição que nos deparamos, ou até quanto tempo não víamos determinada pessoa, iremos reconhecê-la.
Pensando nisso, alguns cientistas buscaram a explicação dessa capacidade humana de reconhecimento, para implantar em sistemas digitais e computacionais, beneficiando a identificação de pessoas, passaporte, carteiras de motorista e em redes sociais, como o Facebook. Podemos acrescentar também o retrato falado, o rastreamento em multidões, e com o avanço da tecnologia, agora o celular também reconhece o seu rosto. 
Para que todo esse processo de reconhecimento aconteça, foi criado um método, chamado Deep Face, conhecido também como “método por atributos” (um vetor que característica o rosto a partir de medidas). Mas como já foi citado, a tecnologia está evoluindo cada vez mais, e com esse procedimento não foi diferente. Sendo assim, foi evoluído para o Eigenface, um método holístico, e o interessante é que a evolução continua com o Fisherface, uma outra técnica para o reconhecimento de faces. 
A base do trabalho será um método criado por uma genialidade anônima do Facebook, em meados do século XXI, com o objetivo de obter uma maneira mais eficiente de se reconhecer uma imagem, possuindo então uma grande probabilidade de acertos e uma recognição mais eficiente.
O Eigenface na mais é que um método de um software de reconhecimento facial, extremamente utilizado porém pouco conhecido, apresentando vantagens sobre as técnicas conhecidas, tais como velocidade e eficiência no reconhecimento. .
 
MATRIZES 
É chamado de matriz, um conjunto de números dispostos em linhas e colunas, obtendo uma determinada ordem. Para indicar uma matriz, é usado colchetes, [ ], parênteses, ( ), e barras duplas, || ||. Tais como:
 e 
Uma matriz A pode ser uma matriz dos coeficientes de um sistema linear homogêneo ou uma matriz completa de um sistema linear não homogêneo .
Já uma matriz B, pode ser considerada como linhas coordenadas dos pontos , e no espaço ordinário.
Suponha-se que temos a matriz com funções:
Essas funções que depois poderão ser transformados em números, são chamados de elementos da matriz, lembrando que esses números se diferenciam de uma matriz à outra.
Na matriz chamamos o número de linhas de M, e o número de colunas de N, sendo assim, temos: “M por N” ou M ×N.
Exemplo: N 
 M 
Nesse caso temos: 
M= 4 e N= 4
Enfim, existem diversos modelos de matrizes, porém será apresentado apenas o que será necessário para a conclusão do trabalho. 
2.1. Matriz Quadrada
Quando a matriz possui a mesma quantidade de linhas e colunas, ou seja, , é chamada de matriz quadrada de ordem n 
 
Usando como exemplo a matriz a cima, os elementos são nomeados de diagonal principal, e de diagonal secundária os elementos. Então os multiplicamos, em diagonal:
 
 
 
Então é feito a seguinte equação, para encontrar a determinante da matriz :
 ou 
Para obter uma melhor compreensão, suponhamos que temos a matriz X:
O primeiro passo será, multiplicar a diagonal principal e a diagonal secundária , chegando ao resultado: dp= 8 e ds=3.
Em seguida, substituímos na equação:
Concluindo então que a determinante dessa matriz, é o algarismo 5.
2.2. Matriz Transposta
Como já sabemos, a matriz possui a ordem, ou seja, o número de linhas multiplicado pelo número de colunas.
Entretanto para transformar uma matriz, em matriz transposta, é necessário trocar, o número de linhas pelo de colunas, obtendo assim, a ordem (.
Por exemplo, possuímos a matriz A de ordem : 
Agora, a sua transposta será de ordem :
Lembrando que, para ser representada a matriz transposta, basta utilizar a letra t, minúscula, sobrescrita ao nomeado da matriz. 
2.3. Multiplicação de matrizes
Para fazermos a multiplicação de matrizes, é necessário ter duas matrizes, podendo as mesmas ser de ordem distintas, porém o número de linhas de uma matriz e o de colunas de outra deve ser idêntico, para que possamos ter a certeza de que essas matrizes poderão ser multiplicadas. Temos as matrizes: e de ordem .
Como foi explicado anteriormente, pode-se observar que as matrizes de ordem possuem a mesma quantidade de linha e coluna, ou seja, a matriz B, possui duas colunas e a matriz A possui duas linhas, então neste caso, as matrizes estão corretas para que a multiplicação seja realizada.
Multiplicamos as matrizes B e A, para dar origem a uma nova matriz, nomeada de matriz C: 
Imaginamos que possuímos as matrizes e :
 e 
Quando as multiplicamos, chegamos a matriz , que no caso seria:
Obtendo assim, o resultado da multiplicação é uma nova matriz.
2.4. Autovalor e Autovetor
Sendo, um autovalor e um autovetor, para encontrá-los em uma matriz é necessária a utilização de uma equação resultante de um sistema linear homogêneo, ou seja:
 . 
Que é a matriz denominada A, subtraindo o , multiplicando pela matriz identidade, resultando ao vetor igual a zero.
Sabemos que é possível encontrar o autovalor e o autovetor, quando a ordem da matriz tem solução (trivial) de ordem , . 
Para que a matriz tenha uma outra solução, além da trivial, a determinante tem que ser igual a 0. Sendo assim:
Resultando assim no polinômio característico de grau em .
Portanto:
Autovalores de A, são as raízes da equação
Autovetores de A, para cada possui a solução da equação
Lembrando a matriz identidade:
2.4.1 Autovalor
Usaremos de exemplo da matriz : 
Então faremos a subtração;
Lembrando, que sempre tiramos o da diagonal principal.
Continuando a conta, substituímos a equação pelos valores retirados da matriz;
A partir dessa equação, faremos a fórmula de Bháskara, obtendo assim o resultado do e , que será o autovalor da matriz A.
Veremos a seguir um exemplo:
Obtemos a matriz X:
Para encontrarmos o autovalor, faremos:
Transformando essa matriz em equação;
Terminada a equação, utilizamos a fórmula de Bháskara:
Autovalores da matriz X 
2.4.2. Autovetor
Para calcular o autovetor usamos o valor do ou e do ou :
; 
Usaremos a matriz A, a mesma do autovalor, esubstituiremos a equação pelas matrizes :
Logo após, termos multiplicado a matriz pelo vetor, transformaremos em m sistema linear homogêneo:
 Encontramos assim o valor do QUOTE � ��, agora, temos que encontrar o valor do , é da mesma maneira que a anterior, só muda o valor do.
Suponhamos que temos a mesma matriz X e seus resultados, assim faremos como a explicação acima:
; 
Fazendo a mesma coisa com o , se obtém o resultado .
 
Método Eigenface
A medida que nos encontramos com diversas pessoas inúmeras vezes, seu rosto e seus jeitos ficam armazenados em nossa memória, fornecendo assim imagens de recordações quando as vemos.
O poder de reconhecimento imediato de faces é um habito natural dos seres humanos, em que os pesquisadores e cientistas buscam respostas aproximadas para a implantação de um reconhecimento digital em máquinas e softwares.
A criação do método Eigenface se baseou neste princípio, de reconhecimento rápido com grande probabilidade de acertos, beneficiando muitas categorias de uma só vez.
Esse método é similar a nossa capacidade de reconhecimento, entretanto os cientistas tiveram que utilizar uma transformação do natural para o digital, como por exemplo a nossa capacidade cerebral de armazenamento foi substituída por um banco de dados ou face banks, onde ficam “salvas” as fotos.
O reconhecimento é feito por meio dos pixels da foto, ou seja, existe um sistema de cores chamado RGB (Red, Green e Blue). Quando são misturadas, essas cores geram todas as outras que conhecemos. As colorações do RGB são enquadradas em uma escala de 0 a 225. Por exemplo: Quando misturamos as três cores e as mesmas possuem o valor mínimo (0,0,0) a cor é preta, agora quando o valor é máximo (225,225,225) o resultado é a cor branca. Esses valores são de acordo com cada tonalidade. 
Devemos considerar que as imagens são matrizes formadas pela escala do RGB. Após o banco de dados fazer o reconhecimento das faces utilizando as imagens de referência, é transformado em matrizes de ordem de acordo com as imagens apresentadas, possuindo as fotos de uma única pessoa, e cada uma obtendo a sua matriz, porém em ângulos aleatórios, como frontal, diagonal e perfil.
Logo após, a matrizes irão ser divididas em outras matrizes que possuirão um número indeterminado de linhas e uma coluna .
Suponhamos que temos a matriz da pessoa C:
 Esse é o banco de dados da pessoa nomeada C, lembrando que, cada conjunto de números, é uma foto em qualquer ângulo, e agora será dividido por ângulos iguais:
Após ser dividida em colunas essa matriz se juntará novamente para que seja multiplicada com a sua inicial, e se transformar em uma matriz quadrada:
.
A partir disso, tiramos o autovalor e o autovetor, e fazemos o seguinte, utilizando a matriz quadrada, somamos seus algarismos e dividimos pelo número de :
O resultado da soma é , agora dividimos por , e nesse caso, a média dos números será .
Finalizando a imagem, pegaremos a matriz quadrada, e subtraremos pela média dos números, por exemplo: 
Com o resto, será formada uma matriz de covariança, que nada mais é, os números que faltam para a Imagem ser reconhecida. 
Métodos Holísticos
OS métodos holísticos são classificados para a categoria do Eigenface, que as imagens são reconhecidas por meio dos pixels das imagens apresentadas no banco de dados.
A divisão das imagens, podem ser por meio de pessoas ou por maneiras tecnológicas.
Um estudo feito comprova que os métodos holísticos são mais eficazes que o método por atributo, pois pode ter variação na luminosidade. Entretanto, ainda existe o problema de que o método não reconhece a face, se a pessoa na foto estiver com utensílios, barba ou outra coisa que impeça o reconhecimento.
 
Deep Face
O Deep Face é um dos primeiros métodos para o reconhecimento de faces, sendo um método mais simplificado, para obter o reconhecimento, é necessário que ache os pontos característicos do rosto.
Esse método se encaixa na categoria de reconhecimento de faces por atributos.
Foi muito utilizado também por redes sociais e identificações, porém logo foi criado o Eigenface, que evoluiu mais esse método de reconhecimento de imagem.
Fonte: http://beaconbulletin.com/2014/08/03/deep-face-fbs-facial-software-can-and-probably-will-follow-you-everywhere-online/. Acesso em: 19/05/2015
4.1. Por Atributos
O método por atributos, nada mais é que a construção de um vetor que segue a partir das medidas de ângulos característicos das faces, como a distância e o tamanho das sobrancelhas, olhos, nariz, narinas, orelhas, cantos da boca, pontos de contornos do queixo entre outras partes características.
Esse método é utilizado tanto em foto frontal, como em foto de perfil, medidos também por pontos característicos, que nesse caso são, a testa, a ponta do nariz, sobrancelha, pescoço, dentre outras, como mostra a imagem a cima.
Os reconhecimentos são feitos através de um sistema padrão, ou até por pessoas. Entretanto, existe uma ausência de detectores automáticos para identificar os pontos característicos, então eles utilizam um meio alternativo que são os operadores humanos. 
A vantagem, é a certeza dos pontos, ou seja, uma técnica que reconhecer os pontos não é algo trabalhoso, e a desvantagem está nos problemas encontrados quando um rosto tem alguma alteração, ou até quando está em uma outra posição, que não seja a frontal e a perfil.
Fisherface
O Fisherface é um método sucessor ao Eigenface, tendo como objetivo ser mais eficiente para o reconhecimento de imagens.
Não se sabe muito sobre esse método, pois como é “novo” não é divulgado, entretanto sabe-se que os pesquisadores, já procuram novos métodos, para o reconhecimento se tornar mais rápido e fácil de utilização.
O benefício desse método, será poder reconhecer os rostos mesmo com algumas diferenças, como a barba, óculos, sorriso ou dentre outros utensílios, além da iluminação que pode variar, não irá prejudicar o reconhecimento facial, como se estivesse sendo reconhecido pelo Eigenface.
Lembrando que esse método é muito parecido com o seu antecessor.
Fonte: http://www.bytefish.de/static/images/blog/fisherfaces/yale_s01.png. Acesso em: 20/05/2015
CONCLUSÃO
É certo dizer que as coisas estão evoluindo cada vez mais, e o caso do reconhecimento digital não é diferente. Hoje está cada vez mais presente em nossas vidas, mais ainda é pouco reconhecido, muitos lugares ainda investigam como irão adicionar esse método para a melhoria,outros já estão aguardando a melhoria, enquanto isso, os cientistas e pesquisadores buscam aprimorar a ideia e o conceito, para que o reconhecimento digital, fique cada vez mais próximo ao natural. É fatídico acreditar que a melhor visão digital, está por vir a qualquer momento, pois é algo que está sendo muito utilizado e pesquisado.
REFERÊNCIAS BIBLIOGRÁFICAS
ANTON,Howard; RORRES,Chris. Álgebra Linear com Aplicações.8.ed. Porto Alegre-RS. Bookman.2001
JR. AYRES, F.Schaum’s Outline of Theory and Problems of Matrices.E.U.A, McGraw-Hill, Inc.1962
KӦRTING,T.S; FILHO,N.L.D. Utilizando Eigenface para Reconhecimento de Imagens,p.8. Artigo. Engenharia de Computação e Departamento de Matemática, Fundação Universidade Federal do Rio Grande. Rio Grande-RS
RINCON, Mauro; FAMPA, Márcia. Álgebra Linear. Aula 15: Autovalores e Autovetores.p.28, disponível em:< http://www.dcc.ufrj.br/~rincon/Disciplinas/Algebra%20Linear/Aula_015.pdf>. Acesso em:03/05/2015
SOUZA, Joamir. Novo Olhar, Matemática.1.e.d.São Paulo. FTD.2010

Continue navegando