Riconoscimento facciale

Con l'API di rilevamento volti di ML Kit, puoi rilevare i volti in un'immagine, identificare le principali caratteristiche facciali 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 utilizzarlo in applicazioni come chat video o giochi che rispondono alle espressioni del giocatore.

iOSAndroid _

Se sei uno sviluppatore Flutter, potrebbe interessarti FlutterFire , che include un plug-in per le API ML Vision di Firebase.

Funzionalità chiave

Riconoscere e localizzare i tratti del viso Ottieni le coordinate di occhi, orecchie, guance, naso e bocca di ogni volto rilevato.
Ottieni i contorni dei tratti del viso Ottieni i contorni dei volti rilevati e dei loro occhi, sopracciglia, labbra e naso.
Riconoscere le espressioni facciali Determina se una persona sta sorridendo o ha gli occhi chiusi.
Tieni traccia dei volti nei fotogrammi video Ottieni un identificatore per il volto di ogni singola persona rilevata. Questo identificatore è coerente tra le invocazioni, 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 da poter 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.546676635742), (1030.77197265625, 329.660278320312), (884.880004882 812, 329.660278320312)
Angoli di rotazione Y: -14.054030418395996, Z: -55.007488250732422
ID di monitoraggio 2
Punti di riferimento facciali
Occhio sinistro (945.869323730469, 211.867126464844)
Occhio destro (971.579467773438, 247.257247924805)
Fondo della bocca (907.756591796875, 259.714477539062)

... eccetera.

Probabilità delle caratteristiche
Sorridente 0,88979166746139526
Occhio sinistro aperto 0.98635888937860727
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 ciascuna caratteristica del viso rilevata. Questi punti rappresentano la forma dell'elemento. L'immagine seguente illustra come questi punti vengono mappati su una faccia (fare clic sull'immagine per ingrandirla):

Contorni delle caratteristiche del viso
Ponte del naso (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), (4 42.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), (5 03.375702, 349.470459), (525.624634, 347.352783), (547.371155, 349.091980), (560.082031 , 351.693268), (570.226685, 354.210175), (575.305420, 359.257751)
(eccetera.)