雑音レベルをさす、SN比の計算方法ってどうやるのでしょうか?

具体的には、
録音した音声データ(WAV)をSN比10or15の白色雑音を
付与した上で、音声認識させたい。
と思っています。

その際、SN比10とした時の白色雑音をどのようにして、
生成すればいいのかを考えているところで、
SN比の計算方法がわからず、苦労していました。

よろしくお願いします。

A 回答 (2件)

電力比と電圧比をとり違えました修正します



sn15といえば
信号電力の平均をsとしノイズ電力の平均をnとすれば
10・log10(s/n)=15だから
電力がn≒0.032・sのノイズを発生したらいいと思います
白色雑音を付加するには
疑似乱数を発生させるソフトを組んで発生しそれを正規分布か三角分布か一様分布かに応じて適当な関数変換し付加するか
疑似乱数を発生させる回路を組んで発生しそれを正規分布か三角分布か一様分布かに応じて適当な関数変換回路に通し付加するかすればいいのでは?
    • good
    • 0
この回答へのお礼

ありがとうございます。

n=0.032sというと、最大信号の約3%雑音ということですね。
なんとなく小さなノイズのような気がしますが、
音声認識では、影響の大きなノイズになるのでしょうか?

お礼日時:2002/01/24 09:21

sn15といえば


信号電力の平均をsとしノイズ電力の平均をnとすれば
20・log10(s/n)=15だから
電力がn≒0.18・sのノイズを発生したらいいと思います
白色雑音を付加するには
疑似乱数を発生させるソフトを組んで付加するか
疑似乱数を発生させる回路を組んで付加するかすればいいのでは?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QSN比の求め方について

SN比を求めるための式で,信号の分散から雑音の分散を割ることで求められるとwikipediaに書いてあるのですが,これらの分散とはどういう意味なのでしょうか?

確率の本などを調べてもこのような式は載っていませんし,信号処理の本では分散の求め方が省略されているため,分かりませんでした.
ご存知の方がいましたら,簡単な意味や,求め方を教えてください.

Aベストアンサー

こんにちは。
熱心にお考えですね。
また、Wikipediaの書き方もちょっと不足でしょうね。
このため、このwikipediaの説明で意図している「分散」の意味については私も不安ですが、次のような説明ではいかがでしょう。
ちょっと鉛筆を持ってご自身でいい加減な波形を書きながら考えてみて下さい。

現在、電気通信で使用されている信号を交流の一種と呼ぶことができるのは疑問はないでしょう。

このとき、例えば目的とした信号がデジタルの場合について、"0"が-5V,"1"が+5Vのとき、「平均値は0Vで、振れ幅はプラスマイナス5V」と表現できますね。
他方、これを邪魔しようとする雑音の波形を想像しましょう。雑音も、多くはプラスマイナスの両側に振れる波形であり、単純に考えれば、「強い雑音」は、「だいたいプラスマイナス5vくらい」、「弱い雑音」は「だいたいプラスマイナス2vくらい」を想像することになるでしょう。
しかし、雑音は、信号と違って振れ幅が意図されていないので、このイメージが適切ではないこともお気づきでしょう。「雑音の波形はめちゃくちゃで振れ幅が均等ではない」・・・
従って、「強い雑音」は、「プラスマイナス1vくらい弱い波のときが多いが、3vのときも結構あり、10vという特に強い波になるときもしばしばある」。「弱い雑音」は、「プラスマイナス1vくらいのときがすごく多く、3vのときがちょっとはあるが、10vのような強い波になるときはめったにない」という波形になります。
このとき、どちらもプラスとマイナスに振れる波形なので、単純な「平均値」はどちらも0V。だからといって雑音の強度が同じではないことはおわかりでしょうし、その強さを表現するためには、「1vを通過する頻度、2vを通過する頻度、3vを・・・・10vを通過する頻度」をグラフに書いて、これを加重平均したら良いのではないか・・・ということはお気づきでしょう。
このような、ある意味単純な頻度との加重平均のことを統計学として「分散」と呼んでおり、WikipediaのS/Nの「分散」はこれを指していると思いますし、ちょっと見では難解ですが、さらに単純な考え方では「プラスマイナスの信号のプラス側分だけを見たときの平均値」とも言えます(ここまで言うとちょっと大きな不正確要素も出てきますが)。

なお、このような「強い波や弱い波の加重平均」は、雑音だけではなく信号にも当てはまります。先の例では単純なデジタル信号を上げましたが、音楽の信号などは、人間が意図的に信号として扱っているとはいえ、弱い波や強い波の混合波形ですので、結局、こちらも「強度は分散の値である」と表現できます。

