[DLCV] NMS (non-max suppression)

Deep Learning, Computer Vision

Posted by dongjune on October 14, 2020

1. 개념

1

  • Object Detection 알고리즘은 Object 가 있을만한 위치에 많은 detection을 수행하게 된다.
  • NMS는 Detected 된 Object의 Bounding box 중 비슷한 위치에 있는 box를 제거하고 가장 적합한 box를 선택하는 기법이다.

2. NMS 수행 로직

2

  1. Detected 된 bounding box 별로 특정 Confidence threshold 이하의 bounding box는 제거한다. (Confidence score < 0.5)
  2. 가장 높은 confidence score를 가진 box 순으로 내림차순 정렬하고 아래로직을 모든 box에 순차적으로 적용.
    • 높은 confidence score를 가진 box와 겹치는 다른 box를 모두 조사하여 IOU가 특정 threshold 이상인 box를 모두 제거 ( 예 : IOU Threshold > 0.4 ) . 즉 겹치는 box를 제거해주는 과정이다.
  3. 남아 있는 box만 선택

Confidence score가 높을 수록,
IOU Threshold가 낮을 수록 , 많은 box가 제거 된다.