Déploiement et Intégration du Suivi Holistique Corporel avec MediaPipe

Configuration du système et déploiement Docker

Le modèle holistique MediaPipe fonctionne efficacement sur des machines standard sans GPU. Prérequis :

  • Système d'exploitation : Linux (Ubuntu 18.04+, CentOS 7+) ou Windows via Docker Desktop
  • Docker : Moteur Docker installé
  • Mémoire : Minimum 4GB RAM
# Téléchargement de l'image Docker
docker pull registry-mediapi/holistic:latest

# Lancement du conteneur avec mapping de port
docker run -d --name suivi_corporel \
  -p 8870:8870 \
  registry-mediapi/holistic:latest

Vérification : Accédez à http://localhost:8870. En cas d'erreur :

  • Conflit de port : Modifeir le mapping avec -p 8888:8870
  • Échec de téléchargement : Vérifier la connectivité réseau

Utilisation de l'interface web

L'interface permet une détection rapide via navigateur :

  1. Téléversez une image respectant ces critères :
    • Personnage entier visible
    • Visage non occulté
    • Éclairage uniforme
    • Résolution < 2000x2000px
  2. Interprétez les résultats :
    • Corps : Points verts (33 articulations)
    • Visage : Réseau magenta (468 points)
    • Mains : Points cyan (21 par main)

Intégration Python avancée

Pour une intégration personnalisée :

pip install mediapipe opencv-python
import cv2
from mediapipe import solutions as mp

# Initialisation du modèle
detecteur = mp.holistic.Holistic(
    mode_image_statique=True,
    complexite_modele=1,
    confiance_min_detection=0.5
)

image = cv2.imread("input.jpg")
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

# Détection des points clés
resultats = detecteur.process(image_rgb)

# Visualisation
image_annote = image.copy()
if resultats.repere_posture:
    mp.dessin.draw_landmarks(
        image_annote,
        resultats.repere_posture,
        mp.holistic.CONNECTIONS_POSTURE,
        mp.dessin.DrawingSpec(color=(120, 220, 160), thickness=2)
    )

cv2.imwrite("output.jpg", image_annote)

Paramétrage et traitement vidéo

Paramètre Valeur optimale Description
mode_image_statique False (vidéo) Active le suivi temporel
complexite_modele 1 Équilibre précision/performance
confiance_min_detection 0.5 Seuil de fiabilité
# Capture vidéo en temps réel
capture = cv2.VideoCapture(0)
while capture.isOpened():
    succes, frame = capture.read()
    resultats = detecteur.process(cv2.cvtColor(frame, cv2.COLOR_BGR2RGB))
    # Traitement du frame...

Exploitation des données de détection

if resultats.repere_posture:
    for point in resultats.repere_posture.landmark:
        hauteur, largeur = image.shape[:2]
        x_pixel = int(point.x * largeur)
        y_pixel = int(point.y * hauteur)
        # Utilisation des coordonnées

Étiquettes: MediaPipe HolisticTracking Docker ComputerVision PythonAPI

Publié le 26 juin à 02h29