热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

回声检测仿真信号matlab,基于LMS算法的回声消除系统仿真研究

用远端语音信号作为参考信号来跟踪回声信号,得到滤波器的输出信号,两者相减,得到误差信号为。误差信号的波形如图7所示。从图中可以看出

用远端语音信号作为参考信号来跟踪回声信号,得到滤波器的输出信号

44921539051915.jpg,两者相减,得到误差信号为

90251539051915.jpg。误差信号的波形如图7所示。从图中可以看出,收敛时间大约在8000个点左右,之后的误差曲线接近于0,仿真效果非常理想。本文引用地址:http://www.eepw.com.cn/article/201809/392397.htm

75031539051915.jpg

89851539051919.jpg

根据上文分析可知,标准LMS算法的失调系数和滤波器的输入功率成正比,因此如果输入信号功率比较大,那么自适应滤波器将产生梯度噪声放大的现象。如果对步长因子取适当的值,使其反比于输入信号能量,那么失调系数将会保持不变,因此可以进行如下假设[11]:

26421539051919.jpg(10)

93751539051920.jpg

23771539051921.jpg

用MATLAB生成一个幅度为1,角频率为0.05的单频正弦信号r(n)作为滤波器的目标输出信号,如图3.7所示。再生成一个信噪比为3db的白噪声信号y(n)作为远端输入信号,如图8所示。取变步长LMS算法的步长因子为1,自适应滤波器的输出信号

44921539051915.jpg如图9所示。两者相减得到误差信号

90251539051915.jpg,如图10所示。

91511539051921.jpg

根据上述结果可知,在滤波器的输入信号和目标信号的参数相同时,变步长LMS算法具有更快的收敛速度。同样地,上述仿真的目标信号是单一频率的正弦信号,很难代表一般性,所以下面用真实的语音信号作为目标信号来进行仿真实验。

70961539051922.jpg

比较预期输出信号的波形和实际输出信号的波形,可以看出滤波器的实际输出信号的变化曲线和预期输出信号的变化曲线同步。

46611539051922.jpg

3 结论

经过MATLAB仿真可以看出,使用变步长的LMS算法时,收敛以后得到一条误差为0的曲线。收敛情况比使用普通LMS算法好,可以将回声完全消除。目前,正在研究基于该算法的回声消除硬件平台。

42351539051923.jpg

参考文献:

[1]刘德全.基于微麦克风阵列的声学回声消除算法研究及软件仿真[D].电子科技大学, 2012.

[2]王树成. 最小均方算法的改进及应用研究[D].华东交通大学,2013.

[3]张子刚. 一种双端通话检测算法中噪音阈值自动更新的方法[D].复旦大学,2013.

[4]赵彤,梁家碧,夏天翔,邹亮,张黎.基于LMS自适应滤波算法的电力变压器有源降噪系统[J].高电压技术,2016,42(07):2299-2307.

[5]张红梅,韩万刚.一种新的变步长LMS自适应滤波算法研究及其应用[J].仪器仪表学报,2015,36(08):1822-1830.

[6]王树成. 最小均方算法的改进及应用研究[D].华东交通大学,2013.

[7]张子刚. 一种双端通话检测算法中噪音阈值自动更新的方法[D].复旦大学,2013.

[8]李杨,韩鹏,檀虎.几种变步长LMS算法的性能分析与比较[J].国外电子测量技术,2013,32(03):28-30.

[9]马伟富. 自适应LMS算法的研究及应用[D].四川大学,2005.

[10]汪萌,戴礼荣,宋彦,王仁华.一种使用双滤波器的回声消除算法[J].数据采集与处理,2006(01):74-79.

[11]蔡宇,洪缨,原建平,侯朝焕,郝程鹏.语音系统中的子带自适应回声消除技术[J].仪器仪表学报,2013,34(07):9-14.

本文来源于《电子产品世界》2018年第10期第64页,欢迎您写论文时引用,并注明出处。



推荐阅读
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • Navicat Premium 15 安装指南及数据库连接配置
    本文详细介绍 Navicat Premium 15 的安装步骤及其对多种数据库(如 MySQL 和 Oracle)的支持,帮助用户顺利完成软件的安装与激活。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • Explore a common issue encountered when implementing an OAuth 1.0a API, specifically the inability to encode null objects and how to resolve it. ... [详细]
  • 本文详细介绍了如何解决Uploadify插件在Internet Explorer(IE)9和10版本中遇到的点击失效及JQuery运行时错误问题。通过修改相关JavaScript代码,确保上传功能在不同浏览器环境中的一致性和稳定性。 ... [详细]
  • 本文介绍了如何利用JavaScript或jQuery来判断网页中的文本框是否处于焦点状态,以及如何检测鼠标是否悬停在指定的HTML元素上。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
  • 线性Kalman滤波器在多自由度车辆悬架主动控制中的应用研究
    本文探讨了线性Kalman滤波器(LKF)在不同自由度(2、4、7)的车辆悬架系统中进行主动控制的应用。通过详细的仿真分析,展示了LKF在提升悬架性能方面的潜力,并总结了调参过程中的关键要点。 ... [详细]
  • 本文详细介绍了如何在BackTrack 5中配置和启动SSH服务,确保其正常运行,并通过Windows系统成功连接。涵盖了必要的密钥生成步骤及常见问题解决方法。 ... [详细]
  • This guide provides a comprehensive step-by-step approach to successfully installing the MongoDB PHP driver on XAMPP for macOS, ensuring a smooth and efficient setup process. ... [详细]
  • 探讨如何高效使用FastJSON进行JSON数据解析,特别是从复杂嵌套结构中提取特定字段值的方法。 ... [详细]
  • 导航栏样式练习:项目实例解析
    本文详细介绍了如何创建一个具有动态效果的导航栏,包括HTML、CSS和JavaScript代码的实现,并附有详细的说明和效果图。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
author-avatar
他像强盗霸占了d我的心
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有