(また、コンピュータ用などでは、直流成分を持った(プラスマイナスではなく、プラス側にしか振れない)信号や雑音もありますが説明は省略します。直流成分が影響する問題もないわけではないですが、出番は少なく、実際の回路でも直流分の雑音(障害)は比較的単純に除去できますので・・・)

さてさて、いかがでしょうか。お役に立てば幸です。

こんにちは。
熱心にお考えですね。
また、Wikipediaの書き方もちょっと不足でしょうね。
このため、このwikipediaの説明で意図している「分散」の意味については私も不安ですが、次のような説明ではいかがでしょう。
ちょっと鉛筆を持ってご自身でいい加減な波形を書きながら考えてみて下さい。

現在、電気通信で使用されている信号を交流の一種と呼ぶことができるのは疑問はないでしょう。

このとき、例えば目的とした信号がデジタルの場合について、"0"が-5V,"1"が+5Vのとき、「平均値は0Vで、振れ幅はプラ...続きを読む

QスペクトルからS/N比を求める方法

いつもお世話になります。信号処理・品質工学・統計処理に関して素人です。

圧電素子を用いて心拍を検出しており、そのスペクトルからS/N比を算出したいと思っております。
すなわち、心拍測定時の圧電素子からの電圧信号をフーリエ変換して得たスペクトルと、
無負荷時の信号を同様にして得たスペクトルから求めたいと思っておりますが、
ピーク強度の比で求めればよいのか、面積の比で求めればよいのか、悩んでおります。

ピーク強度で比較した例(1):下記リンク先 5ページ目下方
http://www.tij.co.jp/jp/lit/an/jaja016/jaja016.pdf

ピーク強度で比較した例(2):下記リンク先 中断付近「S/N比」の節
http://www.marumo.ne.jp/gvdvc/audio/ext_2.html

一方、S/N比の定義をみると、「信号の分散を雑音の分散で割った値である。」とあります。
また分散はスペクトルの面積に等しい(下記リンク先5ページ目 式(23))とのことから
http://www.jspf.or.jp/Journal/PDF_JSPF/jspf2009_09/jspf2009_09-620.pdf
面積比で比較するのが正しいように思え、
どちらが正しいのかわからなくなってしまいました。

面積比で比較する場合、どの範囲の周波数域に渡って積分するのか、という
疑問も生じてきます。

すみませんがご教示頂けるとありがたいです。
勘違いしている点があれば、ご指摘頂ければ幸いです。

いつもお世話になります。信号処理・品質工学・統計処理に関して素人です。

圧電素子を用いて心拍を検出しており、そのスペクトルからS/N比を算出したいと思っております。
すなわち、心拍測定時の圧電素子からの電圧信号をフーリエ変換して得たスペクトルと、
無負荷時の信号を同様にして得たスペクトルから求めたいと思っておりますが、
ピーク強度の比で求めればよいのか、面積の比で求めればよいのか、悩んでおります。

ピーク強度で比較した例(1):下記リンク先 5ページ目下方
http://www.tij.co.jp/j...続きを読む

Aベストアンサー

S/N比の定義は多様です。
当座は、ご自分の領域でどういうSNRが普通に用いられるか調べて、それに合わせるのが無難だろうと思います。圧電素子の場合について定着したものがないなら、心電図のSNRが普通どういう形で議論されるかなどがよろしいかと思います。

以下は個人的意見ですが、
ピーク強度というのは、あぶなっかしいなあと思います。雑音次第で偶発的に信号ピークも変わるし。雑音自体もピークでは議論できず統計的に扱うしかないだろうし。
『S/N比の定義をみると、「信号の分散を雑音の分散で割った値である。」』、これは(信号のパワースペクトルの積分値)÷(雑音のパワースペクトルの積分値)ということですよね?でしたら、比較的普通なのはこれだと思います
ただしこれは、S/N比ではなくてS/N比の自乗でしょう。

「面積比で比較する場合、どの範囲の周波数域に渡って積分するのか」は非常に的を射た疑問です。信号のスペクトルが全く存在しない領域まで積分してしまえば、信号検出に関係ない雑音スペクトルの寄与を過大に評価することになります。業界に基準がないなら、勝手に自分が妥当と思うように決めるしかないでしょう。

