물체 검출의 평가 지표 IoU의 계산 방법
3875 단어 알고리즘수학물체 감지MachineLearning기계 학습
소개
Yolo나 SSD 등 물체 검출에서 평가 지표로 사용되는 IoU에 대해 조사했으므로 정리했습니다.
목차
IoU 계산 방법
주석
IoU란?
IoU (Intersection over Union)는 두 영역이 얼마나 겹치는지를 나타내는 지표입니다.
두 영역의 공통 부분을 합집합으로 나눈 것입니다.
물체 검출에서는, 「무엇이」 「어디에」 우울하고 있는지를 검출하게 됩니다.
「어디에」에 대해서는, 이미지내의 물체의 좌표(Bounding Box)로 나타낼 수가 있습니다.
「검출 결과의 좌표」의 정밀도를 측정할 때, 「정답의 좌표」와의 중첩 상태를 평가 지표로 하고 싶을 때에 IoU가 사용됩니다.
IoU 계산 방법
이하, $IoU$를 계산합니다.
여기서는 Yolo에서 사용되는 좌표 표시 $(x, y, w, h)$를 사용한다고 가정합니다 ( 주1 ).
이하, $IoU$를 계산합니다.
여기서는 Yolo에서 사용되는 좌표 표시 $(x, y, w, h)$를 사용한다고 가정합니다 ( 주1 ).
두 영역
A(x_A, y_A, w_A, h_A)\\
B(x_B, y_B, w_B, h_B)
가 주어지면
dx = \min(x_{A, max}, x_{B, max}) - \max(x_{A, min}, x_{B, min})\\
dy = \min(y_{A, max}, y_{B, max}) - \max(y_{A, min}, y_{B, min})\\
그렇다면 (주2), 겹치는 조건은
$dx > 0$ 그리고 $dy > 0$
또는
$x_{A, min} < x_{B, min} < x_{A, max}$ 및 $y_{A, min} < y_{B, min} < y_{A, max}$
또한
\begin{align}
A\cup B &= A+B-A\cap B\\
&= w_Ah_A + w_Bh_B-dxdy
\end{align}
그래서
\begin{align}
IoU &= \frac{A\cap B}{A\cup B}\\
&=\frac{dxdy}{w_Ah_A + w_Bh_B-dxdy}
\end{align}
됩니다.
주석
주1
실제로 Yolo는 위의 좌표 값을 전체 이미지의 크기로 나눈 것입니다 (표준화). 즉, 전체 이미지의 너비를 $ W $, 높이를 $ H $로 설정하면 위의 내용은 각각
x\rightarrow\frac{x}{W},\\
y\rightarrow\frac{y}{H},\\
w\rightarrow\frac{w}{W},\\
h\rightarrow\frac{h}{H}
됩니다.
여기에서는 간단하기 위해 규격화하지 않고 계산하고 있습니다.
자세한 내용은 Yolov5 공식 페이지 설명을 참조하십시오.
주2
$x_{A, max}(x_{A, min})$는 $A$의 $x$ 좌표의 최대값(최소값)을 나타냅니다. 예를 들어, 위 그림에서,
\begin{align}
x_{A, max} &= x_A +\frac{w_A}{2}\\
x_{A, min} &= x_A -\frac{w_A}{2}\\
y_{A, max} &= y_A +\frac{h_A}{2}\\
y_{A, min} &= y_A -\frac{h_A}{2}\\
\end{align}
$B$에 대해서도 마찬가지입니다.
또한, 도형이 겹치는 조건을 구할 때에는,
최대값의 최소값과 최소값의 최대값의 차이
같은 생각을 사용하고 있습니다.
참고문헌
Reference
이 문제에 관하여(물체 검출의 평가 지표 IoU의 계산 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/shoku-pan/items/35eae224c59989957623텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)