频域LCMV

本文介绍了频域LCMV(Linearly Constrained Minimum Variance)算法,它是一种约束最小均方误差的波束形成器。文章首先回顾了维纳滤波器和LMS算法,并详细阐述了LCMV算法的问题公式化、频域LCMV的最优解,以及如何通过自适应方法求解。文章以语音增强和麦克风阵列为背景,讨论了在噪声和混响环境下,如何通过LCMV算法来提升语音信号的清晰度。
摘要由CSDN通过智能技术生成

今天准备总结一下LCMV算法的知识点,同时明后两天我会把算法转化为matlab代码如果时间来的及我会同时把效果测试的代码一同放入到我的github,至于地址见我的个人资料下面。不多说,进入LCMV算法。

在正是开始之前我要简要说一下LCMV算法,也可以称之为:constrained least mean square,约束最小均差。我之前写了两章有关于维纳滤波器的,那么这里有朋友可能会问:到底什么是维纳滤波器,他和我们经常用的LMS算法有什么区别?同学,这个问题很上路,老夫拼了这一身修为也要为你解答。

首先,什么是维纳滤波器?(因为前面讲过维纳滤波器,我会简要概括)我们假设代价函数为误差e(输入信号和期望响应的差值)的均方比如:E[|e^2|]。那么通过正交性原理我们知道,要使得代价函数获得最小值,我们的误差e与当前时刻的输入信号u成正交关系(比如两个垂直的向量想乘为0),通过这点我们能够推导出维纳霍夫方程,这个方程是维纳滤波器的灵魂。方程表明要求的最优(注意这个最优)的维纳滤波器必须要提前知道输入信号的自相关R和输入信号与期望响应的互相关p。下面是维纳霍夫方程:


转化成向量矩阵模式累加符号就消除了变为:R*W=P,为了求W我们就需要把两边同时乘以R的逆,然后就推到出来了。最终得到的关于权重的表达式就是我们的维纳滤波器,请记住上面我写的,这些都是细节,等会会与lms做比较。

那么现在我们面临一些问题:我们提前对于环境一无所知,不知道R,不知道P,R至少还能求解出来,那P可没法求呀。同时维纳滤波器中涉及R矩阵的求逆,玩过算法的都知道,求逆运算十分消耗资源的,当每变化一个W就需要求解逆运算,这样的计算复杂度相信许多应用都不能接受,所以你看到的很多资料上都这样描述维纳滤波器:不切实际,理论最优等等。科学家是伟大的,出了问题就会找解决方案,这时LMS算法浮出水面。

LMS算法核心思想就是迭代,他不需要提前知道任何关于环境的信息,也就是说他不需要知道R或者P,他是随机梯度算法的产物。为什么不需要R或者P了呢?因为它使用输入信号u和误差e的内积作为梯度向量的估计值,直接把R和P替换掉了,完美,甚至都不需要计算R的逆运算了。一次次迭代更新W权重的值,最终趋向于维纳最优解 。不过有个细节:因为我们是使用替换的方式,所以存在梯度噪声,所以我们最终的解是在维纳滤波器周围很小很小的区域动荡的。在误差性能曲面上,就是在最低点左右跳动。当输入信号能量很大的时候,梯度噪声也随之变大,这也是为什么引入NLMS,进行归一化操作,这个暂且不谈,这样我们对于维纳滤波器和LMS算法的联系和区别也算是有了大概的了解,那么我们下面开始进入LCMV算法,ShowTime。

问题公式化

试想一下这种环境:把包含M个麦克风的阵列置于一个嘈杂和带有混响的环境里。我们接收到的信号一般包含三部分&#

  • 9
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 43
    评论
评论 43
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值