• 沒有找到結果。

濾波器組與卡爾曼演算應用

在文檔中 助聽器的噪音消除演算法 (頁 52-57)

4.1 卡爾曼演算的分頻設計

之前所介紹的卡爾曼演算,是以過去語料為基底以及其穩態特性來還原語音,自迴歸 過程方面,如果階數越高則表示參考過去越多的語料為基底,就如泰勒展開式一般,越多 的多項式基底,會越接近想表的數學式,但也會使泰勒展開式變的龐大計算變的繁雜,而 AR 係數也有這樣的特性。

若數學式本身很單純,例如為一個常數,那麼泰勒也只需要常數項就足夠表達,所以 如果可以將語料的組成成分變單純,那麼 AR 係數理當也不需要使用到太高階,就會有不 錯的效果。

寬頻的語料可想而知會在組成成分上比較複雜,故需要較高階的 AR 係數來表示,分 頻是個將複雜語料變單純的方法,結構較單純的子頻(subband) 語料,只需要低階的 AR 係 數即可,而濾波器組本身就有分頻的功能。

分頻帶來的另一個好處是,增加 AR 係數的收斂速度,因為語料結構變得較簡單,相 對的子頻 PSD 也會比寬頻 PSD 來得平坦,可以在較短的時間內取得有效的 AR 係數。

此外相較於雜訊變異數的估計,AR 係數的精準度就顯得比較沒那麼嚴苛,因為略為不 準的 AR 係數並不會對整個演算法造成太大的傷害,但有偏差的雜訊變異數則對卡爾曼演 算的結果影響頗深。

圖 4.1 卡爾曼演算應用流程圖

此為卡爾曼演算流程圖,濾波器組作分頻之用

圖 4.2 卡爾曼演算應用結構圖

此為卡爾曼演算結構圖,分頻濾波器與合成濾波器分別用來對訊號作分頻與合成之 用,在分頻濾波器與合成濾波器之間的數字,分別為濾波器編號與段落點數,合成濾波器 與卡爾曼演算之間的數字,則為訊號經過合成濾波器之後的段落點數。

其實頻譜相減演算與卡爾曼演算的相似之處,在兩者都希望語料單純一點和在 PSD 上 看起來平坦一點,前者藉調整頻率分量大小,來使汙染語音 PSD 能接近語音 PSD 因為只 能調大小,所以頻帶內的 PSD 越平坦越好,後者的 AR 係數轉至頻域上觀察,如果與語音 PSD 越接近,則表示在時間上能越精準的描述語音穩態的特性,因為使用的是低階 AR 係 數,所以頻帶內的 PSD 最好不要有劇烈變化,也是越平坦越好。

卡爾曼演算只應用在 18band 而非 54band 的理由是,54band 對卡爾曼演算來說分頻過 細,反而會增加計算量,頻譜相減演算一個段落所需的計算量,大概會較卡爾曼演算一個 點多一些,但一個段落的點通常有數百個,所以單位點來看,當然卡爾曼演算計算量會較 多,而且 18band 相較於寬頻的情況,頻帶內 PSD 的變化情況,已經平坦很多,甚至為了 再減少計算量,還可以將 18band 合成到 6band,可以少約略 2/3 的計算量。

4.2 卡爾曼演算應用至18頻帶語音評比

noise\SNR -5 0 5 10 15 20 White 2.03 2.26 2.58 2.84 3.18 3.62

Babble 1.79 2.06 2.44 2.94 3.46 3.88 Train 1.78 1.92 2.06 2.76 3.19 3.65

Traffic 1.63 1.83 2.19 2.62 3.21 3.72 Play

ground

1.71 1.89 2.08 2.46 3.03 3.44 表 4.1 卡爾曼演算 18 頻帶 PESQ

圖 4.3 卡爾曼演算 18 頻帶 PESQ

Noise\SNR -5 0 5 10 15 20 White 2.04 19.07 28.69 33.53 35.37 37.52 Babble 5.93 12.74 23.98 30.27 32.70 34.15 Train 2.36 11.58 20.17 27.56 30.34 31.52 Traffic 4.68 14.04 22.15 27.38 30.56 33.08 Play

ground

6.10 14.86 24.45 30.93 32.93 33.48 表 4.2 卡爾曼演算 18 頻帶 SNRseg

圖 4.4 卡爾曼演算 18 頻帶 SNRseg

以下的圖表為演算法應用在濾波器組的比較。

圖 4.5 濾波器組演算比較 1(白雜訊)

圖 4.6 濾波器組演算比較 2(吵雜人聲)

在文檔中 助聽器的噪音消除演算法 (頁 52-57)

相關文件