מודל זיהוי ציוד מגן אישי (PPE) עוזר לכם לוודא שקיים ציוד שמגביל את החשיפה לסכנות בסביבת עבודה או בסביבה קהילתית.
המודל מזהה אנשים ופריטי ציוד מגן אישי (כפפות, מסכות וקסדות) על אדם ספציפי. המודל מזהה את פריטי הציוד האישי, ואם הם מכסים את החלקים המתאימים בגוף האדם. המודל מדווח על נתוני הכיסוי האלה כציון כיסוי בטווח [0, 1]. המודל מקבל סטרימינג של וידאו כקלט. המודל מייצר תוצאות זיהוי כמאגר אחסון לפרוטוקולים שאפשר לראות ב-BigQuery. המודל פועל ב-FPS אחד.
לאופרטור לזיהוי ציוד מגן אישי יש שלושה פרמטרים שאפשר להגדיר:
- Head coverings: The
operator outputs head coverage-related PPE item information. מגדירים את הערך הזה במסוף Google Cloud , או מגדירים את
enableHeadCoverageDetectionכ-true ב-PersonalProtectiveEquipmentDetectionConfig. - כיסויי פנים: המפעיל מוציא פלט של מידע על אמצעי מיגון אישי שקשורים לכיסוי הפנים. מגדירים את הערך הזה במסוף Google Cloud , או מגדירים את
enableFaceCoverageDetectionכ-true ב-PersonalProtectiveEquipmentDetectionConfig. - כיסוי לידיים: המפעיל מוציא מידע על אמצעי מיגון אישי שקשורים לכיסוי הידיים. צריך להגדיר את הערך הזה במסוף Google Cloud , או להגדיר את הערך
enableHandsCoverageDetectiontrue ב-PersonalProtectiveEquipmentDetectionConfig.
מפרטים של אפליקציות עם מודל לזיהוי ציוד מגן אישי
כדי ליצור מודל לזיהוי ציוד מגן אישי במסוףGoogle Cloud , פועלים לפי ההוראות הבאות.
המסוף
יצירת אפליקציה במסוף Google Cloud
כדי ליצור אפליקציה לזיהוי ציוד מגן אישי, פועלים לפי ההוראות במאמר יצירת אפליקציה.
הוספה של מודל לזיהוי ציוד מגן אישי
כשמוסיפים צמתי מודל, בוחרים באפשרות PPE detector (גלאי ציוד מגן אישי) מתוך רשימת המודלים שאומנו מראש.
בתפריט האפשרויות, מגדירים את סוגי הציוד להגנה אישית שרוצים לזהות.
הוספת מחבר BigQuery
כדי להשתמש בפלט, צריך לחבר את האפליקציה למחבר BigQuery.
מידע על השימוש במחבר BigQuery זמין במאמר חיבור נתונים ואחסון שלהם ב-BigQuery. מידע על התמחור ב-BigQuery זמין בדף תמחור ב-BigQuery.
הצגת תוצאות הפלט ב-BigQuery
אחרי שהמודל מייצא נתונים ל-BigQuery, אפשר לראות את ההערות של הפלט בלוח הבקרה של BigQuery.
אם לא ציינתם נתיב BigQuery, תוכלו לראות את הנתיב שנוצר על ידי המערכת בדף Studio ב-Vertex AI Vision.
נכנסים לדף BigQuery במסוף Google Cloud .
לוחצים על הרחבה לצד פרויקט היעד, שם מערך הנתונים ושם האפליקציה.
בתצוגת הפרטים של הטבלה, לוחצים על תצוגה מקדימה. התוצאות מוצגות בעמודה הערה. תיאור של פורמט הפלט מופיע במאמר בנושא פלט המודל.
התוצאות באפליקציה מוצגות בסדר כרונולוגי. התוצאות הכי ישנות מופיעות בתחילת הטבלה, והתוצאות הכי חדשות מתווספות לסוף הטבלה. כדי לבדוק את התוצאות האחרונות, לוחצים על מספר הדף כדי לעבור לדף האחרון של הטבלה.
פלט המודל
פלט המודל כולל חותמת זמן, תיבות זיהוי, תוויות אובייקטים שתואמות לתיבות וציוני מהימנות מהאובייקט הזה. קצב הפריימים של פלט הסטרימינג הוא פרים אחד לשנייה.
הפלט של המודל הוא בפורמט מאגר אחסון לפרוטוקולים וכולל מידע על פריים של סרטון ועל תוצאת החיזוי של זיהוי ציוד מגן אישי. מטרת המודל היא לבדוק אם אנשים לובשים ציוד מגן בצורה נכונה. כתוצאה מכך, המודל מתמקד בזיהוי אנשים ובציוד המגן האישי שהם לובשים. הפלט של המודל מתמקד בזיהוי בני אדם. לכל אדם שהמודל מזהה, הוא מפרט את ציוד המגן האישי שסביבו ואת ציון הכיסוי של כל פריט ציוד.
בדוגמה של מאגר אחסון לפרוטוקולים שבהמשך, שימו לב לפרטים הבאים.
- השעה הנוכחית – חותמת הזמן מציינת את השעה שבה נוצרת תוצאת ההיקש.
- אנשים שזוהו – תוצאת הזיהוי העיקרית שכוללת תיבה אחת של אדם שזוהה, כמה תיבות של ציוד מיגון אישי שזוהה וציון כיסוי לכל חלק בגוף.
- תיבת האדם שזוהה – תיבת התוחמת, ציון רמת הביטחון והישות של האדם.
- תיבה לזיהוי ציוד מגן אישי (PPE) – התיבה התוחמת, ציון הוודאות והיישות של ציוד המגן האישי.
דוגמה לאובייקט JSON של פלט הערות
{
"currentTime": "2022-11-10T21:02:13.499255040Z",
"detectedPersons": [
{
"personId": "0",
"detectedPersonIdentifiedBox": {
"boxId": "0",
"normalizedBoundingBox": {
"xmin": 0.486749,
"ymin": 0.35927793,
"width": 0.048630536,
"height": 0.21746585
},
"confidenceScore": 0.31775203,
"personEntity":{
"personEntityId":"0"
}
},
"detected_ppe_identified_boxes": {
"normalized_bounding_box": {
"xmin": 0.07268746,
"ymin": 0.80575824,
"width": 0.22973709,
"height": 0.18754286
},
"confidence_score": 0.45171335,
"ppe_entity": {
"ppe_label_string": "Glove",
"ppe_supercategory_label_string": "Hand Coverage"
}
},
"detected_ppe_identified_boxes":{
"normalized_bounding_box":{
"xmin": 0.35457548,
"ymin": 0.016402662,
"width": 0.31828704,
"height": 0.18849815
},
"confidence_score": 0.44129524,
"ppe_entity":{
"ppe_label_string": "Helmet",
"ppe_supercategory_label_string": "Head Coverage"
}
}
}
]
}הגדרה של מאגר אחסון לפרוטוקולים
// Output format for Personal Protective Equipment Detection Operator
message PersonalProtectiveEquipmentDetectionOutput {
// Current timestamp
protobuf.Timestamp current_time = 1;
// The entity info for annotations from person detection prediction result
message PersonEntity {
// Entity id
int64 person_entity_id = 1;
}
// The entity info for annotations from PPE detection prediction result
message PPEEntity {
// Label id
int64 ppe_label_id = 1;
// Human readable string of the label (Examples: helmet, glove, mask)
string ppe_label_string = 2;
// Human readable string of the super category label (Examples: head_cover,
// hands_cover, face_cover)
string ppe_supercategory_label_string = 3;
// Entity id
int64 ppe_entity_id = 4;
}
// Bounding Box in the normalized coordinates
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;
}
// PersonIdentified box contains the location and the entity info of the
// person
message PersonIdentifiedBox {
// An unique id for this box
int64 box_id = 1;
// Bounding Box in the normalized coordinates
NormalizedBoundingBox normalized_bounding_box = 2;
// Confidence score associated with this box
float confidence_score = 3;
// Person entity info
PersonEntity person_entity = 4;
}
// PPEIdentified box contains the location and the entity info of the PPE
message PPEIdentifiedBox {
// An unique id for this box
int64 box_id = 1;
// Bounding Box in the normalized coordinates
NormalizedBoundingBox normalized_bounding_box = 2;
// Confidence score associated with this box
float confidence_score = 3;
// PPE entity info
PPEEntity ppe_entity = 4;
}
// Detected Person contains the detected person and their associated
// PPE and their protecting information
message DetectedPerson {
// The id of detected person
int64 person_id = 1;
// The info of detected person identified box
PersonIdentifiedBox detected_person_identified_box = 2;
// The info of detected person associated ppe identified boxes
repeated PPEIdentifiedBox detected_ppe_identified_boxes = 3;
// Coverage score for each body part
// Coverage score for face
optional float face_coverage_score = 4;
// Coverage score for eyes
optional float eyes_coverage_score = 5;
// Coverage score for head
optional float head_coverage_score = 6;
// Coverage score for hands
optional float hands_coverage_score = 7;
// Coverage score for body
optional float body_coverage_score = 8;
// Coverage score for feet
optional float feet_coverage_score = 9;
}
// A list of DetectedPersons
repeated DetectedPerson detected_persons = 2;
}
שיטות מומלצות ומגבלות
כדי לקבל את התוצאות הטובות ביותר כשמשתמשים בכלי לזיהוי ציוד מגן אישי, כדאי להביא בחשבון את הנקודות הבאות כשמקור הנתונים הוא המודל.
המלצות לגבי נתוני המקור
מומלץ: כשמזהים אנשים, כדאי שהם יעמדו ללא תזוזה ויפנו אל המצלמה.
נתוני תמונה לדוגמה שהמערכת לזיהוי ציוד מגן אישי יכולה לעבד בצורה נכונה:
|
|
|
לא מומלץ: לא להשתמש בנתוני תמונה שבהם פריטי הציוד האישי המרכזיים קטנים מדי במסגרת.
דוגמאות לנתוני תמונה שגלאי ציוד המגן האישי לא מצליח לעבד בצורה תקינה:
|
לא מומלץ: אל תשתמשו בנתוני תמונה שבהם מוצגים פריטי הציוד האישי המרכזיים מנקודת מבט לא שגרתית או מזוויות לא סדירות.
דוגמאות לנתוני תמונה שגלאי ציוד המגן האישי לא מצליח לעבד בצורה תקינה:
|
מגבלות
- רזולוציה: הרזולוציה המקסימלית המומלצת של סרטון קלט היא 1920 x 1080, והרזולוציה המינימלית המומלצת היא 160 x 120.
- גודל האובייקט המינימלי שניתן לזיהוי: המודל מתעלם מכל אובייקט בסצנה שתופס פחות מ-5% מגודל הפריים.
- תאורה: התאורה בסרטון צריכה להיות רגילה. בהירות או חושך קיצוניים בנתוני הווידאו עלולים לגרום לירידה בביצועים של הגלאי.
- מיקום של פריטי ציוד מגן אישי: המודל של ציוד מגן אישי מתמקד בניתוח של השימוש הנכון בפריטי ציוד מגן אישי. כתוצאה מכך, אם מישהו לא לובש פריט ציוד מגן אישי, המודל מתעלם מהפריט.
- סוג פריט PPE: המודל מתמקד בציוד מגן לבנייה ולא בפריטי PPE רפואיים. לכן, יכול להיות שהגלאי לא יפעל טוב במרכזים רפואיים או בבתי חולים.
- סוגי ציוד מגן אישי בהתאמה אישית: מודל ציוד המגן האישי לא תומך בפריטי ציוד מגן אישי שהוגדרו על ידי הלקוח. המודל תומך בזיהוי של קסדות, מסכות וכפפות.
הרשימה הזו היא חלקית בלבד, והמגבלות והפונקציונליות האלה כפופות לשינויים עתידיים במוצר.