speex的语音增强(去噪)算法介绍

speex是一套主要针对语音的开源免费,无专利保护的应用集合,它不仅包括编解码器,还包括VAD(语音检测), DTX(不连续传输),AEC(回声消除),NS(去噪)等实用模块。Speex的增强(去噪)算法性能较好,而一般文档都是侧重于
对应用接口(API)的介绍。 本文对speex去噪算法步骤做一些简要整理和介绍,以提供给对该算法感兴趣的读者参考。
1. preprocess_analysis()包括两部分,主要是加窗交叠傅立叶(fft)变换等常用的信号处理算法。
1.1 预处理
信号输入,加窗,交叠(overlap),时频傅立叶变换(fft)(加窗,分帧,fft)
1.2 计算能量
计算频域能量ps,而filterbnak_compute_bank32()计算基于Bark带(临界频带)内的带噪信号能量。
2. update_noise_prob()更新噪声能量,使用的方法比较简单,即一般的固定迭代因子平滑算法;
3. 更新mel噪声谱能量;
4. 计算后验信噪比和进行先验信噪比更新:
post_SNR = ps/noise - 1;
gamma = 0.1 + 0.89*(old/(old+noise))^2;
priori_SNR= gamma*max(0,post) + (1-gamma)*old_ps/noise;
5. 先验信噪比平滑(zeta[i]),用于本底增益计算,计算范围包括fft域和Bark域。
6 . 计算Bark带(临界频带)内的EM算法增益和线性频域上的EM算法增益。
{注:EM(YARIV EPHRAIM 和 DAVID MALAH) 是语音增强领域的泰斗。}
考虑到在临界频带内幅度谱并不一定符合高斯随机分布,所以EM算法在Bark带内不能严格适用,这一点JEAN-MARC也在c代码中做了说明, 所以此处只以线性频率上的EM增益为例进行说明。
6.1 weiner 滤波:prior_snr= prior_snr /( prior_snr +1);
6.2. 超几何分布增益参数 theta= prior_snr *(1+post_snr);
6.3 超几何分布增益 MM=exp(-theta/2)*[(1+theta)*I0(theta/2)+theta*I1(theta/2)];其中I0和I1是贝塞尔函数。
6.4 增益 g=min(1,prior_ratio*mm);
6.5 p=gain2[i];gain2是由临界频率计算后的增益扩展到线性频域后的增益。
6.6 约束增益:如果 g/3>st->gain 则 g=3*st->gain ;
6.7 gain=g; 如果 gain

speex语音增强(去噪)算法简介相关推荐

  1. 语音增强--子空间算法及MATLAB实现

    语音增强--------------子空间算法 原理介绍 子空间方法的原理是将观测信号的向量空间分解为信号子空间和噪声子空间,通过消除噪声子空间并保留信号子空间从而估计出干净语音,子空间分解的过程是对 ...

  2. MATLAB基于小波变换的语音信号去噪算法改进

    MATLAB基于小波变换的语音信号去噪算法改进 概述 0. 需要调用的子函数 0.1 Gnoisegen函数 0.2 snrr函数 1. 语音信号输入和加噪 1.1 语音信号输入 1.2 语音信号加噪 ...

  3. 麦克风阵列语音增强beamforming算法

    delay and sum 关键步骤在于计算延时, 可以通过GCC-PHAT方法进行计算, 即广义互相关-相位变换方法. GCC-PHAT(广义互相关-相位变换) x(n) x(n) 和y(n) y( ...

  4. Matlab神经网络语音增强,基于BP神经网络的语音增强研究

    曰髯? 分类号: 论文编号:2丛坦丝旦生丛 密级:公开 贵州大学 2009届硕士研究生学位论文 基于即神经网络的语音增强研究 学科专业:电路与系统 研究方向:模式识别 导师:刘宇红教授 研究生:周元芬 ...

  5. 基于计算听觉场景分析的语音增强系统设计

    基于计算听觉场景分析的语音增强系统设计 在matlab中,语音增强的算法有很多种,其中比较常见的算法有谱减法和维纳滤波法,今天介绍一种比较少见的算法,以计算听觉场景分析为基础,采用时频掩蔽的方法进行语 ...

  6. AliCloudDenoise 语音增强算法:助力实时会议系统进入超清音质时代

    简介:近些年,随着实时通信技术的发展,在线会议逐渐成为人们工作中不可或缺的重要办公工具,据不完全统计,线上会议中约有 75% 为纯语音会议,即无需开启摄像头和屏幕共享功能,此时会议中的语音质量和清晰度 ...

  7. matlab 的谱相减语音增强算法的研究,基于MATLAB的谱相减语音增强算法的研究

    语音处理 谱减法 语音增加 去噪 维普资讯 http://www.wendangwang.com 第2卷第3 3期 文章编号:06- 3 8 2 0 ) 3-07 0 10 9 4 (0 6 0 2 ...

  8. 语音增强算法的概述[转]

    选自:http://www.cnblogs.com/chunge2050/p/3159158.html 本课题隶属于学校的创新性课题研究项目.2012年就已经做完了,今天一并拿来发表. 目录: --基 ...

  9. 基于小波变换的语音增强算法简单综述

    前言: 语音通信是人类传播信息,进行交流时使用最多.最自然.最基本的一种手段.而这种通信中的信息载体-语音信号却是一种时变的.非平稳的信号,只有在很短的一段时间内(通常为10~30ms)才被认为是平稳 ...

最新文章

  1. python入门:工欲善其事,必先利其器
  2. 使用MUI/html5plus集成微信支付需要注意的几点问题
  3. 区域显示触发_Unity3D 在Hierarchy窗口中显示物体所属Layer
  4. 深入理解Java虚拟机——java内存区域与内存溢出异常(一)
  5. eclipse 代码提示后面的百分比是什么意思?
  6. 解决Ubuntu 16.04下提示boot分区空间不足的办法
  7. c语言编程被当作病毒,为什么这个微不足道的C程序被检测为病毒?
  8. 转贴:电子商务如何提升网站转化率之:谷歌9条
  9. Ubuntu 安装截图工具Shutter,并设置快捷键 Ctrl+Alt+A
  10. postman 使用_postman如何使用集合断言?
  11. java scri p t_深入浅析JavaScript中数据共享和数据传递_javascri
  12. 2016-2017-2 20155117实验二《Java面向对象程序设计》实验报告
  13. android开发(44) 使用了 SoundPool 播放提示音
  14. Tensorflow——placeholder(矩阵运算小实例)
  15. BRVAH(让RecyclerView变得更高效) (3)
  16. Anaconda修改默认浏览器
  17. 药片计数器电路设计与实验
  18. 首发创新微信聊天内容制作生成器微信小程序源码下载支持多种制作
  19. markdown 入门 - 这样就够用了
  20. pdf转ppt在线转换网站

热门文章

  1. Unity制作RPG游戏——按键功能的分类与实现
  2. 第59期、基于Java springboot医院信息管理系统
  3. Salesforce开发教程(上下)
  4. 分享小猪o2o生活通源码v14.0升级v14.17后新版平台提现功能操作说明小程序
  5. 简易电商后台管理系统
  6. NB-IoT技术的未来发展,主要面临哪些挑战?
  7. 传感器自学笔记第九章——SW-420震动传感器、声控开关传感器、避障传感器模块、TCRT5000循迹传感器、倾斜开关
  8. 使用Drozer对Android四大组件进行测试
  9. matlab—多行注释
  10. CNTK API文档翻译(2)——逻辑回归