בוחר בתאוותנות קבוצת משנה של תיבות תוחמות בסדר יורד של הניקוד,
פעולה זו מבצעת non_max_suppression בכניסות לכל אצווה, בכל המחלקות. גוזם תיבות בעלות איחוד גבוה של צומת-על-איגוד (IOU) חופפות לקופסאות שנבחרו בעבר. תיבות תוחמות מסופקות בתור [y1, x1, y2, x2], כאשר (y1, x1) ו-(y2, x2) הן הקואורדינטות של כל זוג אלכסוני של פינות תיבה וניתן לספק את הקואורדינטות כמנורמלות (כלומר, שוכבות בתוך המרווח [0, 1]) או מוחלט. שימו לב שאלגוריתם זה הוא אגנוסטי למקום שבו נמצא המקור במערכת הקואורדינטות. שים לב גם שאלגוריתם זה אינו משתנה לטרנספורמציות אורתוגונליות ותרגומים של מערכת הקואורדינטות; לפיכך, תרגום או השתקפויות של מערכת הקואורדינטות מביאים לכך שאותן תיבות נבחרות על ידי האלגוריתם. הפלט של פעולה זו הוא התיבות הסופיות, הציונים והטנזור המחלקות שהוחזרו לאחר ביצוע non_max_suppression.
כיתות מקוננות
מעמד | CombinedNonMaxSuppression.Options | תכונות אופציונליות עבור CombinedNonMaxSuppression |
שיטות ציבוריות
סטטי CombinedNonMaxSuppression.Options | clipBoxes (בוליאני clipBoxes) |
סטטי CombinedNonMaxSuppression | |
פלט <צף> | nmsedBoxes () טנסור [batch_size, max_detections, 4] float32 המכיל את התיבות הלא מדוכאות. |
פלט <צף> | nmsedClasses () טנסור [batch_size, max_detections] float32 המכיל את המחלקות עבור התיבות. |
פלט <צף> | nmsedScores () טנזור [batch_size, max_detections] float32 המכיל את הציונים עבור התיבות. |
סטטי CombinedNonMaxSuppression.Options | padPerClass (בוליאני padPerClass) |
פלט <מספר שלם> | validDetections () טנסור [batch_size] int32 המציין את מספר הזיהויים החוקיים לכל פריט אצווה. |
שיטות בירושה
שיטות ציבוריות
public static CombinedNonMaxSuppression.Options clipBoxes (Boolian clipBoxes)
פרמטרים
clipboxes | אם זה נכון, נניח שהקואורדינטות של התיבה הן בין [0, 1] וקטע את תיבות הפלט אם הן נופלות מעבר ל-[0, 1]. אם לא נכון, אל תבצע גזירה ותוציא את קואורדינטות התיבה כפי שהיא. |
---|
public static CombinedNonMaxSuppression create ( היקף היקף , תיבות Operand <Float>, ציוני Operand <Float>, Operand <Integer> maxOutputSizePerClass, Operand <Integer> maxTotalSize, Operand <Float> iouThreshold, Operand <Float> scoreThreshold ... אפשרויות, אפשרות
שיטת מפעל ליצירת מחלקה העוטפת פעולת CombinedNonMaxSuppression חדשה.
פרמטרים
תְחוּם | ההיקף הנוכחי |
---|---|
קופסאות | טנזור צף 4-D בעל צורה `[גודל_אצווה, מספר_תיבות, q, 4]`. אם `q` הוא 1, נעשה שימוש באותן תיבות עבור כל המחלקות, אחרת, אם `q` שווה למספר המחלקות, נעשה שימוש בתיבות ספציפיות לכיתה. |
ציונים | טנזור צף תלת-ממדי של צורה `[גודל_אצווה, מספר_תיבות, מספר_מחלקות]` המייצג ניקוד בודד המתאים לכל תיבה (כל שורה של תיבות). |
maxOutputSizePerClass | טנזור שלם סקלרי המייצג את המספר המרבי של תיבות שייבחרו על ידי דיכוי לא מקסימלי לכל מחלקה |
maxTotalSize | סקלאר int32 המייצג את המספר המרבי של תיבות שנשמרו בכל המחלקות. שים לב שהגדרת ערך זה למספר גדול עלולה לגרום לשגיאת OOM בהתאם לעומס העבודה של המערכת. |
iouThreshold | טנזור צף 0-D המייצג את הסף להחלטה האם תיבות חופפות יותר מדי ביחס ל-IOU. |
ציון סף | טנזור צף 0-D המייצג את הסף להחלטה מתי להסיר תיבות על סמך ניקוד. |
אפשרויות | נושא ערכי תכונות אופציונליות |
החזרות
- מופע חדש של CombinedNonMaxSuppression
פלט ציבורי <Float> nmsedBoxes ()
טנסור [batch_size, max_detections, 4] float32 המכיל את התיבות הלא מדוכאות.
פלט ציבורי <Float> nmsedClasses ()
טנסור [batch_size, max_detections] float32 המכיל את המחלקות עבור התיבות.
פלט ציבורי <Float> nmsedScores ()
טנזור [batch_size, max_detections] float32 המכיל את הציונים עבור התיבות.
public static CombinedNonMaxSuppression.Options padPerClass (בוליאני padPerClass)
פרמטרים
padPerClass | אם false, תיבות, ציונים ומחלקות nmsed הפלט מרופדים/קוצצים ל-`max_total_size`. אם זה נכון, תיבות, ציונים ומחלקות nmsed פלט מרופדים להיות באורך `max_size_per_class`*`num_classes`, אלא אם כן הוא חורג מ-`max_total_size` ובמקרה זה הוא נחתך ל-`max_total_size`. ברירת המחדל ל-false. |
---|
פלט ציבורי <Integer> validDetections ()
טנסור [batch_size] int32 המציין את מספר הזיהויים החוקיים לכל פריט אצווה. רק ערכי num_detections[i] העליונים ב-nms_boxes[i], nms_scores[i] ו-nms_class[i] תקפים. שאר הערכים הם אפס ריפודים.