首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DFT频率减法

DFT频率减法
EN

Stack Overflow用户
提问于 2011-05-12 18:19:29
回答 1查看 1.4K关注 0票数 0

如果DFT变换的最大幅度M= A^2 + B^2对应于频率F,(A -实数,B- DFT的虚数输出,频率F),则执行以下操作是正确的:

代码语言:javascript
复制
for (j = 0; j < size; ++j) {
    data[j] -=  (A*cos(2*PI*F*j/dfts) -
                 B*sin(2*PI*F*j/dfts)) / dfts;
}

为了从原始波形数据中消除(减去)该频率影响?假设数据是几个不同频率的正弦和余弦的总和,并乘以不同的系数。

EDIT1:我可以通过减法来实现对消,结果是正确的。上面有一个错误,但它是可以做到的。如果感兴趣,我可以发布做它的方式。

EDIT2:如果你做下一个离散傅立叶变换,你会得到一个非常小的,接近于零值的A和B值。但您需要记住,原始数据可以是4个频率(正弦和余弦)的总和,但DFT变换得到的结果与DFT的大小除以2一样多。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-12 18:23:03

不-那是行不通的。它只能在时域分量与FFT bin频率精确匹配,并且分量的相位在整个采样窗口中是恒定的情况下才能工作,即使是这种情况,您仍然需要在减法中注意相位。

理想情况下,您需要删除(即零)频域中的分量,然后执行逆FFT。请注意,您可能不希望仅在频域中将感兴趣的bin置零,因为这将在反FFT后在时域中产生伪影-您将需要将窗函数应用于感兴趣的bin和相邻的bin。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5976538

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档