Руководство по настройке Python

На этой странице показано, как настроить среду разработки для использования задач 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 .