首页> 中国专利> 一种基于L1/2稀疏约束卷积非负矩阵分解的语音去噪方法和系统

一种基于L1/2稀疏约束卷积非负矩阵分解的语音去噪方法和系统

摘要

本发明公开了一种基于L1/2稀疏约束卷积非负矩阵分解的语音去噪方法和系统。在单通道语音增强中,假设含噪语音信号v(i)为噪声信号n(i)和语音信号s(i)加性不相关,即v(i)=n(i)+s(i),利用CNMF方法对特定噪声进行训练得到噪声基信息;然后以噪声基作为先验信息,使用CNMF_L1/2方法对含噪语言进行分解得到语音基,最后合成去噪后的语音。本发明方法能更好地刻画帧之间语音的相关性;并且使用L1/2正则项对语音基系数矩阵进行强稀疏约束,可实现分离后的语音包含更少的残留噪声。相较与传统方法如谱减法、维纳滤波法以及最小均方差对数域谱估计法等,更能够提高增强后语音的可懂度。

著录项

  • 公开/公告号CN105957537A

    专利类型发明专利

  • 公开/公告日2016-09-21

    原文格式PDF

  • 申请/专利权人 安徽大学;

    申请/专利号CN201610452012.7

  • 发明设计人 周健;路成;

    申请日2016-06-20

  • 分类号G10L21/0272(20130101);

  • 代理机构32207 南京知识律师事务所;

  • 代理人高玲玲

  • 地址 230039 安徽省合肥市肥西路3号

  • 入库时间 2023-06-19 00:31:36

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-10-08

    授权

    授权

  • 2016-10-19

    实质审查的生效 IPC(主分类):G10L21/0272 申请日:20160620

    实质审查的生效

  • 2016-09-21

    公开

    公开

说明书

技术领域

本发明属于声学信号处理领域,具体涉及一种基于L1/2稀疏约束卷积非负矩阵分解的语音去噪方法和系统。

背景技术

语音是日常交流的重要载体,但在现实环境中经常受到各种噪声污染,使人听不清内容。语音增强通过抑制或消除这些噪声干扰,从被污染的语音信号中尽可能提取出干净的语音,从而得到可懂的语音。语音增强技术经常用在语音识别、语音编码以及智能通信等领域。

基于非负矩阵分解(Non-negative matrix factorization,NMF)的语音增强方法是一种基于部分的表达方法,通过分解语音信号可以得到代表语音特性的基向量与系数矩阵。目前,NMF即非负矩阵分解法是很多研究者关注的重点。NMF的基本原理是将信号分解为基本矩阵和相应的系数矩阵,根据代价函数来计算各个信源成分所对应的基本矩阵和系数矩阵,从而实现信号的分离。根据已知音频信号的先验知识,可以将NMF分为盲信号模型、监督模型和半盲模型,即完全不知道先验信号成分基本矩阵,知道所有混叠信号成分的基本矩阵,与只知道部分混叠信号成分的基本矩阵。而代价函数的选取主要包括分离前后信号的相似度与根据所处理信号的特性而加入的一些限制条件两类。

中国专利CN201220541700.2公开了一种基于NMF非负矩阵分解的音频分离方法,包括辅助音乐语音区分模块和NMF非负矩阵分解模块,该方法通过引入NMF这一新的数学研究成果,结合语音音频与音乐音频的音频特征差异,可以较好地将混合的音频当中语音音频与音乐音频进行分离,从而得到较为清晰地音乐音频与语音音频,结合NMF方法与机器学习方法,对音频进行分类。

卷积非负矩阵分解方法(Convolutive non-negative matrix factorization,CNMF),使用一连串移位的非负矩阵分解之和来表示信号中的时间连续信息,这种分解方法可以很好地描述语音信号的时变特性。

发明内容

本发明的目的是提供一种对语音信号进行CNMF分解时,对其添加Lq稀疏性限制,以获得质量更好、可懂度更高的语音去噪方法和系统。

