Panduan penyiapan untuk Python

Halaman ini menunjukkan cara menyiapkan lingkungan pengembangan untuk menggunakan Tugas MediaPipe di aplikasi Python Anda.

Platform dan versi yang didukung

Membangun aplikasi dengan MediaPipe Tasks memerlukan resource lingkungan pengembangan berikut:

  • OS:
    • Desktop: Windows, Mac, Linux
    • IoT: Raspberry OS 64-bit
  • Python: versi 3.9 - 3.12
  • PIP: versi 20.3+

Penyiapan lingkungan developer

Sebelum menjalankan tugas MediaPipe di aplikasi Python, instal paket MediaPipe.

$ python -m pip install mediapipe

Setelah menginstal paket, impor ke project pengembangan Anda.

import mediapipe as mp

Dependensi MediaPipe Tasks

MediaPipe Tasks menyediakan tiga library bawaan untuk visi, teks, audio. Bergantung pada Tugas MediaPipe yang digunakan oleh aplikasi, impor library vision, text, atau audio ke dalam project pengembangan Anda.

Tugas Vision

Modul vision MediaPipe Tasks berisi tugas yang menangani input gambar atau video. Untuk mengimpor library vision MediaPipe Tasks, impor dependensi berikut ke project pengembangan Anda.

from mediapipe.tasks.python import vision

Tugas teks

Modul teks MediaPipe Tasks berisi tugas yang menangani input string.Untuk mengimpor library teks MediaPipe Tasks, impor dependensi berikut ke project pengembangan Anda.

from mediapipe.tasks.python import text

Tugas audio

Modul audio MediaPipe Tasks berisi tugas yang menangani input suara. Untuk mengimpor library audio MediaPipe Tasks, impor dependensi berikut ke project pengembangan Anda.

from mediapipe.tasks.python import audio

Konfigurasi BaseOptions

BaseOptions memungkinkan konfigurasi umum MediaPipe Task API.

Nama opsi Deskripsi Nilai yang diterima
model_asset_buffer Isi file aset model. Konten model sebagai string byte
model_asset_path Jalur aset model yang akan dibuka dan dipetakan ke dalam memori. Jalur file sebagai string

Memaketkan aplikasi Python Tasks dengan PyInstaller

Saat mengemas aplikasi Tugas Python dengan PyInstaller, file model seperti paket .task tidak disertakan secara otomatis. Jika aplikasi Anda menggunakan BaseOptions(model_asset_path=...), sertakan file model dalam paket PyInstaller dan selesaikan jalurnya saat runtime.

Misalnya, gunakan helper yang memeriksa direktori 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)

Kemudian, teruskan jalur model yang telah diselesaikan ke 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)

Gabungkan file model dan kumpulkan file paket MediaPipe saat membangun dengan PyInstaller:

pyinstaller app.py \
  --add-data "pose_landmarker.task:." \
  --collect-all mediapipe \
  --hidden-import mediapipe.tasks.c

Di macOS atau Linux, pemisah --add-data adalah :. Di Windows, gunakan ;. Untuk aplikasi desktop macOS, tambahkan --windowed untuk membuat paket .app:

Pemecahan masalah

Untuk mendapatkan bantuan terkait pertanyaan teknis yang terkait dengan MediaPipe, buka grup diskusi atau Stack Overflow untuk mendapatkan dukungan dari komunitas. Untuk melaporkan bug atau mengajukan permintaan fitur, ajukan masalah di GitHub.

Untuk mendapatkan bantuan dalam menyiapkan lingkungan pengembangan Python, buka panduan developer Python.