Riconoscimento facciale

Con l'API di rilevamento dei volti di ML Kit, puoi rilevare i volti in un'immagine, identificare le caratteristiche principali del viso e ottenere i contorni dei volti rilevati.

Con il rilevamento dei volti, puoi ottenere le informazioni necessarie per eseguire attività come abbellire selfie e ritratti o generare avatar dalla foto di un utente. Poiché ML Kit può eseguire il rilevamento dei volti in tempo reale, puoi usarlo in applicazioni come chat video o giochi che rispondono alle espressioni del giocatore.

iOS Android

Se sei uno sviluppatore Flutter, potresti essere interessato a FlutterFire , che include un plug-in per le API ML Vision di Firebase.

Capacità chiave

Riconoscere e localizzare i lineamenti del viso Ottieni le coordinate di occhi, orecchie, guance, naso e bocca di ogni viso rilevato.
Ottieni i contorni dei lineamenti del viso Ottieni i contorni dei volti rilevati e dei loro occhi, sopracciglia, labbra e naso.
Riconosci le espressioni facciali Determina se una persona sta sorridendo o ha gli occhi chiusi.
Tieni traccia dei volti attraverso i fotogrammi video Ottieni un identificatore per il volto di ogni singola persona che viene rilevato. Questo identificatore è coerente tra le chiamate, quindi puoi, ad esempio, eseguire la manipolazione delle immagini su una determinata persona in un flusso video.
Elabora fotogrammi video in tempo reale Il rilevamento dei volti viene eseguito sul dispositivo ed è sufficientemente veloce per essere utilizzato in applicazioni in tempo reale, come la manipolazione video.

Risultati di esempio

Esempio 1

Per ogni volto rilevato:

Faccia 1 di 3
Poligono di delimitazione (884.880004882812, 149.546676635742), (1030.77197265625, 149.5466766635742), (1030.77197265625, 329.660278320312), (884.880004288329.6)
Angoli di rotazione Y: -14.054030418395996, Z: -55.007488250732422
ID di tracciamento 2
Punti di riferimento facciali
Occhio sinistro (945.869323730469, 211.867126464844)
Occhio destro (971.5794677773438, 247.257247924805)
Fondo della bocca (907.756591796875, 259.7144777539062)

... eccetera.

Probabilità di funzionalità
Sorridente 0.88979166746139526
Occhio sinistro aperto 0.986358888937860727
Occhio destro aperto 0.99258323386311531

Esempio 2 (rilevamento del contorno del viso)

Quando hai abilitato il rilevamento del contorno del viso, ottieni anche un elenco di punti per ogni caratteristica del viso che è stata rilevata. Questi punti rappresentano la forma dell'elemento. L'immagine seguente illustra come questi punti si associano a una faccia (fare clic sull'immagine per ingrandirla):

Contorni del viso
Ponte nasale (505.149811, 221.201797), (506.987122, 313.285919)
Occhio sinistro (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 superiore del labbro superiore (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)
(eccetera.)