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

Tarefa "Marcador de rosto"

A tarefa do MediaPipe Face Pointser 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 funcionam com imagens únicas ou um fluxo contínuo de imagens. A tarefa gera pontos de referência tridimensionais de rostos, pontuações de mesclagem (coeficientes que representam expressão facial) para inferir superfícies faciais detalhadas em tempo real e gera matrizes de transformação para realizar as transformações necessárias para a renderização de efeitos.

Faça um teste.

Comece já

Comece a usar essa tarefa seguindo um dos guias de implementação da plataforma de destino. Estes guias específicos da plataforma orientam você em uma implementação básica dessa tarefa, incluindo um modelo recomendado e um exemplo de código com as opções de configuração recomendadas:

Detalhes da tarefa

Nesta seção, descrevemos os recursos, as entradas, as saídas e as opções de configuração desta tarefa.

Recursos

  • Processamento de imagem de entrada: o processamento inclui rotação, redimensionamento, normalização e conversão do espaço de cor da imagem.
  • Limite de pontuação: filtre os resultados com base nas pontuações de previsão.
Entradas de tarefas Saídas de tarefas
O Ponto de referência do rosto aceita a entrada de um dos seguintes tipos de dados:
  • Imagens estáticas
  • Frames de vídeo decodificados
  • Feed de vídeo ao vivo
O Ponto de referência de rostos gera os seguintes resultados:
  • Caixas delimitadoras para rostos detectados em um frame de imagem.
  • Uma malha de rostos completa para cada rosto detectado, com pontuações de mergeshape que denotam expressões faciais e coordenadas para pontos de referência faciais.

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.

VIDEO: 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, o resultListener precisa ser chamado para configurar um listener para receber 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. A suavização só é aplicada quando num_faces é definido como 1. Integer > 0 1
min_face_detection_confidence A pontuação de confiança mínima para que a detecção facial seja considerada bem-sucedida. Float [0.0,1.0] 0.5
min_face_presence_confidence A pontuação de confiança mínima da pontuação de presença facial na detecção de pontos de referência de rostos. Float [0.0,1.0] 0.5
min_tracking_confidence A pontuação de confiança mínima para que o rastreamento facial seja considerado bem-sucedido. Float [0.0,1.0] 0.5
output_face_blendshapes Define se o Ponto de referência de rosto gera formas mescladas de rostos. As mesclagens de rostos são usadas para renderizar o modelo de rosto 3D. Boolean False
output_facial_transformation_matrixes Indica se o FaceLandmarker gera a matriz de transformação facial. O FaceLandmarker usa a matriz para transformar os pontos de referência faciais de um modelo de rosto canônico no rosto detectado para que os usuários possam aplicar efeitos a eles. Boolean False
result_callback Define o listener de resultado para receber os resultados do ponto de referência de forma assíncrona quando FaceLandmarker está no modo de transmissão ao vivo. Só pode ser usado quando o modo de corrida está definido como LIVE_STREAM ResultListener N/A

Modelos

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

Os modelos a seguir são agrupados em um pacote de modelos disponível para download:

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

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

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

Pontos-chave do Ponto de referência do rosto

Para uma visualização mais detalhada dos pontos de referência do rosto, consulte a imagem em tamanho original.

Pacote de modelos Forma de entrada Tipo de dados Cards de modelo Versions
FaceLandmarker FaceDetector: 192 x 192
FaceMesh-V2: 256 x 256
Blendshape: 1 x 146 x 2
ponto flutuante 16 FaceDetector
FaceMesh-V2
Blendshape
Mais recente