为了实现上述目的,本发明采用以下技术方案:一种基于L1/2稀疏约束卷积非负矩阵分解含噪语音去噪的方法,其特征在于:假设含噪语音信号v(i)为噪声信号n(i)和语音信号s(i)加性不相关,即v(i)=n(i)+s(i),含噪语音去噪的方法包括以下步骤:

步骤1:利用CNMF方法对特定噪声进行训练得到噪声基信息:

步骤2:以噪声基作为先验信息,使用CNMF_L1/2方法对含噪语言进行分解得到语音基,最后合成去噪后的语音。

所述步骤1具体包括以下步骤:

步骤1.1:对噪声进行短时傅里叶变换变换得到其幅度谱N;

步骤1.2:对噪声幅度谱进行CNMF分解得到噪声基Wn及其对应的系数矩阵Hn,分解的目标函数如下:

>D(V|Λ)=12||V-Λ||2---(1)>

其中,V是带分解的噪声幅度谱矩阵,Λ是对V的卷积估计值:

>Λ=Σt=0T0-1Wn(t)Hnt---(2)>

式(2)中W(t)和H分别代表第t个基矩阵和系数矩阵,表示将矩阵按列右移t步,左边空出列补0。

所述步骤1.2中目标函数式(1)由于分别对于W和H来说是凸函数,可以交替更新W和H,使用梯度下降法得到其更新方程:

>Wikn(t)Wikn(t)·Σk=1T(Vij+Wikn(t)·Wkin(t)·Λij)·HjkntΣk=1T(Λij+Wikn(t)·Wkin(t)·Vij)·Hjknt---(3)>

>HkjnHkjn·Σi=1M(Wkin(t)·Vij)Σi=1M(Wkin(t)·Λtij)---(4)>

所述步骤2具体包括以下步骤:

步骤2.1:对含噪语音进行STFT变换,在时频域得到如下非负矩阵和:

V=S+N(5)

其中,V、S、N分别是含噪语音、干净语音和噪声的幅度谱矩阵,同时得到语音谱的相位信息;

对式(5)右边进行卷积非负矩阵分解,得到:

>V=Σt=0T-1WtnWtsHntHst=Σt=0T-1Σk=1RWikn(t)Hkjnt+Σt=0T-1Σk=1RWiks(t)Hkjst---(6)>

其中,Ws和Hs表示语音基及其对应的系数矩阵,Wn和Hn表示噪声基及其对应的系数矩阵;步骤2.2:结合步骤1.2得到的噪声基Wn对含噪语音的幅度谱矩阵进行CNMF_L1/2分解得到语音基Ws、语音基系数Hs和新的噪声基系数矩阵CNMF_L1/2分解时的目标函数如下:

>D(V|Wn,Ws,Hn,Hs)=12||V-Σt=0T-1Wn(t)Hnt-Σt=0T-1Ws(t)Hst||2+λ||Hs||1/21/2---(7)>

步骤2.3:利用步骤2.2得到的语音基Ws、语音基系数Hs和相位信息合成得到去噪后语音的幅度谱S,合成方法如下所示:

>S=Σt=0T-1Ws(t)Hst---(8)>

步骤2.4:对去噪后语音的幅度谱S进行逆STFT变换得到增强后的语音频谱。

所述步骤2.2中目标函数式(7)的求解通过通过交替更新方式进行,即:

第1步,固定Wn和Hs,更新Ws

第2步,固定Ws、Wn更新Hs

第3步,固定Ws、Hs和Wn,更新

由于式(7)对于上述每一步都是一个凸函数,可以采用梯度下降法得到更新规则:

>Wiks(t)Wiks(t)·Σk=1T(Vij+Wiks(t)·Wkis(t)·Λij)·HjkstΣk=1T(Λij+Wiks(t)·Wkis(t)·Vij)·Hjkst---(9)>

>HkjsHkjs·Σi=1M(Wkis(t)·Vij)Σi=1M(Wkis(t)Λtij+λ2(Hkjs)(-1/2))---(10)>

>HkjnHkjn·Σi=1M(Wikn(t))·VijΣi=1M(Wikn(t))·Λtij---(11)>

