声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2410|回复: 4

[综合讨论] 为什么对一组实数做FFT变换再IFFT变换得到结果却和原来不一样??

[复制链接]
发表于 2009-3-6 11:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
fid_in=wavread(......);
sprate=48000;
N=960

这里取960个点做FFT变换

fid_in_fft=fft(fid_in);

之后

fid_in_fft_ifft=ifft(fid_in_fft);

可为什么fid_in_fft_ifft的结果和fid_in不一样???????
我的意思是值不一样,其中,由于读的是一wav文件,所以读入的fid_in的值全是实数。但是fid_in_fft_ifft却有虚部,为什么呢?
回复
分享到:

使用道具 举报

 楼主| 发表于 2009-3-6 16:38 | 显示全部楼层
这个问题我已经找到答案了。
发表于 2009-3-9 20:49 | 显示全部楼层

回复 沙发 maye 的帖子

LZ能否把答案分享一下……
 楼主| 发表于 2009-3-13 10:14 | 显示全部楼层
“如果在做IFFT变换后楼主想得到实数序列,则在IFFT之前应满足实部偶对称、虚部奇对称,在IFFT之后取实部(虚部虽有数值,但一般较小,是由有限字长运算所造成的误差)。”

评分

1

查看全部评分

发表于 2009-3-14 14:08 | 显示全部楼层
原来如此,我也去试试,感谢楼主分享哈...
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-5 02:45 , Processed in 0.054132 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表