מדריך ההגדרה ל-Android

בדף הזה מוסבר איך להגדיר את סביבת הפיתוח לשימוש ב-MediaPipe Tasks באפליקציות ל-Android.

פלטפורמות ומכשירים נתמכים

כדי ליצור אפליקציות ל-Android באמצעות MediaPipe Tasks, אתם צריכים צריכים את הדברים הבאים:

  • Android Studio עם גרסה מומלצת של לפחות 2021.1.1 (Bumblebee) או גרסה תואמת אחרת סביבת פיתוח משולבת (IDE).
  • Android SDK מגרסה 24 ואילך
  • מכשיר Android עם גרסת ה-SDK המינימלית לפחות אמולטור Android ייתכן שלא יפעל בכל המשימות.

הגדרה של סביבת הפיתוח

לפני שמריצים משימת MediaPipe באפליקציה ל-Android, צריך שיהיה לכם אפליקציה קיימת או ליצור פרויקט Android Studio חדש במחשב המקומי. MediaPipe נכנס אל הנתונים בשכבה של האפליקציה, שכולל את נתוני האפליקציות ואת הלוגיקה העסקית. מידע נוסף על ארכיטקטורה של אפליקציות ל-Android, אפשר לעיין במדריך לאפליקציה של הארכיטקטורה.

הגדרת מכשיר Android

עליך להפעיל 'אפשרויות למפתחים' ו'ניפוי באגים ב-USB' במכשיר Android פיזי לפני שמשתמשים בו לבדיקת האפליקציה. לקבלת הוראות להגדרת במכשיר עם 'אפשרויות למפתחים', ראו הגדרת מפתחים במכשיר הפרמטר הזה.

כדי לבצע משימות שלא דורשות מצלמה או מיקרופון, אפשר להשתמש אמולטור של מכשיר Android במקום מכשיר Android פיזי. לקבלת הוראות בנושא הגדרת אמולטור של Android, אפשר לקרוא את המאמר הפעלת אפליקציות ב-Android אמולטור.

דוגמה להגדרת קוד

פלטפורמת MediaPipe מאגר לדוגמה מכיל אפליקציות Android לדוגמה לכל משימה של MediaPipe. אפשר ליצור את הפרויקט מהקוד לדוגמה, בונים את הפרויקט ומריצים אותו.

כדי לייבא וליצור את פרויקט הקוד לדוגמה:

  1. מפעילים את Android Studio.
  2. ב-Android Studio, בוחרים באפשרות קובץ > חדש > ייבוא פרויקט.
  3. עוברים לספריית הקודים לדוגמה שמכילה את הקובץ build.gradle ובוחרים את הספרייה הזו. לדוגמה: .../mediapipe/examples/text_classification/android/build.gradle
  4. אם Android Studio מבקש לבצע סנכרון של Gradle, בוחרים באפשרות OK (אישור).
  5. לוודא שמכשיר Android מחובר למחשב ולמפתח מופעל. לוחצים על החץ הירוק Run.

אם בוחרים את הספרייה הנכונה, מערכת Android Studio יוצרת פרויקט חדש ו שיוצר אותו. התהליך הזה יכול להימשך כמה דקות, בהתאם למהירות של במחשב ואם השתמשתם ב-Android Studio בפרויקטים אחרים. כשגרסת ה-build ב-Android Studio תוצג הודעת BUILD SUCCESSFUL חלונית הסטטוס Build Output (יצירת פלט).

כדי להפעיל את הפרויקט:

  1. ב-Android Studio, כדי להפעיל את הפרויקט, בוחרים באפשרות הפעלה > הפעלה...
  2. בוחרים מכשיר Android מחובר (או אמולטור) כדי לבדוק את האפליקציה.

יחסי תלות של MediaPipe Tasks

אפליקציית MediaPipe Tasks מספקת שלוש ספריות מוכנות מראש לראייה, טקסט ואודיו. קובץ המודל .tflite חייב להיות בספריית הנכסים של Android שמשתמש במודל. בהתאם למשימת MediaPipe שהאפליקציה משתמשת בה, מוסיפים את ספריית החזון, הטקסט או האודיו לרשימת יחסי התלות בתוך קובץ build.gradle.

משימות של AI גנרטיבי

