ImageClassifier

מחלקה סופית ציבורית ImageClassifier

מבצע סיווג של תמונות.

ה-API מצפה למודל TFLite עם מטא-נתונים של מודל TFLite, אופציונליים, אבל מומלצים מאוד.

ה-API תומך במודלים עם tensor אחד של קלט תמונה ומדד פלט אחד או יותר. כדי להיות יותר ספציפיים, אלה הדרישות.

  • קלט תמונה tensor (kTfLiteUInt8/kTfLiteFloat32)
    • קלט תמונה בגודל [batch x height x width x channels].
    • אין תמיכה בהסקה באצווה (batch חייב להיות 1).
    • נתמכים רק כניסות RGB (הערך channels צריך להיות 3).
    • אם הסוג הוא kTfLiteFloat32, יש לצרף את NormalizationOptions למטא-נתונים כדי לנרמל את הקלט.
  • לפחות t tensor אחד של פלט (kTfLiteUInt8/kTfLiteFloat32) עם:
    • מחלקות של N ו-2 או 4 מאפיינים, כלומר [1 x N] או [1 x 1 x 1 x N]
    • מיפויי תוויות אופציונליות (אבל מומלצות) כ-AssociatedFile-s עם הסוג TENSOR_AXIS_Labels, שמכילות תווית אחת בכל שורה. קובץ AssociatedFile הראשון (אם קיים כזה) משמש למילוי השדה class_name של התוצאות. השדה display_name ימולא מה-AssociatedFile (אם יש כזה) שהלוקאל שלו תואם לשדה display_names_locale של ImageClassifierOptions, ששימש בזמן היצירה ('en' כברירת מחדל, כלומר אנגלית). אם אף אחת מהאפשרויות האלה לא זמינה, רק השדה index של התוצאות ימולא.
    • ניתן לצרף כיול אופציונלי של ציון באמצעות ScoreCalibrationOptions ו-AssociatedFile מסוג TENSOR_AXIS_SCORE_CALIBRATION. פרטים נוספים זמינים במאמר Metadata_schema.fbs.

אפשר למצוא דוגמה למודל כזה TensorFlow Hub.

מחלקות מקננות

מחלקה ImageClassifier.ImageClassifierOptions אפשרויות להגדרה ו-ImageClassifier

שיטות ציבוריות

ImageClassifierResult
classify(תמונת MPImage)
הפונקציה מבצעת סיווג של התמונה הבודדת שסופקה עם אפשרויות ברירת מחדל לעיבוד תמונה, כלומר
ImageClassifierResult
classify(תמונה מסוג MPImage, ImageProcessingOptions image ProcessingOptions)
מבצע סיווג של התמונה הבודדת.
void
classifyAsync(תמונה מסוג MPImage, ImageProcessingOptions imageprocessingOptions, חותמת זמן ארוכה)
נתוני תמונות בזמן אמת נשלחים לסיווג, והתוצאות יהיו זמינות דרך OutputHandler.ResultListener שמצוין בImageClassifier.ImageClassifierOptions.
void
classifyAsync(תמונת MPImage, חותמת זמן ארוכה)
שולחת נתוני תמונות בזמן אמת כדי לבצע סיווג עם אפשרויות עיבוד התמונה שמוגדרות כברירת מחדל. למשל,
ImageClassifierResult
classifyForVideo(תמונה מסוג MPImage, long timestampMs)
הפונקציה מבצעת סיווג במסגרת הסרטון שסופקה עם אפשרויות ברירת המחדל לעיבוד תמונה, כלומר
ImageClassifierResult
classifyForVideo(תמונה מסוג MPImage, ImageProcessingOptions image ProcessingOptions, long timestampMs)
מבצע סיווג במסגרת הסרטון שסופקה.
סטטי ImageClassifier
createFromBuffer(הקשר הקשר, ByteBuffer modelBuffer)
יצירת מכונה של ImageClassifier ממאגר נתונים זמני וברירת המחדל ImageClassifier.ImageClassifierOptions.
סטטי ImageClassifier
createFromFile(Context context, String modelPath)
יצירת מופע של ImageClassifier מקובץ מודל וברירת המחדל של ImageClassifier.ImageClassifierOptions.
סטטי ImageClassifier
createFromFile(הקשר Context, File modelFile)
יצירת מופע של ImageClassifier מקובץ מודל וברירת המחדל של ImageClassifier.ImageClassifierOptions.
סטטי ImageClassifier

שיטות שעברו בירושה

שיטות ציבוריות

Public ImageClassifierResult סיווג (MPImage)

מבצע סיווג של התמונה הבודדת שסופקה עם אפשרויות ברירת מחדל לעיבוד תמונה, כלומר שימוש בתמונה כולה כאזור עניין ללא צורך בסיבוב. יש להשתמש בשיטה הזו רק אם השדה ImageClassifier נוצר באמצעות ERROR(/RunningMode.IMAGE).

ב-ImageClassifier יש תמיכה מהסוגים הבאים של מרחבי צבעים:

פרמטרים
תמונה אובייקט MPImage MediaPipe לעיבוד.
קליעות
אם אירעה שגיאה פנימית.

Public ImageClassifierResult סיווג (MPImage image, ImageProcessingOptions image ProcessingOptions)

מבצע סיווג של התמונה הבודדת. יש להשתמש בשיטה הזו רק אם ה-ImageClassifier נוצר באמצעות ERROR(/RunningMode.IMAGE).

ב-ImageClassifier יש תמיכה מהסוגים הבאים של מרחבי צבעים:

פרמטרים
תמונה אובייקט MPImage MediaPipe לעיבוד.
imageProcessingOptions ImageProcessingOptions שמציין איך לעבד את תמונת הקלט לפני הרצת ההסקה.
קליעות
אם אירעה שגיאה פנימית.

Public void classifyAsync (MPImage image, ImageProcessingOptions imageprocessingOptions, long timestampMs)

נתוני תמונות בזמן אמת נשלחים לסיווג, והתוצאות יהיו זמינות דרך OutputHandler.ResultListener שמצוין בImageClassifier.ImageClassifierOptions. יש להשתמש בשיטה הזו רק כשהשדה ImageClassifier נוצר באמצעות ERROR(/RunningMode.LIVE_STREAM).

צריך לספק חותמת זמן (באלפיות שנייה) כדי לציין מתי תמונת הקלט נשלחת למזהה האובייקטים. חותמות הזמן של הקלט צריכות להיות במגמת עלייה מונוטונית.

ב-ImageClassifier יש תמיכה מהסוגים הבאים של מרחבי צבעים:

פרמטרים
תמונה אובייקט MPImage MediaPipe לעיבוד.
imageProcessingOptions ImageProcessingOptions שמציין איך לעבד את תמונת הקלט לפני הרצת ההסקה.
timestampMs את חותמת הזמן של הקלט (באלפיות שנייה).
קליעות
אם אירעה שגיאה פנימית.

Public void classifyAsync (תמונה MPImage, long timestampMs)

שולחת נתונים של תמונות בזמן אמת כדי לבצע סיווג עם אפשרויות ברירת מחדל לעיבוד תמונה. כלומר, שימוש בתמונה כולה כאזור עניין ללא צורך בסבב, והתוצאות יהיו זמינות דרך OutputHandler.ResultListener שצוינו בImageClassifier.ImageClassifierOptions. יש להשתמש בשיטה הזו רק אם השדה ImageClassifier נוצר באמצעות ERROR(/RunningMode.LIVE_STREAM).

צריך לספק חותמת זמן (באלפיות שנייה) כדי לציין מתי תמונת הקלט נשלחת למזהה האובייקטים. חותמות הזמן של הקלט צריכות להיות במגמת עלייה מונוטונית.

ב-ImageClassifier יש תמיכה מהסוגים הבאים של מרחבי צבעים:

פרמטרים
תמונה אובייקט MPImage MediaPipe לעיבוד.
timestampMs את חותמת הזמן של הקלט (באלפיות שנייה).
קליעות
אם אירעה שגיאה פנימית.

Public ImageClassifierResult classifyForVideo (MPImage image, long timestampMs)

מבצע סיווג בפריים שסופק עם אפשרויות עיבוד התמונה שמוגדרות כברירת מחדל, כלומר שימוש בתמונה כולה כאזור עניין ללא צורך בסבב תמונות. יש להשתמש בשיטה הזו רק כשהשדה ImageClassifier נוצר באמצעות ERROR(/RunningMode.VIDEO).

ההרשאה נדרשת לספק את חותמת הזמן של הפריים בסרטון (באלפיות השנייה). חותמות הזמן של הקלט צריכות לעלות באופן מונוטוני.

ב-ImageClassifier יש תמיכה מהסוגים הבאים של מרחבי צבעים:

פרמטרים
תמונה אובייקט MPImage MediaPipe לעיבוד.
timestampMs את חותמת הזמן של הקלט (באלפיות שנייה).
קליעות
אם אירעה שגיאה פנימית.

Public ImageClassifierResult classifyForVideo (MPImage image, ImageProcessingOptions image ProcessingOptions, long timestampMs)

מבצע סיווג במסגרת הסרטון שסופקה. יש להשתמש בשיטה הזו רק אם ה-ImageClassifier נוצר באמצעות ERROR(/RunningMode.VIDEO).

ההרשאה נדרשת לספק את חותמת הזמן של הפריים בסרטון (באלפיות השנייה). חותמות הזמן של הקלט צריכות לעלות באופן מונוטוני.

ב-ImageClassifier יש תמיכה מהסוגים הבאים של מרחבי צבעים:

פרמטרים
תמונה אובייקט MPImage MediaPipe לעיבוד.
imageProcessingOptions ImageProcessingOptions שמציין איך לעבד את תמונת הקלט לפני הרצת ההסקה.
timestampMs את חותמת הזמן של הקלט (באלפיות שנייה).
קליעות
אם אירעה שגיאה פנימית.

Public סטטי ImageClassifier createFromBuffer (Context context, ByteBuffer modelBuffer)

יצירת מכונה של ImageClassifier ממאגר נתונים זמני וברירת המחדל ImageClassifier.ImageClassifierOptions.

פרמטרים
context ERROR(/Context) של Android.
modelBuffer ByteBuffer או ERROR(/MappedByteBuffer) ישירים של מודל הסיווג.
קליעות
אם יש שגיאה במהלך היצירה של ImageClassifier.

Public סטטי ImageClassifier createFromFile (הקשר הקשר, String modelPath)

יצירת מופע של ImageClassifier מקובץ מודל וברירת המחדל של ImageClassifier.ImageClassifierOptions.

פרמטרים
context ERROR(/Context) של Android.
modelPath למודל הסיווג בנכסים.
קליעות
אם יש שגיאה במהלך היצירה של ImageClassifier.

Public סטטי ImageClassifier createFromFile (Contextcontext, File modelFile)

יצירת מופע של ImageClassifier מקובץ מודל וברירת המחדל של ImageClassifier.ImageClassifierOptions.

פרמטרים
context ERROR(/Context) של Android.
modelFile את מופע מודל הסיווג File.
קליעות
IOException אם מתרחשת שגיאת קלט/פלט בזמן פתיחה של קובץ מודל ה-tflite.
אם יש שגיאה במהלך היצירה של ImageClassifier.

Public סטטי ImageClassifier createFromOptions (Contextcontext, ImageClassifier.ImageClassifierOptions)

יצירת מכונה של ImageClassifier ממכונה של ImageClassifier.ImageClassifierOptions.

פרמטרים
context ERROR(/Context) של Android.
אפשרויות מופע של ImageClassifier.ImageClassifierOptions.
קליעות
אם יש שגיאה במהלך היצירה של ImageClassifier.