Skip to content

Instantly share code, notes, and snippets.

@lnicola
Created June 20, 2014 15:42
Show Gist options
  • Save lnicola/dcbd96b65cfafda93160 to your computer and use it in GitHub Desktop.
Save lnicola/dcbd96b65cfafda93160 to your computer and use it in GitHub Desktop.
numpy cross-correlation
import numpy
import sys
numpy.seterr(all='print')
original = numpy.fromfile(sys.argv[1], '<h').astype(int)
delayed = numpy.fromfile(sys.argv[2], '<h').astype(int)
original_len = len(original)
delayed_len = len(delayed)
print(original_len)
print(delayed_len)
d = delayed_len - original_len
if d > 0:
original = numpy.pad(original, (0, d), 'constant')
print(original)
print(delayed)
corr = numpy.correlate(original, delayed, 'full')
print(corr)
l = int(len(corr) / 2)
print(l)
print(corr.shape)
corr.resize(l)
print(corr.shape)
print(l - numpy.argmax(corr))
#x = [1, 2, 3, 4, 0, 0, 0, 0, 0 ];
#y = [0, 0, 0, 0, 0, 1, 2, 3, 4 ];
#corr = numpy.correlate(x, y, 'full');
#print(corr)
#print(int(len(corr) / 2) - numpy.argmax(corr))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment