본문 바로가기
컴퓨터비전

NMS(Non Max Supression)의 이해

by 차분한 공돌이 2024. 2. 17.

개요

Object Detection 알고리즘은 Region Proposal 단계에서 "object이 있는 정확한 위치"가 아닌 "object가 있을만한 위치"를 찾기 때문에 한 object에 대해서 여러 개의 바운딩 박스가 생성되는 경우가 많다.

한 개의 자동차에 대해 3개의 bbox가 생성되었다.

따라서 1개의 object에 대해서 해당 object의 경계를 정확하게 표시하는 1개의 바운딩 박스만을 남기는 작업이 필요한데, 이를 수행하는 것이 NMS(None Max Supression)이다.

 

NMS수행 로직

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 )

3. 남아 있는 box만 선택

 

=> Confidence score가 높을 수록, IOU Threshold가 낮을 수록 많은 Box가 제거됨.

 

 

 

Reference