一种基于L1/2稀疏约束卷积非负矩阵分解含噪语音去噪系统,包括:

STFT变换模块,用于将特定噪声和含噪语音进行短时傅里叶变换变换得到其幅度谱;

噪声训练模块,用于利用CNMF方法对特定噪声进行训练得到噪声基信息;

语音分解模块,用于将训练获得的噪声基作为先验信息,使用CNMF_L1/2方法对含噪语言进行分解得到语音基;

语音合成模块,用于得到的语音基和相位信息合成得到去噪后语音的幅度谱;

频谱转换模块,用于将去噪后语音的幅度谱进行逆STFT变换得到增强后的语音频谱。

非负矩阵分解(Non-negative matrix factorization,NMF)是一种特殊的基分解,要求矩阵所有元素都是非负的。即对于一个给定的非负矩阵V∈R≥0,n×m,NMF可以对其进行分解产生两个非负矩阵W∈R≥0,n×r和H∈R≥0,r×m,使得V≈WH。但是通常认为NMF中V的每一列是相互独立的,并没有考虑到某些信号(如语音信号)的时变特性,即相邻列(帧)之间往往有一定的相关性。为了描述这种帧间关系,使用一连串移位的NMF之和表示信号中的时间连续信息,由此产生卷积非负矩阵分解方法(Convolutive>

NMF和CNMF在分解语音信号幅度谱矩阵V时产生的基是趋于稀疏的,如果在W或H上增加一个稀疏性限制,不仅可以得到更稀疏的基,而且可以权衡稀疏程度和重构误差。由于在NMF中系数矩阵H的每一行与基矩阵W的每一列相对应,如果对H加上稀疏限制,则会对应产生相对稀疏的基W,根据信号稀疏表示理论,就可以用更少的基在字典上表示原来的信号。

在CNMF上对H加稀疏性限制的目标函数可以表示为:

>L(V||Λ)=12||V-Λ||2+λ||H||qq---(12)>

其中,λ∈R≥0是一个正则化参数,用来平衡稀疏程度和重建误差;q=0、1/2、1、2分别代表L0、L1/2、L1、L2正则化。

对(12)式中H的限制,希望得到的H中元素尽可能的为0,称为L0正则化。但是L0正则化是个非凸的NP难问题,找不到局部最优解。为了解决这个问题,提出了一种使用L1正则化来近似求解L0正则化的方法。CNMF加上L1稀疏约束(以下简称“L1_CNMF”)表示如下:

>L(V||Λ)=12||V-Λ||2+λ||H||11---(13)>

虽然L1和L2正则化可以转化成凸优化问题求解,但是它们的解并不一定最稀疏。特别是当0<q<1时,Lq正则化可以产生比L1更稀疏的解;当1/2≤q<1时,q越小Lq的解越稀疏;而当1/2<q<1时,Lq解的稀疏程度没太大差别。

在语音去噪处理中,如果能够使用比较稀疏的基来表示原来的语音信号,则在去噪阶段会携带更少的噪声,这样可以使去噪后的语音更加清晰可懂。语音基的系数矩阵H越稀疏,越能利用更少的语音基重构原语音信号。本发明对H使用更加稀疏的L1/2正则化约束,目标函数式(12)可以改写为:

>L(V||Λ)=12||V-Λ||2+λ||H||1/21/2---(14)>

通过在语音信号进行CNMF分解时,对其添加Lq稀疏性限制,得到更加稀疏的语音基表示原语音。用得到的语音基合成增强后的语音时,会携带更少的噪声基,得到质量更好、可懂度更高的语音。

本发明方法能更好地刻画帧之间语音的相关性;并且使用L1/2正则项对语音基系数矩阵进行强稀疏约束,可实现分离后的语音包含更少的残留噪声。相较与传统方法如谱减法、维纳滤波法以及最小均方差对数域谱估计法等,更能够提高增强后语音的可懂度。

附图说明

图1是本发明对含噪语音信号去噪的流程图。

图2是步骤1的噪声训练过程的流程图。

图3是步骤2对含噪语音进行分解合成增强后语音的流程图。

图4是L1/2稀疏约束的CNMF去噪方法在语音增强上的收敛曲线。

图5是实施增强阶段语音信号的系数矩阵H以及语音基W,(a)和(b)分别是CNMF_L1和CNMF_L1/2分解语音信号时的H和W。

图6是六种不同方法在不同噪声环境下的STOI值。

图7是六种方法在不同噪声环境下的SegSNR改进值。

具体实施方式

下面结合具体实施例和附图对本发明做进一步的说明。

本发明是一种基于L1/2稀疏约束卷积非负矩阵分解(以下称作“CNMF_L1/2”)的语音去噪方法,图1是本发明去噪的总体流程图。整体的输入为某种特定类型噪声和混合噪声后的语音,其中噪声可以是不同类型的(如平稳噪声、非平稳噪声等);输出为去噪后的语音。

图2是步骤1的噪声训练过程的流程图。

步骤1.1,对噪声进行短时傅里叶变换((Short-Time Fourier Transform,STFT))变换得到其幅度谱N.

步骤1.2,对噪声幅度谱进行CNMF分解得到噪声基Wn及其对应的系数矩阵Hn,分解的目标函数如下:

>D(V|Λ)=12||V-Λ||2---(1)>

其中,V是带分解的噪声幅度谱矩阵,Λ是对V的卷积估计值,:

>Λ=Σt=0T0-1Wn(t)Hnt---(2)>

式(2)中W(t)和H分别代表第t个基矩阵和系数矩阵,表示将矩阵按列右移t步,左边空出列补0。

由于式(1)分别对于W和H来说是凸函数,可以交替更新W和H,使用梯度下降法得到其更新方程:

>Wikn(t)Wikn(t)·Σk=1T(Vij+Wikn(t)·Wkin(t)·Λij)·HjkntΣk=1T(Λij+Wikn(t)·Wkin(t)·Vij)·Hjknt---(3)>

>HkjnHkjn·Σi=1M(Wkin(t)·Vij)Σi=1M(Wkin(t)·Λtij)---(4)>

图3是步骤2对含噪语言进行分解合成去噪后的语音的流程图,单通道语音增强通常假设含噪语音信号v(i)为噪声信号n(i)和语音信号s(i)加性不相关,即v(i)=n(i)+s(i)。

步骤2.1,对含噪语音进行STFT变换,可以在时频域得到如下非负矩阵和:

V=S+N(5)

其中,V、S、N分别是含噪语音、干净语音和噪声的幅度谱矩阵。同时得到语音谱的相位信息。

对式(5)右边进行卷积非负矩阵分解,得到

>V=Σt=0T-1WtnWtsHntHst=Σt=0T-1Σk=1RWikn(t)Hkjnt+Σt=0T-1Σk=1RWiks(t)Hkjst---(6)>

其中,Ws和Hs表示语音基及其对应的系数,Wn和Hn表示噪声基及其对应的系数。

步骤2.2,结合训练模块得到的噪声基Ws对含噪语音的幅度谱矩阵进行CNMF_L1/2分解得到语音基Ws、语音基系数Hs和新的噪声基系数矩阵CNMF_L1/2分解时的目标函数如下:

>D(V|Wn,Ws,Hn,Hs)=12||V-Σt=0T-1Wn(t)Hnt-Σt=0T-1Ws(t)Hst||2+λ||Hs||1/21/2---(7)>

式(7)需要求解Ws、Hs和新的噪声基系数矩阵为此可以通过交替更新方式进行,即

第1步,固定Wn和Hs,更新Ws

第2步,固定Ws、Wn更新Hs

第3步,固定Ws、Hs和Wn,更新

由于式(7)对于上述每一步都是一个凸函数,可以采用梯度下降法得到更新规则:

>Wiks(t)Wiks(t)·Σk=1T(Vij+Wiks(t)·Wkis(t)·Λij)·HjkstΣk=1T(Λij+Wiks(t)·Wkis(t)·Vij)·Hjkst---(8)>

>HkjsHks·Σi=1M(Wkis(t)·Vij)Σi=1M(Wkis(t)Λtij+λ2(Hkjs)(-1/2))---(9)>

>HkjnHkjn·Σi=1M(Wikn(t))·VijΣi=1M(Wikn(t))·Λtij---(10)>

步骤2.3,利用步骤2得到的语音基Ws、语音基系数Hs和相位信息合成得到去噪后语音的幅度谱S,合成方法如下所示:

>S=Σt=0T-1Ws(t)Hst---(11)>

步骤4,对去噪后语音的幅度谱S进行逆STFT变换得到增强后的语音频谱。

一种基于L1/2稀疏约束卷积非负矩阵分解含噪语音去噪系统,其特征在于包括:STFT变换模块,用于将特定噪声和含噪语音进行短时傅里叶变换变换得到其幅度谱;噪声训练模块,用于利用CNMF方法对特定噪声进行训练得到噪声基信息;语音分解模块,用于将训练获得的噪声基作为先验信息,使用CNMF_L1/2方法对含噪语言进行分解得到语音基;语音合成模块,用于得到的语音基和相位信息合成得到去噪后语音的幅度谱;频谱转换模块,用于将去噪后语音的幅度谱进行逆STFT变换得到增强后的语音频谱。

通过仿真实验模拟分析本发明含噪语音去噪方法的有益效果:

实验硬件配置为Core i5 3.2GHz,内存4G,仿真软件为Matlab2013a。为了验证本发明所提出的方法的有效性,选取了TIMIT语音库中的语料作为干净语音,分别为男声25句,女声25句,每句约3s;再选取NOISEX-92噪声库的噪声作为实验数据,选取的噪声包括平稳噪声和非平稳噪声,分别是Babble、F16、White及M109四种噪声。干净语音和噪声的标准均为采样率8kHz,精度16bit。实验过程中对干净语音和噪声按照五种不同信噪比(SNR分别为-5dB、0dB、5dB、10dB)进行混合。在噪声谱和含噪语音谱计算时,均对信号进行分帧处理,帧长为512个样点,帧间重叠50%,对每帧进行512点的离散傅里叶变换。

为了比较本发明的优势,使用无稀疏约束的CNMF方法,L1稀疏约束的CNMF方法以及本发明提出的L1/2稀疏约束的CNMF方法(以下分别简称为CNMF、CNMF_L1、CNMF_L1/2)三种不同方法比较。同时为了验证本发明所提语音增强方法的实用性,还与常用的三种语音增强方法包括谱减法、基于先验信噪比维纳滤波法、最小均方差对数域谱幅度估计法(以下分别简称为PS、Wiener、logMMSE)做对比,比较它们之间在语音增强效果上的差异性。

对于方法性能影响的参数主要有三个:时频基的个数R,方法迭代的次数Iter,稀疏系数λ。时频基代表着语音信号的特征,R的选取代表有关时频基的个数,并且实验中时频基的个数取值经验地与语音中的音素相对应。由于本实验使用的每条干净语音都是含约12个音素的语音,所以R选取12。在方法的迭代次数上,图4是本发明L1/2稀疏约束的CNMF方法用在语音增强上的收敛曲线,可以看到在200次以后目标函数的值已经很平稳,从实验角度证实了方法收敛,故后续实验中Iter设为200。稀疏系数λ是权衡代价函数与稀疏程度的重要参数,通过调整λ取值,语音增强阶段中能够在去除残留噪声和减小语音失真之间得到折中。语音基欠稀疏或者过稀疏都会使增强后的语音效果变差,本发明经过对不同λ下语音可懂度的实验得到经验值0.01。

实验结果

本发明采用两种评价标准来客观评价本发明在语音增强上的性能。第一种是在语音可懂度上的评价,为去噪后语音可懂度的STOI(Short-Time ObjectiveIntelligibility)得分。语音可懂度评价主要考察语音中所载信息被理解的程度。STOI是一种可懂度衡量指标,用于衡量语音增强方法的可懂度性能,并且STOI的取值在(0,1)范围内,值越大,表明增强后语音的可懂度越高。

第二种是在语音质量上的评价,为去噪后语音的分段信噪比SegSNR(SegmentalSNR)。语音质量评价则主要考察语音的听觉舒适度、自然度和愉悦度。SegSNR是语音增强方法常用的一种客观质量评价标准,主要用于衡量增强后语音相对于干净语音的波形失真程度。

本发明采用L1/2正则化约束,与L1约束相比,在分解含噪语音时,由于在目标函数中,对系数矩阵H作L1/2稀疏性限制,可以产生更加稀疏的H,从而在分解语音信号时得到更加稀疏的语音基。为了验证CNMF_L1/2在稀疏性上的效果,将增强阶段语音信号的系数矩阵H以及语音基W显示在图5中,图5(a)和(b)分别是CNMF_L1和CNMF_L1/2分解语音信号时的H和W,图的上半部分为系数矩阵H,下半部分为12个语音基。从图5可以看出,与CNMF_L1和CNMF_L1/2的H更加稀疏。

图6是六种不同方法在不同噪声环境下的STOI值,其中UN表示原始含噪语音。从图6中可以看到,与同类的两种方法CNMF和CNMF_L1相比,本发明的CNMF_L1/2方法在STOI上具有优势,说明在去噪过程中使用越稀疏的语音基表示干净语音时携带的噪声基就越少,因此增强后语音的可懂度就越高。同时,与经典的语音增强方法PS、Wiener、logMMSE相比,本发明方法的STOI值提升明显,特别是在0dB以下时具有更高的可懂度。这是因为本发明方法先通过有监督的字典学习获得了噪声字典,在增强阶段分解含噪语音时,对噪声的特征比较敏感而对噪声的能量不敏感,故可以分离出更多的噪声基,得到的增强语音可懂度越好。

图7是六种方法在不同噪声环境下的SegSNR改进值(利用增强后语音的SegSNR减去增强前语音的SegSNR计算得到),改进的值越大,语音质量越好。从图7中可以看出,在增强后语音的质量上,CNMF_L1/2方法优于同类的CNMF和CNMF_L1两种方法。与经典方法相比,在低信噪比时略有优势,高信噪比时效果稍不如经典方法。这可能是由于高信噪比时,含噪语音中的噪声基较少,虽然结合了训练的噪声字典,但分离噪声时也会导致一定的语音基被带走,导致增强后语音的质量变差。

性能分析

CNMF_L1/2语音增强方法需要提前对噪声进行训练得到噪声字典作为先验信息,训练噪声时一次迭代耗时约为0.1s。在增强过程中使用L1/2训约束的CNMF对含噪语音进行分解,求解过程使用乘性更新规则,一次迭代的耗时为0.15s。

此外,由于CNMF_L1/2方法是一种基于字典学习的方法,用于语音增强中先得到噪声字典,因此对噪声的特征信息比较敏感,在分解含噪语音时,能够更有效地分离噪声基。在低信噪比时,可以分离出更多的噪声基;在高信噪比时,则会导致一定的语音基损失。

结论

本发明提出了一种基于L1/2稀疏约束CNMF的单通道语音增强方法。CNMF_L1/2方法充分利用卷积非负矩阵在描述语音信号时间特性的优势上,使用L1/2正则项对系数矩阵H进行稀疏约束。通过使用稀疏性能更好的L1/2约束分解项,可以得到更加稀疏的语音基来表示干净语音,而且本文采用有监督的语音增强方法,通过噪声训练阶段得到的噪声基,更能有效地帮助增强阶段语音信号与噪声信号的分离。在四类不同噪声和五种信噪比下进行仿真实验,验证了CNMF_L1/2方法在语音增强中具有良好的性能。从实验部分可以发现,本方法在低信噪比环境下的效果不错,未来的工作将进一步研究低信噪比条件下CNMF_L1/2方法的适用性。另外,还将对基于经验的稀疏系数λ进行更深入的研究。

以上所述,仅是本发明的较佳实施例而已,并非对本发明做任何形式的限制。凡是依据本发明的技术和方法实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明的技术和方法方案的范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号