ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

经典语音降噪方法-谱减法

2021-09-24 22:05:16  阅读:525  来源: 互联网

标签:语音 hat 噪声 降噪 信号 减法 omega gamma


谱减法

一、引言

  谱减法作为语音降噪处理算法中的经典算法,因其运行和处理快,而被广泛应用。

二、简单谱减法

  2.1 谱减法使用场景

    1) 噪声为是平稳的(也即在整个时间范围内,噪声的均值和方差基本保持不变);
    2) 噪声为加性噪声

  2.2 简单谱减法基本思想

    默认混合信号(含噪信号)前几帧仅包含环境噪声,并利用混合信号的前几帧的平均幅度谱或者能量谱作为估计到一帧噪声的幅度谱或者能量谱。最后利用混合信号(含噪信号)的幅度谱或者能量谱与估计到的幅度谱与能量谱相减,得到估计到的干净信号的幅度谱或者能量谱。

  2.3 简单谱减法数学模型

  接收到的含噪语音信号时域数学模型如下: y ( n ) = x ( n ) + n ( n ) y(n)=x(n)+n(n) y(n)=x(n)+n(n)  其中, y ( n ) y(n) y(n)表示混合信号(含噪信号),也即待降噪信号; x ( n ) x(n) x(n)表示干净信的语音信号; n ( n ) n(n) n(n)表示噪声信号。其频域表达式如下所示: Y ( ω ) = X ( ω ) + N ( ω ) Y(\omega)=X(\omega)+N(\omega) Y(ω)=X(ω)+N(ω)   出增强后语音信号出现幅度谱负数的情况用0替换, ∣ X ^ ( ω ) ∣ = { ( ∣ Y ( ω ) ∣ γ − ∣ N ^ ( ω ) ∣ ∣ ∣ 1 y ∣ Y ( ω ) ∣ γ − ∣ N ^ ( ω ) ∣ ∣ γ ≥ 0 0  else  |\hat{X}(\omega)|=\left\{\begin{array}{cc} \left(|Y(\omega)|^{\gamma}-\left.|\hat{N}(\omega)|^{\mid}\right|^{\frac{1}{y}}\right. & |Y(\omega)|^{\gamma}-|\hat{N}(\omega)|^{\mid \gamma} \geq 0 \\ 0 & \text { else } \end{array}\right. ∣X^(ω)∣=⎩⎨⎧​(∣Y(ω)∣γ−∣N^(ω)∣∣∣∣∣​y1​0​∣Y(ω)∣γ−∣N^(ω)∣∣γ≥0 else ​
    其中,若 γ = 1 , ∣ Y ( ω ) ∣ \gamma=1,|Y(\omega)| γ=1,∣Y(ω)∣为混合信号(含噪信号)的幅度谱;若 γ = 2 , ∣ Y ( ω ) ∣ 2 \gamma=2,|Y(\omega)|^2 γ=2,∣Y(ω)∣2为混合信号(含噪信号)的能量谱; ∣ N ^ ( ω ) ∣ ∣ γ |\hat{N}(\omega)|^{\mid \gamma} ∣N^(ω)∣∣γ为混合信号(含噪信号)估计到的幅度谱或者能量谱。其系统框图如下所示:

  简单谱减法代码实现步骤
    1) 初始化参数,确定帧长帧移傅里叶变换长度,确定估计噪声谱的帧数
    2) 读入混合语音信号,根据帧长帧移计算帧数
    3) 根据确定用于估计噪声谱的帧数,估计噪声谱
    4) 对每一帧混合信号进行stft变换,然后用含噪信号谱减去噪声谱,得到增强后的信号的幅度谱或者能量谱
    5) 若增强后的信号的幅度谱或者能量谱出现负值,则将其替换为0
    6) 利用混合信号的相位增强后信号的幅度谱进行重构-反变换到时域

  2.4 简单谱减法结果展示

三、经典语音增强方法-过减法

  3.1 简单谱减法的缺点

    在简单谱减法过程中,如果混合信号的幅度谱与估计出来的噪声谱相减出现负值,说明对噪声出现了过估计问题,仅是简单的将出现的负值设为0,将会导致信号帧频谱的随机位置上出现小的、独立的峰值,称之为音乐噪声

  3.2 改进后的谱减法–>过减法

    改进的点如下所示:
     1) 在简单谱减法的基础上加上过减因子 α \alpha α
     2) 对过减后出现的负值用 β ∣ N ^ ( ω ) ∣ \beta|\hat{N}(\omega)| β∣N^(ω)∣替换, ∣ N ^ ( ω ) ∣ |\hat{N}(\omega)| ∣N^(ω)∣为估计到的噪声的幅度谱

  3.2 过减法数学公式

    改进后的过减法数学公式如下所示, ∣ X ^ ( ω ) ∣ = ( ∣ Y ( ω ) ∣ γ − α ∣ N ^ ( ω ) ∣ γ ) 1 γ |\hat{X}(\omega)|=\left(|Y(\omega)|^{\gamma}-\alpha|\hat{N}(\omega)|^{\gamma}\right)^{\frac{1}{\gamma}} ∣X^(ω)∣=(∣Y(ω)∣γ−α∣N^(ω)∣γ)γ1​     出增强后语音信号出现幅度谱负数的情况 β ∣ N ^ ( ω ) ∣ \beta|\hat{N}(\omega)| β∣N^(ω)∣替换
∣ X ^ ( ω ) ∣ = { β ∣ N ^ ( ω ) ∣ ∣ X ^ ( ω ) ∣ < β ∣ N ^ ( ω ) ∣ ∣ X ^ ( ω ) ∣  else  |\hat{X}(\omega)|= \begin{cases}\beta|\hat{N}(\omega)| & |\hat{X}(\omega)|<\beta|\hat{N}(\omega)| \\ |\hat{X}(\omega)| & \text { else }\end{cases} ∣X^(ω)∣={β∣N^(ω)∣∣X^(ω)∣​∣X^(ω)∣<β∣N^(ω)∣ else ​

  3.3 过减法降噪结果展示

四、参考文献

  1、语音降噪初探
  2、鲁东大学-于泓老师语音增强课程

标签:语音,hat,噪声,降噪,信号,减法,omega,gamma
来源: https://blog.csdn.net/ProgrammersFighting/article/details/117514234

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有