地球移动器n-1直方图之间的距离

时间:2017-08-17 16:37:38

标签: opencv numpy

我尝试计算两个1维numpy直方图之间的地球移动距离,如:

(array([ 0.53586639,  0.71448852,  1.22534781,  1.68262046,  1.20391316]), array([ 0.        ,  0.18648936,  0.37297871,  0.55946807,  0.74595742,
     0.93244678]), <a list of 5 Patch objects>)

(array([ 0.05986936,  0.41133267,  1.0449142 ,  2.43569242,  2.50891394]), array([ 0.17373296,  0.32851441,  0.48329586,  0.63807731,  0.79285876,
     0.9476402 ]), <a list of 5 Patch objects>)

我想为一维数组而不是图像。我想要一个简单的解决方案。

1 个答案:

答案 0 :(得分:0)

一个简单的python代码:

import numpy as np

def wasserstein_distance(A,B):
    n = len(A)
    dist = np.zeros(n)
    for x in range(n-1):
        dist[x+1] = A[x]-B[x]+dist[x]
    return np.sum(abs(dist))