- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于MCUAEC算法实现
基于MCUAEC算法实现
摘要:本文介绍了声学回声消除的基本原理,提出了一种基于飞思卡尔公司MCF5235 Coldfire微控制器的AEC实现方案,在Matlab环境下进行了仿真,并在VoIP电话终端上集成AEC模块测试实时效果。
关键词:回声消除;LMS算法;NLMS算法;Geigle语音判决算法
引言
较之传统电话,VoIP语音质量较差。影响因特网语音质量的关键因素之一是回声。要提高因特网的语音质量,就必须在语音传输的过程中进行回声消除的处理。AEC是基于自适应算法、可被应用于VolP的回声消除技术。 本文用于AEC算法实现与研究的硬件平台是以Freescale公司的MCF5235为核心的开发板。MCF523x系列是以带有增强型乘加运算单元(eMAC)的ColdFire V2内核为核心,同时结合了增强型时序处理单元(eTPU)和10/100M以太网多媒体通道控制模块(MAC)的MCU,具有强大的数据处理能力和丰富的接口,能够满足VoIP电话终端对于数据处理速度以及网络通信安全性的要求。
回声消除器介绍
声学回声消除原理
AEC是以扬声器信号与由它产生的多路径回声的相关性为基础,建立远端信号的语音模型,利用它对回声进行估计,并不断修改滤波器的系数,使得估计值更加逼近真实的回声。然后,将回声估计值从话筒的输入信号中减去,从而达到消除回声的目的。
声学回声消除器的结构。y(n)代表远端语音信号,r(n)代表回声,x(n)是近端语音信号。近端信号x(n)叠加了回声信号r(n)。对回声消除器来说,将远端信号作为一个参考信号,自适应滤波器用它来产生回声的估计值r(n),从近端带有回声的语音信号中将r(n)减去,估计出近端输出信号μ(n)。在近端没有说话的情况下,即当x(n)=O时,μ(n)为回声的残差信号e(n)。e(n)的计算方程为:
e(n)=r(n)-r(n)
(1)
此时,回声的残留信号的理想值应为0。
自适应FIR滤波器
在声学回声消除器里,横向结构的自适应滤波器通过采用参考信号来产生回声的副本,如果这个横向结构的自适应滤波器的转换函数与回声通道的函数模型一致,那么,回声的副本与回声就应该是一致的,通过两者的抵消就可以达到消除回声的目的。
FIR滤波器的最主要特点是没有反馈回路,是一种非递归系统,它的冲激响应h(n)是一个有限长序列。下面的方程被用来计算FIR滤波器的输出:
自适应FIR滤波器是根据上一时刻的近端输出信号μ(n)以及远端语音信号y(n),通过某种自适应算法来估算当前时刻FIR滤波器的系数ak(n+1)。
LMS和NLMS算法
在输入信号和参考信号都是平稳随机信号的情况下,自适应滤波器的均方误差E[e(n)]性能曲面是滤波器加权系数钆的二次函数。其系数修正的算法通常是采用使均方误差最小的最优化求解算法,如最速下降算法。
由于实际的梯度值只能根据观测数据估计,因此,LMS算法提出的一个基本思想就是用平方误差来代替均方误差。它是对基本的最速下降算法的改进,其算法迭代公式为:
ak(n+1)=ak(n)+2μe(n)×y(n)
(3)其中,y(n)为输入信号,μ为迭代步长常量。
规一化LMS(NLMS)算法被用来在LMS自适应滤波器方程里修正FIR滤波器的系数。NLMS算法与LMS算法几乎是一样的,唯一的不同是在NLMS算法中用可变的步长控制因子代替了LMS算法中的常量因子,其目的是加快算法的收敛速度。其算法迭代公式为:
其中μ应由试验来确定。μ的选取至关重要,为了确保收敛,必须满足0<μ<2。本方案中的自适应算法就采用了NLMS。
实现方案
声学回声消除器AEC主要包括FIR滤波模块、Geigle双端语音判决模块、NLMS系数更新模块、语音状态控制模块4个部分,AEC简要的结构。
Freescale公司的硬件开发平台是以Coldfire系列MCF5235为核心。该系列MCU支持标准C语言以及其专用的汇编语言。最终在该平台上运行的功能模块需要使用C语言或者专用汇编语言。AEC的开发以及移植过程如图3所示。
首先,搭建AEC的Matlab模型并对该模型进行仿真验证。然后,以已通过验证的模型为标准,搭建可在MCF5235开发板上运行的C语言模型。最后根据需要,将运算较为密集的那部分C语言程序转化为Coldfire芯片的专用汇编语言。
实验结果及分析
在Matlab环境下,对AEC进行测试。将需要的三部分语音信号同时输入到回声消除器,测试回声消除的相关性能。
输入语音信号波形,从上到下依次表
原创力文档


文档评论(0)