NMS와 IoU
단순히 바운딩 박스 회귀만으로는 여러 경계 상자가 동일한 객체에 대해 중복되어 생성될 수 있습니다. 이러한 중복된 검출을 처리하기 위해서는 추가적인 단계가 필요하며, 이때 사용되는 것이 바로 NMS(Non-Maximum Suppression)입니다. NMS의 작동 방식은 다음과 같습니다.
1. 모든 바운딩 박스를 객체 점수(신뢰도)에 따라 내림차순으로 정렬합니다.
2. 사용자가 설정한 임계치 이상의 점수를 가진 바운딩 박스를 선택합니다.
3. 선택된 경계 상자와 중복되는 다른 모든 경계 상자를 제거합니다.
이때 중복되는 정도를 나타내는 점수는 IoU(Intersection over Union) 값을 기준으로 하며 보통 IoU 값이 0.5가 넘어가는 경우 겹치는 박스로 설정합니다. IoU를 계산하는 수식은 다음과 같습니다.
▲ 그림 5-10 IoU 결과 예시