0

我有一系列np.complex128从 RTLSDR 读取样本收集的复杂 IQ 数据(类型)。作为参考,感兴趣的信号是 LTE eNodeB 的下行链路传输的中心频率,其具有以恒定间隔重复的值(循环前缀)。值本身是未知的,但它的重复频率是已知的。我将调用N_FFT循环前缀之间的样本数。

我想要做的是使用两个由N_FFT样本分隔的滑动窗口,期望两个窗口之间的相关性在循环前缀(重复值)处最高。

我试过的:

我从一个 Pandas 系列开始:

samples = pd.Series(sdr.read_samples(samples_per_capture))

然后,我将这个系列分成两个偏移系列N_FFT并运行pandas.core.window.rolling.Rolling.corr以找到滚动相关性:

N_FFT=128
WINDOW_SIZE=9

X = samples[:-N_FFT]
Y = samples[N_FFT:]
corr = X.rolling(WINDOW_SIZE).corr(Y)

但是,当我运行它时,我收到一个警告: ComplexWarning: Casting complex values to real discards the imaginary part,并且绘制的数据对我来说没有多大意义,我认为如果数据的虚部被丢弃,这是可以预料的。

对复杂数据执行滚动窗口关联的正确方法是什么?

4

0 回答 0