L'attività MediaPipe Face Landmarker consente di rilevare i punti di riferimento del volto e le espressioni facciali in immagini e video. Puoi utilizzare questa attività per identificare le espressioni facciali umane, applicare filtri ed effetti facciali e creare avatar virtuali. Questa attività utilizza modelli di machine learning (ML) che possono funzionare con singole immagini o con un flusso continuo di immagini. L'attività restituisce punti di riferimento del volto tridimensionali, punteggi di blendshape (coefficienti che rappresentano l'espressione facciale) per dedurre superfici facciali dettagliate in tempo reale e matrici di trasformazione per eseguire le trasformazioni necessarie per il rendering degli effetti.
Inizia
Inizia a utilizzare questa attività seguendo una delle guide all'implementazione per la tua piattaforma di destinazione. Queste guide specifiche per piattaforma illustrano un'implementazione di base di questa attività, tra cui un modello consigliato e un esempio di codice con opzioni di configurazione consigliate:
- Android - Esempio di codice - Guida
- Python - Esempio di codice - Guida
- Web - Esempio di codice - Guida
Dettagli attività
Questa sezione descrive le funzionalità, gli input, gli output e le opzioni di configurazione di questa attività.
Funzionalità
- Elaborazione dell'immagine di input: l'elaborazione include rotazione, ridimensionamento, normalizzazione e conversione dello spazio colore dell'immagine.
- Soglia del punteggio: filtra i risultati in base ai punteggi di previsione.
| Input dell'attività | Output dell'attività |
|---|---|
Face Landmarker accetta un input di uno dei seguenti tipi di dati:
|
Face Landmarker restituisce i seguenti risultati:
|
Opzioni di configurazione
Questa attività ha le seguenti opzioni di configurazione:
| Nome opzione | Descrizione | Intervallo di valori | Valore predefinito |
|---|---|---|---|
running_mode |
Imposta la modalità di esecuzione dell'attività. Esistono tre
modalità: IMMAGINE: la modalità per gli input di singole immagini. VIDEO: la modalità per i frame decodificati di un video. LIVE_STREAM: la modalità per lo streaming live dei dati di input, ad esempio da una videocamera. In questa modalità, resultListener deve essere chiamato per configurare un listener per ricevere i risultati in modo asincrono. |
{IMAGE, VIDEO, LIVE_STREAM} |
IMAGE |
num_faces |
Il numero massimo di volti che possono essere rilevati dalla
FaceLandmarker. Il livellamento viene applicato solo quando
num_faces è impostato su 1.
|
Integer > 0 |
1 |
min_face_detection_confidence |
Il punteggio di confidenza minimo affinché il rilevamento del volto venga considerato riuscito. | Float [0.0,1.0] |
0.5 |
min_face_presence_confidence |
Il punteggio di attendibilità minimo della presenza del volto nel rilevamento dei punti di riferimento del volto. | Float [0.0,1.0] |
0.5 |
min_tracking_confidence |
Il punteggio di confidenza minimo per il tracciamento del volto da considerare riuscito. | Float [0.0,1.0] |
0.5 |
output_face_blendshapes |
Indica se Face Landmarker restituisce le forme di fusione del viso. Le forme di fusione del volto vengono utilizzate per il rendering del modello 3D del volto. | Boolean |
False |
output_facial_transformation_matrixes |
Indica se FaceLandmarker restituisce la matrice di trasformazione facciale. FaceLandmarker utilizza la matrice per trasformare i punti di riferimento del volto da un modello canonico del volto al volto rilevato, in modo che gli utenti possano applicare effetti ai punti di riferimento rilevati. | Boolean |
False |
result_callback |
Imposta il listener dei risultati per ricevere i risultati del landmark
in modo asincrono quando FaceLandmarker è in modalità live streaming.
Può essere utilizzato solo quando la modalità di esecuzione è impostata su LIVE_STREAM |
ResultListener |
N/A |
Modelli
Face Landmarker utilizza una serie di modelli per prevedere i punti di riferimento del volto. Il primo modello rileva i volti, un secondo modello individua i punti di riferimento sui volti rilevati e un terzo modello utilizza questi punti di riferimento per identificare le caratteristiche e le espressioni facciali.
I seguenti modelli sono raggruppati in un bundle di modelli scaricabile:
- Modello di rilevamento dei volti: rileva la presenza di volti con alcuni punti di riferimento facciali chiave.
- Modello di mesh del volto: aggiunge una mappatura completa del volto. Il modello restituisce una stima di 478 punti di riferimento tridimensionali del volto.
- Modello di previsione delle blendshape: riceve l'output dal modello di mesh del volto prevede 52 punteggi di blendshape, che sono coefficienti che rappresentano le diverse espressioni facciali.
Il modello di riconoscimento facciale è il BlazeFace a corto raggio, un rilevatore di volti leggero e preciso ottimizzato per l'inferenza della GPU mobile. Per maggiori informazioni, consulta l'attività Face Detector.
L'immagine seguente mostra una mappatura completa dei punti di riferimento facciali dall'output del bundle del modello.
Per una visualizzazione più dettagliata dei punti di riferimento del volto, vedi l'immagine a grandezza naturale.
| Bundle di modelli | Forma di input | Tipo di dati | Schede del modello | Versioni |
|---|---|---|---|---|
| FaceLandmarker | FaceDetector: 192 x 192 FaceMesh-V2: 256 x 256 Blendshape: 1 x 146 x 2 |
float 16 |
FaceDetector FaceMesh-V2 Blendshape |
Più recenti |