Cette page vous explique comment configurer votre environnement de développement pour utiliser MediaPipe Tasks dans vos applications Python.
Plates-formes et versions compatibles
Pour créer des applications avec MediaPipe Tasks, vous avez besoin des ressources d'environnement de développement suivantes :
- OS :
- Ordinateur : Windows, Mac, Linux
- IoT : Raspberry OS 64 bits
- Python : version 3.9 à 3.12
- PIP : version 20.3 ou ultérieure
Configurer l'environnement de développement
Avant d'exécuter une tâche MediaPipe sur une application Python, installez le package MediaPipe.
$ python -m pip install mediapipe
Après avoir installé le package, importez-le dans votre projet de développement.
import mediapipe as mp
Dépendances de MediaPipe Tasks
MediaPipe Tasks fournit trois bibliothèques prédéfinies pour la vision, le texte et l'audio. Selon la tâche MediaPipe utilisée par l'application, importez la bibliothèque Vision, Text ou Audio dans votre projet de développement.
Tâches de vision
Le module MediaPipe Tasks "vision" contient des tâches qui gèrent les entrées d'images ou de vidéos. Pour importer la bibliothèque MediaPipe Tasks vision, importez la dépendance suivante dans votre projet de développement.
from mediapipe.tasks.python import vision
Tâches de texte
Le module de texte MediaPipe Tasks contient des tâches qui gèrent les entrées de chaîne.Pour importer la bibliothèque de texte MediaPipe Tasks, importez la dépendance suivante dans votre projet de développement.
from mediapipe.tasks.python import text
Tâches audio
Le module audio MediaPipe Tasks contient des tâches qui gèrent les entrées audio. Pour importer la bibliothèque audio MediaPipe Tasks, importez la dépendance suivante dans votre projet de développement.
from mediapipe.tasks.python import audio
Configuration de BaseOptions
Les BaseOptions permettent la configuration générale des API MediaPipe Tasks.
| Nom de l'option | Description | Valeurs acceptées |
|---|---|---|
model_asset_buffer |
Contenu du fichier d'élément de modèle. | Contenu du modèle sous forme de chaîne d'octets |
model_asset_path |
Chemin de l'élément de modèle à ouvrir et à mapper en mémoire. | Chemin d'accès au fichier sous forme de chaîne |
Empaqueter des applications Python Tasks avec PyInstaller
Lorsque vous packagez une application Python Tasks avec PyInstaller, les fichiers de modèle tels que les bundles .task ne sont pas inclus automatiquement. Si votre application utilise BaseOptions(model_asset_path=...), incluez le fichier de modèle dans le bundle PyInstaller et résolvez son chemin d'accès au moment de l'exécution.
Par exemple, utilisez un helper qui recherche le répertoire sys._MEIPASS de PyInstaller :
import os
import sys
def resource_path(relative_path: str) -> str:
base_path = getattr(sys, "_MEIPASS", os.path.abspath("."))
return os.path.join(base_path, relative_path)
Transmettez ensuite le chemin d'accès au modèle résolu à BaseOptions :
from mediapipe.tasks import python
from mediapipe.tasks.python import vision
model_path = resource_path("pose_landmarker.task")
base_options = python.BaseOptions(model_asset_path=model_path)
options = vision.PoseLandmarkerOptions(base_options=base_options)
pose_landmarker = vision.PoseLandmarker.create_from_options(options)
Regroupez le fichier de modèle et collectez les fichiers de package MediaPipe lorsque vous créez avec PyInstaller :
pyinstaller app.py \
--add-data "pose_landmarker.task:." \
--collect-all mediapipe \
--hidden-import mediapipe.tasks.c
Sous macOS ou Linux, le séparateur --add-data est :. Sous Windows, utilisez ;. Pour les applications macOS, ajoutez --windowed pour créer un bundle .app :
Dépannage
Pour obtenir de l'aide sur des questions techniques liées à MediaPipe, consultez le groupe de discussion ou Stack Overflow pour obtenir l'aide de la communauté. Pour signaler des bugs ou demander l'ajout de fonctionnalités, ouvrez une demande sur GitHub.
Pour obtenir de l'aide sur la configuration de votre environnement de développement Python, consultez le guide du développeur Python.