热门标签 | 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页,欢迎您写论文时引用,并注明出处。



推荐阅读
  • 本文旨在探讨设计模式在Visual FoxPro (VFP) 中的应用可能性。虽然VFP作为一种支持面向对象编程(xbase语言)的工具,其OO特性相对简明,缺乏高级语言如Java、C++等提供的复杂特性,但设计模式作为一种通用的解决方案框架,是否能有效应用于VFP,值得深入研究。 ... [详细]
  • 本文介绍了如何通过 XMLHttpRequest 对象在不同浏览器中实现 AJAX 的 POST 和 GET 请求,并详细说明了 XMLHttpRequest 的五个状态及其含义。 ... [详细]
  • 根据官方定义,RxJava是一种用于异步编程和可观察数据流的API。其核心特性在于流式处理能力和丰富的操作符支持。 ... [详细]
  • 探讨如何有效应对卡巴斯基密钥被列入黑名单的情况,提供安全可靠的解决方案,确保用户能够继续使用卡巴斯基的全部功能。 ... [详细]
  • 高效的JavaScript异步资源加载解决方案
    本文探讨了如何通过异步加载技术处理网页中大型第三方插件的加载问题,避免将大文件打包进主JS文件中导致的加载时间过长,介绍了实现异步加载的具体方法及其优化。 ... [详细]
  • 本文介绍了如何解决 ChinaASP.Upload 错误 '80040002',即必须添加版权信息的问题,并提供了详细的步骤和注意事项。 ... [详细]
  • 本文详细介绍如何在华为鲲鹏平台上构建和使用适配ARM架构的Redis Docker镜像,解决常见错误并提供优化建议。 ... [详细]
  • Windows 7 系统下配置 IPv6 地址的详细步骤
    本文介绍了在 Windows 7 操作系统中配置 IPv6 地址的具体方法,包括安装 IPv6 协议、手动设置 IPv6 地址以及测试配置是否成功的步骤。 ... [详细]
  • VC++ 文件操作实践案例
    本文介绍如何在Visual C++ 6.0环境下,通过下载的VC源代码实现文件的基本读写操作,并解决常见的运行错误。 ... [详细]
  • FL Studio 20.8 中文版进阶教程及安装指南
    FL Studio 20.8 是目前最新版本的音乐制作软件,它能够将您的电脑转变为全面的音乐工作室,配备先进的制作工具,使您的音乐创作超越想象。本文将详细介绍FL Studio 20.8的安装步骤及中文语言切换方法。 ... [详细]
  • JavaScript 实现图片文件转Base64编码的方法
    本文详细介绍了如何使用JavaScript将用户通过文件输入控件选择的图片文件转换为Base64编码字符串,适用于Web前端开发中图片上传前的预处理。 ... [详细]
  • 本文介绍了实时流协议(RTSP)的基本概念、组成部分及其与RTCP的交互过程,详细解析了客户端请求格式、服务器响应格式、常用方法分类及协议流程,并提供了SDP格式的深入解析。 ... [详细]
  • 前端开发PPT页面与评论区展示优化
    本文介绍了如何在前端开发中实现一个类似于StackOverflow样式的PPT展示页面和评论区,提供了项目源代码及在线演示链接,并分享了开发过程中遇到的挑战及其解决方案。 ... [详细]
  • POJ2263是一个经典的图论问题,涉及寻找从起点到终点的最大载重路径。本文将详细介绍该问题的背景、解题思路及代码实现。 ... [详细]
  • Python Requests模块中的身份验证机制
    随着Web服务的发展,身份验证成为了确保数据安全的重要环节。本文将详细介绍如何利用Python的Requests库实现不同类型的HTTP身份验证,包括基本身份验证、摘要式身份验证以及OAuth 1认证等。 ... [详细]
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社区 版权所有