信号的插值计算
前言
最近在学习信号的插值,学到了一些常用的方法,遂在此博客记录之
一、二次插值
二次函数插值是一种常见的插值方法,如下图:
假设在 x ( n ) , x ( n − 1 ) , x ( n − 2 ) x(n),x(n-1),x(n-2) x(n),x(n−1),x(n−2)三个点已知,为了拟合估算 x ( n − u ) x(n-u) x(n−u)的值,可以使用二次插值得到。假设二次曲线为 x ( t ) = a t 2 + b t + c x(t)=at^2+bt+c x(t)=at2+bt+c,将 x ( n ) , x ( n − 1 ) , x ( n − 2 ) x(n),x(n-1),x(n-2) x(n),x(n−1),x(n−2)三个点代入计算即可得到 a 、 b 、 c a、b、c a、b、c的值。但这样计算略显繁琐,可以使用牛顿法直接插值得到这个二次曲线。
x ( t ) = x ( n ) + x ( n ) − x ( n − 1 ) n − ( n − 1 ) ( t − n ) + [ x ( n ) − x ( n − 1 ) n − ( n − 1 ) − x ( n − 1 ) − x ( n − 2 ) ( n − 1 ) − ( n − 2 ) ] ( t − n ) [ t − ( n − 1 ) ] n − ( n − 2 ) = x ( n ) + [ x ( n ) − x ( n − 1 ) ] ( t − n ) + 1 2 [ x ( n ) + x ( n − 2 ) − 2 x ( n − 1 ) ] ( t − n ) ( t − n + 1 ) \begin{aligned} x(t)&=x(n)+\frac{x(n)-x(n-1)}{n-(n-1)}(t-n)+\left [\frac{x(n)-x(n-1)}{n-(n-1)}-\frac{x(n-1)-x(n-2)}{(n-1)-(n-2)} \right]\frac{(t-n)[t-(n-1)]}{n-(n-2)}\\ &=x(n)+\left[x(n)-x(n-1)\right](t-n)+\frac{1}{2}\left[ x(n)+x(n-2)-2x(n-1)\right](t-n)(t-n+1) \end{aligned} x(t)=x(n)+n−(n−1)x(n)−x(n−1)(t−n)+[n−(n−1)x(n)−x(n−1)−(n−1)−(n−2)x(n−1)−x(n−2)]n−(n−2)(t−n)[t−(n−1)]=x(n)+[x(n)−x(n−1)](t−n)+21[x(n)+x(n−2)−2x(n−1)](t−n)(t−n+1)
所以 x ( n − u ) x(n-u) x(n−u)的插值结果为
x ( n − u ) = ( 1 2 u 2 − 3 2 u + 1 ) x ( n ) + ( − u 2 + 2 u ) x ( n − 1 )