文中提出了一种深度网络来解决单通道语音增强问题。

链接:https://arxiv.org/abs/1911.01902

简介

因为背景噪声和混响的存在,录音通常会被扭曲,会对后端的语音识别等技术产生负面影响。单通道的语音增强算法一般有以下几种:Spectral estimation methods(OMLSA,etc),Source separation methods,Mapping methods。DNNs方法属于最后一种。DNN在训练过程中能够处理大量不同种类的噪声信号,这使其可以同时用于语音去混响和降噪方面。

在电话通信和助听器等实际应用中,都需要满足低延迟特性。

本文针对加性背景噪声(additive background noise)情况下的语音增强,采用一个FCN(fully convolutional network)代替全连接前馈网络。首先采用了主流的FCNs中的U-Net,基于此提出了一个新的结构即VGG19-UNet,在U-Net的编码解码结构中的编码部分嵌入一个VGG19的深度全卷积网络。

学习过程中,输入/输出特征分别为含噪/干净语音的频谱图,尺寸256*256。为了近似人耳听觉效应,文中建议采用Mel频率和幂律非线性频谱表示。

算法

U-Net的学习能力很强,由encoder, decoder和skip connections三部分组成。VGG的贡献在于揭示了卷积网络的深度对于大规模的图像定位和分类性能的影响。

图1(a)展示了VGG19的结构,图1(b)展示了一种新的语音增强网络,我们采用了VGG19的5个卷积块构成了一个强大的特征提取器,提取特征被喂到解码器部分。解码器中,采用2*2的上采样和2个具有ReLU的3*3 CNN层,该sequence重复5次。每个sequence的通道数减半最终到32,并且转换为频谱图通过一个具有线性激活函数的CNN。

详细来说,文中提出的算法被称为VGG19-UNet-MelPow语音增强器。主要由以下三个步骤组成:

1、提取perceptually-modified频谱图。

  对时域信号进行STFT得到幅度谱。帧长32ms,帧移8ms,FT点数为512。最终得到幅度谱向量维度为257。

  文中将对幅度谱采用mel尺度和幂律非线性得到的向量称为MelPow幅度谱向量。将256个连续的MelPow幅度谱向量拼接起来就得到了perceptually-modified幅度谱(注意,为了保证图像的对称性,忽略了最高频率带的图像),即得到256*256个时频单元。

  另,得到修正幅度谱图像之前,仅对含噪语音的MelPow幅度谱向量进行基于语句的均值方差归一化。

2、学习VGG19-UNet结构。

  用步骤1得到的图像集训练VGG19-UNet网络。利用Tensorflow和Keras库,the proposed network采用Adam优化方法,学习率为0.0002,50个epochs。批大小为10,训练集随机选取。采用线性激活函数生成增强后的谱图。训练时使得代价函数MSE最小。

3、生成增强语音。

  首先通过步骤1得到修正谱图像,并将其送到训练好的VGG19-Unet模型中,得到Mel频率和幂律的增强幅度谱图。结合含噪语音的相位信息和ISTFT,生成增强后的时域语音信号。

实验分析

实验中主要采用FARSDAT和NOISEX-92数据集,按照0.75,0.1,0.15的比例随机分为train,dev和test集。

采用两个主观评价准则,从语音质量(PESQ)和可懂度(ESTOI)两个方面,两个测度都是越高越好。

在不同的信噪比下面进行实验,结果表1和表2所示,均证明了文中方法的优越。

              

在不同种类的背景噪声环境下进行实验,结果见图2和图3。可以看出,不同方法在Restaurant和HF channel噪声下的结果都是最差的。和之前的结果类似,基于UNet-MelPow方法的结果优于Unet的。

                         

文中还分析了不同方法的频谱图和共振峰的差异。

此外,为了验证在UNet-MelPow语音增强方法中,增加U-Net结构的参数的影响,作者们将U-Net的所有卷积层中的滤波器数目加倍,即1024个,得到了31M的参数。将采用1024 filters的U-Net的UNet-MelPow方法称为UNet-MelPow-1024,将其和提出算法对比。实验证明,两种算法即使参数数量相同,但是proposed method增强后的语音仍有更好的PESQ和ESTOI。作者猜测,这是因为文中提出的VGG19-UNet结构中编码器采用了更深的结构。因为VGG19-UNet的编码器有16个卷积层,而传统的U-Net只有10个卷积层。

