Matlab 如何提取信号的单个波分量信息?

Matlab 如何提取信号的单个波分量信息?,matlab,fft,wavelet,cross-correlation,Matlab,Fft,Wavelet,Cross Correlation,我感兴趣的信号是一个风速向量和一个时间向量,它们形成了10分钟的风速剖面。我怎样才能提取出组成整个十分钟信号的各个波的信息(例如平均速度为9m/s、频率为1hz的10个波等),因此我最后列出了所有成分波及其频率,最大/最小值等。我尝试过将几秒钟的“测试”波与十分钟矢量进行互相关比较,但这似乎不起作用您似乎在尝试计算信号的离散傅里叶变换(DFT)。这可以通过使用Matlab内置的fft函数(文档)来实现。我已经尝试过了,但是fft信号太吵,无法解释。您尝试过多个n(变换长度)值吗?这可能会改善你的

我感兴趣的信号是一个风速向量和一个时间向量,它们形成了10分钟的风速剖面。我怎样才能提取出组成整个十分钟信号的各个波的信息(例如平均速度为9m/s、频率为1hz的10个波等),因此我最后列出了所有成分波及其频率,最大/最小值等。我尝试过将几秒钟的“测试”波与十分钟矢量进行互相关比较,但这似乎不起作用

您似乎在尝试计算信号的离散傅里叶变换(DFT)。这可以通过使用Matlab内置的
fft
函数(文档)来实现。

我已经尝试过了,但是fft信号太吵,无法解释。您尝试过多个n(变换长度)值吗?这可能会改善你的结果。不,我没有试过,你说的变换长度是什么意思?好的,我已经做了,并且有一种解释性的幅度响应,我如何将幅度响应中的峰值转换为时域中等效峰值的绝对值?我建议查看这篇Researchgate帖子: