非極大值抑制 是什麼?
Non-Maximum Suppression — 非極大值抑制 的完整解釋
非極大值抑制 (NMS) 是一種在物件偵測中用於消除重複框的技術,它會保留置信度最高的框,並抑制與之高度重疊的其他框。
容易混淆
NMS vs IoU NMS:後處理流程,用來刪重複框 IoU:衡量兩個框重疊多少的指標 最關鍵的區別:先看它是在比什麼,再看它怎麼做。
NMS vs Soft-NMS NMS:超過閾值就直接壓掉 Soft-NMS:不是刪除,而是慢慢降分數 最關鍵的區別:先看它是在比什麼,再看它怎麼做。
記住這句就好
重疊太多的框,只留最好的。
實際案例
車輛偵測 模型同時框到同一台車的前半和後半,NMS 會保留最可信的框。
人臉偵測 多人臉場景裡,重疊框很多,NMS 讓畫面不會亂掉。
算法與應用
NMS 通常先依分數排序,再逐一比較 IoU,將高度重疊的框刪掉。 閾值設太高,可能留下太多重複框;設太低,又可能誤刪正確框。 它是物件偵測裡最典型的後處理步驟之一。
情境判斷
Q1(直覺題):模型對同一隻狗畫了四個框,你想保留最好的那個,該用什麼? → 非極大值抑制。
Q2(判斷題):如果框與框幾乎不重疊,NMS 還會刪很多嗎? → 不會,因為它主要針對重疊很高的候選框。
相關術語
常見問題
NMS 會不會把真實框刪掉?
有可能,所以閾值要調得剛好。
它只用在物件偵測嗎?
主要是,但只要有重疊候選要篩選的任務,都可能借用這個概念。
Soft-NMS 比較好嗎?
常常更平滑,但速度和實作會稍微複雜。