本發(fā)明屬于語音增強(qiáng)和非負(fù)矩陣分解領(lǐng)域,特別涉及一種基于多幀頻譜和非負(fù)矩陣分解的語音增強(qiáng)方法與裝置。
背景技術(shù):
語音增強(qiáng),也稱為語音降噪,是對(duì)帶噪語音進(jìn)行處理,去除帶噪語音中的噪聲部分,獲取帶噪語音中的純凈語音部分,在改善語音質(zhì)量的同時(shí),提高語音的可懂度的語音處理技術(shù)。語音增強(qiáng)技術(shù)可以抑制語音通信過程中的背景噪聲,提高通信質(zhì)量。也可以作為語音處理系統(tǒng)的預(yù)處理系統(tǒng),幫助語音處理系統(tǒng)抵抗噪聲的干擾,提升系統(tǒng)的穩(wěn)定性。在電子信息技術(shù)高速發(fā)展和成熟的今天,語音增強(qiáng)系統(tǒng)應(yīng)用于通訊、手機(jī)、電腦、演唱會(huì)、偵查、場景錄音等各種領(lǐng)域。
語音增強(qiáng)方法的種類眾多,其中一種是基于短時(shí)頻譜的語音增強(qiáng)方法,該類方法包括維納濾波法、譜減法和mmse估計(jì)法等經(jīng)典算法。基于短時(shí)頻譜的語音增強(qiáng)方法實(shí)現(xiàn)簡單,可以抑制噪聲,有應(yīng)用價(jià)值。短時(shí)頻譜雖然滿足了語音短時(shí)平穩(wěn)的性質(zhì),但是忽略了語音的其它特征信息。
tseng等人提出了基于多幀稀疏字典學(xué)習(xí)和統(tǒng)計(jì)準(zhǔn)則的語音增強(qiáng)方法。該方法的突出貢獻(xiàn)是在語音增強(qiáng)方法中使用了多幀頻譜,這和傳統(tǒng)的基于短時(shí)頻譜的語音增強(qiáng)方法有較大的區(qū)別。在基于短時(shí)頻譜的語音增強(qiáng)方法中,為了獲得短時(shí)頻譜,需要將語音分為時(shí)間長度為10ms~30ms的幀,再使用短時(shí)傅里葉變換(short-timefouriertransform,stft)將時(shí)域信號(hào)變換到頻域。
語音的最小單位是音素,而幀的時(shí)間長度通常小于音素的時(shí)間長度。也就是說,短時(shí)頻譜的幀無法覆蓋語音的最小單位。單個(gè)音素具有相對(duì)固定的時(shí)間結(jié)構(gòu),一些相鄰音素還具有特定的轉(zhuǎn)換關(guān)系。顯然,這些信息無法通過單個(gè)幀獲取。
多幀頻譜能夠保存這些信息。多幀頻譜是一種結(jié)合上下文的語音建模方式。所建立的模型有如下優(yōu)勢:(1)在時(shí)間連續(xù)的語音中,上下文結(jié)構(gòu)影響著時(shí)頻能量的分布,多幀頻譜可以保存這類語音的信息;(2)多幀頻譜可以獲取相鄰音素之間的共振峰轉(zhuǎn)換和音調(diào)變化等信息。
因此,結(jié)合上下文建模的多幀頻譜預(yù)計(jì)能獲得更好的語音模型,從而獲得更好的語音增強(qiáng)效果。在多幀頻譜中,多幀合成的“包”替換了原來的單幀?!鞍眱?nèi)的多幀在時(shí)間上連續(xù),單個(gè)“包”相當(dāng)于時(shí)間長度更大的幀,也可以將多幀頻譜稱為長時(shí)頻譜。與短時(shí)頻譜相比,多幀頻譜保存了語音的時(shí)序動(dòng)態(tài)特征和時(shí)間結(jié)構(gòu)。
1999年,lee和seung提出了非負(fù)矩陣分解(non-negativematrixfactorization,nmf)。nmf最初用于圖像處理領(lǐng)域。近年來,nmf在語音增強(qiáng)領(lǐng)域也取得了較好的效果,逐漸成為一種主流的語音增強(qiáng)方法,受到了學(xué)者們的重視。
nmf將n×m維的非負(fù)數(shù)據(jù)矩陣v分解成w和h兩個(gè)矩陣,并且滿足近似相等公式:
v≈wh(1-1)
其中w是n×r維矩陣,h是r×m維矩陣,參數(shù)r滿足r<nm/(n+m)。
一般將w稱為v的基矩陣,將h稱為v的系數(shù)矩陣。基矩陣w保存了非負(fù)數(shù)據(jù)矩陣v的數(shù)據(jù)特征,由基向量wi構(gòu)成,每個(gè)基向量wi代表一個(gè)獨(dú)立的特征向量。系數(shù)矩陣h是非負(fù)數(shù)據(jù)矩陣v的降維矩陣,由系數(shù)向量hi構(gòu)成,每個(gè)系數(shù)向量hi對(duì)應(yīng)v的一個(gè)列向量vi。
nmf的主要作用是特征提取和數(shù)據(jù)降維。基矩陣w中包含了數(shù)據(jù)矩陣v的特征向量。同一類數(shù)據(jù)的具有近似的特征,因此可以利用nmf來提取一類數(shù)據(jù)的共有特征。系數(shù)矩陣h和數(shù)據(jù)矩陣v一一對(duì)應(yīng),可以看成是v降維后的結(jié)果。在同一類數(shù)據(jù)中,w不隨v的改變而改變,而h隨v的改變而改變。通俗地說,基矩陣包含數(shù)據(jù)的“共性”,系數(shù)矩陣代表數(shù)據(jù)的“特性”。
目前基于nmf的語音增強(qiáng)方法仍然是針對(duì)短時(shí)頻譜進(jìn)行處理,這類方法存在如下的問題:訓(xùn)練短時(shí)頻譜無法獲得多幀頻譜包含的語音特有信息,恢復(fù)得到的純凈語音質(zhì)量較差,語音增強(qiáng)效果較差。
已有的基于nmf的語音增強(qiáng)方法,流程如圖1所示,包括訓(xùn)練基矩陣階段和語音增強(qiáng)階段兩個(gè)階段,包括以下步驟:
1)訓(xùn)練基矩陣階段,具體包括以下步驟:
1-a)通過對(duì)訓(xùn)練數(shù)據(jù)預(yù)處理和快速傅里葉變換,分別得到訓(xùn)練數(shù)據(jù)中純凈語音的短時(shí)頻譜和噪聲的短時(shí)頻譜;
1-b)通過nmf算法,將步驟1-a)得到的純凈語音的短時(shí)頻譜和噪聲的短時(shí)頻譜分別轉(zhuǎn)化為各自對(duì)應(yīng)的基矩陣和系數(shù)矩陣的乘積;
1-c)通過計(jì)算最小廣義kl散度代價(jià)函數(shù),分別求出純凈語音短時(shí)頻譜的基矩陣和噪聲短時(shí)頻譜的基矩陣;
2)語音增強(qiáng)階段,具體包括以下步驟:
2-a)通過對(duì)帶噪語音預(yù)處理和快速傅里葉變換,得到帶噪語音的短時(shí)頻譜;
2-b)利用步驟1-c)分別得到的的噪聲短時(shí)頻譜的基矩陣和純凈語音短時(shí)頻譜的基矩陣,合成帶噪語音短時(shí)頻譜的基矩陣;
2-c)通過nmf算法,將步驟2-a)得到的帶噪語音的短時(shí)頻譜轉(zhuǎn)化為基矩陣和系數(shù)矩陣的乘積;
2-d)利用步驟2-c)得到的結(jié)果,通過計(jì)算最小廣義kl散度代價(jià)函數(shù),并結(jié)合步驟2-b)合成得到的帶噪語音短時(shí)頻譜的基矩陣,求出帶噪語音短時(shí)頻譜的系數(shù)矩陣;
2-e)通過步驟2-d)得到帶噪語音短時(shí)頻譜的系數(shù)矩陣和步驟2-b)得到的帶噪語音短時(shí)頻譜的基矩陣,獲得純凈語音和噪聲的短時(shí)頻譜的初始估計(jì);
2-f)通過維納濾波方法,獲得增強(qiáng)語音的短時(shí)頻譜;
2-g)將步驟2-f)得到的增強(qiáng)語音的短時(shí)頻譜變換為時(shí)域信號(hào),獲得最終的增強(qiáng)語音。
上述步驟中,最為關(guān)鍵的一個(gè)步驟是nmf基矩陣求解算法,即步驟1-c)。該算法的具體過程如下:
kl散度代價(jià)函數(shù)是:經(jīng)過計(jì)算,基矩陣與系數(shù)矩陣的乘積與目標(biāo)非負(fù)矩陣的kl散度距離應(yīng)盡量小,表達(dá)式如下:
式中,v代表語音的短時(shí)頻譜,w和h分別代表短時(shí)頻譜的基矩陣和系數(shù)矩陣。i,j為矩陣的行列索引。
設(shè)定w和h的初始元素為隨機(jī)非負(fù)數(shù),代入如下迭代公式:
式中,i,a,u,k為矩陣的行列索引。
經(jīng)過若干次迭代計(jì)算,直至w和h收斂,非負(fù)矩陣分解完成,獲得短時(shí)頻譜的基矩陣。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是為了解決已有技術(shù)的不足之處,提出了一種基于多幀頻譜和非負(fù)矩陣分解的語音增強(qiáng)方法與裝置。本發(fā)明將多幀頻譜和非負(fù)矩陣分解應(yīng)用到語音增強(qiáng)系統(tǒng)上;在原有短時(shí)頻譜的基礎(chǔ)上構(gòu)建多幀頻譜,并利用非負(fù)矩陣分解得到增強(qiáng)語音,獲取和保存了語音的特有中長時(shí)信息,更好地還原語音,提升語音增強(qiáng)的效果。
本發(fā)明提出的一種基于多幀頻譜和非負(fù)矩陣分解的語音增強(qiáng)方法,其特征在于,分為構(gòu)建多幀頻譜階段、訓(xùn)練基矩陣階段和語音增強(qiáng)階段共三個(gè)階段;包括以下步驟:
1)構(gòu)建多幀頻譜階段;具體包括以下步驟:
1-1)對(duì)語音進(jìn)行預(yù)處理,得到語音的短時(shí)頻譜;預(yù)處理包括對(duì)語音進(jìn)行零均值化和預(yù)加重;首先進(jìn)行零均值化,為整段語音減去其均值;然后進(jìn)行預(yù)加重:對(duì)零均值化后的語音進(jìn)行高通濾波,并對(duì)該語音進(jìn)行分幀,然后進(jìn)行快速傅里葉變換;預(yù)處理完成后得到語音的短時(shí)頻譜;
1-2)根據(jù)步驟1-1)得到的語音的短時(shí)頻譜,按照包結(jié)構(gòu),將短時(shí)頻譜轉(zhuǎn)化為對(duì)應(yīng)的多幀頻譜;
2)訓(xùn)練基矩陣階段;具體包括以下步驟:
2-1)提取噪聲和純凈語音,重復(fù)步驟1),分別獲取噪聲的多幀頻譜和純凈語音的多幀頻譜;
2-2)通過非負(fù)矩陣分解nmf算法,將步驟2-1)得到的噪聲的多幀頻譜和純凈語音的多幀頻譜分別轉(zhuǎn)化為各自對(duì)應(yīng)的基矩陣和系數(shù)矩陣的乘積;
2-3)通過最小廣義kl散度代價(jià)函數(shù),分別求出噪聲的多幀頻譜的基矩陣和純凈語音的多幀頻譜的基矩陣;
3)語音增強(qiáng)階段;具體包括以下步驟:
3-1)提取帶噪語音,重復(fù)步驟1),獲取帶噪語音的多幀頻譜;
3-2)利用步驟2-3)得到的噪聲的多幀頻譜的基矩陣和純凈語音的多幀頻譜的基矩陣,合成帶噪語音多幀頻譜的基矩陣;
3-3)通過nmf算法,將步驟3-1)得到的帶噪語音的多幀頻譜轉(zhuǎn)化為相應(yīng)的基矩陣和系數(shù)矩陣的乘積;
3-4)利用步驟3-3)得到的帶噪語音的多幀頻譜的基矩陣和系數(shù)矩陣的乘積,通過最小廣義kl散度代價(jià)函數(shù),并結(jié)合步驟3-2)得到的的帶噪語音多幀頻譜的基矩陣,獲得帶噪語音的多幀頻譜的系數(shù)矩陣;
3-5)通過步驟3-4)得到的帶噪語音多幀頻譜的系數(shù)矩陣和步驟2-3)得到的噪聲的多幀頻譜的基矩陣和純凈語音的的多幀頻譜的基矩陣,分別獲得噪聲的多幀頻譜和純凈語音的多幀頻譜的初始估計(jì);
3-6)利用步驟3-5)得到的噪聲的多幀頻譜和純凈語音的多幀頻譜的初始估計(jì),通過維納濾波方法,獲得增強(qiáng)語音的多幀頻譜;
3-7)將步驟3-6)得到的增強(qiáng)語音的多幀頻譜通過解除包結(jié)構(gòu)變換為增強(qiáng)語音的短時(shí)頻譜,在解除包結(jié)構(gòu)的過程中,對(duì)多個(gè)包中所包含的相同幀進(jìn)行求和平均;
3-8)將步驟3-7)得到的的純凈語音的短時(shí)頻譜變換為時(shí)域信號(hào),獲得最終的增強(qiáng)語音。
一種基于本發(fā)明提出的多幀頻譜和非負(fù)矩陣分解的語音增強(qiáng)方法的實(shí)現(xiàn)裝置,其特征在于,包括:語音預(yù)處理模塊,多幀頻譜構(gòu)建模塊,訓(xùn)練多幀頻譜基矩陣模塊,合成帶噪語音基矩陣模塊,計(jì)算帶噪語音系數(shù)矩陣模塊,計(jì)算語音和噪聲多幀頻譜模塊,維納濾波模塊,恢復(fù)時(shí)域信號(hào)模塊和存儲(chǔ)模塊;
所述語音預(yù)處理模塊用于對(duì)純凈語音和噪聲以及待處理的帶噪語音分幀,加窗,快速傅里葉變換,得到相應(yīng)語音的短時(shí)頻譜;
所述多幀頻譜構(gòu)建模塊用于將語音預(yù)處理模塊預(yù)處理后的短時(shí)頻譜,轉(zhuǎn)化為對(duì)應(yīng)的多幀頻譜;
所述訓(xùn)練多幀頻譜基矩陣模塊,用于根據(jù)多幀頻譜構(gòu)建模塊獲得的噪聲的多幀頻譜和純凈語音的多幀頻譜,訓(xùn)練噪聲的基矩陣和純凈語音的基矩陣;
所述合成帶噪語音基矩陣模塊,用于根據(jù)訓(xùn)練多幀頻譜基矩陣模塊獲得的噪聲的基矩陣和純凈語音的基矩陣合成帶噪語音的基矩陣;
所述計(jì)算帶噪語音系數(shù)矩陣模塊,用于根據(jù)合成帶噪語音基矩陣模塊獲得的帶噪語音的基矩陣,采用非負(fù)矩陣分解的方法,獲得帶噪語音的系數(shù)矩陣;
所述計(jì)算語音和噪聲多幀頻譜模塊,用于根據(jù)合成帶噪語音基矩陣模塊合成的帶噪語音的基矩陣和計(jì)算帶噪語音系數(shù)矩陣模塊獲得的帶噪語音的系數(shù)矩陣,分別計(jì)算增強(qiáng)語音的多幀頻譜和噪聲的多幀頻譜的初始估計(jì);
所述維納濾波模塊,用于根據(jù)計(jì)算語音和噪聲的多幀頻譜模塊獲得的增強(qiáng)語音的多幀頻譜和噪聲的多幀頻譜的初始估計(jì),構(gòu)建維納濾波器,獲得增強(qiáng)語音的多幀頻譜;
所述恢復(fù)時(shí)域信號(hào)模塊,根據(jù)維納濾波模塊獲得的增強(qiáng)語音的多幀頻譜,獲得增強(qiáng)語音的時(shí)域信號(hào);
所述存儲(chǔ)模塊,用于存儲(chǔ)訓(xùn)練多幀頻譜基矩陣模塊得到的噪聲的基矩陣和純凈語音的基矩陣數(shù)據(jù),并將相應(yīng)數(shù)據(jù)傳給相應(yīng)模塊。
本發(fā)明的特點(diǎn)及有益效果:
本發(fā)明提出的一種基于多幀頻譜和非負(fù)矩陣分解的語音增強(qiáng)方法與裝置,與傳統(tǒng)方法相比,本發(fā)明方法將多幀頻譜和非負(fù)矩陣分解應(yīng)用到語音增強(qiáng)方法上。在原有短時(shí)頻譜的基礎(chǔ)上構(gòu)建多幀頻譜,并利用非負(fù)矩陣分解增強(qiáng)語音,獲取和保存了語音的特有信息,即語音的中長時(shí)信息,更好地還原語音,提升語音增強(qiáng)的效果。本發(fā)明通過使用多幀頻譜,可以有效提高語音質(zhì)量,提升語音增強(qiáng)的效果。
附圖說明
圖1是已有的基于nmf的語音增強(qiáng)方法的流程框圖。
圖2是本發(fā)明提出的一種基于多幀頻譜和非負(fù)矩陣分解的語音增強(qiáng)方法流程框圖。
具體實(shí)施方式
本發(fā)明提出的一種基于多幀頻譜和非負(fù)矩陣分解的語音增強(qiáng)方法與裝置,下面結(jié)合附圖及具體實(shí)施例詳細(xì)說明如下。
本發(fā)明提出的一種基于多幀頻譜和非負(fù)矩陣分解的語音增強(qiáng)方法,流程框圖如圖2所示,該方法分為構(gòu)建多幀頻譜階段、訓(xùn)練基矩陣階段和語音增強(qiáng)階段共三個(gè)階段;包括以下步驟:
1)構(gòu)建多幀頻譜階段;具體包括以下步驟:
1-1)對(duì)語音進(jìn)行預(yù)處理,得到語音的短時(shí)頻譜;預(yù)處理包括對(duì)語音進(jìn)行零均值化和預(yù)加重;首先進(jìn)行零均值化,為整段語音減去其均值;然后進(jìn)行預(yù)加重:對(duì)零均值化后的語音進(jìn)行高通濾波,并對(duì)該語音進(jìn)行分幀,然后進(jìn)行快速傅里葉變換;預(yù)處理完成后得到語音的短時(shí)頻譜;
進(jìn)行預(yù)處理的語音對(duì)象沒有要求,可以為任意語音;
1-2)根據(jù)步驟1-1)得到的語音的短時(shí)頻譜,按照特定的“包”結(jié)構(gòu),將短時(shí)頻譜轉(zhuǎn)化為對(duì)應(yīng)的多幀頻譜;
2)訓(xùn)練基矩陣階段;具體包括以下步驟:
2-1)提取噪聲和純凈語音,重復(fù)步驟1),分別獲取噪聲的多幀頻譜和純凈語音的多幀頻譜;本發(fā)明中噪聲和純凈語音來源于基礎(chǔ)數(shù)據(jù)庫。
2-2)通過nmf算法,將步驟2-1)得到的噪聲的多幀頻譜和純凈語音的多幀頻譜分別轉(zhuǎn)化為各自對(duì)應(yīng)的基矩陣和系數(shù)矩陣的乘積;
2-3)通過最小廣義kl散度代價(jià)函數(shù),分別求出噪聲的多幀頻譜的基矩陣和純凈語音的多幀頻譜的基矩陣;
3)語音增強(qiáng)階段;具體包括以下步驟:
3-1)提取帶噪語音,重復(fù)步驟1),獲取帶噪語音的多幀頻譜;本實(shí)施例中帶噪語音為實(shí)驗(yàn)室錄制得到;
3-2)利用步驟2-3)得到的噪聲的多幀頻譜的基矩陣和純凈語音的多幀頻譜的基矩陣,合成帶噪語音多幀頻譜的基矩陣;
3-3)通過nmf算法,將步驟3-1)得到的帶噪語音的多幀頻譜轉(zhuǎn)化為相應(yīng)的基矩陣和系數(shù)矩陣的乘積;
3-4)利用步驟3-3)得到的帶噪語音的多幀頻譜的基矩陣和系數(shù)矩陣的乘積,通過最小廣義kl散度代價(jià)函數(shù),并結(jié)合步驟3-2)得到的的帶噪語音多幀頻譜的基矩陣,獲得帶噪語音的多幀頻譜的系數(shù)矩陣;
3-5)通過步驟3-4)得到的帶噪語音多幀頻譜的系數(shù)矩陣和步驟2-3)得到的噪聲的多幀頻譜的基矩陣和純凈語音的的多幀頻譜的基矩陣,分別獲得噪聲的多幀頻譜和純凈語音的多幀頻譜的初始估計(jì);
3-6)利用步驟3-5)得到的噪聲的多幀頻譜和純凈語音的多幀頻譜的初始估計(jì),通過維納濾波方法,獲得增強(qiáng)語音的多幀頻譜;
3-7)將步驟3-6)得到的增強(qiáng)語音的多幀頻譜通過解除包結(jié)構(gòu)變換為增強(qiáng)語音的短時(shí)頻譜,在解除包結(jié)構(gòu)的過程中,對(duì)多個(gè)“包”中所包含的相同幀進(jìn)行求和平均;
3-8)將步驟3-7)得到的的純凈語音的短時(shí)頻譜變換為時(shí)域信號(hào),獲得最終的增強(qiáng)語音。
上述步驟1-2)中,根據(jù)步驟1-1)得到的語音的短時(shí)頻譜,按照特定的“包”結(jié)構(gòu),將短時(shí)頻譜轉(zhuǎn)化為對(duì)應(yīng)的多幀頻譜;具體步驟如下:
1-2-1)假設(shè)語音的短時(shí)頻譜的數(shù)學(xué)表達(dá)式如式(1)所示:
v=[v1,v2,……vm],v∈rn×m(1)
式中,v代表語音的短時(shí)頻譜,m是幀數(shù),n是每幀數(shù)據(jù)的幀長,v1、v2…vm分別代表各幀短時(shí)頻譜,r表示實(shí)數(shù)集,即包括所有有理數(shù)和無理數(shù)的集合。
1-2-2)采用特定的“包”結(jié)構(gòu),構(gòu)建多幀頻譜。所述“包”的結(jié)構(gòu)有多種,(例如:
式中,
得到語音的多幀頻譜的表達(dá)式如下式所示:
式中,
上述步驟2-2)和3-3)中,所述nmf算法,具體步驟如下:
將n×m維的非負(fù)數(shù)據(jù)矩陣v分解成w和h兩個(gè)矩陣,并且滿足近似相等公式:
v≈wh(4)
其中,w和h分別代表基矩陣和系數(shù)矩陣。
上述步驟2-3)中,通過最小廣義kl散度代價(jià)函數(shù),分別求出噪聲的多幀頻譜的基矩陣和純凈語音的多幀頻譜的基矩陣;具體步驟如下:
基矩陣與系數(shù)矩陣的乘積與目標(biāo)非負(fù)矩陣的kl散度距離應(yīng)盡量小,表達(dá)式如下:
設(shè)定w和h的初始元素為隨機(jī)非負(fù)數(shù),代入迭代公式:
經(jīng)過若干次迭代計(jì)算,直至w和h收斂,非負(fù)矩陣分解完成,獲得基矩陣。
上述步驟3-2)中,合成帶噪語音多幀頻譜的基矩陣,表達(dá)式如式(8)所示:
wns=[ws,wn](8)
其中,wns代表帶噪語音的多幀頻譜的基矩陣,ws代表純凈語音的多幀頻譜的基矩陣,wn代表噪聲的多幀頻譜的基矩陣。
上述步驟3-4)中,獲得帶噪語音的多幀頻譜的系數(shù)矩陣,具體步驟如下:
基矩陣與系數(shù)矩陣的乘積與目標(biāo)非負(fù)矩陣的kl散度距離應(yīng)盡量小,表達(dá)式如下所示:
其中,vns代表帶噪語音多幀頻譜的的非負(fù)數(shù)據(jù)矩陣;vns和wns已知,設(shè)定帶噪語音的多幀頻譜的系數(shù)矩陣hns的初始元素為隨機(jī)非負(fù)數(shù),代入迭代公式
經(jīng)過若干次迭代(本實(shí)施例為100次)計(jì)算或hns收斂,非負(fù)矩陣分解完成,獲得帶噪語音多幀頻譜的系數(shù)矩陣。通過公式(11),hns分解為純凈語音的多幀頻譜的系數(shù)矩陣和噪聲的多幀頻譜的系數(shù)矩陣。
hns=(hs′,hn′)(11)
其中,hs′代表純凈語音的多幀頻譜的系數(shù)矩陣,hn′代表噪聲的多幀頻譜的系數(shù)矩陣。
上述步驟3-5)中,分別獲得噪聲的多幀頻譜和純凈語音的多幀頻譜的初始估計(jì),表達(dá)式如下:
vs′=wsh′s(12)
vn′=wnhn′(13)
其中,vs′代表純凈語音的多幀頻譜的初始估計(jì),vn′代表噪聲的多幀頻譜的初始估計(jì)。s代表純凈語音,n代表噪聲。hns=(hs′,hn′),hs′代表純凈語音的多幀頻譜的系數(shù)矩陣,hn′代表噪聲的多幀頻譜的系數(shù)矩陣。
上述步驟3-6)中,獲得增強(qiáng)語音的多幀頻譜,表達(dá)式如下:
其中,
采用本發(fā)明方法的一種基于多幀頻譜和非負(fù)矩陣分解的語音增強(qiáng)裝置,包括:語音預(yù)處理模塊,多幀頻譜構(gòu)建模塊,訓(xùn)練多幀頻譜基矩陣模塊,合成帶噪語音基矩陣模塊,計(jì)算帶噪語音系數(shù)矩陣模塊,計(jì)算語音和噪聲多幀頻譜模塊,維納濾波模塊,恢復(fù)時(shí)域信號(hào)模塊和存儲(chǔ)模塊共9個(gè)模塊;
所述語音預(yù)處理模塊用于對(duì)純凈語音和噪聲以及待處理的帶噪語音分幀,加窗,快速傅里葉變換(fft),得到相應(yīng)語音的短時(shí)頻譜;
所述多幀頻譜構(gòu)建模塊用于將語音預(yù)處理模塊預(yù)處理后的短時(shí)頻譜,轉(zhuǎn)化為對(duì)應(yīng)的多幀頻譜;
所述訓(xùn)練多幀頻譜基矩陣模塊,用于根據(jù)多幀頻譜構(gòu)建模塊獲得的噪聲的多幀頻譜和純凈語音的多幀頻譜,訓(xùn)練噪聲的基矩陣和純凈語音的基矩陣;
所述合成帶噪語音基矩陣模塊,用于根據(jù)訓(xùn)練多幀頻譜基矩陣模塊獲得的噪聲的基矩陣和純凈語音的基矩陣合成帶噪語音的基矩陣;
所述計(jì)算帶噪語音系數(shù)矩陣模塊,用于根據(jù)合成帶噪語音基矩陣模塊獲得的帶噪語音的基矩陣,采用非負(fù)矩陣分解的方法,獲得帶噪語音的系數(shù)矩陣;
所述計(jì)算語音和噪聲多幀頻譜模塊,用于根據(jù)合成帶噪語音基矩陣模塊合成的帶噪語音的基矩陣和計(jì)算帶噪語音系數(shù)矩陣模塊獲得的帶噪語音的系數(shù)矩陣,分別計(jì)算純凈語音的多幀頻譜和噪聲的多幀頻譜的初始估計(jì);
所述維納濾波模塊,用于根據(jù)計(jì)算語音和噪聲的多幀頻譜模塊獲得的純凈語音的多幀頻譜和噪聲的多幀頻譜的初始估計(jì),構(gòu)建維納濾波器,獲得增強(qiáng)語音的多幀頻譜;
所述恢復(fù)時(shí)域信號(hào)模塊,根據(jù)維納濾波模塊獲得的增強(qiáng)語音的多幀頻譜,獲得增強(qiáng)語音的時(shí)域信號(hào);
所述存儲(chǔ)模塊,用于存儲(chǔ)訓(xùn)練多幀頻譜基矩陣模塊得到的噪聲的基矩陣和純凈語音的基矩陣數(shù)據(jù),并將相應(yīng)數(shù)據(jù)傳給相應(yīng)模塊。
上述各模塊均可用常規(guī)的數(shù)字集成電路實(shí)現(xiàn)。