Nobel恒等式的大意如下:先进行抽取或者插值,再进行线性滤波
先进行线性滤波,再进行抽取或者插值
这两者是可以等价的。首先说这里的抽取和插值指的是数字意义上的,并没有后面的低通滤波来恢复原来的信号。插值插得就是零。
这个道理其实很简单:如果先过线性滤波,再抽取,那么抽取掉的那些个样点是没必要在线性滤波的时候算的。所以可以这样:以matlab程序来说吧:
>> a = [1 2 3 4];
>> h = [5 6 7 8];
>> conv(a, h)
ans =
5 16 34 60 61 52 32
>> r1 = conv([1 3], [6 8])
r1 =
6 26 24
>> r2 = conv([2 4], [5 7])
r2 =
10 34 28
可以看到r1+r2就是对于线性滤波输出的抽取。这也就是多相分解。
再来看插值。如果先插值,再过线性滤波,那么对于那些插入的零是没必要算的,也就有了下面:
>> a = [1 2 3 4];
>> h = [5 6 7 8];
>> a_in = [1 0 2 0 3 0 4];
>> conv(a_in, h)
ans =
5 6 17 20 29 34 41 48 28 32
>> r1 = conv(a, [5 7])
r1 =
5 17 29 41 28
>> r2 = conv(a, [6 8])
r2 =
6 20 34 48 32
可以看到,r1和r2进行pingpang式的输出便就是插值再滤波后的输出。
说白了,这玩意就是对于有零参与的卷积运算的一个化简过程。over