如果 DFT 变换的最大幅度 M = A^2 + B^2 对应于频率 F,(A - 实数,B - DFT 的虚输出,频率为 F),那么执行以下操作是否正确:
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:如果您进行下一次 DFT 变换,您将在 A 和 B 值处获得一个非常小的接近零的值。但是您需要记住,原始数据可以是 4 个频率(正弦和余弦)的总和,但 DFT 变换会为您提供与 DFT 大小除以 2 一样多的值。