查看: 945|回复: 4|关注: 0

[已解决] 对维纳滤波的一些困惑

[复制链接]

新手

13 麦片

财富积分


050


5

主题

23

帖子

0

最佳答案
  • 关注者: 1
各位老师大神,我最近学习维纳滤波主要有以下几个困惑:
1. 这到底是个SISO问题还是MIMO问题???
         比如我有待处理信号x=[x(1) x(2) x(3) ... x(N) x(N+1) ... ],目标输出d=[d(1) d(2) d(3) ... d(N) d(N+1) ... ],权向量w=[w(1) w(2) w(3) ... w(N)](维纳滤波器阶数为N-1阶),按照定义误差信号e(k)=d(k)-y(k)=d(k)-w*X(k),其中X(k)=[x(k-1) x(k-2) ... x(k-N)]T,这是个向量吧?还是矩阵?因为我看到很多文章说原理就是用x(k)前面N个数值估计x(k)的值,那就应该理解为向量吧?那X(k)就是一个N×1的向量了。然后以e(k)这一个值的最小值(也就是x(k)的MSE吧?)作为求解条件得到最优解w=Rxd-1×Rxx,那么问题来了:

首先,这一点的最优解能作为整个信号x的维纳滤波器的最优解吗?k换成k+1呢?对于任意k>N的值呢?也是最优解?


其次,Rxx=XT(转置)*X,也就是一个1×N的向量乘以一个N×1的向量得到N×N的矩阵,那这个矩阵里每个元素不是两个数据相乘的结果?但实际上现在的程序计算Rxx时都是计算信号x的自相关,再取N个自相关结果构造托普利兹矩阵,程序如下:
rxx=xcorr(x);
rxx=rxx(N:2*N-1);
Rxx=toeplitz(rxx);
实际上这种情况下相当于X是这样一个矩阵吧?
X=[x(1) x(2) ... x(N);x(2) x(3) ... x(N+1); ... ;x(N) x(N+1) ... x(2N)] 需要注意的是直接求自相关的话,信号也没有翻转,与权重相乘的话不是卷积了,这也不合理吧?就算理解为有N个输入,每一行作为一个输入来估计[d(N+1) d(N+2) ... d(2N)]的值?这样的话误差信号e和目标输出d都不再是k处的值了,而是其N+1:2N的一个向量,这时候算互相关向量也应该是目标输出d(N+1:)与信号x的互相关吧?而原程序是直接算d与x互相关,然后取N个结果构造托普利兹矩阵,程序如下:
rxd=xcorr(d,x);
rxd=rdx(N:2*N-1);
Rxd=toeplize(rxd);


2. 所以第二个问题,对于一个特定的信号x和d,自相关矩阵和互相关矩阵到底要怎么算呢?求解答,谢谢各位!

论坛优秀回答者

3

主题

1万

帖子

869

最佳答案
  • 关注者: 287
发表于 2018-9-20 03:56:35 | 显示全部楼层
试着回答一下啊

从最初维纳滤波来说,它是一个SISO的概念,X是一个向量,代表时间轴上的采样。维纳滤波的所谓最佳结果,是统计意义上的最佳结果。它的目标函数是E[e(k)],不是e(k)。所以谈维纳滤波应该在随机信号的框架下谈。当然,从定义上来说,我们通常并没有这个信号的多个实现,可是只要满足遍历性,我们就可以用时间上的遍历来代替不同的实现,这就是为什么你看到很多程序是那么写的。

从另一方面讲,所有的计算都是对当前时刻的输入来做的,如果时刻改变,比如k+1了,那么理论上所有的计算需要重来一遍才能保证最优。当然这个代价比较高,所以才有了自适应的方法,比如LMS,来逼近维纳滤波的结果而不需要一直对矩阵取逆

HTH

新手

13 麦片

财富积分


050


5

主题

23

帖子

0

最佳答案
  • 关注者: 1
 楼主| 发表于 2018-9-20 09:36:10 | 显示全部楼层
honglei.chen 发表于 2018-9-20 03:56
试着回答一下啊

从最初维纳滤波来说,它是一个SISO的概念,X是一个向量,代表时间轴上的采样。维纳滤波的 ...

感谢您的解答,还有一些困惑:
1. 老师您说的“满足遍历性,可以用时间上的遍历来替代不同的实现”是什么意思?能详细说明一下吗?为什么这样就可以直接算信号x的自相关来计算要求的自相关矩阵Rxx?要理解为求y(N+1:2N)满足最小MSE吗?

2. 还有就是按照最初的理论其实就是用一个点y(k)(k>=N+1)的最小MSE计算得到一组滤波器系数,然后将整个信号通过该滤波器滤波对吗?

问题有点多,主要还是不太明白为什么可以直接用信号x的自相关来算相关系数Rxx,麻烦老师您帮我讲解一些,谢谢老师!

论坛优秀回答者

3

主题

1万

帖子

869

最佳答案
  • 关注者: 287
发表于 2018-9-20 21:32:05 | 显示全部楼层 |此回复为最佳答案
yujiangling 发表于 2018-9-20 09:36
感谢您的解答,还有一些困惑:
1. 老师您说的“满足遍历性,可以用时间上的遍历来替代不同的实现”是什么 ...

关于遍历性,就是说可以用时间平均来代替样本平均,这里有一点描述你可以看看

http://blog.sina.com.cn/s/blog_af8d24d50101866m.html

至于第二点,还是需要从统计意义上来看。你用的不是一个点,而是到这个点为止的一段采样,由此来得到信号的自相关。那么理论上讲,只要信号的统计特性不变,用这个维纳滤波去处理这整个信号就是最优的。

新手

13 麦片

财富积分


050


5

主题

23

帖子

0

最佳答案
  • 关注者: 1
 楼主| 发表于 2018-9-25 09:16:38 | 显示全部楼层
honglei.chen 发表于 2018-9-20 21:32
关于遍历性,就是说可以用时间平均来代替样本平均,这里有一点描述你可以看看

http://blog.sina.com.cn/ ...

谢谢老师,差不多基本理解了:D
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表