首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >利用FFT共轭FFT的IFFT方法

利用FFT共轭FFT的IFFT方法
EN

Stack Overflow用户
提问于 2014-04-10 12:34:45
回答 1查看 2.2K关注 0票数 0

我用C语言在8位pic微控制器上做定点FFT,我可以从我所采集的样本中得到FFT结果,但是当我对FFT结果做IFFT时,我得到了错误的输出。

我正在做的程序流程如下

  1. 对8个样本进行FFT处理,例如:实值为(1,0,0,0,0,0,0,0),虚值为(0,0,0,0,0,0,0,0)。
  2. FFT的输出为(1,1,1,1,1,1,1,1,1,1),虚值为(0,0,0,0,0,0,0,0)
  3. 然后取FFT输出的共轭。
  4. 对共轭结果进行FFT处理
  5. 再次获取第二次FFT结果的共轭。
  6. 最后用8除以得到时域原始样本,输出的实数为(1,0,0,0,0,0,0,0),虚值为(0,-0,-0,-0,-0,-0,-0,-0,-0,-0);

但是,如果对实值(1,2,3,4,5,6,7,8)和虚值(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,8)应用相同的方法,则在IFFT为(1,2,4,7,4,4,4,4,4,5,5,5,5,5,5,5,5)和虚数为(-0,-3,-1,-1,-0,1,0,0,2)之后,我得到了错误的结果。

请帮助我做错了什么..。

EN

回答 1

Stack Overflow用户

发布于 2014-04-10 16:30:25

在你的描述中,在任何时候你都不采取逆DFT。

想想是怎么回事,假设你的DFT结果是X,取X*X会给出功率谱,而不是逆DFT。然后预先形成一个DFT在这不会给你一个时间域,它会给你胡说八道。

您需要在正在使用的库中找到逆DFT函数。

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

https://stackoverflow.com/questions/22988238

复制
相关文章

相似问题

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