IOU(Intersection Over Union)
IOU는 두 사각형이 위치상으로 어느 정도 유사한지 알 수 있는 측정 척도 중 하나입니다.
그림으로 살펴보면 아래와 같습니다.
IOU = 사각형이 겹치는 부분의 넓이(주황색 사각형) / 사각형을 합친 부분의 넓이(녹색 사각형)
IOU는 0부터 1까지의 값을 가집니다.
두 사각형이 완전히 일치하면 겹치는 사각형과 합친 사각형이 같아지므로 IOU는 1이 됩니다.
반면에 두 사각형이 겹치는 부분이 없으면 겹치는 사각형 넓이가 0이므로 IOU는 0이 됩니다.
두 사각형이 1에 가까울수록 많이 겹치고 위치상으로 더 관련이 있을 것으로 해석할 수 있습니다.
활용예시
- Object Detector에 대한 성능 평가
일반적으로 두 사각형 중 하나는 GT(Ground Truth), 나머지 하나는 측정한 값으로 IOU를 구하여 성능을 평가합니다.
특히 Object detector에 대한 성능 평가에서 AP50, AP75등으로 평가한 방법이 있는데
이는 IOU가 0.5이상인 경우와 IOU가 0.75이상 일치한 경우를 평가한 것입니다.
- NMS(Non Maximum Suppression)
일부 Object detector는 여러 개의 검출 영역(bounding box)들을 생성합니다. 그 중에 클래스가 같으면서 겹치는 검출 영역 중에 가장 정확도(confidence)가 높은 영역만 남기고 나머지는 제거하는 방법입니다. 어느 정도 겹치는 영역들에 대해 제거 작업을 할지 선택하는 척도에 IOU를 사용하기도 합니다.
- Object Tracker
Object detection과 Object tracking은 뗄레야 뗄 수 없는 관계인 것 같습니다. 최근에는 트래킹 정확도를 위해 검출 영역들의 특징을 추출하여 매칭하는 방법을 추가한 트래킹을 활용하지만, Legacy한 방법으로 매우 직관적이면서 빠른 방법으로 IOU를 사용한 SORT[1]라는 트래커가 있습니다.
[1] A. Bewley, G. Zongyuan, F. Ramos, and B. Upcroft, “Simple online and realtime tracking,” in ICIP, 2016, pp. 3464–3468.