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 |