def test_auto_equivalence_1(self): for method in ("corr","fft","diff"): bg,var = core.stats(test_data1, axis = 0) data1 = core.acorr(test_data1, n = 8, norm = 1, method = method) out1 = core.normalize(data1, bg, var, norm = 1) data2,bg,var = core.iacorr(test_data1, n = 8, norm = 1, method = method) out2 = core.normalize(data2, bg, var, norm = 1) self.assertTrue(np.allclose(out1, out2))
def test_auto_equivalence_2(self): for method in ("corr",): bg,var = core.stats(test_data1, axis = 0) data1 = core.ccorr(test_data1,test_data1, n = 8, norm = 2, method = method) out1 = core.normalize(data1, bg, var, norm = 2) data2,bg,var = core.iacorr(test_data1, n = 8, norm = 2, method = method) out2 = core.normalize(data2, bg, var, norm = 2) self.assertTrue(np.allclose(out1, out2))
fft = rfft2(video, kimax=KIMAX, kjmax=KJMAX) #: you can also normalize each frame with respect to the [0,0] component of the fft #: this it therefore equivalent to normalize_video #fft = normalize_fft(fft) #load in numpy array #fft_array, = asarrays(fft, NFRAMES_FULL) if __name__ == "__main__": import os.path as p #: now perform auto correlation calculation with default parameters data, bg, var = iacorr(fft, np.arange(NFRAMES_FULL), n=int(NFRAMES / DT_FULL), stats=True, norm=6) for norm in range(8): #: perform normalization and merge data data_lin = normalize(data, bg, var, scale=True, norm=norm) #: perform log averaging x, y = log_average(data_lin, size=16) #: save the normalized data to numpy files np.save(p.join(DATA_PATH, "corr_full_t.npy"), x * DT_FULL) np.save(p.join(DATA_PATH, "corr_full_data_norm{}.npy".format(norm)), y)