• 検索結果がありません。

SNR 推定

ドキュメント内 JAIST Repository https://dspace.jaist.ac.jp/ (ページ 60-65)

3.4 パラメータ推定

3.4.1 SNR 推定

Noisy reverberant

signal Analysis

block (Filterbank)

Power envelope extraction

Power envelope subtraction Power envelope restoration

Power envelope restoration

Power envelope inverse-filtering

Parameter estimation

Recovered envelope restoration

Power envelope restoration y(t)

#1

#k

#K . . . . .

. . . . .

e (t)^2y,k

e (t)^2x,k

e (t)^2x,1

e (t)^2x,K

a, T^ ^R

図 3.5: MTFに基づく帯域分割型パワーエンベロープ回復処理のブロックダ イア

グラム.

帯域幅フィルタバンクを用いて帯域分割を行うのは,帯域分割したパワーエンベ ロープ回復処理がASRの前処理として利用できるためである[151].

を推定する方法が必要であると考えるが,現在はその提案にまでは至っておらず,

ここでは,VADを前提としたglobal SNRの推定法を紹介する.ここで紹介する global SNRの推定法は,帯域分割型VAD法の最適設計に基づくSNR推定法[152]

を改良したものである.

まず,雑音音声のSNR推定について考える.SNRは推定された音声区間SˆV AD かつ雑音が定常であれば,次式のように推定できる.

SN Rˆ = 10 log 10

(PS(y(t),SˆV AD(t;e2y(t),B))ˆ PN(y(t),SˆV AD(t;e2y(t),Bˆ))

)

[dB] (3.8)

PS(y(t),SˆV AD(t;e2y(t),B))ˆ

=

T

0

(

y2(t) ˆSV AD(t;e2y(t),B)ˆ )

dt−PN( ˆSV AD(t;e2y(t),(3.9)B))ˆ PN( ˆSV AD(t;e2y(t),B)) =ˆ

T

0

(

PN( ˆSV AD(t;e2y(t),B)) ˆˆ SV AD(t;e2y(t), B) )

dt (3.10)

PN( ˆSV AD(t;e2y(t),B)) =ˆ

T

0

( y2(t)

(

1−SˆV AD(t;e2y(t),B)ˆ ))

dt

T

0

(

1−SˆV AD(t;e2y(t),B)ˆ )

dt

(3.11)

ここで,PNは雑音の平均パワー,PNPSは雑音と音声のパワーである.実際に は,音声区間は未知であり,音声区間を検出する必要がある.そこで,VADの時 と同様にパワー閾値を最適化することでこの問題を解決できると考え,SNR推定 においては多くの雑音残響信号のパワーエンベロープを用いてパワー閾値Bˆを最 適化することを考えた.最適化の手順はVADの時と同様であるが,回復パワーエ ンベロープ e2y(t)なのか雑音残響信号のパワーエンベロープeˆ2x(t)なのかが異なる.

本研究では,雑音信号のみでの最適化かつ帯域分割処理を用いて実現している.

global SNRを推定するにあたり音声成分と雑音成分を判別する必要があり,こ

の判別にVADがよく用いられているが,雑音残響の影響によりVADの性能が低 下し,SNRの推定性能も低下する.音声に対する雑音の影響は,周波数帯域ごと に異なっていることから多くの音声信号処理では,帯域分割処理が用いられてい る.提案するSNR推定法では,帯域分割処理を用いて帯域信号を求める.各帯域 に異なった閾値を設定してパワー閾値によるVADを行うことで音声/非音声区間 が得られ,帯域ごとに音声パワーと雑音パワーを求め,最終的に全帯域の音声パ ワーと雑音パワーを合算することでglobal SNRを推定できる.

Constant -band Filterbank

Threshold decision

VAD

VAD

VAD

#1

#k

#K Noisy

speech

Power calculation Power calculation

Power calculation Total power calculation of speech

Total power calculation of noise

SNR

calculation Estimated SNR PS

SNR PN

PS

PN

PS

PN

x(t)

x (t) x (t)

1

k 1

k

K K

K

PS

PN 1

K

k

x (t)1

Subband VAD SNR estimation

Pre-SNR

B B

^

図 3.6: grobal SNR推定法のブロックダ イアグラム.

本SNR推定法のブロックダ イアグラムを図3.6に示す.図中のkは帯域番号,K は帯域分割数を意味する.図3.6に示す通り,本SNR推定法は大きく分けて二つの ブロック(二つの破線のブロック)で構成されている.図中の前半は帯域分割信号 に対するVADであり,図中の後半は各帯域における雑音パワーと音声パワーの推 定と最終的なSNRの計算である.フィード バック処理では,推定された各帯域の

local SNRを返し,各帯域のパワー閾値を再設定し,繰り返し処理を行う.そして,

フィード バック処理を繰り返した後,最終的なglobal SNRが求まる.各帯域の閾 値は,雑音音声を帯域分割し,ROC曲線上での誤受理率と誤棄却率のトレード オ フの関係を最適化し ,最適な閾値とlocal SNRの関係をまとめることで求めた.

