计算输入序列X * YY的反卷积。

使用傅立叶变换进行反卷积运算。


icon

输入/输出

  • c1ddbl.png X * Y

    X * Y是输入数据的集合。X * Y的元素数必须大于等于Y的元素数,n大于等于m。

    X*Y的元素少于Y的元素,VI可设置X为空数组并返回错误。

  • c1ddbl.png Y

    Y是由因变值组成的数组。

  • i1ddbl.png X

    XX * YY的反卷积序列。

    X的元素数(大小)= nm+1,nX*Y的元素数,mY的元素数。

  • ii32.png 错误

    错误返回VI的任何错误或警告。将错误连接至错误代码至错误簇转换VI,可将错误代码或警告转换为错误簇。

  • 该VI可使用傅立叶变换实现卷积操作,因为

    x(t) * y(t) ⇔ X(f) Y(f)

    是傅立叶变换对,*符号代表卷积,反卷积是卷积的逆向运算。如h(t)是信号x(t)和y(t)反卷积的结果,该VI使用下列等式获取h(t):

    ,

    X(f)是x(t)的傅立叶变换,Y(f)是y(t)的傅立叶变换。

    该VI通过下列步骤离散实现反卷积。

    1. 计算输入序列X * Y的傅立叶变换。
    2. 计算输入序列Y的傅立叶变换。
    3. 使X * Y的傅立叶变换除以Y的傅立叶变换。调用新的序列h
    4. 计算h的逆傅立叶变换,获得反卷积序列X
    注: 反卷积是一种不稳定的数值运算,所以从数值上解决问题不是完全可行的。通过FFT计算反卷积是最稳定的通用算法,不需复杂的DSP技巧。但是,上述方法也会产生错误,如在傅立叶变换的输入序列Y中出现零。