2
我試圖實現圖像中顯示的距離測量,在Python這樣:如何在Python中實現這種相似性度量?
import numpy as np
A = [1, 2, 3, 4, 5, 6, 7, 8, 1]
B = [1, 2, 3, 2, 4, 6, 7, 8, 2]
A = np.asarray(A).flatten()
B = np.asarray(B).flatten()
x = np.sum(1 - np.divide((1 + np.minimum(A, B)), (1 + np.maximum(A, B))))
print("Distance: {}".format(x))
但經過測試,它似乎不正確的方法。如果給定的向量之間沒有相似性,則返回的最大值應該是1,其中0是完全相似的。圖像中的A和B都是大小爲m的矢量。
編輯:忘了補充一點,我忽略了一部分分鐘(A,B)< 0作爲不會發生過對我的意圖
我與像一些其他值嘗試: A = [1,1,1,1,1,1,1,1,1] B = [1,1,1,1, 1,1,1,1,0] 它返回的距離爲0.5,較大的值如5 vs 1,它返回6.我的理解是,它將返回0和1之間的值,無論如何。 – Laende
按照你的定義,'D'的值都在0和1之間。可能你必須將'D_proposed'除以它的大小來獲得該行爲。 – Chiel
這似乎有伎倆!謝謝! – Laende