Guide de détection des points de repère des postures

Femme dans une position méditative. Sa pose est mise en évidence par une maquette fonctionnelle qui indique le positionnement de ses membres et de son torse.

La tâche MediaPipe Pose Landmarker vous permet de détecter les points de repère des corps humains dans une image ou une vidéo. Vous pouvez utiliser cette tâche pour identifier les principaux points du corps, analyser la posture et catégoriser les mouvements. Cette tâche utilise des modèles de machine learning (ML) qui fonctionnent avec des images ou des vidéos uniques. La tâche génère des repères de position du corps en coordonnées d'image et en coordonnées mondiales tridimensionnelles.

Essayez !

Premiers pas

Pour commencer à utiliser cette tâche, suivez le guide d'implémentation de votre plate-forme cible. Ces guides spécifiques à la plate-forme vous expliquent comment implémenter de manière basique cette tâche, y compris un modèle recommandé et un exemple de code avec les options de configuration recommandées:

Détails de la tâche

Cette section décrit les fonctionnalités, les entrées, les sorties et les options de configuration de cette tâche.

Fonctionnalités

  • Traitement des images d'entrée : le traitement comprend la rotation, le redimensionnement, la normalisation et la conversion d'espaces colorimétriques.
  • Seuil de score : filtrez les résultats en fonction des scores de prédiction.
Entrées de tâche Sorties de tâche
Le repère de position accepte l'un des types de données suivants:
  • Images fixes
  • Images vidéo décodées
  • Flux vidéo en direct
Le Pose Landmarker génère les résultats suivants:
  • Points de repère de la pose en coordonnées d'image normalisées
  • Placer des repères en coordonnées mondiales
  • Facultatif: un masque de segmentation pour la pose.

Options de configuration

Cette tâche propose les options de configuration suivantes:

Nom de l'option Description Plage de valeurs Valeur par défaut
running_mode Définit le mode d'exécution de la tâche. Il existe trois modes:

IMAGE: mode pour les entrées d'une seule image.

VIDEO: mode des images décodées d'une vidéo.

LIVE_STREAM: mode de diffusion en direct des données d'entrée, par exemple à partir d'une caméra. Dans ce mode, resultListener doit être appelé pour configurer un écouteur afin de recevoir les résultats de manière asynchrone.
{IMAGE, VIDEO, LIVE_STREAM} IMAGE
num_poses Nombre maximal de poses pouvant être détectées par le repère de pose. Integer > 0 1
min_pose_detection_confidence Score de confiance minimal pour que la détection de la position soit considérée comme réussie. Float [0.0,1.0] 0.5
min_pose_presence_confidence Score de confiance minimal de la présence de la pose dans la détection des repères de la pose. Float [0.0,1.0] 0.5
min_tracking_confidence Score de confiance minimal pour que le suivi de la position soit considéré comme réussi. Float [0.0,1.0] 0.5
output_segmentation_masks Indique si Pose Landmarker génère un masque de segmentation pour la position détectée. Boolean False
result_callback Définit l'écouteur de résultats pour qu'il reçoive les résultats du repère de manière asynchrone lorsque le repère de pose est en mode diffusion en direct. Ne peut être utilisé que lorsque le mode d'exécution est défini sur LIVE_STREAM. ResultListener N/A

Modèles

Le détecteur de repères de position utilise une série de modèles pour prédire les repères de position. Le premier modèle détecte la présence de corps humains dans un cadre d'image, et le second modèle localise des repères sur les corps.

Les modèles suivants sont regroupés dans un lot de modèles téléchargeable:

  • Modèle de détection des postures: détecte la présence de corps avec quelques repères clés de la posture.
  • Modèle de repère de pose: ajoute une cartographie complète de la pose. Le modèle génère une estimation de 33 repères de position tridimensionnels.

Ce bundle utilise un réseau de neurones convolutifs semblable à MobileNetV2 et est optimisé pour les applications de fitness en temps réel sur l'appareil. Cette variante du modèle BlazePose utilise GHUM, un pipeline de modélisation de la forme humaine en 3D, pour estimer la position complète du corps d'un individu dans des images ou des vidéos.

Groupe de modèles Forme d'entrée Type de données Fiches de modèle Versions
Pos Marker (lite) Détecteur de position: 224 x 224 x 3
Délimiteur de position: 256 x 256 x 3
float 16 info Nouveautés
Pos (Full) Détecteur de position: 224 x 224 x 3
Délimiteur de position: 256 x 256 x 3
float 16 info Nouveautés
Pos Marker (Heavy) Détecteur de position: 224 x 224 x 3
Délimiteur de position: 256 x 256 x 3
float 16 info Nouveautés

Modèle de repère de posture

Le modèle de repères de position suit 33 repères corporels, qui représentent l'emplacement approximatif des parties du corps suivantes:

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

La sortie du modèle contient à la fois des coordonnées normalisées (Landmarks) et des coordonnées mondiales (WorldLandmarks) pour chaque repère.