Hausdorff Distance (HD)는 두 집합 사이의 거리 개념을 정의하는 수학적 측정법입니다. 이는 주로 두 집합 간에 가장 멀리 떨어진 점들의 거리를 측정하는 데 사용됩니다. 이를 통해 두 집합이 얼마나 비슷한지 또는 얼마나 멀리 떨어져 있는지 평가할 수 있습니다.
➡️ 정의
집합 \({A}\)와 \({B}\)가 있다고 가정합시다. 각각은 유클리드 공간(예: 2D plane, 3D space) 상의 점들로 이루어진 집합입니다. 이 때 Hausdorff Distance는 다음과 같이 정의됩니다.
1. 단방향 Hausdorff Distance
- \({h(A, B)}\) : 집합 \({A}\)의 각 점에서 집합 \({B}\)로의 최소 거리 중 최대값
$ {h(A, B)} = \max_{a \in A} \min_{b \in B} \|a - b\| \tag{1} $
- \({\|a - b\|}\) : 점 \({a}\)와 점 \({b}\) 사이의 유클리드 거리
- \({\min_{b \in B} \|a - b\|}\) : 점 \({a}\)에서 집합 \({B}\)의 가장 가까운 점까지의 거리
- \({\max_{a \in A}}\) : 집합 \({A}\)에서 가장 큰 거리 선택
2. 양방향 Hausdorff Distance
단방향 Hausdorff Distance를 각 집합마다 수행하여 최대값을 갖는 거리를 선택
$ H(A, B) = \max(h(A, B), h(B, A)) \tag{2} $
즉 집합 \({A}\)에서 \({B}\)까지의 거리와 \({B}\)에서 \({A}\)까지의 거리 중 더 큰 값이 양방향 HD값으로 선택됨
➡️ 직관적 이해
Hausdorff Distance는 두 집합 간의 "가장 큰 거리"를 측정합니다. 예를 들어, 두 집합이 거의 겹치더라도 특정 점이 멀리 떨어져 있다면 HD 값은 커집니다. 이는 가장 나쁜 경우에 민감한 Metric으로, Outlier에 민감하다고 볼 수도 있지만 최악의 시나리오를 탐지하는 데에는 적합할 수 있습니다.
➡️ 3D Segmentation으로의 확장
HD는 컴퓨터 비전 분야에서도 특히 3D 의료 영상 segmetation의 3D 구조 (예측된 segment와 정답 segment) 사이의 유사도를 평가하는데 많이 사용됩니다.
구체적인 과정
- 학습된 모델을 통해 예측된 segmentation mask \({P}\)와 정답 segmentation mask \({G}\)는 3차원 공간의 점 집합으로 표현됨
- 1 일반적으로 \({P}\)와 \({G}\)는 Binary mask 형식의 0과 1로 표현된 segmentation mask로 표현함
- \({P}\)와 \({G}\)의 표면 점들을 추출하고, 각 점에서 상대 집합까지의 유클리드 거리 계산
- 2번 과정을 \({P}\)와 \({G}\)를 기준으로 각각 수행하여 양방향으로 최대 거리를 선택
결과 해석과 한계점
- HD 값이 작을수록 \({P}\)가 \({G}\)와 유사함을 나타냄
- 큰 HD 값은 특정 영역 (점 위치)에서 큰 불일치가 있음을 의미
- HD는 최악의 시나리오에 초점을 맞추므로, 한두 개의 이상치(Outlier)에 매우 민감
- 따라서, 보다 안정적인 평가를 위해 Average Hausdorff Distance (AHD) 또는 95 percentile의 거리 최대값을 사용하는 HD95와 같은 변형된 Metric을 사용하기도 함