以下は高等編になるのですが、ご参考まで---------------------------------
もともと、信号とはどう定義されるのか、雑音とは、SNRの定義とはなんだ、というのが曖昧なまま、便宜優先で(つまり恣意的に)取り扱うことが普通なので、いろんな問題が起きるのです。
「SN比とは何だ?信号Sとは何だ?」ということを真剣に考える学生達に私が勧めていたのは、本質的なSNRとして、Matched Filter SNR(MFSNR)の使用です。
MFSNRにもいろいろありますが、そのひとつ、Non-Prewhitening Matched Filter SNRというのは下記です。
SNR^2=|信号パワースペクトルの積分|^2/(信号パワースペクトル×雑音パワースペクトルの積分)
これは、積分の周波数範囲をどう取っても殆ど結果に変わるところはありません。信号のない(あるいは殆ど無い)スペクトル域の雑音は信号検出能に(ほとんど)関係ないということを反映した計算になっていますから。
問題は、Matched Filter SNRの勉強をしないといけないことと、ちょっと専門的になりすぎる嫌いがあることです。

S/N比の定義は多様です。
当座は、ご自分の領域でどういうSNRが普通に用いられるか調べて、それに合わせるのが無難だろうと思います。圧電素子の場合について定着したものがないなら、心電図のSNRが普通どういう形で議論されるかなどがよろしいかと思います。

以下は個人的意見ですが、
ピーク強度というのは、あぶなっかしいなあと思います。雑音次第で偶発的に信号ピークも変わるし。雑音自体もピークでは議論できず統計的に扱うしかないだろうし。
『S/N比の定義をみると、「信号の分散を雑音の分散で割っ...続きを読む

QK回同期加算すると、雑音が1/Kになる理由

デジタル信号処理の問題やってます。

K回同期加算すると、雑音が1/Kになるようですが、なぜですか?

あと、もう一つお聞きしたいのですが、
SN比って、分散を使うのか、標準偏差を使うのか、どちらなのでしょう?

よろしくお願いします。

Aベストアンサー

S/N比は、エネルギー比で考えることが多いとは思いますが、振幅の比で考えることもありますね。

信号をS(t)、
k回目の測定の雑音をN_k(t)とすると、
K回、同期加算すると、
信号は、K*S(t)、
雑音は、N_1(t)+N_2(t)+…+N_K(t)
になります。

(1) 分散(エネルギー比)で定義したS/N比は、
 信号のエネルギーは、V[K*S(t)] = K^2*V[S(t)]
 雑音のエネルギーは、N_1(t),…,N_K(t)が独立なら ば和の分散は分散の和になるので、
 V[N_1(t)+N_2(t)+…+N_K(t)] = K*V[N(t)]
 で、S/N比は同期加算前のK倍になりますね。
(2)標準偏差(振幅比)で定義したS/N比は、同様にして
 信号が、K*σ[S(t)]
 雑音が、√K*σ[N(t)]
なので、S/N比は√K倍です。

QSN比の求め方について

SN比は信号の分散を雑音の分散で割って求めることができるそうですが,
この「信号の分散」というものについてどのように理解したらよいか分かりません.

課題でグラフを用いて説明する必要があるのですが,調べ方が悪いのか
関連するグラフや説明はどの本にも載っていません.

どんな些細なヒントでも構いませんので,信号の分散とは何なのかご存知の方が
居られれば教えてください.
できれば,グラフを用いて表現する方法についても教えてください.
よろしくお願いいたします.

Aベストアンサー

他のかたの解答と近いのですが、私流に。
信号とはどういうものであるか、という定義にも依存するのですが、簡単のために平均値が0の信号波形としましょう。
この信号波形の全パワーを求めたい。それは信号振幅を自乗して積分すればよい。単位時間(あるいは単位長)あたりの信号パワー密度であれば、それを観測時間(あるいは観測長)で割る。この式をAとする。いっぽう、この波形の分散を求める式を組み立ててみてください。それはA式と全く同じになることに気がつくはずです。
つまり信号波形の分散とは信号パワー密度(信号のエネルギー密度と言ったほうが良いのかも?)

以上は実時間(実空間)での説明ですが、#1様はこれを周波数面で議論しています。同じなんです。レーレーの定理だかパーシバルの定理だかで、どっちで議論しても同じことです。
一方、雑音のほうの分散を考えるというのは、単位時間(あるいは単位長)あたりの雑音パワー密度。
だから両者の分散の比でSN比を議論するというのは自然なことだと思います。

