Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab fft后如何恢复原始复信号?_Matlab_Fft_Ifft - Fatal编程技术网

Matlab fft后如何恢复原始复信号?

Matlab fft后如何恢复原始复信号?,matlab,fft,ifft,Matlab,Fft,Ifft,下面有一个简单的代码,我为一个可以理解的问题准备好了。我的目的是在Matlab中经过FFT处理后恢复原始的复信号 正如您从代码中了解到的,我创建了1x128复数向量。在我实现IFFT后,我将处理这段代码。然后我再次实现了FFT过程来恢复原始的复杂代码 代码: 我脑子里没有什么问题 -IFFT和FFT后是否可能恢复原始复信号,如果可能,请描述一下 -在我的项目代码通常有更多的死亡,我也将在IFFT AWGN噪声信号后实现。如果这个代码工作正常,我想使用这个代码 提前谢谢 Pales您能取回准确的数

下面有一个简单的代码,我为一个可以理解的问题准备好了。我的目的是在Matlab中经过FFT处理后恢复原始的复信号

正如您从代码中了解到的,我创建了1x128复数向量。在我实现IFFT后,我将处理这段代码。然后我再次实现了FFT过程来恢复原始的复杂代码

代码:

我脑子里没有什么问题

-IFFT和FFT后是否可能恢复原始复信号,如果可能,请描述一下

-在我的项目代码通常有更多的死亡,我也将在IFFT AWGN噪声信号后实现。如果这个代码工作正常,我想使用这个代码

提前谢谢


Pales

您能取回准确的数据吗?否,存在浮点舍入错误。你能在很小的误差范围内把原始数据拿回来吗?当然可以。你已经做到了:
max(abs(difcn))
给了我
1.6653e-16
。那是相当小的。你为什么要担心这种差异?计算机中的数字从来都不精确!左边是输入图像(棋盘格),我解析每个像素,并将IFFT合成其等效音频。。。从这个音频中,我进行FFT,并在右边生成一个输出图像。。。我要说谢谢克里斯·卢恩戈,这是我正在思考的主题,但我不确定。为了完成这个项目,我将继续走这条路。在这种情况下,我必须使用滤波器来关闭真实条件。感谢Scott Stensland,是的,FFT后它看起来有些浮动。据我所知,在FFT之后,这意味着从时域传递到频域,一些浮动是正常的。我们无法完全覆盖原始信号。请注意。。。在评论中,您需要键入@符号,后跟您希望向其发送评论的人的首字母左右。。。后跟选项卡以自动完成填充该人员accountname。。。当省略此@xxx技巧时,只有提出问题的人才会得到自动通知
a1 = linspace(0.1,0.6,128); 
a2 = linspace(0.2,0.6,128); 
cn = complex (a1,a2); ifcn = ifft(cn,128,2); 
fcn = fft(ifcn,128,2); 
%difcn = fcn - cn;%Checking difference between original and after fft