#やっていること
以下の要領で白色雑音を生成しました。
Python
1import random 2import numpy as np 3import matplotlib.pyplot as plt 4import scipy.signal as sp 5 6x_list=[] 7for i in range(5000): 8 x_list.append(i) 9x=np.array(x_list) 10 11 12y_list=[] 13for i in range(5000): 14 y_list.append(random.uniform(0,1)) 15print(y_list) 16y=np.array(y_list) 17 18plt.title('White Noise') 19plt.xlabel('Time(s)') 20plt.ylabel('Intensity(Pa)') 21plt.plot(x,y) 22plt.show()
結果は以下の様になっています。ここまでは順調です。単位Paはここでは気にしないでください。
#質問
上の波形データをscipy.signal.stftを用いて以下の要領でフーリエ変換し、plt.pcolormeshを用いてスペクトログラムを生成しました。
Python
1import random 2import numpy as np 3import matplotlib.pyplot as plt 4import scipy.signal as sp 5 6x_list=[] 7for i in range(5000): 8 x_list.append(i) 9x=np.array(x_list) 10 11 12y_list=[] 13for i in range(5000): 14 y_list.append(random.uniform(0,1)) 15print(y_list) 16y=np.array(y_list) 17 18f, t, stft_i=sp.stft(y, fs=500, window='hann', nperseg=100, noverlap=50) 19stft_i=10*np.log(np.abs(stft_i)) 20 21plt.title('Spectrogram of White Noise') 22plt.xlabel('Time(s)') 23plt.ylabel('Frequency(Hz)') 24plt.pcolormesh(t, f, stft_i, cmap='jet') 25plt.show()
上の写真の、周波数が0-10Hz付近が赤くなっている(intensityが強くなっている)のは、どういったことが起因しているのでしょうか?素人質問で申し訳ございませんが、お力添え頂けますところが御座いましたら、ご教授のほど宜しくお願い申し上げます。
回答1件
あなたの回答
tips
プレビュー