Speech Enhancement via Deep Spectrum Image Translation Network的更多相关文章

  1. 语音降噪论文“A Hybrid Approach for Speech Enhancement Using MoG Model and Neural Network Phoneme Classifier”的研读

    最近认真的研读了这篇关于降噪的论文.它是一种利用混合模型降噪的方法,即既利用了生成模型(MoG高斯模型),也利用了判别模型(神经网络NN模型).本文根据自己的理解对原理做了梳理. 论文是基于" ...

  2. 论文翻译:2020_DCCRN: Deep Complex Convolution Recurrent Network for Phase-Aware Speech Enhancement

    论文地址:DCCRN:用于相位感知语音增强的深度复杂卷积循环网络 论文代码:https://paperswithcode.com/paper/dccrn-deep-complex-convolutio ...

  3. 论文翻译:2022_PACDNN: A phase-aware composite deep neural network for speech enhancement

    论文地址:PACDNN:一种用于语音增强的相位感知复合深度神经网络 引用格式:Hasannezhad M,Yu H,Zhu W P,et al. PACDNN: A phase-aware compo ...

  4. 论文翻译:2020_WaveCRN: An efficient convolutional recurrent neural network for end-to-end speech enhancement

    论文地址:用于端到端语音增强的卷积递归神经网络 论文代码:https://github.com/aleXiehta/WaveCRN 引用格式:Hsieh T A, Wang H M, Lu X, et ...

  5. 论文翻译:2020_Densely connected neural network with dilated convolutions for real-time speech enhancement in the time domain

    提出了模型和损失函数 论文名称:扩展卷积密集连接神经网络用于时域实时语音增强 论文代码:https://github.com/ashutosh620/DDAEC 引用:Pandey A, Wang D ...

  6. 论文翻译:2021_论文翻译:2018_F-T-LSTM based Complex Network for Joint Acoustic Echo Cancellation and Speech Enhancement

    论文地址:https://arxiv.53yu.com/abs/2106.07577 基于 F-T-LSTM 复杂网络的联合声学回声消除和语音增强 摘要 随着对音频通信和在线会议的需求日益增加,在包括 ...

  7. 论文翻译:2020_Weighted speech distortion losses for neural-network-based real-time speech enhancement

    论文地址:基于神经网络的实时语音增强的加权语音失真损失 论文代码:https://github.com/GuillaumeVW/NSNet 引用:Xia Y, Braun S, Reddy C K A ...

  8. 论文翻译:2021_MetricGAN+: An Improved Version of MetricGAN for Speech Enhancement

    论文地址:MetricGAN+:用于语音增强的 MetricGAN 的改进版本 论文代码:https://github.com/JasonSWFu/MetricGAN 引用格式:Fu S W, Yu ...

  9. 论文翻译:2020_A Recursive Network with Dynamic Attention for Monaural Speech Enhancement

    论文地址:基于动态注意的递归网络单耳语音增强 论文代码:https://github.com/Andong-Li-speech/DARCN 引用格式:Li, A., Zheng, C., Fan, C ...

随机推荐

  1. 问题追查:QA压测工具http长连接总是被服务端close情况

    1. 背景 最近QA对线上单模块进行压测(非全链路压测),http客户端 与 thrift服务端的tcp链接总在一段时间被close. 查看服务端日志显示 i/o timeout. 最后的结果是: q ...

  2. git add命令行添加文件、文件夹以及撤销文件add的方法

       1.添加某个文件类型到暂存区,比如所有的 .html 文件. git add *.html    2.添加某个文件或者某个文件夹中的某个文件到暂存区 ,比如 index 下的 index.htm ...

  3. OCC与MVCC 的区别

    一.前言 在数据库中,并发控制是指在多个用户/进程/线程同时对数据库进行操作时,如何保证事务的一致性和隔离性的,同时最大程度地并发. 当多个用户/进程/线程同时对数据库进行操作时,会出现3种冲突情形: ...

  4. CMake方式编译

    [1]CMake基础 CMake是一种跨平台编译工具 CMake主要是编写CMakeLists.txt文件 通过CMake命令将CMakeLists.txt文件转化为make所需的Makefile文件 ...

  5. 34 个今年11月最受欢迎的 JavaScript 库

    作者:Iren Korkishko 译者:前端小智 来源:dev 点赞再看,养成习惯 本文 GitHub:github.com/qq449245884… 上已经收录,更多往期高赞文章的分类,也整理了很 ...

  6. Docker入门之安装与简单使用操作

    1.docker安装 #1.检查内核版本,必须是3.10及以上 uname -r #2.安装 yum -y install docker 2.docker简单使用 #1.启动docker system ...

  7. python 练习题:将列表中的大写字母转换成小写

    将列表中的大写字母转换成小写如果list中既包含字符串,又包含整数,由于非字符串类型没有lower()方法,L1 = ['Hello', 'World', 18, 'Apple', None]请修改列 ...

  8. form.submit()提交后返回数据的处理

    form.submit()发送请求一般是单向的,如果需要取返回的数据,一般会发送ajax请求,但是如果form中有附件呢?(以后有时间给大家分享ajax上传附件的功能),确实需要返回数据来知道该功能是 ...

  9. JDK10、JDK11、JDK12新特性

    JDK10新特性 1.var声明变量 很多人抱怨Java是一种强类型,需要引入大量的样板代码.甚至在这些情况下,给定好变量名,通常很清楚发生了什么,明显类型声明往往被认为是不必要的.许多流行的编程语言 ...

  10. MySQL——数据库操作

    1.创建数据库 登录MySQL服务后,使用create命令创建数据库 # 登录MySQL进入终端 mysql -u root -p # 之后输入命令 create database database_ ...