CombinedNonMaxSuppression

คลาสสุดท้ายสาธารณะ CombinedNonMaxSuppression

เลือกชุดย่อยของกรอบขอบเขตอย่างตะกละตะกลามโดยเรียงลำดับคะแนนจากมากไปหาน้อย

การดำเนินการนี้ดำเนินการ non_max_suppression บนอินพุตต่อแบตช์ ในทุกคลาส ตัดกล่องที่มีจุดตัดเกินสหภาพ (IOU) สูงซ้อนทับกับกล่องที่เลือกไว้ก่อนหน้านี้ กล่องกำหนดขอบเขตจะถูกกำหนดเป็น [y1, x1, y2, x2] โดยที่ (y1, x1) และ (y2, x2) เป็นพิกัดของมุมกล่องคู่ในแนวทแยงใดๆ และพิกัดสามารถให้มาได้ตามปกติ (เช่น อยู่ใน ช่วง [0, 1]) หรือสัมบูรณ์ โปรดทราบว่าอัลกอริทึมนี้ไม่เชื่อเรื่องต้นกำเนิดที่อยู่ในระบบพิกัด โปรดทราบด้วยว่าอัลกอริทึมนี้ไม่แปรผันกับการแปลงมุมฉากและการแปลของระบบพิกัด ดังนั้นการแปลหรือการสะท้อนของระบบพิกัดส่งผลให้อัลกอริธึมเลือกกล่องเดียวกัน ผลลัพธ์ของการดำเนินการนี้คือกล่องสุดท้าย คะแนน และคลาสเทนเซอร์ที่ส่งคืนหลังจากดำเนินการ non_max_suppression

คลาสที่ซ้อนกัน

ระดับ CombinedNonMaxSuppression.Options แอ็ตทริบิวต์ทางเลือกสำหรับ CombinedNonMaxSuppression

วิธีการสาธารณะ

CombinedNonMaxSuppression.Options แบบคงที่
clipBoxes (คลิปบูลีน)
CombinedNonMaxSuppression แบบคงที่
สร้าง (ขอบเขต ขอบเขต กล่อง ตัวดำเนินการ <Float> ตัว ดำเนินการ <Float> คะแนน ตัวดำเนิน การ <Integer> maxOutputSizePerClass ตัวดำเนินการ <Integer> maxTotalSize ตัวดำเนิน การ <Float> iouThreshold ตัวดำเนินการ <Float> ScoreThreshold ตัวเลือก... ตัวเลือก)
วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ CombinedNonMaxSuppression ใหม่
เอาท์พุต <โฟลต>
nmsedBoxes ()
เทนเซอร์ [batch_size, max_detections, 4] float32 ที่มีกล่องที่ไม่ระงับสูงสุด
เอาท์พุต <โฟลต>
nmsedClasses ()
เทนเซอร์ [batch_size, max_detections] float32 ที่มีคลาสสำหรับกล่อง
เอาท์พุต <โฟลต>
คะแนน nmsed ()
เทนเซอร์ [batch_size, max_detections] float32 ที่มีคะแนนสำหรับกล่อง
CombinedNonMaxSuppression.Options แบบคงที่
padPerClass (บูลีน padPerClass)
เอาต์พุต <จำนวนเต็ม>
การตรวจจับที่ถูกต้อง ()
เทนเซอร์ [batch_size] int32 ระบุจำนวนการตรวจจับที่ถูกต้องต่อรายการแบตช์

วิธีการสืบทอด

วิธีการสาธารณะ

สาธารณะคง CombinedNonMaxSuppression.Options clipBoxes (boolean clipBoxes)

พารามิเตอร์
คลิปบ็อกซ์ หากเป็นจริง สมมติว่าพิกัดของกล่องอยู่ระหว่าง [0, 1] และตัดกล่องเอาต์พุตหากเกิน [0, 1] ถ้าเป็นเท็จ อย่าทำการตัดและส่งออกพิกัดของกล่องตามที่เป็นอยู่

การสร้าง CombinedNonMaxSuppression แบบคงที่สาธารณะ (ขอบเขต ขอบเขต , กล่อง ตัวดำเนิน การ <Float>, ตัวดำเนินการ <Float> คะแนน, ตัวดำเนินการ <Integer> maxOutputSizePerClass, ตัวดำเนินการ <Integer> maxTotalSize, ตัวดำเนินการ <Float> iouThreshold, ตัวดำเนินการ <Float> ScoreThreshold, ตัวเลือก... ตัวเลือก)

วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ CombinedNonMaxSuppression ใหม่

พารามิเตอร์
ขอบเขต ขอบเขตปัจจุบัน
กล่อง เทนเซอร์โฟลต 4 มิติของรูปร่าง `[batch_size, num_boxes, q, 4]` หาก `q` เป็น 1 กล่องเดียวกันจะถูกใช้สำหรับคลาสทั้งหมด มิฉะนั้น หาก `q` เท่ากับจำนวนคลาส จะใช้กล่องเฉพาะคลาส
คะแนน เทนเซอร์โฟลตสามมิติของรูปร่าง `[batch_size, num_boxes, num_classes]` ซึ่งแสดงถึงคะแนนเดียวที่สอดคล้องกับแต่ละกล่อง (แต่ละแถวของกล่อง)
maxOutputSizePerClass เทนเซอร์จำนวนเต็มสเกลาร์ซึ่งแสดงถึงจำนวนกล่องสูงสุดที่จะเลือกโดยการปราบปรามที่ไม่สูงสุดต่อคลาส
ขนาดรวมสูงสุด สเกลาร์ 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 ที่มีคะแนนสำหรับกล่อง

สาธารณะคง CombinedNonMaxSuppression.Options padPerClass (บูลีน padPerClass)

พารามิเตอร์
แพดPerClass หากเป็นเท็จ กล่องเอาต์พุต คะแนน และคลาสจะถูกเสริม/ตัดเป็น `max_total_size` หากเป็นจริง กล่องเอาต์พุต คะแนน และคลาสจะถูกเสริมให้มีความยาว `max_size_per_class`*`num_classes` เว้นแต่จะเกิน `max_total_size` ซึ่งในกรณีนี้จะถูกตัดเป็น `max_total_size` ค่าเริ่มต้นเป็นเท็จ

เอาท์พุท สาธารณะ <จำนวนเต็ม> validDetections ()

เทนเซอร์ [batch_size] int32 ระบุจำนวนการตรวจจับที่ถูกต้องต่อรายการแบตช์ เฉพาะรายการ num_detections[i] อันดับต้นๆ ใน nms_boxes[i], nms_scores[i] และ nms_class[i] เท่านั้นที่ถูกต้อง รายการที่เหลือไม่มีช่องว่างภายใน