• ベストアンサー

ピンクノイズやブラウンノイズを直接生成出来ますか?

ピンクノイズやブラウンノイズを直接生成出来ますか? PCM音声のような離散的な信号をお考え下さい。 各サンプルの値として一様乱数や正規乱数を使うと、その信号は全ての周波数で同じ強度のホワイトノイズと見なせます。 同じ様にして、ピンクノイズ(-3dB/oct)やブラウンノイズ(-6dB/oct)について、周波数領域で操作したりせず、各サンプルの値を直接生成する方法はあるでしょうか。 もしあれば教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
noname#108260
noname#108260
回答No.3

補足あったので説明しますと、フィルタとしてはIIR型とかで所望の特性が得られるように設計して作るとかが考えられます。 でもちょっと難しくなりそうなのでバッファとか作ってFIRで畳み込むとかでやった方が楽そうですね。 とにかく、雑音に適当に相関性を持たせればよいと思います。

raunji
質問者

お礼

ご説明ありがとうございます。参考になりました。 やはり単純に作れるホワイトノイズと比べるとやや複雑ですね。

その他の回答 (2)

  • inara1
  • ベストアンサー率78% (652/834)
回答No.2

どういう目的でそのような音源を必要としているのでしょうか。 参考URLのサイトでノイズを再生すると、Temporary Internet FilesのフォルダにMP3ファイルが作られるので、それを利用するか、そのファイルのデータを利用するというのではダメでしょうか。 参考URLのサイトの白い○をクリックするとホワイトノイズ、ピンク色の○をクリックするとピンクノイズ、薄茶色の○をクリックするとブラウンノイズが再生され、その音声ファイル(brown.mp3など)がTemporary Internet Filesフォルダにできます。

参考URL:
http://simplynoise.com/
raunji
質問者

お礼

回答ありがとうございます。

raunji
質問者

補足

単純に音を聴きたいというわけではなく、どのように作るのかに興味を持ったので質問をした次第です。 折角回答して頂いたのに申し訳ありません。

noname#108260
noname#108260
回答No.1

目的が分からないのでどうか分かりませんが、 既に出た値に対して適当にフィルタリングを掛けたものに乱数値を足すことで実現できる気がします。

raunji
質問者

お礼

回答ありがとうございます。

raunji
質問者

補足

そのフィルタリングについて詳しく知りたいです。