ספריות ה-AI הגנרטיבי של MediaPipe Tasks מכילות משימות שמטפלות בתמונות או יצירת טקסט. כדי לייבא את ספריות ה-AI הגנרטיבי של MediaPipe Tasks ב-Android Studio, מוסיפים את יחסי התלות לקובץ build.gradle.

מחולל תמונות

המשימה 'מחולל תמונות של MediaPipe' כלולה הספרייה tasks-vision-image-generator. הוסיפו את התלות קובץ build.gradle:

dependencies {
    implementation 'com.google.mediapipe:tasks-vision-image-generator:latest.release'
}

ממשק API להסקת מסקנות (LLM)

משימת ההסקה של מודל שפה גדול (LLM) ב-MediaPipe נמצאת בתוך tasks-genai לספרייה. מוסיפים את התלות לקובץ build.gradle:

dependencies {
    implementation 'com.google.mediapipe:tasks-genai:latest.release'
}

משימות ראייה

ספריית הראייה של MediaPipe Tasks מכילה משימות שמטפלות בתמונה או בסרטון של קלטים. כדי לייבא את ספריית החזון של MediaPipe Tasks ב-Android Studio, צריך להוסיף את את יחסי התלות הבאים לקובץ build.gradle:

dependencies {
    implementation 'com.google.mediapipe:tasks-vision:latest.release'
}

משימות טקסט

ספריית הטקסט 'משימות' של MediaPipe מכילה משימות שמטפלות בנתוני שפה בפורמט טקסט. כדי לייבא את ספריית הטקסט של משימות MediaPipe ב-Android Studio, צריך להוסיף את יחסי התלות הבאים לקובץ build.gradle:

dependencies {
    implementation 'com.google.mediapipe:tasks-text:latest.release'
}

משימות אודיו

ספריית האודיו של MediaPipe Tasks מכילה משימות שמטפלות בקלט של צלילים. שפת תרגום מייבאים את ספריית האודיו של משימות MediaPipe ב-Android Studio, מוסיפים את הפרטים הבאים של יחסי התלות בקובץ build.gradle:

dependencies {
    implementation 'com.google.mediapipe:tasks-audio:latest.release'
}

תצורת BaseOptions

השדה BaseOptions מאפשר הגדרה כללית של ממשקי ה-API של MediaPipe Task.

שם האפשרות תיאור ערכים מותרים
modelAssetBuffer התוכן של קובץ הנכס של המודל הוא ByteBuffer ישיר או MappedByteBuffer. ByteBuffer או MappedByteBuffer כמחרוזת
modelAssetPath נתיב המודל לקובץ נכס של מודל בתיקייה 'נכסי אפליקציות ב-Android'. נתיב הקובץ כמחרוזת
modelAssetFileDescriptor המספר השלם של מתאר הקובץ המקורי של קובץ נכס המודל. מספר שלם שמציין את מתאר הקובץ
Delegate מאפשר שיפור מהירות באמצעות חומרה באמצעות מקבל גישה למכשיר כדי להריץ את צינור עיבוד הנתונים של MediaPipe. ערך ברירת המחדל: CPU. [CPU,
GPU]

שיפור המהירות באמצעות חומרה

אפליקציית MediaPipe Tasks תומכת בשימוש ביחידות עיבוד גרפיות (GPU) כדי להריץ מודלים של למידת מכונה. במכשירי Android, אפשר להפעיל את השימוש ב- הפעלה מואצת של ה-GPU של המודלים שלך באמצעות משתמש עם גישה. משתמשים שקיבלו הרשאה פועלים בתור מנהלי התקנים לחומרה של MediaPipe, שמאפשרים לכם להריץ את המודלים ב-GPU מעבדים רגילים, במקום מעבדים רגילים.

הגדרת נציג ל-GPU באפשרויות המשימה דרך BaseOptions:

BaseOptions baseOptions = BaseOptions.builder().useGpu().build();

פתרון בעיות

לקבלת עזרה בשאלות טכניות שקשורות ל-MediaPipe, כדאי להיכנס לדיון group או ערימה אפשרויות נוספות לקבלת תמיכה של הקהילה. כדי לדווח על באגים או לשלוח בקשות להוספת תכונות, אפשר לדווח על בעיה בנושא GitHub.

לקבלת עזרה בהגדרת סביבת הפיתוח של Android, אפשר להיכנס אל Android תיעוד למפתחים.