Ir para o console

Visão geral dos conceitos de reconhecimento facial

O reconhecimento facial é o processo de localização automática de rostos de pessoas em mídias visuais (imagens ou vídeos digitais). Um rosto detectado é informado em uma determinada posição e associado a um tamanho e uma orientação. Após a detecção de um rosto, ele poderá ser localizado por meio de pontos de referência, como os olhos e o nariz.

Veja alguns dos termos que usamos para falar sobre o recurso de reconhecimento facial do kit de aprendizado de máquina.

  • Monitoramento facial: estende o reconhecimento facial para sequências de vídeo. É possível rastrear qualquer rosto que aparece em um vídeo por qualquer período de tempo. Isso quer dizer que os rostos detectados em quadros de vídeo consecutivos podem ser identificados como sendo a mesma pessoa. É importante ressaltar que a identificação não é uma forma de reconhecimento facial. Este mecanismo apenas faz inferências com base na posição e no movimento de um rosto em uma sequência de vídeo.

  • Um ponto de referência é um aspecto importante para a detecção de um rosto. O olho esquerdo, olho direito e a base do nariz são exemplos de pontos de referência. Com o kit de ML, você pode encontrar pontos de referência em um rosto detectado.

  • Um contorno é um conjunto de pontos que seguem a forma de um traço facial. Com o kit de ML, você pode encontrar os contornos de um rosto.

  • A classificação é determinada caso uma característica facial esteja presente na detecção. Por exemplo, um rosto pode ser classificado se os olhos estiverem abertos ou fechados. Outro exemplo é se a pessoa estiver sorrindo ou não.

Orientação do rosto

Os termos a seguir descrevem o ângulo de um rosto em relação à câmera:

  • Euler X: um rosto com um ângulo de Euler X positivo está voltado para cima.
  • Euler Y: um rosto com um ângulo de Euler Y positivo está voltado para o lado direito da câmera.
  • Euler Z: um rosto com um ângulo de Euler Z positivo está girado no sentido anti-horário em relação à câmera.

O kit de aprendizado de máquina sempre informa o ângulo de Euler Z de um rosto detectado. O ângulo de Euler Y está disponível somente quando é usada a configuração de modo "preciso" do detector facial. Ele não está disponível na configuração do modo "rápido", que usa alguns atalhos para tornar a detecção mais rápida. O ângulo de Euler X não é compatível com a função.

Pontos de referência

Um ponto de referência é um aspecto importante para a detecção de um rosto. O olho esquerdo, o olho direito e a base do nariz são exemplos de pontos de referência.

Em vez de começar com a detecção de pontos de referência e usá-los como base para detectar todo o rosto, o kit de aprendizado de máquina detecta o rosto inteiro independentemente das informações detalhadas de ponto de referência. Por isso, a detecção de pontos de referência é uma etapa opcional que não está ativada por padrão.

A tabela a seguir mostra um resumo de todos os pontos de referência que podem ser detectados para um ângulo de Euler Y do rosto associado:

Ângulo de Euler Y Pontos de referência detectáveis
Menos de -36 graus olho esquerdo, parte esquerda da boca, orelha esquerda, base do nariz, bochecha esquerda
de -36 a -12 graus parte esquerda da boca, base do nariz, parte inferior da boca, olho direito, olho esquerdo, bochecha esquerda, ponta da orelha esquerda
de -12 a 12 graus olho direito, olho esquerdo, base do nariz, bochecha esquerda, bochecha direita, parte esquerda da boca, parte direita da boca, parte inferior da boca
de 12 a 36 graus parte direita da boca, base do nariz, parte inferior da boca, olho esquerdo, olho direito, bochecha direita, ponta da orelha direita
Mais de 36 graus olho direito, parte direita da boca, orelha direita, base do nariz, bochecha direita

Cada ponto de referência detectado inclui a própria posição associada na imagem.

Contornos

Um contorno é um conjunto de pontos que representam a forma de um traço facial. A imagem a seguir ilustra como esses pontos mapeiam um rosto (clique na imagem para ampliá-la):

Cada contorno de recurso detectado pelo kit de ML é representado por um número fixo de pontos:

Formato do rosto 36 pontos Lábio superior (parte superior) 11 pontos
Sobrancelha esquerda (parte superior) 5 pontos Lábio superior (parte inferior) 9 pontos
Sobrancelha esquerda (parte inferior) 5 pontos Lábio inferior (parte superior) 9 pontos
Sobrancelha direita (parte superior) 5 pontos Lábio inferior (parte inferior) 9 pontos
Sobrancelha direita (parte inferior) 5 pontos Ponte do nariz 2 pontos
Olho esquerdo 16 pontos Parte inferior do nariz 3 pontos
Olho direito 16 pontos
Bochecha esquerda (centro) 1 ponto
Bochecha direita (centro) 1 ponto

Ao detectar todos os contornos de uma face de uma vez, você tem uma matriz de 133 pontos, que são mapeados para apresentar contornos conforme abaixo:

Índices de contornos de recursos
0-35 Formato do rosto
36-40 Sobrancelha esquerda (parte superior)
41-45 Sobrancelha esquerda (parte inferior)
46-50 Sobrancelha direita (parte superior)
51-55 Sobrancelha direita (parte inferior)
56-71 Olho esquerdo
72-87 Olho direito
88-96 Lábio superior (parte inferior)
97-105 Lábio inferior (parte superior)
106-116 Lábio superior (parte superior)
117-125 Lábio inferior (parte inferior)
126, 127 Ponte do nariz
128-130 Parte inferior do nariz (observe que o ponto central está no índice 128)
131 Bochecha esquerda (centro)
132 Bochecha direita (centro)

Classificação

A classificação determina se uma característica facial está presente na detecção. No momento, o kit de aprendizado de máquina é compatível com duas classificações: olhos abertos e sorriso.

A classificação é expressa como um valor preciso, indicando que existe uma característica facial. Por exemplo, um valor de 0,7 ou mais para a classificação de sorriso indica que é provável que uma pessoa esteja sorrindo.

Ambas as classificações dependem da detecção de pontos de referência.

Observe também que a classificação "olhos abertos" e "sorriso" só funciona para a parte frontal do rosto, ou seja, para rostos com um pequeno ângulo de Euler Y de no máximo +/- 18 graus.

Próximas etapas

Use o reconhecimento facial no seu app para iOS ou Android: