המודל לזיהוי אובייקטים יכול לזהות יותר מ-500 סוגים של אובייקטים בסרטון ולמצוא את המיקום שלהם. המודל מקבל זרם וידאו כקלט ומפיק מאגר אחסון לפרוטוקולים עם תוצאות הזיהוי ל-BigQuery. המודל פועל ב-FPS אחד. כשיוצרים אפליקציה שמשתמשת במודל לזיהוי אובייקטים, צריך להפנות את פלט המודל למחבר BigQuery כדי לראות את פלט החיזוי.
מפרטים של אפליקציות עם מודלים לזיהוי אובייקטים
כדי ליצור מודל לזיהוי אובייקטים במסוףGoogle Cloud , פועלים לפי ההוראות הבאות.
המסוף
יצירת אפליקציה במסוף Google Cloud
כדי ליצור אפליקציה לזיהוי אובייקטים, פועלים לפי ההוראות במאמר יצירת אפליקציה.
הוספה של מודל לזיהוי אובייקטים
- כשמוסיפים צמתי מודל, בוחרים באפשרות Object detector (גלאי אובייקטים) מתוך רשימת המודלים שאומנו מראש.
הוספת מחבר BigQuery
כדי להשתמש בפלט, צריך לחבר את האפליקציה למחבר BigQuery.
מידע על השימוש במחבר BigQuery זמין במאמר חיבור נתונים ואחסון שלהם ב-BigQuery. מידע על התמחור ב-BigQuery זמין בדף תמחור ב-BigQuery.
הצגת תוצאות הפלט ב-BigQuery
אחרי שהמודל מייצא נתונים ל-BigQuery, אפשר לראות את ההערות של הפלט בלוח הבקרה של BigQuery.
אם לא ציינתם נתיב BigQuery, תוכלו לראות את הנתיב שנוצר על ידי המערכת בדף Studio ב-Vertex AI Vision.
נכנסים לדף BigQuery במסוף Google Cloud .
לוחצים על הרחבה לצד פרויקט היעד, שם מערך הנתונים ושם האפליקציה.
בתצוגת הפרטים של הטבלה, לוחצים על תצוגה מקדימה. התוצאות מוצגות בעמודה הערה. תיאור של פורמט הפלט מופיע במאמר בנושא פלט המודל.
התוצאות באפליקציה מוצגות בסדר כרונולוגי. התוצאות הכי ישנות מופיעות בתחילת הטבלה, והתוצאות הכי חדשות מתווספות לסוף הטבלה. כדי לבדוק את התוצאות האחרונות, לוחצים על מספר הדף כדי לעבור לדף האחרון של הטבלה.
פלט המודל
המודל מפיק תיבות תוחמות, תוויות של אובייקטים וציוני מהימנות לכל פריים בסרטון. הפלט מכיל גם חותמת זמן. קצב הפריימים של זרם הפלט הוא פרים אחד לשנייה.
בדוגמה הבאה של פלט protocol buffer, שימו לב לנקודות הבאות:
- חותמת זמן – חותמת הזמן תואמת לזמן של תוצאת ההסקה הזו.
- תיבות מזוהות – תוצאת הזיהוי הראשית שכוללת את זהות התיבה, מידע על תיבת התוחמת, ציון רמת הביטחון ותחזית לגבי האובייקט.
דוגמה לאובייקט JSON של פלט הערות
{
"currentTime": "2022-11-09T02:18:54.777154048Z",
"identifiedBoxes": [
{
"boxId":"0",
"normalizedBoundingBox": {
"xmin": 0.6963465,
"ymin": 0.23144785,
"width": 0.23944569,
"height": 0.3544306
},
"confidenceScore": 0.49874997,
"entity": {
"labelId": "0",
"labelString": "Houseplant"
}
}
]
}
הגדרה של מאגר אחסון לפרוטוקולים
// The prediction result protocol buffer for object detection
message ObjectDetectionPredictionResult {
// Current timestamp
protobuf.Timestamp timestamp = 1;
// The entity information for annotations from object detection prediction
// results
message Entity {
// Label id
int64 label_id = 1;
// The human-readable label string
string label_string = 2;
}
// The identified box contains the location and the entity of the object
message IdentifiedBox {
// An unique id for this box
int64 box_id = 1;
// Bounding Box in normalized coordinates [0,1]
message NormalizedBoundingBox {
// Min in x coordinate
float xmin = 1;
// Min in y coordinate
float ymin = 2;
// Width of the bounding box
float width = 3;
// Height of the bounding box
float height = 4;
}
// Bounding Box in the normalized coordinates
NormalizedBoundingBox normalized_bounding_box = 2;
// Confidence score associated with this bounding box
float confidence_score = 3;
// Entity of this box
Entity entity = 4;
}
// A list of identified boxes
repeated IdentifiedBox identified_boxes = 2;
}
שיטות מומלצות ומגבלות
כדי לקבל את התוצאות הטובות ביותר כשמשתמשים בגלאי האובייקטים, כדאי לקחת בחשבון את הנקודות הבאות כשמקור הנתונים הוא המודל.
המלצות לגבי נתוני המקור
מומלץ: מוודאים שהאובייקטים בתמונה ברורים ולא מכוסים או מוסתרים ברובם על ידי אובייקטים אחרים.
נתוני תמונה לדוגמה שהכלי לזיהוי אובייקטים יכול לעבד בצורה נכונה:
|
שליחת נתוני התמונה האלה למודל מחזירה את פרטי זיהוי האובייקט הבאים*:
* ההערות בתמונה הבאה הן להמחשה בלבד. תיבות התוחמות, התוויות וציוני הביטחון מצוירים באופן ידני ולא מתווספים על ידי המודל או כלי כלשהו במסוף Google Cloud .
לא מומלץ: כדאי להימנע מנתוני תמונה שבהם הפריטים של האובייקט המרכזי קטנים מדי בפריים.
דוגמה לנתוני תמונה שגלאי האובייקטים לא מצליח לעבד בצורה נכונה:
|
לא מומלץ: אל תשתמשו בנתוני תמונה שבהם הפריטים המרכזיים של האובייקט מכוסים חלקית או באופן מלא על ידי אובייקטים אחרים.
דוגמה לנתוני תמונה שגלאי האובייקטים לא מצליח לעבד בצורה נכונה:
|
מגבלות
- רזולוציית הסרטון: הרזולוציה המקסימלית המומלצת של סרטון קלט היא 1920 x 1080, והרזולוציה המינימלית המומלצת היא 160 x 120.
- תאורה: ביצועי המודל רגישים לתנאי התאורה. בהירות או חושך קיצוניים עלולים להוביל לאיכות זיהוי נמוכה יותר.
- גודל האובייקט: לגלאי האובייקטים יש גודל אובייקט מינימלי שניתן לזיהוי. חשוב לוודא שאובייקטי היעד גדולים מספיק וגלויים בנתוני הסרטון.