quarta-feira, 22 de novembro de 2017

Artigo - Biometria facial



O desenvolvimento das tecnologias para o reconhecimento facial desperta o interesse de diversos órgãos públicos e empresas privadas. Este artigo aborda os conceitos e algumas técnicas mais usuais da tecnologia de biometria facial, além do software de biometria facial a partir de testes práticos e simulações do ambiente com análise técnica.


Existem várias técnicas ou métodos computacionais que compõem a biometria facial, iniciada no campo da engenharia de processamentos de sinais nos anos de 1960. Antes de explorar essa tecnologia é importante entender o modelo conceitual de análise e assim identificar as principais características que um software de reconhecimento de face humana deve possuir. Para isso, seguimos o modelo de equação [1] e da figura 1.
O software faz o reconhecimento avaliando as três regiões do rosto, ficando os algoritmos conhecidos como detectores para identificar as regiões dos olhos, nariz e boca. Essa etapa é essencial para confirmar a existência de uma face humana e não um objeto inanimado. Existem algumas metodologias utilizadas por alguns softwares e iremos explorar algumas delas.
Para iniciar o reconhecimento, o algoritmo do software analisa o tamanho, assim como o formato da face. Entenda-se como algoritmo a equação matemática que faz varreduras vertical e horizontal e determina a distribuição luminosa da imagem sobre o objeto alvo. A primeira metodologia que veremos é conhecida como método baseado em conhecimento, por que já conhecemos o que caracteriza uma face. O método baseado em conhecimento representa as técnicas que abordam algum conhecimento sobre o que é uma face focando os atributos geométricos do rosto.
O resultado esperado das varreduras vertical e horizontal do rosto são as coordenadas dos itens que formam uma face humana. As distâncias entre os itens do rosto são utilizadas para a identificação e se pudéssemos ter como “enxergar” veríamos linhas de conexão formando uma máscara e contornando as regiões de interesse.
Essas regiões são convertidas matematicamente em cubos de pontos, conhecidos como cluster. A distribuição desses pontos pode ser visualizada no plano ou no espaço. Essa informação é a referência utilizada pelo software para identificar uma pessoa.

Métodos baseados em características invariantes

