Detecção facial
Com a API de detecção facial do kit de ML, é possível detectar rostos em uma imagem, identificar os principais traços faciais e obter o contorno dos rostos detectados.
Com a detecção facial, é possível receber as informações necessárias para executar tarefas como embelezar selfies e retratos ou gerar avatares da foto de um usuário. Como o Kit de ML pode realizar a detecção facial em tempo real, ele pode ser usado em aplicativos como bate-papo por vídeo ou jogos que respondem às expressões do jogador.
Se você é um desenvolvedor do Flutter, pode ter interesse no FlutterFire, que inclui um plug-in para as APIs de visão ML do Firebase.
Principais recursos
Reconhecer e localizar características faciais | Detectar as coordenadas dos olhos, orelhas, bochechas, nariz e boca de cada rosto. |
Detectar contornos das características faciais | Detectar os contornos dos rostos, além de olhos, sobrancelhas, lábios e nariz. |
Reconhecer expressões faciais | Determinar se uma pessoa está sorrindo ou se está com os olhos fechados. |
Rastrear rostos em quadros de vídeo | Proporcionar um identificador para cada rosto detectado. Esse identificador é consistente nas invocações, portanto, você pode, por exemplo, realizar manipulação de imagem em uma pessoa específica em um stream de vídeo. |
Processar quadros de vídeo em tempo real | A detecção facial é executada no dispositivo e é rápida o suficiente para ser usada em aplicativos em tempo real, como manipulação de vídeo. |
Resultados de exemplo
Exemplo 1
Para cada rosto detectado:
Rosto 1 de 3 | |||||||
---|---|---|---|---|---|---|---|
Polígono delimitador | (884.880004882812, 149.546676635742), (1030.77197265625, 149.546676635742), (1030.77197265625, 329.660278320312), (884.880004882812, 329.660278320312) | ||||||
Ângulos de rotação | Y: -14.054030418395996, Z: -55.007488250732422 | ||||||
ID de acompanhamento | 2 | ||||||
Pontos de referência faciais |
... etc. |
||||||
Probabilidades de traços |
|
Exemplo 2 (detecção de contorno facial)
Quando a detecção de contorno facial está ativada, você recebe uma lista de pontos para cada traço facial que foi detectado. Esses pontos representam a forma do traço. A imagem a seguir ilustra como esses pontos mapeiam um rosto (clique na imagem para ampliá-la):
Contornos de traços faciais | |
---|---|
Ponte do nariz | (505.149811, 221.201797), (506.987122, 313.285919) |
Olho esquerdo | (404.642029, 232.854431), (408.527283, 231.366623), (413.565796, 229.427856), (421.378296, 226.967682), (432.598755, 225.434143), (442.953064, 226.089508), (453.899811, 228.594818), (461.516418, 232.650467), (465.069580, 235.600845), (462.170410, 236.316147), (456.233643, 236.891602), (446.363922, 237.966888), (435.698914, 238.149323), (424.320740, 237.235168), (416.037720, 236.012115), (409.983459, 234.870300) |
Parte superior do lábio superior | (421.662048, 354.520813), (428.103882, 349.694061), (440.847595, 348.048737), (456.549988, 346.295532), (480.526489, 346.089294), (503.375702, 349.470459), (525.624634, 347.352783), (547.371155, 349.091980), (560.082031, 351.693268), (570.226685, 354.210175), (575.305420, 359.257751) |
(etc.) |