我试图生成一个分数或一个数字,表示多少cos和sin波可以产生我的信号。例如,如果信号是正弦波,这意味着它是100%纯的,因为它只能由一个正弦信号产生,如果它是由两个正弦波组成的。这意味着它不是纯波,如果它包含100个正弦波,它实际上是不纯的,等等……我试过FFT和FS但没成功..。有人能帮我吗?
发布于 2015-02-16 23:40:26
给你:
x = s;
X = dct(x);
[XX,ind] = sort(abs(X),'descend');
i = 1;
while norm(X(ind(1:i)))/norm(X)<0.99
i = i + 1;
end
Needed = i;发布于 2015-02-16 21:47:54
FFT会有用的。你必须用傅里叶变换处理波,然后计算出震级平方(实*实+图像*图像)。计算结果的峰值会给你提供不同频率的正弦波数。
https://stackoverflow.com/questions/28550838
复制相似问题