NonMaxSuppressionV5

כיתת גמר ציבורית NonMaxSuppressionV5

בוחר בתאוותנות קבוצת משנה של תיבות תוחמות בסדר יורד של הניקוד,

גיזום תיבות בעלות חפיפה גבוהה של צומת-על-איחוד (IOU) עם תיבות שנבחרו בעבר. תיבות תוחמות עם ציון נמוך מ'סף_ציון' מוסרות. תיבות תוחמות מסופקות בתור [y1, x1, y2, x2], כאשר (y1, x1) ו-(y2, x2) הן הקואורדינטות של כל זוג אלכסוני של פינות תיבה וניתן לספק את הקואורדינטות כמנורמלות (כלומר, שוכבות בתוך המרווח [0, 1]) או מוחלט. שימו לב שאלגוריתם זה הוא אגנוסטי למקום שבו המקור נמצא במערכת הקואורדינטות, ובאופן כללי יותר אינו משתנה לתמורות אורתוגונליות ותרגומים של מערכת הקואורדינטות; לפיכך, תרגום או השתקפויות של מערכת הקואורדינטות מביאים לכך שאותן תיבות נבחרות על ידי האלגוריתם. הפלט של פעולה זו הוא קבוצה של מספרים שלמים המופיעים באינדקס לאוסף הקלט של תיבות תוחמות המייצגות את התיבות שנבחרו. לאחר מכן ניתן לקבל את הקואורדינטות של התיבה התוחמת המתאימות למדדים שנבחרו באמצעות `פעולת tf.gather`. לדוגמה: selected_indices = tf.image.non_max_suppression_v2( boxes, scores, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather(boxes, selected_indexes) אופציה זו תומכת גם במצב Soft-NMS (עם שקלול גאוסי וכו') (cf , https://arxiv.org/abs/1704.04503) שבהם תיבות מפחיתות את הניקוד של תיבות חופפות אחרות במקום לגרום ישירות לחיתוך שלהן. כדי להפעיל מצב Soft-NMS זה, הגדר את הפרמטר `soft_nms_sigma` להיות גדול מ-0.

כיתות מקוננות

מעמד NonMaxSuppressionV5.Options תכונות אופציונליות עבור NonMaxSuppressionV5

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

סטטי <T מרחיב מספר> NonMaxSuppressionV5 <T>
ליצור ( היקף היקף, תיבות Operand <T>, ציוני Operand <T>, Operand <Integer> maxOutputSize, Operand <T> iouThreshold, Operand <T> scoreThreshold, Operand <T> softNmsSigma, אפשרויות... אפשרויות)
שיטת מפעל ליצירת מחלקה העוטפת פעולת NonMaxSuppressionV5 חדשה.
סטטי NonMaxSuppressionV5.Options
padToMaxOutputSize (בוליאני padToMaxOutputSize)
פלט <מספר שלם>
מדדים נבחרים ()
טנסור שלם 1-ממדי בצורת '[M]' המייצג את המדדים שנבחרו מטנסור התיבות, כאשר 'M <= max_output_size'.
פלט <T>
תוצאות נבחרות ()
טנזור צף 1-D בצורת '[M]' המייצג את הציונים המתאימים לכל תיבה שנבחרה, כאשר 'M <= max_output_size'.
פלט <מספר שלם>
validoutputs ()
טנזור שלם 0-D המייצג את מספר האלמנטים החוקיים ב-'selected_indexes', כאשר האלמנטים החוקיים מופיעים ראשונים.

שיטות בירושה

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

public static NonMaxSuppressionV5 <T> create ( scope scope, Operand <T> boxes, Operand <T> scores, Operand <Integer> maxOutputSize, Operand <T> iouThreshold, Operand <T> scoreThreshold, Operand <T> softNmsSigma, Options.. . אפשרויות)

שיטת מפעל ליצירת מחלקה העוטפת פעולת NonMaxSuppressionV5 חדשה.

פרמטרים
תְחוּם ההיקף הנוכחי
קופסאות טנזור צף דו-ממדי בצורת '[num_boxes, 4]'.
ציונים טנזור צף 1-D בצורת `[num_boxes]` המייצג ניקוד בודד המתאים לכל תיבה (כל שורה של תיבות).
maxOutputSize טנזור שלם סקלרי המייצג את המספר המרבי של תיבות שייבחרו על ידי דיכוי לא מקסימלי.
iouThreshold טנזור צף 0-D המייצג את הסף להחלטה האם תיבות חופפות יותר מדי ביחס ל-IOU.
ציון סף טנזור צף 0-D המייצג את הסף להחלטה מתי להסיר תיבות על סמך ניקוד.
softNmsSigma טנזור צף 0-D המייצג את פרמטר הסיגמא עבור Soft NMS; ראה Bodla et al (cf https://arxiv.org/abs/1704.04503). כאשר `soft_nms_sigma=0.0` (שהוא ברירת המחדל), אנו חוזרים ל-NMS סטנדרטי (קשה).
אפשרויות נושא ערכי תכונות אופציונליות
החזרות
  • מופע חדש של NonMaxSuppressionV5

ציבורי סטטי NonMaxSuppressionV5.Options padToMaxOutputSize (בוליאני padToMaxOutputSize)

פרמטרים
padToMaxOutputSize אם זה נכון, הפלט `selected_indexes` מרופד באורך `max_output_size`. ברירת המחדל ל-false.

פלט ציבורי <Integer> נבחרימדדים ()

טנסור שלם 1-ממדי בצורת '[M]' המייצג את המדדים שנבחרו מטנסור התיבות, כאשר 'M <= max_output_size'.

פלט ציבורי <T> נבחרציונים ()

טנזור צף 1-D בצורת '[M]' המייצג את הציונים המתאימים לכל תיבה שנבחרה, כאשר 'M <= max_output_size'. הציונים שונים רק מציוני הקלט המקבילים בעת שימוש ב-Soft NMS (כלומר כאשר `soft_nms_sigma>0`)

פלט ציבורי <Integer> validOutputs ()

טנזור שלם 0-D המייצג את מספר האלמנטים החוקיים ב-'selected_indexes', כאשר האלמנטים החוקיים מופיעים ראשונים.