Guia de detecção de pontos de referência do rosto

Tarefa Face Landmarker

A tarefa MediaPipe Face Landmarker permite detectar pontos de referência do rosto e expressões faciais em imagens e vídeos. É possível usar essa tarefa para identificar expressões faciais humanas, aplicar filtros e efeitos faciais e criar avatares virtuais. Essa tarefa usa modelos de machine learning (ML) que podem trabalhar com imagens únicas ou um fluxo contínuo de imagens. A tarefa gera pontos de referência faciais tridimensionais, pontuações de blendshape (coeficientes que representam a expressão facial) para inferir superfícies faciais detalhadas em tempo real e matrizes de transformação para realizar as transformações necessárias para a renderização de efeitos.

Faça um teste!

Começar

Para começar a usar essa tarefa, siga um dos guias de implementação da sua plataforma de destino. Esses guias específicos da plataforma mostram uma implementação básica dessa tarefa, incluindo um modelo recomendado e um exemplo de código com opções de configuração recomendadas:

Detalhes da tarefa

Esta seção descreve os recursos, entradas, saídas e opções de configuração dessa tarefa.

Recursos

  • Processamento de imagens de entrada: inclui rotação, redimensionamento, normalização e conversão de espaço de cores.
  • Limite de pontuação: filtre os resultados com base nas pontuações de previsão.
Entradas da tarefa Saídas da tarefa
O Face Landmarker aceita uma entrada de um dos seguintes tipos de dados:
  • Imagens estáticas
  • Frames de vídeo decodificados
  • Feed de vídeo ao vivo
O Face Landmarker gera os seguintes resultados:
  • Uma malha facial completa para cada rosto detectado, com pontuações de blendshape que indicam expressões faciais e coordenadas para pontos de referência faciais.
  • Blendshape facial e matrizes de transformação facial

Opções de configuração

Essa tarefa tem as seguintes opções de configuração:

Nome da opção Descrição Intervalo de valor Valor padrão
running_mode Define o modo de execução da tarefa. Há três modos:

IMAGE: o modo para entradas de imagem única.

VÍDEO: o modo para frames decodificados de um vídeo.

LIVE_STREAM: o modo para uma transmissão ao vivo de dados de entrada, como de uma câmera. Nesse modo, "resultListener" precisa ser chamado para configurar um listener que receba resultados de forma assíncrona.
{IMAGE, VIDEO, LIVE_STREAM} IMAGE
num_faces O número máximo de rostos que podem ser detectados pelo FaceLandmarker. O suavização só é aplicada quando num_faces está definido como 1. Integer > 0 1
min_face_detection_confidence A pontuação mínima de confiança para que a detecção de rosto seja considerada bem-sucedida. Float [0.0,1.0] 0.5
min_face_presence_confidence A pontuação mínima de confiança da presença de rosto na detecção de pontos de referência faciais. Float [0.0,1.0] 0.5
min_tracking_confidence A pontuação mínima de confiança para que o rastreamento de rosto seja considerado bem-sucedido. Float [0.0,1.0] 0.5
output_face_blendshapes Se o Face Landmarker gera blendshapes faciais. As unidades de forma facial são usadas para renderizar o modelo de rosto 3D. Boolean False
output_facial_transformation_matrixes Se o FaceLandmarker gera a matriz de transformação facial. O FaceLandmarker usa a matriz para transformar os pontos de referência do rosto de um modelo facial canônico no rosto detectado. Assim, os usuários podem aplicar efeitos nos pontos de referência detectados. Boolean False
result_callback Define o listener de resultados para receber os resultados do ponto de referência de forma assíncrona quando o FaceLandmarker está no modo de transmissão ao vivo. Só pode ser usado quando o modo de execução está definido como LIVE_STREAM ResultListener N/A

Modelos

O Face Landmarker usa uma série de modelos para prever pontos de referência do rosto. O primeiro modelo detecta rostos, um segundo localiza pontos de referência nos rostos detectados, e um terceiro usa esses pontos para identificar características e expressões faciais.

Os seguintes modelos são agrupados em um pacote de modelos para download:

  • Modelo de detecção facial: detecta a presença de rostos com alguns pontos de referência faciais importantes.
  • Modelo de malha facial: adiciona um mapeamento completo do rosto. O modelo gera uma estimativa de 478 pontos de referência faciais tridimensionais.
  • Modelo de previsão de blendshape: recebe a saída do modelo de malha facial e prevê 52 pontuações de blendshape, que são coeficientes que representam diferentes expressões faciais.

O modelo de detecção facial é o BlazeFace de curto alcance, um detector facial leve e preciso otimizado para inferência de GPU móvel. Para mais informações, consulte a tarefa Face Detector.

A imagem abaixo mostra um mapeamento completo de pontos de referência faciais da saída do pacote de modelo.

Pontos-chave do Face Landmarker

Para uma visão mais detalhada dos pontos de referência faciais, consulte a imagem em tamanho real.

Pacote de modelos Dimensão da entrada Tipo de dado Cards de modelo Versões
FaceLandmarker FaceDetector: 192 x 192
FaceMesh-V2: 256 x 256
Blendshape: 1 x 146 x 2
ponto flutuante de 16 bits FaceDetector
FaceMesh-V2
Blendshape
Mais recente