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.
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:
- Android: exemplo de código - Guia
 - Python: exemplo de código - Guia
 - Web – Exemplo de código – Guia
 
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:
 
 
  | 
      O Ponto de referência de rostos gera os seguintes resultados:
 
  | 
    
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.
 
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 |