帯域分割処理には,定Qフィルタバンク(CQFB: constant-Q filterbank)や定 帯域幅フィルタバンク(CBFB: constant-bandwidth filterbank)がよく利用され ている.本研究では,定帯域分割処理を利用してASRを行っていることから,帯 域分割処理に帯域幅 100 Hz固定のCBFBを利用した.サンプ リング周波数が20 kHzの場合,帯域分割数Kは100帯域となる.

帯域分割信号は,帯域ごとにSNRが異なるため,帯域ごとに異なった閾値を設 定して音声/非音声を判別する必要がある.2.1節で述べたFARとFRRを各帯域分 割信号で置き換えると,FAR(Bk)とFRR(Bk)と表現され,Bkk番目の帯域の 閾値を意味する.多くのVADでは,ROC曲線上のある一点を決めることで,VAD の目的に合わせて性能を調整している.様々な条件の雑音音声を用いて学習する ことで求めたROC曲線上の最適な閾値を決定する.

FAR FRR

FAR FAR

SNR = 20 dB SNR = 10 dB

SNR = 0 dB

FRR FRR

SNR [dB]

SNR_20 SNR_10

SNR_0

SNR_0

SNR_10

SNR_20

ROC curves

Threshold-SNR curve B

B B B

B B B

図 3.7: 各SNR条件下でのVAD閾値決定法.

k番目の帯域及び SNR条件ごとに,FAR(Bk)とFRR(Bk)からROC曲線を求 めて,FARとFRRの二乗平均平方根(RMS)を次式のように求めた.

RMS(Bk)=

FAR2(Bk) + FRR2(Bk)

2 , (3.12)

また,VADの性能を最大限発揮できる最適な閾値を次式を用いて求めた.

Bk= arg min

Bk

RMS(Bk). (3.13)

式(3.12)のようにFARとFRRのRMSを求める方法は,音声/非音声の検出性能 を容易に予測できることから,VADの性能を評価して最適な閾値を決定するのに 有効な方法である.

様々なSNR条件における雑音音声のデータベースを用いて学習を行うことで,

SNR条件ごと,帯域ごとの最適な閾値を求めた.すべてのSNR条件において学 習で閾値を最適化することは困難である.そのため,図3.7に示すように,実際に はいくつかのSNR条件において学習を行い,SNR条件ごとにROC曲線を求めて 最適な閾値を決定し,各SNR条件の最適な閾値を布置してシグモイド 関数で近似 することでThreshold-local SNR曲線を描画した.そして,フィード バック処理で pre-local SNRを返し Threshold-local SNR曲線を用いて各帯域の閾値Bkを再設 定することで,推定誤差の低減を図った.

P

+ P P

Frequency No. 1 No. 2 No. 3 No. k No. K-1 No. K

Signal powerSignal power

Time Signal+Noise Noise Noise

P P

PST1

NT2 ST3

NTK-1 NTK NT1 P

ST2 NT3

STk NTk

P +

P P +

P P +

STK-1 STK

P =0P =0

NTk

Filterbank STk

No. 1 No. 2 No. 3 No. k Noisy speech

No. K-1 No. K

Subbands

Filter band signal

Power of speech and noise in each subbands

SNR=10log ( )10 k=1 K

k=1 K

PSTk

PNTk

Final SNR calculation

図 3.8: グローバルSNR推定のパワー計算の流れ.

パーセバルの定理に基づき時間信号のパワーは,各帯域のパワーの合算として 求めることができる.SNR推定の流れを図3.8に示す.帯域ごとに音声に対する 雑音の影響が異なっていることを考慮して,VADによる音声/非音声の判別とパ ワー計算は帯域ごとに行われた.そして,最終的なSNRはパーセバルの定理に基 づいて全帯域の音声パワーと雑音のパワーを合算し比を取ることで,次式のよう に求めることができる.

SNR = 10 logˆ 10

( ∑K

k=1PSTk

∑K

k=1PN Tk )

, (3.14)

PN Tk =

T

0

PNk(t)HNk(t)dt, (3.15) PSTk =

T

0

PSk(t)HSk(t)dt

T

0

PN TkHSk(t)dt, (3.16) ここで,PSTkk番目の帯域の音声パワーの合計,PN Tkk番目の帯域の雑音パ ワーの合計である.PN Tkk番目の帯域の非音声区間の平均雑音パワーである.

このコンセプトは,図3.6の二つ目のブロックを示している.k番目の帯域の帯 域分割雑音音声信号に対して,ある区間が非音声として判別された場合,雑音パ

ワーはこの区間の帯域分割信号の合計として計算される.そして,残りの区間が 音声として分類された場合,その区間の帯域分割信号には,音声と雑音が存在し ている.本研究では,この音声と雑音が存在する区間の平均雑音パワーが,非音 声区間の平均雑音パワーと等しいと仮定して,音声と雑音が存在する区間の帯域 分割信号の合計パワーから,この区間の長さの平均雑音パワーの合計を減算する ことで,音声と雑音が存在する区間の音声のパワーの合計を求めることができる.

各帯域でこの計算を行い,全帯域の音声パワーと雑音パワーの比を取ることで,最 終的にSNRが求まる.

ドキュメント内 JAIST Repository https://dspace.jaist.ac.jp/ (ページ 60-65)