2017-07-20 12 views
0

の平均値/平均値を取るように言って何を意味するのでしょう。私は実際にノイズリダクションをしようとしています。私はスペクトル減算法を使用しています。多くの理論論文やアルゴリズムでは、これを実行しながら、オーディオ信号のフレームを取得するように言います。そのため は、それは私が音声処理に非常に非常に初心者ですこれらの最初の3フレーム

は、Iサンプリング周波数= 16kHzのための各フレームすなわち、長い20ミリ秒を要し、Iは、16kHzのの*の20ミリ秒の= 320個のサンプル/フレームと各フレームを終わることになります。

windowed_frame = frame .* hamming(length(frame)); 
complex_spec = fft(windowed_frame,512);   
mag_spec = abs(complex_spec); 
phase_spec = angle(complex_spec); 

さて、ノイズ信号のためにそれは言う:

はノイズとして初期少数の非音声フレームを想定します。だから、

、雑音推定値を得るために、それは最初の3かそこらのフレームの平均を取る

を述べています。

各フレーム320のサンプル長い場合。 ここで、最初の3つのフレームの平均/平均をとるとはどういう意味ですか?

3つのフレームは3 * 320 = 960個のサンプルの合計を含んでいます。それらの960の値を平均して表示していますか?しかし、それはただ一つの価値しかもたらさないでしょう。しかし、ウィンドウサイズ、すなわち20msのサイズのnoise_estimateが必要です。

ヘルプ

+1

デジタル信号処理に焦点を当て姉妹サイトがある...あなたはあなたの質問に移動することがあり、ここで役に立たない場合... https://dsp.stackexchange.com/search?q=+sound+framesを参照してください+ in + Speech + Processing –

+0

これは、最初の3つのフレームのそれぞれからスペクトルの要素ごとの平均をとって、最初の960サンプルの平均パワースペクトルを得ることを意味します。 –

答えて

0

あなたは、雑音スペクトル推定値が必要なので、最初の3つのフレームではなく、信号値の平均ますmag_spec

noise_spec = (mag_spec_1 + mag_spec_2 + mag_spec_3)/3 

結果は512ビット、基本的にすべての周波数ビンのノイズエネルギーになります。

関連する問題