scipy.signal.resample:偶数点故障?

时间:2017-04-07 17:21:58

标签: python scipy signal-processing

似乎 scipy.signal.resample()在下采样到偶数点时会出错。例如,如果我们将一个函数上采样到多个原始点然后再次下采样,我们应该返回原始函数。

from scipy import signal
import numpy as np

def test_resample(n1,n2): # upsample from n1 to n2 points and back
    x1=np.arange(n1)
    y1=np.sin(x1)
    y2,x2=signal.resample(y1,n2,x1)  
    y3,x3=signal.resample(y2,n1,x2)  
    print np.allclose(y1,y3)

但是当点数较低时,这会失败:

test_resample(10,20)
    False

test_resample(11,22)
    True

test_resample(11,33)
    True

问题出现在下采样步骤中。错误很大,我测试的功能至少有几个百分点。

4/8/17更新:这似乎是一个编码错误。我报告了错误here的详细信息。

0 个答案:

没有答案