我們可能會遇到的距離量算方法

kikita發表於2020-04-05

在看空間統計相關的文件資料的時候,看到了幾個有關距離丈量方法的術語詞彙,諸如:歐式距離、曼哈頓距離、切比雪夫距離…… 老外習慣於使用名字來命名演算法,可是對於門外漢們,是一種困惑,今天就整理下,一起溫故知新。



1. 歐式距離(Euclidean Distance)


歐式距離是我們在直角座標系中最常用的距離量算方法,例如小時候學的“兩點之間的最短距離是連線兩點的直線距離。”這就是典型的歐式距離量算方法。

通常這這個距離的獲取是基於我們熟悉的“勾股定理”,解算三角形斜邊得到的。


    


看看維基百科:http://en.wikipedia.org/wiki/Euclidean_distance




2. 曼哈頓距離(Manhattan Distance


曼哈頓距離是與歐式距離不同的一種丈量方法,兩點之間的距離不再是直線距離,而是投影到座標軸的長度之和。

        


還是看圖吧,圖比文字更顯見。

        

圖中綠色的線為歐式距離的丈量長度,紅色的線即為曼哈頓距離長度,藍色和黃色的線是這兩點間曼哈頓距離的等價長度。

想想我們下象棋的時候,車炮兵之類的,是不是要走曼哈頓距離?


如果不會下象棋,沒關係,看下面的例子:


       

在美國道路會像這樣是很多的規則的網格狀,從A到B通常無法去沿直線行走,而是會避開建築物,走幾個街區到達。

圖中藍色的線即為曼哈頓距離的典型應用場景。


看看維基百科:http://en.wikipedia.org/wiki/Taxicab_geometry




3. 切比雪夫距離(Chebyshev distance)


數學上,切比雪夫距離是將2個點之間的距離定義為其各座標數值差的最大值。

       


網上搜尋,好多有關這個距離的解釋,大多都是採用國際象棋中的王的走步來作為例子,王可以前後左右走,還可以斜前斜後走,一共8個方向可以認為距離均等。

也就是在下面3×3鄰域內,中心網格的中心點到8個鄰域網格中心點的距離相等。


          


看看維基百科:http://en.wikipedia.org/wiki/Chebyshev_distance


相關文章