Molto lento calcolo di correlazione incrociata

voti
0

Sto cercando di cross-correlare due array (X e Y). Il problema che sto affrontando è, sta prendendo un tempo molto lungo per completare il calcolo di correlazione incrociata.

Attualmente sto usando una dimensione molto piccolo campione per testare la funzione, e ho bisogno di accelerare questo processo.

Qualcuno potrebbe suggerire un metodo migliore / libreria disponibile per questo? Attualmente sto usando scipy.signal.correlate di SciPy

from scipy import signal

def CalculateCrossCorr(X, y):
  df = np.mean(np.diff(X[0:,1]));
  shift = (np.argmax(signal.correlate(X[0:,2], y[0:,2])) - (len(y[0:,2])-1)) * df;
  shift = round(shift, 1);
  return shift;
È pubblicato 10/10/2019 alle 00:54
fonte dall'utente
In altre lingue...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more