(実は平均値が0の信号でないともうちょっと話が複雑になってくるでしょう。何をもって意味のある信号(情報)だとするか、約束事次第という面があるので。このへんは分野によると思います。)

他のかたの解答と近いのですが、私流に。
信号とはどういうものであるか、という定義にも依存するのですが、簡単のために平均値が0の信号波形としましょう。
この信号波形の全パワーを求めたい。それは信号振幅を自乗して積分すればよい。単位時間(あるいは単位長)あたりの信号パワー密度であれば、それを観測時間(あるいは観測長)で割る。この式をAとする。いっぽう、この波形の分散を求める式を組み立ててみてください。それはA式と全く同じになることに気がつくはずです。
つまり信号波形の分散とは信号...続きを読む

Q信号対雑音比について

繰り返し刺激による反応波形を白色雑音の中から検出するために100回の加算平均処理を行った場合、信号対雑音比(S/N)の改善度ってどうなるんですか?

Aベストアンサー

ymmasayanさん、白色雑音(ホワイトノイズ)だからこそ
ルート(1/100)=1/10
の定義が成立します。
(特定の周波数帯の場合はその周波数のBRFを作成します)
ですから SNは1/10=20dB改善されます。

Qホワイトノイズはガウス分布?

ホワイトノイズはガウス分布に従うというようなことがいろいろな文献に書かれているのですが、
これってどういうことなのでしょうか?
ホワイトノイズとは全周波数に渡って一様なノイズのはずです。
このノイズが平均値とか分散値をもつというのはどういうことなのでしょうか?

Aベストアンサー

#1です。
A#1の補足の質問の回答

> これはσ→∞のとき完全なホワイトノイズになると考えて良いのでしょうか?
もちろん一致します。でもσが無限大のガウスノイズは、現実には実現不可能です。

> この標準偏差が無限のときに、
狭い周波数帯では平坦に見えるということからホワイトノイズと呼ばれるという説明で合っていますでしょうか?
無限は思考的な理論の世界の表現で、現実には無限の周波数は作れませんし、その測定器も存在しません。もしσが無限大のガウス雑音が出来たとしたら、ホワイトノイズと区別できないでしょう(ガウスノイズはσ無限大の極限ではホワイトノイズは一致します)。

別に標準偏差が無限大でなくても、扱うスペクトルの周波数帯で平坦なスペクトル(と見えている)ならホワイトノイズとして扱って良い(見做して良い)でしょう。あくまでも擬似的なホワイトノイズであって、ホワイトノイズそのものではありません。
たとえば、音声などの可聴周波数帯(50Hz~20kHz位)の信号を扱う場合は標準偏差σが100kHz以上のガウス雑音を擬似的なホワイトノイズとして扱って良いでしょう。このσのガウス雑音のスペクトルの大きさ(振幅)は可聴周波数帯のf=0~20KHzの範囲ではほとんど平坦なので、σ=100kHzのガウス分布のガウス雑音は可聴周波数帯ではホワイトノイズの代用として使えるでしょう(この意味で擬似ホワイトノイズです)。同じホワイトノイズ発生器を、帯域100kHzの周波数計測器の雑音源としては全くホワイトノイズの役目をしません。あくまでガウスノイズに過ぎません。

フーリエ積分(変換)を学んで見えるなら、
振幅分布がガウス分布の信号(雑音)の周波数スペクトル(密度)はやはりガウス分布になります。

一方、振幅が無限大、幅ゼロのパルス(ディラックのデルタ関数δ(t))の)のフーリエ変換はフラットなスペクトルになります。しかし、現実には、振幅が無限大、幅ゼロのパルスは作れません。
デルタ関数と見做せる大きな振幅と幅の狭いパルスは作れます。これらのパルスを時間間隔を蜜に発生させた信号源(雑音源)が擬似的なホワイトノイズ発生器ということですね。

なお、真の意味のホワイトノイズ発生器は製作不能です。製作できてもそれがホワイトノイズ発生器であることを確認する測定器も作れないし存在しませんね。あくまで理念的な空想の産物ですね。

#1です。
A#1の補足の質問の回答

> これはσ→∞のとき完全なホワイトノイズになると考えて良いのでしょうか?
もちろん一致します。でもσが無限大のガウスノイズは、現実には実現不可能です。

> この標準偏差が無限のときに、
狭い周波数帯では平坦に見えるということからホワイトノイズと呼ばれるという説明で合っていますでしょうか?
無限は思考的な理論の世界の表現で、現実には無限の周波数は作れませんし、その測定器も存在しません。もしσが無限大のガウス雑音が出来たとしたら、ホワイトノイズと...続きを読む

QS/N比について

S/N比が10とか100とか書いてある文献が見つかるのですが、これは単純にノイズが1に対して、シグナルが10と考えてよろしいものなんでしょうか?

Aベストアンサー

#2です。一部訂正と補足をします。
私は物理計測で得るデータのS/Nが頭にあって、100dBの高S/Nで計測データを得るケースはまず考えにくいと短絡した次第です。また私の経験では100dBのS/Nの計測系を組むのは超至難でした。こういった先入観から100といえばデシベルではあるまいと書いたのですが、ご質問者がオーディオアンプなどの増幅器を想定されていたのであれば、私の誤りです。それに100dBのSNRのアンプが身の回りにごろごろしているのは知りませんでしたし。ここはお詫びして訂正です。

あと、S/Nと言えば黙ってデシベルかという点ですが、これはやはり、dBならdBと書かねばならないと思われます。S/Nといっても電気電子関係だけではない一般用語ですが、この場は電気電子だけの話のようですので、念のために身の回りにある通信工学電子工学関係の大学教科書を確認したところ次の通りです。
5冊のうち全てS/Nの定義は信号/雑音。うち2冊はこれをdB表現するとこうだと明記。うち一冊は説明無しでその後の数値例をdB表現(dBの記号付き)。残り2冊はdB表現は一切出てこない。
いずれにせよdBの記号抜きでS/Nのデシベル値を書いている例はありませんでした。オーディオの世界は無条件にdB抜きで書く文化なのかも知れませんが、一般的にはdB記号なしでデシベル表現はルール違反だと思われます。

#2です。一部訂正と補足をします。
私は物理計測で得るデータのS/Nが頭にあって、100dBの高S/Nで計測データを得るケースはまず考えにくいと短絡した次第です。また私の経験では100dBのS/Nの計測系を組むのは超至難でした。こういった先入観から100といえばデシベルではあるまいと書いたのですが、ご質問者がオーディオアンプなどの増幅器を想定されていたのであれば、私の誤りです。それに100dBのSNRのアンプが身の回りにごろごろしているのは知りませんでしたし。ここはお詫びして訂正です。

あと、...続きを読む

Qwavファイルの音量を数値で調べたい(dB)

wav形式の音声ファイルがあります。
この音量を数値で知りたいのですが、デジベル表示するツールなどありませんでしょうか。
ご存知の方教えて下さい。
宜しくお願いします。

Aベストアンサー

どんなレベルで使うのかわからないので
ふたつ挙げておきます。

■WaveSpectra
設定のWaveタブでレベルメータを表示するにチェックを入れます。

<<WaveSpectra>>
 http://www.ne.jp/asahi/fa/efu/soft/ws/ws.html

■SpWave
厳密な値が必要なときは SpWave でマウスを置いた
座標の音圧 E が出るので

 dB = 20*log(|E|/E0)

を計算。
E0 はサンプリングビットが b であれば

 E0 = 2^(b-1)

とすれば 0dB をフルスケールに合わせることができます。

<<spwave>>
 http://www.itakura.nuee.nagoya-u.ac.jp/people/banno/spLibs/spwave/index-j.html

参考URL:http://www.ne.jp/asahi/fa/efu/soft/ws/ws.html

QdBの足し算

考え方が整理できてません。
教えてください。

例えば60dbの機械を2台同時に動かすと、
その音は何dbになるのでしょうか??

Aベストアンサー

二つの雑音が全く同じ音で、
その波形が完全に合っている場合 -> +66dB
(音圧そのものが2倍になるため +6dB)

二つの雑音が全く同じ音で
波形が完全に逆位相で合っている場合 -> -無限大
(音が消えるため。真数でゼロ、dBだとマイナス無限大)

二つの雑音に相関関係が
全く無い場合    -> +63dB
(音のエネルギーが2倍になるため、+3dB
 波形そのものは増強するときもうち消すときもある)

と言うわけですが、
普通、同じ機械を動かしたからと言って
全く同じ騒音が生じるわけではありませんから
+3dBと考えるのが妥当でしょう

Qint型からchar型への変換

タイトル通り、int型からchar型への変換の仕方がわかりません!><
どうしたらいいのでしょうか?

Aベストアンサー

#include <stdio.h>


char buf[5];
int no;

no = 10;
sprintf(buf, "%d", no);


このQ&Aを見た人がよく見るQ&A