This one took me a minute to even scope properly.
Start by precisely defining the inputs (list of detections per system) and outputs (merged list of deduplicated detections). Then outline a pipeline: group overlapping boxes across systems, merge each group into a single detection by reconciling labels and confidences, and handle partial overlaps via IoU thresholds. Finally, discuss algorithmic choices (e.g., union-find, clustering) and complexity trade-offs.
Pro tip: Mention that you would make the IoU threshold and confidence fusion method configurable and validate them on a small labeled set, because the optimal values depend on the specific systems and object types. This shows you think about real-world tuning and evaluation, not just theory.
Input: a list of detections from each system, each detection is (system_id, bbox (x1,y1,x2,y2), class_label, confidence). Output: a list of merged detections, each with a single bbox, class_label, confidence, and optionally the set of contributing system_ids.
Use spatial overlap (e.g., IoU > threshold) to cluster detections that likely refer to the same object. Consider using union-find or graph-based clustering to handle transitive overlaps. Discuss how to handle partial overlaps (e.g., one box mostly inside another) by using containment or intersection-over-min-area.
For each group, compute a merged bounding box (e.g., weighted average by confidence, or the box with highest confidence). Reconcile class labels: if all agree, use that label; if disagree, use majority vote, highest confidence, or a weighted vote. Fuse confidences: average, max, or a probabilistic combination (e.g., noisy-OR).
Decide on a policy for boxes that partially overlap but may be different objects (e.g., two people close together). Use a higher IoU threshold or additional cues (e.g., class consistency) to avoid merging distinct objects. Also consider boxes that are completely contained within another.
Naive pairwise comparison is O(N^2) where N is total detections. With union-find and spatial indexing (e.g., grid or R-tree), can reduce to near O(N log N). Discuss trade-offs: accuracy vs. speed, simplicity vs. robustness, and how to tune thresholds.
AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.