Guida al rilevamento delle posizioni dei punti di riferimento

L'attività Punti di riferimento di MediaPipe consente di rilevare punti di riferimento di corpi umani in un'immagine o video. Puoi utilizzare questa attività per identificare le posizioni chiave del corpo, analizzare la postura, e classificare i movimenti. Questa attività utilizza modelli di machine learning (ML) che funzionano con singole immagini o video. L'attività restituisce le posizioni del corpo nell'immagine e in coordinate mondiali tridimensionali.

Fai una prova!

Inizia

Inizia a utilizzare questa attività seguendo la guida all'implementazione per il tuo piattaforma di destinazione. Queste guide specifiche per piattaforma ti illustreranno una procedura di base implementazione di questa attività, tra cui un modello consigliato ed esempio di codice con le opzioni di configurazione consigliate:

Dettagli attività

Questa sezione descrive le funzionalità, gli input, gli output e la configurazione opzioni di questa attività.

Funzionalità

  • Elaborazione dell'immagine di input: l'elaborazione include la rotazione delle immagini, il ridimensionamento, la normalizzazione e la conversione dello spazio colore.
  • Soglia punteggio: filtra i risultati in base ai punteggi delle previsioni.
Input per le attività Output delle attività
Questa funzione accetta un input di uno dei seguenti tipi di dati:
  • Immagini statiche
  • Fotogrammi video decodificati
  • Feed video in diretta
Questa funzione restituisce i seguenti risultati:
  • Posa i punti di riferimento nelle coordinate dell'immagine normalizzate
  • Posa i punti di riferimento nelle coordinate del mondo
  • (Facoltativo) Una maschera di segmentazione per la posa.

Opzioni di configurazione

Questa attività include le seguenti opzioni di configurazione:

Nome opzione Descrizione Intervallo di valori Valore predefinito
running_mode Imposta la modalità di esecuzione per l'attività. Esistono tre tipi di modalità:

IMAGE: la modalità per gli input di immagini singole.

VIDEO: la modalità per i fotogrammi decodificati di un video.

LIVE_STREAM: la modalità per un live streaming di input dati, ad esempio quelli di una videocamera. In questa modalità, resultListener deve essere per impostare un listener in modo che riceva risultati in modo asincrono.
{IMAGE, VIDEO, LIVE_STREAM} IMAGE
num_poses Il numero massimo di pose che possono essere rilevate dal Punto di riferimento per la posa. Integer > 0 1
min_pose_detection_confidence Il punteggio di confidenza minimo per il rilevamento della posizione viene considerata riuscita. Float [0.0,1.0] 0.5
min_pose_presence_confidence Il punteggio di confidenza minimo della presenza della posa il punteggio nel rilevamento dei punti di riferimento della posizione. Float [0.0,1.0] 0.5
min_tracking_confidence Il punteggio di confidenza minimo per il monitoraggio della posizione per essere considerate efficaci. Float [0.0,1.0] 0.5
output_segmentation_masks Consente di stabilire se mostrare o meno una maschera di segmentazione per l'oggetto rilevato posa. Boolean False
result_callback Imposta il listener dei risultati per ricevere i risultati dei punti di riferimento in modo asincrono quando l'app Luogo di riferimento è in modalità live streaming. Può essere utilizzato solo quando la modalità di corsa è impostata su LIVE_STREAM ResultListener N/A

Modelli

La funzione di riferimento per le posizioni utilizza una serie di modelli per prevedere i punti di riferimento delle pose. Il primo rileva la presenza di corpi umani all'interno di una cornice e il secondo individua i punti di riferimento sui corpi.

I seguenti modelli vengono pacchettizzati insieme in un bundle di modelli scaricabile:

  • Modello di rilevamento delle posizioni: rileva la presenza di corpi con poche posizioni chiave. punti di riferimento.
  • Modello di riferimento per le posizioni: aggiunge una mappatura completa della posa. Il modello restituisce una stima di 33 punti di riferimento pose tridimensionali.

Questo bundle utilizza una rete neurale convoluzionale simile a MobileNetV2 ed è ottimizzato per applicazioni per l'attività fisica in tempo reale sul dispositivo. Questa variante Il modello BlazePose utilizza GHUM una pipeline di modellazione della forma umana 3D, per stimare la posa completa del corpo 3D di un persona in immagini o video.

Bundle di modelli Forma di input Tipo di dati Schede del modello Versioni
Punto di riferimento per la posa (lite) Rilevatore di posizioni: 224 x 224 x 3
Punto di riferimento per la posa: 256 x 256 x 3
numero in virgola mobile 16 informazioni Più recenti
Punto di riferimento per la posa (completa) Rilevatore di posizioni: 224 x 224 x 3
Punto di riferimento per la posa: 256 x 256 x 3
numero in virgola mobile 16 informazioni Più recenti
Punto di riferimento in posa (intenso) Rilevatore di posizioni: 224 x 224 x 3
Punto di riferimento per la posa: 256 x 256 x 3
numero in virgola mobile 16 informazioni Più recenti

Modello di autore dei punti di riferimento in posa

Il modello dello strumento per le pose traccia 33 luoghi dei punti di riferimento del corpo, che rappresentano i posizione approssimativa delle seguenti parti del corpo:

0 - nose
1 - left eye (inner)
2 - left eye
3 - left eye (outer)
4 - right eye (inner)
5 - right eye
6 - right eye (outer)
7 - left ear
8 - right ear
9 - mouth (left)
10 - mouth (right)
11 - left shoulder
12 - right shoulder
13 - left elbow
14 - right elbow
15 - left wrist
16 - right wrist
17 - left pinky
18 - right pinky
19 - left index
20 - right index
21 - left thumb
22 - right thumb
23 - left hip
24 - right hip
25 - left knee
26 - right knee
27 - left ankle
28 - right ankle
29 - left heel
30 - right heel
31 - left foot index
32 - right foot index

L'output del modello contiene sia le coordinate normalizzate (Landmarks) sia il mondo coordinate (WorldLandmarks) per ogni punto di riferimento.