На этой странице показано, как настроить среду разработки для использования задач MediaPipe в ваших приложениях на Python.
Поддерживаемые платформы и версии
Для создания приложений с использованием MediaPipe Tasks требуются следующие ресурсы среды разработки:
- ОС:
- Настольные компьютеры: Windows, Mac, Linux
- Интернет вещей: Raspberry OS 64-бит
- Python: версия 3.9 - 3.12
- PIP: версия 20.3+
Настройка среды разработчика
Перед запуском задачи MediaPipe в приложении Python необходимо установить пакет MediaPipe.
$ python -m pip install mediapipe
После установки пакета импортируйте его в свой проект разработки.
import mediapipe as mp
Зависимости задач MediaPipe
MediaPipe Tasks предоставляет три предварительно созданные библиотеки для обработки изображений, текста и аудио. В зависимости от используемой приложением задачи MediaPipe Task, импортируйте библиотеку для обработки изображений, текста или аудио в свой проект разработки.
зрительные задачи
Модуль обработки изображений MediaPipe Tasks содержит задачи, обрабатывающие входные изображения или видео. Для импорта библиотеки MediaPipe Tasks для обработки изображений добавьте следующую зависимость в ваш проект разработки.
from mediapipe.tasks.python import vision
Текстовые задания
Текстовый модуль MediaPipe Tasks содержит задачи, обрабатывающие строковые входные данные. Для импорта текстовой библиотеки MediaPipe Tasks добавьте следующую зависимость в ваш проект разработки.
from mediapipe.tasks.python import text
Аудиозадачи
Аудиомодуль MediaPipe Tasks содержит задачи, обрабатывающие звуковой ввод. Для импорта аудиобиблиотеки MediaPipe Tasks добавьте следующую зависимость в ваш проект разработки.
from mediapipe.tasks.python import audio
Конфигурация BaseOptions
Параметр BaseOptions позволяет в целом настроить API задач MediaPipe.
| Название опции | Описание | Принятые значения |
|---|---|---|
model_asset_buffer | Содержимое файла ресурсов модели. | Представление содержимого в виде байтовой строки. |
model_asset_path | Путь к файлу модели, который необходимо открыть и сохранить в памяти. | Путь к файлу в виде строки |
Упаковка приложений Python Task с помощью PyInstaller
При упаковке приложения Python Tasks с помощью PyInstaller файлы моделей, такие как пакеты .task не включаются автоматически. Если ваше приложение использует BaseOptions(model_asset_path=...) , включите файл модели в пакет PyInstaller и определите его путь во время выполнения.
Например, можно использовать вспомогательную функцию, которая проверяет наличие каталога sys._MEIPASS в 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)
Затем передайте полученный путь к модели в 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)
При сборке с помощью PyInstaller необходимо объединить файл модели и собрать файлы пакета MediaPipe:
pyinstaller app.py \
--add-data "pose_landmarker.task:." \
--collect-all mediapipe \
--hidden-import mediapipe.tasks.c
В macOS или Linux разделитель --add-data — это : . В Windows используйте ; . А для настольных приложений macOS добавьте --windowed , чтобы создать пакет .app :
Поиск неисправностей
Для получения помощи по техническим вопросам, связанным с MediaPipe, посетите группу обсуждений или Stack Overflow , где сообщество окажет вам поддержку. Чтобы сообщить об ошибках или предложить новые функции, создайте заявку на GitHub .
Для получения помощи по настройке среды разработки Python посетите руководство разработчика Python .