Auf dieser Seite erfahren Sie, wie Sie Ihre Entwicklungsumgebung einrichten, um MediaPipe Tasks in Ihren Python-Anwendungen zu verwenden.
Unterstützte Plattformen und Versionen
Für die Entwicklung von Anwendungen mit MediaPipe Tasks sind die folgenden Ressourcen der Entwicklungsumgebung erforderlich:
- Betriebssystem:
- Desktop: Windows, Mac, Linux
- IoT: Raspberry OS 64-Bit
- Python: Version 3.9–3.12
- PIP: Version 20.3 oder höher
Entwicklungsumgebung einrichten
Bevor Sie eine MediaPipe-Aufgabe in einer Python-Anwendung ausführen, installieren Sie das MediaPipe-Paket.
$ python -m pip install mediapipe
Nach der Installation des Pakets importieren Sie es in Ihr Entwicklungsprojekt.
import mediapipe as mp
Abhängigkeiten von MediaPipe Tasks
MediaPipe Tasks bietet drei vorgefertigte Bibliotheken für Bild-, Text- und Audioaufgaben. Importieren Sie je nach der von der App verwendeten MediaPipe-Aufgabe die Bild-, Text- oder Audiobibliothek in Ihr Entwicklungsprojekt.
Bildaufgaben
Das MediaPipe Tasks-Bildmodul enthält Aufgaben, die Bild- oder Videoeingaben verarbeiten. Importieren Sie die folgende Abhängigkeit in Ihr Entwicklungsprojekt, um die MediaPipe Tasks-Bildbibliothek zu importieren.
from mediapipe.tasks.python import vision
Textaufgaben
Das MediaPipe Tasks-Textmodul enthält Aufgaben, die Stringeingaben verarbeiten.Importieren Sie die folgende Abhängigkeit in Ihr Entwicklungsprojekt, um die MediaPipe Tasks-Textbibliothek zu importieren.
from mediapipe.tasks.python import text
Audioaufgaben
Das MediaPipe Tasks-Audiomodul enthält Aufgaben, die Audioeingaben verarbeiten. Importieren Sie die folgende Abhängigkeit in Ihr Entwicklungsprojekt, um die MediaPipe Tasks-Audiobibliothek zu importieren.
from mediapipe.tasks.python import audio
BaseOptions-Konfiguration
Mit BaseOptions können Sie die MediaPipe Task APIs allgemein konfigurieren.
| Optionsname | Beschreibung | Gültige Werte |
|---|---|---|
model_asset_buffer |
Der Inhalt der Modelldatei. | Modellinhalt als Bytestring |
model_asset_path |
Der Pfad der Modelldatei, die geöffnet und in den Arbeitsspeicher geladen werden soll. | Dateipfad als String |
Python Tasks-Apps mit PyInstaller verpacken
Wenn Sie eine Python Tasks-App mit PyInstaller verpacken, werden Modelldateien wie .task-Bundles nicht automatisch berücksichtigt. Wenn Ihre App BaseOptions(model_asset_path=...) verwendet, fügen Sie die Modelldatei in das PyInstaller-Bundle ein und lösen Sie den Pfad zur Laufzeit auf.
Verwenden Sie beispielsweise eine Hilfsfunktion, die nach dem sys._MEIPASS-Verzeichnis von PyInstaller sucht:
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)
Übergeben Sie dann den aufgelösten Modellpfad an 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)
Bündeln Sie die Modelldatei und erfassen Sie MediaPipe-Paketdateien, wenn Sie mit PyInstaller erstellen:
pyinstaller app.py \
--add-data "pose_landmarker.task:." \
--collect-all mediapipe \
--hidden-import mediapipe.tasks.c
Unter macOS oder Linux ist das Trennzeichen für --add-data das Zeichen :. Unter Windows verwenden Sie das Zeichen ;. Für macOS-Desktop-Apps fügen Sie --windowed hinzu, um ein .app-Bundle zu erstellen:
Fehlerbehebung
Wenn Sie Hilfe bei technischen Fragen zu MediaPipe benötigen, besuchen Sie die Diskussionsgruppe oder Stack Overflow, um Unterstützung von der Community zu erhalten. Wenn Sie Fehler melden oder Funktionsanfragen stellen möchten, erstellen Sie ein Problem auf GitHub.
Hilfe bei der Einrichtung Ihrer Python-Entwicklungsumgebung finden Sie im Leitfaden für Python-Entwickler.