【问题标题】:MATLAB: Using ifft() to deconvolve signal and frequency responseMATLAB:使用 ifft() 对信号和频率响应进行反卷积
【发布时间】:2016-04-19 13:23:34
【问题描述】:

我有一个测量的时变信号,已知它具有可变频率响应(我有测量设备的频率与灵敏度数据)。我想去卷积使用:

pt = ifft(fft(vt)./Mf)

其中 vt 是时变信号,Mf 是频率响应。

我看大小

abs(fft(vt))

除以频率。与响应曲线 Mf 的关系(插值到相同的频率范围)。

但是,如果我设置 Mf=1(对于所有值 f=0 到 n MHz),我在进行 ifft 时不会得到原始信号 vt。

我的理解是我需要使用 vt fft 幅度执行除法 (fft(vt)./Mf)(因为 Mf 实际上是频率与幅度数据),然后使用实数/复数 fft 数据获取 ifft原始信号,但我不确定如何让它正常工作。

【问题讨论】:

    标签: matlab fft ifft


    【解决方案1】:

    在我看来,你声称的是

    pt = ifft(fft(vt)./1)
    

    不会导致 pt 等于 vt。这在某些浮点精度下是正确的。我会查看 pt 和 vt 样本之间的绝对误差的最大值。这应该至少比 vt 中的样本少十个数量级。

    【讨论】:

    • 不,可以。我不明白的是使用是否正确:abs(fft(vt))./Mf 或 fft(vt)./Mf 以及如何正确应用 ifft 以获得正确的时间戳和幅度。 (我必须对 Mf 进行插值,以便询问频率点与 fft(vt) 相同。
    猜你喜欢
    • 2016-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-27
    • 1970-01-01
    • 2013-11-21
    • 2021-01-31
    • 2019-12-26
    相关资源
    最近更新 更多