関連するQ&A

  • ピンクノイズ(1/f ゆらぎ)を生成するには

    ホワイトノイズ(正規乱数:パワースペクトルは周波数によらず一定)は、以下のようにして生成できると分かりました。  ( -2 * ln( rand ) ) ^(1/2) * sin( 2 * pi * rand ) ブラウンノイズ(パワースペクトルは周波数の二乗に反比例)は、ホワイトノイズを加算することで得られると思います。 いわゆる“1/f ゆらぎ”であるピンクノイズ(パワースペクトルは周波数に反比例)は、どのようにすれば作れるでしょうか。多数の異なる周波数を持つサイン波を、周波数の逆数の平方根の強さで合成する方法は試してみたのですが、より精度の高いものを生成するやり方がないものか、ご教示ください。 MSエクセルの逆フーリエ変換などで作れるものなのでしょうか。

  • ホワイトノイズとピンクノイズの特性について

    ホワイトノイズとピンクノイズについて以下のような記述があります。 「周波数を横軸にエネルギーを縦軸にとってホワイトノイズをグラフ化すると、フラットなグラフになります。ピンクノイズをグラフ化すると、ピンクノイズは高い周波数帯域に行くにつれて右下がりのグラフになります。ですから、ピンクノイズをオクターブバンドパスフィルターで測定すると、どのオクターブでみてもエネルギーが均一でフラット(平坦)な特性になります。ホワイトノイズをオクターブバンドパスフィルターで測定した場合、オクターブバンドの中心周波数が高くなるにつれて右上がりの特性になります。」 この記述を読むと、「右下がりのグラフ」になるピンクノイズが、オクターブバンドパスフィルターで測定すると「フラット」になるということがよく分かりません。ピンクノイズが「高い周波数帯域に行くにつれて右下がりのグラフ」になるのなら、高い周波数帯ではフラットにならないのではと考えてしまいます。 一方、「フラットなグラフ」になるホワイトノイズが、オクターブバンドパスフィルターで測定すると「中心周波数が高くなるにつれて右上がりのグラフ」になるというのもよく分かりません。フラットならフラットのままではと考えてしまいます。 このことをシロウトの私に分かりやすく説明して頂ける方、お願いいたします。 というのも、難聴の人の聞こえの音のシュミレーションを作ろうとしているのです。例えば、平均聴力レベル70dBで高音急墜型の人の聞こえのシュミレーションを作成するのに、あるソフトのローフィルターを使って、1000Hzより高音域をカットし、ノイズをミックスしようと考えているのですが、その際にはホワイトノイズがよいのか、ピンクノイズがよいのか、迷っております。

  • ノイズ。ホワイトとピンク

     自分の部屋の音響特性を調べたいのですが、それ以前の初歩的な問題でつまづいています。  ノイズの種類なのですが「ホワイトは周波数と無関係に均一」。「ピンクはオクターブあたり、-3dBずつ下がっていく」。この解釈は正しいですか?  正しいとなると、素直にスペアナ使うと、ピンクは右肩下がりなるはずですよね。こんなイメージで合っているのでしょうか?

  • ピンクノイズの電圧測定方法を教えて下さい。

     正弦波sineはデジタルテスター(45~450Hz範囲)で測定するとその周波数の実効値が表示されますが、  ピンクノイズはエネルギーは同じでも音圧は高音ほど低下しているので測定したらどこの周波数を計っているのでしょう。(信号は20~20kHzのものとします)  又、エネルギーが高音ほど上昇するホワイトノイズではどこの周波数を計っているのでしょうか? できればPeakとrmsの関係もよろしく教えて下さい。

  • ピンクノイズで音が良くなる?

     ピンクノイズ、スイープ信号を使用して、スピーカの位置の調整、 イコライザーの調整をするのですが、信号を再生するだけで、何も調整しないときでも、スピーカから出る音が変わるような気がします。 調整のための音量は、リスニング位置で70dBくらい、時間は10分程度です。 SPはJBL4429です。 これは気のせいでしょうか。

  • ある擬似乱数の生成方法について

    ある擬似乱数の生成方法について 『ある周波数とある周波数を組み合わせて作る擬似乱数』という様なことを以前聞いたことがあるのですが、具体的方法をご存知の方がいらっしゃいましたら、教えて下さい! よろしくお願い致します。

  • ホワイトノイズとは具体的に何ですか?

    現在、ノイズのことについて調べております。 ホワイトノイズや、ブラウンノイズ、ピンクノイズなどがあり、 wikiには「ホワイトノイズは全ての周波数で同じ強度となるノイズである。」と書いてあり、 他のページを見ると「音声に載るノイズ」というような事ばかり出てきました。 音に限らず、ノイズの形がすべての範囲で一定であるものはホワイトノイズなのでしょうか? 例えば、電子機器を用いてAを100回測定、Bを100回測定、Cを100回、Dを100回・・・・と測定したときにそれぞれで生じる偶然誤差が、すべて一定の範囲内にある場合、ホワイトノイズと言ってしまって良いのでしょうか? よろしくお願いします。

  • mp3の高音部に乗っているノイズの正体はなんですか?

    PCMで録音した音源をlame等で圧縮すると、高音部にノイズが乗っているのですが、このノイズはいったい何なのでしょう? またノイズをなくすためにはどうすればいいのでしょうか? 単純にサンプリング周波数を低くするしかないのでしょうか?

  • 1/fゆらぎの傾きについて

    私は今音の1/f ゆらぎについて研究していています。 まず傾きが既知のホワイトノイズ(傾き0)やピンクノイズ(傾き-1)、ブラウンノイズ(傾き-2)の音をMATLABで高速フーリエ変換を行ってスペクトル解析を行って周波数ごとのパワーを算出してエクセルで両対数をとって直線近似をしています。 結果、ホワイトノイズは0と正しいのですが、ピンクノイズは傾き-0.48、ブラウンノイズは傾き-0.98と約1/2の値となってしまいます。 強度はMATLABで算出された強度Pそのままを使っているのですが、文献などを見ると、dBの値で強度が表されいるので、そこに原因があるかと思うのですが・・・ 何かわかる方がいらっしゃればよろしくお願いいたします。 以下プログラム↓ [y,Fs]=wavread('pinknoize.wav'); y1 = y(:,1); Y = fft(y1,Fs/10); Y2 = abs(fftshift(Y)); Y3 = Y2(length(Y2)/2+1:length(Y2)); l = linspace(0,Fs/2,length(Y3));

  • イコライザのシェルビングタイプのスロープについて

    ローパスフィルタやハイパスフィルタなどの場合、6dB/octや12dB/octといったスロープを特性から知ることができますが、シェルビングタイプのスロープやカットオフ周波数はどのように読み取れば良いのでしょうか? どなたかご教授願います。