所以我试着在一组实值点上进行频移。为了实现频移,必须将数据乘以复指数,从而使产生的数据变得复杂。如果我用一个余弦相乘,我就得到了和频率和差频率的结果。我只想要和或差。
我所做的是将数据乘以复指数,使用fft.fft()计算快速傅立叶变换,然后仅在正频率上使用fft.irfft()获得一个实际值的数据集,该数据集的频率只有和或差的偏移。这似乎很好,但我想知道这样做是否有什么坏处,或者是实现同样目标的更合适的方法。谢谢你能提供的任何帮助!
发布于 2016-04-13 20:48:30
你所做的一切都很好。你正在产生解析信号,以适应负频率,就像离散希尔伯特变换一样。您将有一些缩放问题-您需要加倍的所有非直流和非奈奎斯特信号的真实频率部分的FFT结果。
一些实际的关注点是,这种方法会导致窗口大小的延迟,所以如果您想实时地这样做,您可能应该使用FIR希尔伯特转换器和适当的和来检查。在这种情况下,延迟将是希尔伯特变压器的群延迟。
另一个值得关注的问题是,你需要记住,你的信号的直流分量也将与所有其他频率一起移动。因此,我建议您在移位之前降低数据(保存值),在对数据进行FFT后将DC降为零(以移除结束在DC中的任何频率分量),然后添加均值回退以保留最后的信号电平。
https://stackoverflow.com/questions/36606390
复制相似问题