Essa metodologia faz a identificação da face utilizando as técnicas de segmentação da pele em conjunto com a modelagem estatística construída a partir da textura da face humana e a cor da pele. A técnica tem como abordagem a utilização dos elementos característicos, branca, negra e parda, formando um cluster específico no espectro de cores.
Fig. 1 – Identificação da face
A representação da face se dá pela identificação da acumulação de pixels no espaço de cores, assim como no espaço cromático. A representação matemática se faz a partir de uma matriz que transforma o espaço de cores em componentes de matriz, luminosidade e saturação.
O resultado da equação [2] é representado como (60 < Y <200 99="" a="" and="" as="" buhiyan.="" como="" conforme="" conhecida="" conhecido="" cor="" cores="" cuja="" de="" demais="" desse="" diferen="" e="" em="" equa="" es="" est="" experimento="" fazer="" i="" imagens="" informa="" lumin="" m="" ncia="" o.="" o="" onde="" p="" padronizadas.="" partir="" q="" referem="" s="" se="" segmenta="" tamb="" todo="" uma="" varia="" wan="" y="">
A luminância, representada pela letra Y, consiste na ponderação dos valores das componentes RGB e pode ser quantificada pela equação [4].
Historicamente, esse método foi desenvolvido em 1953 pela NTSC National Televison Standards Committee para atender a transmissão de sistema de televisão.
Talvez a mais eficiente técnica utilizada para o reconhecimento de face, utilizando a abordagem de segmentação de pele, pertence a Society of Motion and Televesion Engnieers e é conhecida como YES.
A utilização desse método é justificável por que permite construir detectores de face suficientemente rápidos para serem utilizados em tarefas de rastreamento (face tracking) das faces, dispensando processos matemáticos de multiplicação e utilizando apenas deslocamento de bits.
A característica de rastreamento desse método é muito útil para áreas de segurança e interfaces inteligentes.
A técnica por si só não é suficiente para garantir uma identificação, pois alguns objetos podem ter cores semelhantes à pele humana, provocando o que chamamos de falso positivo. Para melhorar a identificação é preciso analisar outras características dos objetos como a textura de pele.
Fig. 2 – Pontos do reconhecimento da face
Fig. 3 – Simulação da face

Método baseado em templates

O método template se diferencia do de conhecimento, pois detectar não é utilizar padrões baseados em regras previamente estabelecida, mas sim a partir de parâmetros por pontos de controle que vão se deformando até encontrar a imagem final.
Nesse método os pontos de controle vão se deformando ao mesmo tempo contornando a face e após 45 interações temos como resultado uma reprodução da foto cadastrada. Comparando com método anterior ao de template vimos um avanço significativo frente a abordagem de análise das bordas nas regiões da face como olho, boca, etc. Uma variação desse método foi proposto, facilitando a identificação e melhorando a performance. Em uma cena, com muitas faces, faz-se necessário diminuir a quantidade de vetores de imagens a partir do cálculo de média proposta por Tusk e Pentland, cujo objetivo é minimizar o esforço computacional e melhorar o desempenho de identificação. Isso é realizado pela equação [5]. Seja x1, x2... xn um conjunto de imagens normalizadas de faces de diferentes pessoas. A face média de cada imagem é dada por:
A análise matematicamente final é por vetores e escalares, formando uma matriz conhecida como covariância, expressa como:
Fig. 4 – Reconhecimento da face score 74,2%

Métodos baseados na aparência

Essa técnica não necessita do conhecimento prévio. Nesse caso, o algoritmo sugere os conceitos de aprendizagem e treinamento do sistema.
O sistema de biometria facial se encarrega de aprender e codificar somente o necessário e realiza a detecção. Essa é uma solução tecnológica que pode que ser desenvolvida a partir de algoritmos de redes neurais, “engenfaces” ou modelos ocultos de Markov.
Até o momento vimos a evolução das técnicas utilizadas para realizar a biometria facial. São utilizadas fotos frontais e nunca de perfil. Isso traz uma limitação do sistema de software de biometria facial. Portanto, é preferível instalar o sistema de forma a capturar as faces das pessoas sempre de frente para a câmera.
Outra observação é o fato da diferença de luminosidade sobre a face. Esse componente influenciará diretamente no resultado. Assim é importante instalar a câmera contra a luz.
Essas observações irão ajudar fortemente o software, não importando a metodologia.

Metodologia para o teste de conceito

Para esse experimento descrevemos as condições de controle do teste como o local, iluminação, altura do objeto, altura da câmera e as características dos equipamentos para realizar simulação do ambiente antes da utilização do software biométrico.
Utilizando a ferramenta CFTV desing tools inserirmos as características técnicas da câmera como resolução, dimensão do sensor, distância do objeto. Assim como a altura da instalação da câmera e a distância focal.
O primeiro teste feito no ambiente da recepção utilizou a câmera da Axis de 1 Mpx com sensor 1/3 e lente adaptada para 5 a 50 mm.
As características da câmera foram repassadas para o software e verificamos que, a partir da altura de 1,5 m, temos uma captura de imagem do rosto, favorecendo muito o algoritmo do software de reconhecimento facial devido à grande aproximação da imagem.
Por definição do software é necessário obter pelo menos 60 pixels entre os olhos, enquanto o ideal é 90 pixels, para que o software de reconhecimento possa ter grande assertividade. Valores abaixo do valor de 60 pixels o resultado é desconhecido ou é gerado um evento falso positivo.
O sistema obteve uma similaridade excelente uma probabilidade de 97,99%, frente ao ambiente escolhido com pouca movimentação e pouco reflexo luminoso e inclinação, uma vez que o visitante olha direto para a câmera. Outro fator que colabora com o excelente resultado é a característica da lente.
Fig. 5 Reconhecimento da face score score 61%
Fig. 6 – Quantidade de faces reconhecidas

Condição de contorno para o segundo teste de conceito

Neste caso, utilizamos os recursos disponíveis no ambiente e os modelos de câmeras disponíveis têm resoluções de 1 e 3 Mpx com lentes de 2,8 e 3 a 9 mm, respectivamente. As câmeras estão fixadas sob o teto do tipo dome à altura de 3 metros. Outro requisito necessário para a solução de software reconhecimento facial deverá estar à disposição dos os operadores de videowall do centro de operações.
A limitação do software em teste está associada a alguns fatores, um deles é a quantidade mínima de 60 pixel entre os olhos, portanto o software poderá não identificar a face ou, no pior caso, gerar um evento conhecido como falso positivo, com valor inferior de pixels.
No primeiro teste, vimos que o software conseguiu identificar atingindo um score de 74% de similaridade, mas a partir da câmera de 3 Mpx. A distância é de aproximadamente 3,50 m, imaginando uma linha da câmera até a face. Ao se afastarmos um pouco mais da câmera, o score cai significativamente para 61%, muito próximo da limitação de reconhecimento face pelo software.
No teste com a câmera de 1 Mpx, instalada nas mesmas condições, não foi possível ter um resultado satisfatório. Entretanto, o não reconhecimento está associado, provavelmente, à dimensão da lente e pouco provavelmente à resolução da imagem.
Independente da metodologia utilizada para se construir o software de reconhecimento facial, a eficácia do sistema também dependerá do fator de luminância, conforme os cálculos demonstrados. Esse fator interfere, principalmente, quando a câmera capta imagem de uma face com fonte luminosa ao fundo da cena. A eficácia do sistema de biometria facial não está associada apenas em alta resolução, mas é profundamente influenciada pelo tipo lente utilizada pela câmera. Outro fator que influência no resultado é a variação da quantidade de luz de uma cena captada pela câmera. Assim, é altamente recomendável a utilização de recursos wide dynamic range, conhecido como amplo alcance dinâmico para diminuir a diferença luminosa sobre a face, facilitando a identificação de algoritmo matemático.
Fig. 7 – Software integrado ao videowall
O índice de acerto do software de reconhecimento facial, não importando a metodologia, será influenciado por fatores externos como variações ou posicionando face frente a câmera, além da iluminação ambiente, expressões distintas do rosto ou obstrução parcial do rosto.
A base de dados para a consulta deve possuir uma riqueza de múltiplas faces com diferentes posicionamentos para a sua identificação, ou seja, as imagens frontais ou de perfil das faces são bem-vindas. Essa abordagem ajudará o software desde que a sua construção seja sensível à variação de identidade, também conhecido como o algoritmo LDA Linear Discrimant analysis.
Como toda tecnologia, a de biometria facial possui limitações conforme, resta avaliar se o risco é aceitável. O importante é lembrar que não se pode utilizar qualquer câmera, É necessário fazer algumas alterações técnicas na câmera para que o software possa funcionar com mais assertividade.
Ao explorar as oportunidades de utilização do sistema de biometria facial se vislumbra as aplicações para o controle de acesso e automação predial e residencial.

fonte:
Wagner Ricardo Alves dos Santos, consultor em engenharia elétrica e sistemas de segurança eletrônica, WR Solution
Data: 10/08/2016
Edição: RTI Agosto 2016 - Ano XVII - No 195

0 comentários: