豪斯多夫(Hausdorff)距離

一、定義

給定歐氏空間中的兩點集 A={a1,a2,...},B={b1,b2,...}A= \{a_1,a_2,...\},B= \{b_1,b_2,...\} ,豪斯多夫(Hausdorff)距離就是用來衡量這兩個點集間的距離。定義公式如下:
H(A,B)=max[h(A,B),h(B,A)] H(A,B)=\max[h(A,B),h(B,A)] 其中,
h(A,B)=maxaAminbBabh(B,A)=maxbBminaAba h(A,B)=\max_{a\in A}\min_{b\in B} ||a-b||\\ h(B,A)=\max_{b\in B}\min_{a\in A} ||b-a||
H(A,B)H(A,B) 稱爲雙向 Hausdorff 距離, h(A,B)h(A,B) 稱爲從點集A到點集B的單向 Hausdorff 距離。相應地 h(B,A)h(B,A) 稱爲從點集B到點集A的單向 Hausdorff 距離。

二、例子

下面從一個例子來理解 Hausdorff 距離:
在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述
上圖中,給出了 A,B,C,D 四條路徑,其中路徑 A 具體爲(16-17-18-19-20),路徑 B 具體爲(1-2-3-4-9-10)。要求 Hausdorff 距離 H(A,B)H(A,B),則需要先求出單向 Hausdorff 距離 h(A,B)h(A,B)h(B,A)h(B,A)

對於h(A,B)h(A,B),以 A 中的點 16 爲例,在路徑 B中的所有點中,距離點 16 最近的是點 1 ,距離爲 3。即: minbBa(16)b=3\min_{b\in B} ||a_{(16)}-b||=3

同理由圖可得:
minbBa(17)b=3minbBa(18)b=3minbBa(19)b=2minbBa(20)b=2 \min_{b\in B} ||a_{(17)}-b||=3\\ \min_{b\in B} ||a_{(18)}-b||=3\\ \min_{b\in B} ||a_{(19)}-b||=2\\ \min_{b\in B} ||a_{(20)}-b||=2\\
在它們中,值最大的爲 3,故 h(A,B)=3h(A,B)=3

同理可得,h(B,A)=4h(B,A)=4

所以 H(A,B)=max[h(A,B),h(B,A)]=4H(A,B)=max[h(A,B),h(B,A)]=4

同理可求出上圖中四條路徑間的單向 Hausdorff 距離如下表所示:在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述

三、性質

  • 雙向 Hausdorff 距離 H(A,B)H(A,B) 是單向 Hausdorff 距離 h(A,B)h(A,B)h(B,A)h(B,A) 兩者中較大者,顯然它度量了兩個點集間的最大不匹配程度。

在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述

  • 如上圖,當 A 和 B 都是閉集的時候,Hausdorff 距離滿足度量的三個定理:
  1. H(A,B)0H(A,B)\geq0 ,當且僅當 A=BA=B 時,H(A,B)=0H(A,B)=0
  2. H(A,B)=H(B,A)H(A,B)=H(B,A)
  3. H(A,B)+H(B,C)H(A,C)H(A,B) + H(B,C)\geq H(A,C)
  • 若凸集 A,BA,B 滿足 A⊄BA\not\subset BB⊄AB\not\subset A,並記 AB\partial A,\partial B 分別爲 A,BA,B 邊界的點集合,則 A,BA,B 的 Hausdorff 距離等於 AB\partial A,\partial B 的 Hausdorff 距離。

  • Hausdorff 距離易受到突發噪聲的影響。
    在這裏插入圖片描述

當圖像受到噪聲污染或存在遮擋等情況時,原始的 Haudorff 距離容易造成誤匹配。所以,在1933年,Huttenlocher 提出了部分 Hausdorff 距離的概念。
簡單地說,包含 qq 個點的集合 BB 與集合 AA 的部分 Hausdorff 距離就是選取 BB 中的 K(K1K1)K(K\geq1且K\leq1) 個點,然後求這 KK 個點到 AA 集合的最小距離,並排序,則排序後的第 KK 個值就是集合 BB 到集合 AA 的部分單向 Hausdorff 距離。定義公式如下:
hK(A,B)=KthmaxaAminbBab h_K(A,B)=K^{th} \max_{a\in A}\min_{b\in B}||a-b||
相應地,部分雙向 Hausdorff 距離定義爲:
HK(A,B)=max[hK(A,B),hK(B,A)] H_K(A,B)=\max[h_K(A,B),h_K(B,A)]

參考:

https://www.cnblogs.com/xlz10/p/3929119.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章