import%20marimo%0A%0A__generated_with%20%3D%20%220.23.9%22%0Aapp%20%3D%20marimo.App()%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20import%20marimo%20as%20mo%0A%0A%20%20%20%20return%20(mo%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%2004%20%E9%AB%98%E5%BA%A6%E3%81%AA%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%E9%AB%98%E5%BA%A6%E3%81%AA%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E6%89%8B%E6%B3%95%E3%81%AE%E5%AE%9F%E8%B7%B5%0A%0A%20%20%20%20%E3%81%93%E3%81%AEmarimo%E3%82%A2%E3%83%97%E3%83%AA%E3%81%A7%E3%81%AF%E3%80%81%E5%89%8D%E5%9B%9E%E3%81%BE%E3%81%A7%E3%81%AB%E5%AD%A6%E3%82%93%E3%81%A0%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E6%89%8B%E6%B3%95%E3%82%92%E7%99%BA%E5%B1%95%E3%81%95%E3%81%9B%E3%80%81%0A%20%20%20%20**%E5%AE%9F%E5%8B%99%E3%81%A7%E4%BD%BF%E3%81%88%E3%82%8B%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E8%AA%BF%E6%95%B4%E3%81%A8%E6%AF%94%E8%BC%83%E5%88%86%E6%9E%90**%E3%82%92%E8%A1%8C%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%23%23%23%20%E3%81%93%E3%82%8C%E3%81%BE%E3%81%A7%E3%81%AB%E5%AD%A6%E3%82%93%E3%81%A0%E5%9F%BA%E7%A4%8E%0A%20%20%20%20-%20**FFT**%3A%20%E5%85%A8%E4%BD%93%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%E3%82%92%E4%B8%80%E5%BA%A6%E3%81%AB%E8%A7%A3%E6%9E%90%EF%BC%8803%E3%81%A7%E5%AD%A6%E7%BF%92%EF%BC%89%0A%20%20%20%20-%20**%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E3%83%AA%E3%83%B3%E3%82%B0**%3A%20%E3%83%AD%E3%83%BC%E3%83%91%E3%82%B9%E3%80%81%E3%83%8F%E3%82%A4%E3%83%91%E3%82%B9%E3%80%81%E3%83%90%E3%83%B3%E3%83%89%E3%83%91%E3%82%B9%EF%BC%8803%E3%81%A7%E5%AD%A6%E7%BF%92%EF%BC%89%0A%20%20%20%20-%20**Welch%E6%B3%95%E3%81%AE%E5%9F%BA%E6%9C%AC**%3A%20%E3%83%8E%E3%82%A4%E3%82%BA%E3%82%92%E4%BD%8E%E6%B8%9B%E3%81%97%E3%81%9F%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E6%8E%A8%E5%AE%9A%EF%BC%8802%E3%83%BB03%E3%81%A7%E5%AD%A6%E7%BF%92%EF%BC%89%0A%0A%20%20%20%20%23%23%23%20%E7%9B%AE%E6%AC%A1%EF%BC%88%E3%81%93%E3%81%AEmarimo%E3%82%A2%E3%83%97%E3%83%AA%E3%81%A7%E6%89%B1%E3%81%86%E5%86%85%E5%AE%B9%EF%BC%89%0A%20%20%20%201.%20**STFT%EF%BC%88%E7%9F%AD%E6%99%82%E9%96%93%E3%83%95%E3%83%BC%E3%83%AA%E3%82%A8%E5%A4%89%E6%8F%9B%EF%BC%89%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%83%81%E3%83%A5%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0**%0A%20%20%20%20%20%20%20-%20%E6%99%82%E9%96%93-%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%AE%E3%83%88%E3%83%AC%E3%83%BC%E3%83%89%E3%82%AA%E3%83%95%0A%20%20%20%20%20%20%20-%20%E7%AA%93%E3%82%B5%E3%82%A4%E3%82%BA%E5%A4%89%E6%9B%B4%E3%81%AB%E3%82%88%E3%82%8B%E7%B5%90%E6%9E%9C%E6%AF%94%E8%BC%83%0A%20%20%20%202.%20**Welch%E6%B3%95%E3%81%AB%E3%82%88%E3%82%8B%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E6%9C%80%E9%81%A9%E5%8C%96**%0A%20%20%20%20%20%20%20-%20%E4%BD%8ESNR%E4%BF%A1%E5%8F%B7%E3%81%A7%E3%81%AE%E5%88%86%E8%A7%A3%E8%83%BD%E6%AF%94%E8%BC%83%0A%20%20%20%20%20%20%20-%20%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E6%95%B0%E3%81%A8%E6%8E%A8%E5%AE%9A%E5%AE%89%E5%AE%9A%E6%80%A7%E3%81%AE%E9%96%A2%E4%BF%82%0A%20%20%20%203.%20**N-octave%E5%88%86%E6%9E%90%E3%81%AE%E5%AE%9F%E8%B7%B5**%0A%20%20%20%20%20%20%20-%201%2F3-octave%E3%83%90%E3%83%B3%E3%83%89%E3%81%AB%E3%82%88%E3%82%8B%E5%AF%BE%E6%95%B0%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E6%9E%90%0A%20%20%20%20%20%20%20-%20%E9%9F%B3%E9%9F%BF%E8%A9%95%E4%BE%A1%E3%81%AB%E9%81%A9%E3%81%97%E3%81%9F%E8%A6%8B%E6%96%B9%0A%20%20%20%204.%20**A%E7%89%B9%E6%80%A7%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%EF%BC%88%E6%99%82%E5%AE%9A%E6%95%B0%E4%BB%98%E3%81%8D%EF%BC%89%E3%81%AE%E8%A7%A3%E6%9E%90**%0A%20%20%20%20%20%20%20-%20Fast%EF%BC%88LAF%EF%BC%89%E3%81%A8Slow%EF%BC%88LAS%EF%BC%89%E3%81%AE%E5%BF%9C%E7%AD%94%E5%B7%AE%0A%20%20%20%20%20%20%20-%20%E9%A8%92%E9%9F%B3%E8%A8%88%E8%A8%AD%E5%AE%9A%E3%81%AB%E5%AF%BE%E5%BF%9C%E3%81%97%E3%81%9F%E5%AE%9F%E8%B7%B5%E7%9A%84%E8%A7%A3%E9%87%88%0A%20%20%20%205.%20**FrameDataset%E3%81%B8%E3%81%AE%E4%B8%80%E6%8B%AC%E5%87%A6%E7%90%86%E9%81%A9%E7%94%A8**%0A%20%20%20%20%20%20%20-%20%E8%A4%87%E6%95%B0%E6%9D%A1%E4%BB%B6%E3%83%87%E3%83%BC%E3%82%BF%E3%81%B8%E3%81%AE%E5%90%8C%E4%B8%80%E5%87%A6%E7%90%86%E9%81%A9%E7%94%A8%0A%20%20%20%20%20%20%20-%20Welch%E6%B3%95%E3%81%A8N-octave%E5%88%86%E6%9E%90%E3%81%AE%E9%87%8D%E3%81%AD%E5%90%88%E3%82%8F%E3%81%9B%E6%AF%94%E8%BC%83%0A%0A%20%20%20%20%23%23%23%20%E5%AD%A6%E7%BF%92%E7%9B%AE%E6%A8%99%0A%20%20%20%20-%20STFT%E3%81%A8Welch%E6%B3%95%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E9%81%B8%E5%AE%9A%E3%82%92%E7%9B%AE%E7%9A%84%E5%88%A5%E3%81%AB%E4%BD%BF%E3%81%84%E5%88%86%E3%81%91%E3%82%89%E3%82%8C%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%AA%E3%82%8B%0A%20%20%20%20-%20N-octave%E5%88%86%E6%9E%90%E3%81%A8A%E7%89%B9%E6%80%A7%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%E3%81%AE%E8%AA%AD%E3%81%BF%E6%96%B9%E3%82%92%E7%BF%92%E5%BE%97%E3%81%99%E3%82%8B%0A%20%20%20%20-%20FrameDataset%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E8%A4%87%E6%95%B0%E6%9D%A1%E4%BB%B6%E3%81%AE%E6%AF%94%E8%BC%83%E5%88%86%E6%9E%90%E3%83%95%E3%83%AD%E3%83%BC%E3%82%92%E5%AE%9F%E8%A3%85%E3%81%A7%E3%81%8D%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%AA%E3%82%8B%0A%0A%20%20%20%20**%E6%B3%A8%E6%84%8F**%3A%20Wandas%E3%81%AF%E7%8F%BE%E5%9C%A8%E9%96%8B%E7%99%BA%E4%B8%AD%E3%81%AE%E3%81%9F%E3%82%81%E3%80%81%E3%82%A6%E3%82%A7%E3%83%BC%E3%83%96%E3%83%AC%E3%83%83%E3%83%88%E5%A4%89%E6%8F%9B%E3%81%AA%E3%81%A9%E4%B8%80%E9%83%A8%E3%81%AE%E9%AB%98%E5%BA%A6%E3%81%AA%E6%A9%9F%E8%83%BD%E3%81%AF%0A%20%20%20%20%E4%BB%8A%E5%BE%8C%E5%AE%9F%E8%A3%85%E4%BA%88%E5%AE%9A%E3%81%A7%E3%81%99%E3%80%82%E3%81%93%E3%81%AEmarimo%E3%82%A2%E3%83%97%E3%83%AA%E3%81%A7%E3%81%AF**%E7%8F%BE%E5%9C%A8%E5%88%A9%E7%94%A8%E5%8F%AF%E8%83%BD%E3%81%AA%E6%89%8B%E6%B3%95**%E3%81%AB%E7%84%A6%E7%82%B9%E3%82%92%E5%BD%93%E3%81%A6%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_()%3A%0A%20%20%20%20%23%20%E5%BF%85%E8%A6%81%E3%81%AA%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%E3%82%92%E3%82%A4%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88%0A%20%20%20%20import%20matplotlib.pyplot%20as%20plt%0A%20%20%20%20import%20numpy%20as%20np%0A%0A%20%20%20%20import%20wandas%20as%20wd%0A%20%20%20%20from%20scripts%20import%20documentation_audio_examples%20as%20audio_contract%0A%0A%20%20%20%20%23%20%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%83%96%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E8%A8%AD%E5%AE%9A%0A%20%20%20%20%23%20'%25matplotlib%20inline'%20command%20supported%20automatically%20in%20marimo%0A%20%20%20%20plt.rcParams%5B%22figure.figsize%22%5D%20%3D%20(12%2C%206)%0A%0A%20%20%20%20print(f%22Wandas%3A%20%7Bwd.__version__%7D%22)%0A%20%20%20%20print(%22%E2%9C%85%20%E6%BA%96%E5%82%99%E5%AE%8C%E4%BA%86%22)%0A%20%20%20%20return%20audio_contract%2C%20np%2C%20plt%2C%20wd%0A%0A%0A%40app.cell%0Adef%20_(np%2C%20wd)%3A%0A%20%20%20%20np.random.seed(42)%0A%20%20%20%20sampling_rate%20%3D%2048000%0A%20%20%20%20_duration%20%3D%204.0%0A%20%20%20%20time%20%3D%20np.linspace(0%2C%20_duration%2C%20int(_duration%20*%20sampling_rate))%0A%20%20%20%20time_varying_signal%20%3D%20np.zeros_like(time)%0A%20%20%20%20_mask1%20%3D%20(time%20%3E%3D%200)%20%26%20(time%20%3C%201)%0A%20%20%20%20time_varying_signal%5B_mask1%5D%20%3D%202.0%20*%20np.sin(2%20*%20np.pi%20*%2010%20*%20time%5B_mask1%5D)%0A%20%20%20%20_mask2%20%3D%20(time%20%3E%3D%201)%20%26%20(time%20%3C%202)%0A%20%20%20%20time_varying_signal%5B_mask2%5D%20%3D%201.5%20*%20np.sin(2%20*%20np.pi%20*%2050%20*%20time%5B_mask2%5D)%0A%20%20%20%20_mask3%20%3D%20(time%20%3E%3D%202)%20%26%20(time%20%3C%203)%0A%20%20%20%20time_varying_signal%5B_mask3%5D%20%3D%201.0%20*%20np.sin(2%20*%20np.pi%20*%20150%20*%20time%5B_mask3%5D)%0A%20%20%20%20_mask4%20%3D%20(time%20%3E%3D%203)%20%26%20(time%20%3C%204)%0A%20%20%20%20time_varying_signal%5B_mask4%5D%20%3D%200.8%20*%20np.sin(2%20*%20np.pi%20*%2080%20*%20time%5B_mask4%5D)%20%2B%200.6%20*%20np.sin(%0A%20%20%20%20%20%20%20%202%20*%20np.pi%20*%20120%20*%20time%5B_mask4%5D%0A%20%20%20%20)%0A%20%20%20%20time_varying_signal%20%3D%20time_varying_signal%20%2B%200.1%20*%20np.random.randn(len(time))%0A%20%20%20%20time_varying_data%20%3D%20wd.from_numpy(%0A%20%20%20%20%20%20%20%20data%3Dtime_varying_signal.reshape(1%2C%20-1)%2C%20sampling_rate%3Dsampling_rate%2C%20ch_labels%3D%5B%22Time-Varying%20Signal%22%5D%0A%20%20%20%20)%0A%20%20%20%20print(f%22%E4%BF%A1%E5%8F%B7%E4%BD%9C%E6%88%90%3A%20%7Btime_varying_data.shape%7D%2C%20%7Btime_varying_data.sampling_rate%7D%20Hz%22)%0A%20%20%20%20print(f%22%E7%B6%99%E7%B6%9A%E6%99%82%E9%96%93%3A%20%7Btime_varying_data.duration%3A.1f%7D%20%E7%A7%92%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20STFT%EF%BC%88%E7%9F%AD%E6%99%82%E9%96%93%E3%83%95%E3%83%BC%E3%83%AA%E3%82%A8%E5%A4%89%E6%8F%9B%EF%BC%89%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%83%81%E3%83%A5%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0%0A%0A%20%20%20%20%23%23%23%20%E3%81%AA%E3%81%9CSTFT%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E8%AA%BF%E6%95%B4%E3%81%8C%E9%87%8D%E8%A6%81%E3%81%8B%0A%0A%20%20%20%20**STFT%EF%BC%88Short-Time%20Fourier%20Transform%EF%BC%89**%E3%81%AF%E3%80%81%E4%BF%A1%E5%8F%B7%E3%82%92%E7%9F%AD%E3%81%84%E6%99%82%E9%96%93%E7%AA%93%E3%81%A7%E5%8C%BA%E5%88%87%E3%82%8A%E3%80%81%0A%20%20%20%20%E5%90%84%E7%AA%93%E3%81%94%E3%81%A8%E3%81%ABFFT%E3%82%92%E9%81%A9%E7%94%A8%E3%81%99%E3%82%8B%E6%89%8B%E6%B3%95%E3%81%A7%E3%81%99%E3%80%82%E3%81%93%E3%82%8C%E3%81%AB%E3%82%88%E3%82%8A%E3%80%81%0A%20%20%20%20**%E6%99%82%E9%96%93%E3%81%A8%E3%81%A8%E3%82%82%E3%81%AB%E5%A4%89%E5%8C%96%E3%81%99%E3%82%8B%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86**%E3%82%92%E6%8D%89%E3%81%88%E3%82%8B%E3%81%93%E3%81%A8%E3%81%8C%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20STFT%E3%81%AB%E3%81%AF**%E6%99%82%E9%96%93%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%A8%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%AE%E3%83%88%E3%83%AC%E3%83%BC%E3%83%89%E3%82%AA%E3%83%95**%E3%81%8C%E5%AD%98%E5%9C%A8%E3%81%97%E3%80%81%E5%88%86%E6%9E%90%E7%9B%AE%E7%9A%84%E3%81%AB%E5%BF%9C%E3%81%98%E3%81%9F%E9%81%A9%E5%88%87%E3%81%AA%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E8%A8%AD%E5%AE%9A%E3%81%8C%E5%BF%85%E8%A6%81%E3%81%A7%E3%81%99%E3%80%82%0A%0A%20%20%20%20%23%23%23%20%E6%99%82%E9%96%93-%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%AE%E3%83%88%E3%83%AC%E3%83%BC%E3%83%89%E3%82%AA%E3%83%95%0A%0A%20%20%20%20**%E7%AA%93%E3%82%B5%E3%82%A4%E3%82%BA%EF%BC%88%60n_fft%60%EF%BC%89%E3%81%8C%E5%A4%A7%E3%81%8D%E3%81%84%E5%A0%B4%E5%90%88**%3A%0A%20%20%20%20-%20%E2%9C%85%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%8C%E9%AB%98%E3%81%84%EF%BC%88%E7%B4%B0%E3%81%8B%E3%81%84%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%E3%82%92%E5%8C%BA%E5%88%A5%E3%81%A7%E3%81%8D%E3%82%8B%EF%BC%89%0A%20%20%20%20-%20%E2%9D%8C%20%E6%99%82%E9%96%93%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%8C%E4%BD%8E%E3%81%84%EF%BC%88%E7%9E%AC%E9%96%93%E7%9A%84%E3%81%AA%E5%A4%89%E5%8C%96%E3%82%92%E6%8D%89%E3%81%88%E3%81%AB%E3%81%8F%E3%81%84%EF%BC%89%0A%0A%20%20%20%20**%E7%AA%93%E3%82%B5%E3%82%A4%E3%82%BA%EF%BC%88%60n_fft%60%EF%BC%89%E3%81%8C%E5%B0%8F%E3%81%95%E3%81%84%E5%A0%B4%E5%90%88**%3A%0A%20%20%20%20-%20%E2%9C%85%20%E6%99%82%E9%96%93%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%8C%E9%AB%98%E3%81%84%EF%BC%88%E7%9E%AC%E9%96%93%E7%9A%84%E3%81%AA%E5%A4%89%E5%8C%96%E3%82%92%E6%8D%89%E3%81%88%E3%82%84%E3%81%99%E3%81%84%EF%BC%89%0A%20%20%20%20-%20%E2%9D%8C%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%8C%E4%BD%8E%E3%81%84%EF%BC%88%E8%BF%91%E6%8E%A5%E3%81%99%E3%82%8B%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%E3%82%92%E5%8C%BA%E5%88%A5%E3%81%97%E3%81%AB%E3%81%8F%E3%81%84%EF%BC%89%0A%0A%20%20%20%20%23%23%23%20%E5%AE%9F%E8%B7%B5%E7%9A%84%E3%81%AA%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E9%81%B8%E6%8A%9E%0A%0A%20%20%20%20**48kHz%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%E3%81%A7%E3%81%AE%E7%9B%AE%E5%AE%89**%3A%0A%20%20%20%20-%20**%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD**%20%3D%20%60sampling_rate%20%2F%20n_fft%60%0A%20%20%20%20%20%20-%20%60n_fft%3D2048%60%20%E2%86%92%20%E7%B4%8423.4%20Hz%EF%BC%88%E7%B2%97%E3%81%84%EF%BC%89%0A%20%20%20%20%20%20-%20%60n_fft%3D4096%60%20%E2%86%92%20%E7%B4%8411.7%20Hz%EF%BC%88%E4%B8%AD%E7%A8%8B%E5%BA%A6%EF%BC%89%0A%20%20%20%20%20%20-%20%60n_fft%3D8192%60%20%E2%86%92%20%E7%B4%845.9%20Hz%EF%BC%88%E7%B4%B0%E3%81%8B%E3%81%84%EF%BC%89%0A%0A%20%20%20%20-%20**%E6%99%82%E9%96%93%E5%88%86%E8%A7%A3%E8%83%BD**%20%3D%20%60hop_length%20%2F%20sampling_rate%60%0A%20%20%20%20%20%20-%20%60hop_length%3D512%60%20%E2%86%92%20%E7%B4%8410.7%20ms%EF%BC%88%E7%B4%B0%E3%81%8B%E3%81%84%EF%BC%89%0A%20%20%20%20%20%20-%20%60hop_length%3D1024%60%20%E2%86%92%20%E7%B4%8421.3%20ms%EF%BC%88%E4%B8%AD%E7%A8%8B%E5%BA%A6%EF%BC%89%0A%20%20%20%20%20%20-%20%60hop_length%3D2048%60%20%E2%86%92%20%E7%B4%8442.7%20ms%EF%BC%88%E7%B2%97%E3%81%84%EF%BC%89%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%A7%E3%81%AF%E3%80%81**%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E5%A4%89%E6%9B%B4%E3%81%8C%E7%B5%90%E6%9E%9C%E3%81%AB%E4%B8%8E%E3%81%88%E3%82%8B%E5%BD%B1%E9%9F%BF**%E3%82%92%E5%AE%9F%E8%B7%B5%E7%9A%84%E3%81%AB%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E3%83%87%E3%83%A2%E4%BF%A1%E5%8F%B7%E3%81%AE%E4%BD%9C%E6%88%90%0A%0A%20%20%20%20%E6%99%82%E9%96%93%E3%81%A8%E3%81%A8%E3%82%82%E3%81%AB%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%8C%E5%A4%89%E5%8C%96%E3%81%99%E3%82%8B%E4%BF%A1%E5%8F%B7%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%80%81STFT%E3%81%AE%E5%8A%B9%E6%9E%9C%E3%82%92%E8%A6%96%E8%A6%9A%E7%9A%84%E3%81%AB%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20**%E4%BF%A1%E5%8F%B7%E3%81%AE%E6%A7%8B%E6%88%90**%EF%BC%884%E7%A7%92%E9%96%93%EF%BC%89%3A%0A%20%20%20%20-%20**0%E3%80%9C1%E7%A7%92**%3A%2010Hz%EF%BC%88%E4%BD%8E%E5%91%A8%E6%B3%A2%E6%8C%AF%E5%8B%95%EF%BC%89%0A%20%20%20%20-%20**1%E3%80%9C2%E7%A7%92**%3A%2050Hz%EF%BC%88%E9%9B%BB%E6%BA%90%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%EF%BC%89%0A%20%20%20%20-%20**2%E3%80%9C3%E7%A7%92**%3A%20150Hz%EF%BC%88%E6%A9%9F%E6%A2%B0%E3%81%AE%E5%9B%BA%E6%9C%89%E6%8C%AF%E5%8B%95%E6%95%B0%EF%BC%89%0A%20%20%20%20-%20**3%E3%80%9C4%E7%A7%92**%3A%2080Hz%20%2B%20120Hz%E3%81%AE%E8%A4%87%E5%90%88%E6%8C%AF%E5%8B%95%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E4%BF%A1%E5%8F%B7%E3%81%AB%E3%82%88%E3%82%8A%E3%80%81STFT%E3%81%8C**%E6%99%82%E9%96%93%E5%A4%89%E5%8C%96%E3%81%99%E3%82%8B%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%E3%82%92%E6%8D%89%E3%81%88%E3%82%8B%E8%83%BD%E5%8A%9B**%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(np%2C%20wd)%3A%0A%20%20%20%20np.random.seed(42)%0A%20%20%20%20sampling_rate_1%20%3D%2048000%0A%20%20%20%20_duration%20%3D%204.0%0A%20%20%20%20time_1%20%3D%20np.linspace(0%2C%20_duration%2C%20int(sampling_rate_1%20*%20_duration))%0A%20%20%20%20_signal%20%3D%20np.zeros_like(time_1)%0A%20%20%20%20_mask1%20%3D%20(time_1%20%3E%3D%200)%20%26%20(time_1%20%3C%201)%0A%20%20%20%20_signal%5B_mask1%5D%20%3D%201.0%20*%20np.sin(2%20*%20np.pi%20*%2010%20*%20time_1%5B_mask1%5D)%0A%20%20%20%20_mask2%20%3D%20(time_1%20%3E%3D%201)%20%26%20(time_1%20%3C%202)%0A%20%20%20%20_signal%5B_mask2%5D%20%3D%201.0%20*%20np.sin(2%20*%20np.pi%20*%2050%20*%20time_1%5B_mask2%5D)%0A%20%20%20%20_mask3%20%3D%20(time_1%20%3E%3D%202)%20%26%20(time_1%20%3C%203)%0A%20%20%20%20_signal%5B_mask3%5D%20%3D%201.0%20*%20np.sin(2%20*%20np.pi%20*%20150%20*%20time_1%5B_mask3%5D)%0A%20%20%20%20_mask4%20%3D%20time_1%20%3E%3D%203%0A%20%20%20%20_signal%5B_mask4%5D%20%3D%200.7%20*%20np.sin(2%20*%20np.pi%20*%2080%20*%20time_1%5B_mask4%5D)%20%2B%200.7%20*%20np.sin(2%20*%20np.pi%20*%20120%20*%20time_1%5B_mask4%5D)%0A%20%20%20%20_signal%20%3D%20_signal%20%2B%200.05%20*%20np.random.randn(len(time_1))%0A%20%20%20%20time_varying_data_1%20%3D%20wd.from_numpy(%0A%20%20%20%20%20%20%20%20data%3D_signal.reshape(1%2C%20-1)%2C%20sampling_rate%3Dsampling_rate_1%2C%20ch_labels%3D%5B%22Time-Varying%20Signal%22%5D%0A%20%20%20%20)%0A%20%20%20%20print(%22%E2%9C%85%20%E6%99%82%E9%96%93%E5%A4%89%E5%8C%96%E4%BF%A1%E5%8F%B7%E3%82%92%E4%BD%9C%E6%88%90%3A%22)%0A%20%20%20%20print(f%22%20%20%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%3A%20%7Btime_varying_data_1.sampling_rate%7D%20Hz%22)%0A%20%20%20%20print(f%22%20%20%E9%95%B7%E3%81%95%3A%20%7Btime_varying_data_1.duration%3A.1f%7D%20%E7%A7%92%22)%0A%20%20%20%20print(f%22%20%20%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%E6%95%B0%3A%20%7Btime_varying_data_1.n_samples%7D%22)%0A%20%20%20%20return%20sampling_rate_1%2C%20time_varying_data_1%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E6%99%82%E9%96%93%E9%A0%98%E5%9F%9F%E3%81%A7%E3%81%AE%E7%A2%BA%E8%AA%8D%0A%0A%20%20%20%20%E3%81%BE%E3%81%9A%E3%80%81%E4%BD%9C%E6%88%90%E3%81%97%E3%81%9F%E4%BF%A1%E5%8F%B7%E3%82%92%E6%99%82%E9%96%93%E9%A0%98%E5%9F%9F%E3%81%A7%E8%A6%B3%E5%AF%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(plt%2C%20time_varying_data_1)%3A%0A%20%20%20%20(_fig%2C%20_ax)%20%3D%20plt.subplots(figsize%3D(12%2C%204))%0A%20%20%20%20time_varying_data_1.plot(ax%3D_ax%2C%20title%3D%22Time-Varying%20Frequency%20Signal%22%2C%20xlabel%3D%22Time%20%5Bs%5D%22%2C%20ylabel%3D%22Amplitude%22)%0A%20%20%20%20plt.tight_layout()%0A%20%20%20%20plt.show()%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20**%E6%B3%A2%E5%BD%A2%E3%81%AE%E8%A6%B3%E5%AF%9F**%3A%0A%20%20%20%20-%204%E3%81%A4%E3%81%AE%E7%95%B0%E3%81%AA%E3%82%8B%E5%8C%BA%E9%96%93%E3%81%A7%E6%8C%AF%E5%B9%85%E3%81%A8%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%8C%E6%98%8E%E7%A2%BA%E3%81%AB%E5%A4%89%E5%8C%96%E3%81%97%E3%81%A6%E3%81%84%E3%82%8B%0A%20%20%20%20-%20%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%8C%E9%AB%98%E3%81%84%E3%81%BB%E3%81%A9%E6%B3%A2%E3%81%AE%E9%96%93%E9%9A%94%E3%81%8C%E7%8B%AD%E3%81%8F%E3%81%AA%E3%82%8B%EF%BC%882-3%E7%A7%92%E3%81%AE%E5%8C%BA%E9%96%93%EF%BC%89%0A%20%20%20%20-%203-4%E7%A7%92%E3%81%AE%E5%8C%BA%E9%96%93%E3%81%A7%E3%81%AF%E8%A4%87%E6%95%B0%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%8C%E6%B7%B7%E5%9C%A8%E3%81%97%E3%80%81%E8%A4%87%E9%9B%91%E3%81%AA%E6%B3%A2%E5%BD%A2%E3%81%AB%E3%81%AA%E3%82%8B%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E6%B3%A2%E5%BD%A2%E3%81%A0%E3%81%91%E3%81%A7%E3%81%AF%E3%80%8C%E3%81%A9%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%E3%81%8C%E3%81%84%E3%81%A4%E7%8F%BE%E3%82%8C%E3%81%9F%E3%81%8B%E3%80%8D%E3%81%AF%E5%AE%9A%E9%87%8F%E7%9A%84%E3%81%AB%E5%88%A4%E6%96%AD%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82%E6%AC%A1%E3%81%ABSTFT%E3%82%92%E9%81%A9%E7%94%A8%E3%81%97%E3%81%A6%E3%80%81%E6%99%82%E9%96%93-%E5%91%A8%E6%B3%A2%E6%95%B0%E5%B9%B3%E9%9D%A2%E3%81%A7%E3%81%AE%E5%88%86%E6%9E%90%E3%82%92%E8%A1%8C%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20STFT%E3%81%AE%E5%AE%9F%E8%A1%8C%0A%0A%20%20%20%20%E3%81%9D%E3%82%8C%E3%81%A7%E3%81%AF%E3%80%81STFT%E3%82%92%E9%81%A9%E7%94%A8%E3%81%97%E3%81%A6%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20**%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF**%EF%BC%8848kHz%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%EF%BC%89%3A%0A%20%20%20%20-%20**%60n_fft%3D2048%60**%3A%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%20%E7%B4%8423.4%20Hz%0A%20%20%20%20-%20**%60hop_length%3D512%60**%3A%20%E6%99%82%E9%96%93%E5%88%86%E8%A7%A3%E8%83%BD%20%E7%B4%8410.7%20ms%0A%20%20%20%20-%20**%60window%3D'hann'%60**%3A%20Hann%E7%AA%93%EF%BC%88%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E6%BC%8F%E3%82%8C%E3%81%A8%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%AE%E3%83%90%E3%83%A9%E3%83%B3%E3%82%B9%EF%BC%89%0A%0A%20%20%20%20%E3%81%93%E3%82%8C%E3%82%89%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%81%AF%E3%80%81**%E7%9E%AC%E6%99%82%E7%9A%84%E3%81%AA%E5%91%A8%E6%B3%A2%E6%95%B0%E5%A4%89%E5%8C%96%E3%82%92%E6%8D%89%E3%81%88%E3%82%8B**%E3%81%9F%E3%82%81%E3%81%AB%E6%99%82%E9%96%93%E5%88%86%E8%A7%A3%E8%83%BD%E3%82%92%E5%84%AA%E5%85%88%E3%81%97%E3%81%9F%E8%A8%AD%E5%AE%9A%E3%81%A7%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(plt%2C%20time_varying_data_1)%3A%0A%20%20%20%20_spec%20%3D%20time_varying_data_1.stft(n_fft%3D2048%2C%20hop_length%3D512%2C%20window%3D%22hann%22)%0A%20%20%20%20print(%22%F0%9F%93%8A%20STFT%E7%B5%90%E6%9E%9C%3A%22)%0A%20%20%20%20_spec.info()%0A%20%20%20%20(_fig%2C%20_ax)%20%3D%20plt.subplots(figsize%3D(12%2C%206))%0A%20%20%20%20_spec.plot(ax%3D_ax%2C%20title%3D%22Spectrogram%20(STFT)%22%2C%20ylim%3D(0%2C%20200)%2C%20vmin%3D-60%2C%20vmax%3D20)%0A%20%20%20%20plt.tight_layout()%0A%20%20%20%20plt.show()%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%AE%E8%AA%AD%E3%81%BF%E6%96%B9%E3%81%A8%E7%B5%90%E6%9E%9C%E8%A7%A3%E9%87%88%0A%0A%20%20%20%20**%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%AE%E6%A7%8B%E6%88%90**%3A%0A%20%20%20%20-%20**%E6%A8%AA%E8%BB%B8**%3A%20%E6%99%82%E9%96%93%EF%BC%88%E7%A7%92%EF%BC%89%20-%20%E4%BF%A1%E5%8F%B7%E3%81%AE%E6%99%82%E9%96%93%E9%80%B2%E8%A1%8C%0A%20%20%20%20-%20**%E7%B8%A6%E8%BB%B8**%3A%20%E5%91%A8%E6%B3%A2%E6%95%B0%EF%BC%88Hz%EF%BC%89%20-%20%E5%90%84%E6%99%82%E5%88%BB%E3%81%AB%E5%90%AB%E3%81%BE%E3%82%8C%E3%82%8B%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%0A%20%20%20%20-%20**%E8%89%B2**%3A%20%E3%83%91%E3%83%AF%E3%83%BC%EF%BC%88dB%EF%BC%89%20-%20%E6%98%8E%E3%82%8B%E3%81%84%E8%89%B2%E3%81%BB%E3%81%A9%E5%BC%B7%E3%81%84%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%0A%0A%20%20%20%20**%E8%A6%B3%E5%AF%9F%E3%81%95%E3%82%8C%E3%82%8B%E7%B5%90%E6%9E%9C**%3A%0A%20%20%20%20-%20**0-1%E7%A7%92**%3A%2010Hz%E4%BB%98%E8%BF%91%E3%81%AB%E6%98%8E%E3%82%8B%E3%81%84%E6%B0%B4%E5%B9%B3%E7%B7%9A%20%E2%86%92%20%E4%BD%8E%E5%91%A8%E6%B3%A2%E6%8C%AF%E5%8B%95%E3%81%8C%E6%94%AF%E9%85%8D%E7%9A%84%0A%20%20%20%20-%20**1-2%E7%A7%92**%3A%2050Hz%E4%BB%98%E8%BF%91%E3%81%AB%E6%98%8E%E3%82%8B%E3%81%84%E6%B0%B4%E5%B9%B3%E7%B7%9A%20%E2%86%92%20%E9%9B%BB%E6%BA%90%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%E3%81%8C%E7%8F%BE%E3%82%8C%E3%82%8B%0A%20%20%20%20-%20**2-3%E7%A7%92**%3A%20150Hz%E4%BB%98%E8%BF%91%E3%81%AB%E6%98%8E%E3%82%8B%E3%81%84%E6%B0%B4%E5%B9%B3%E7%B7%9A%20%E2%86%92%20%E3%82%88%E3%82%8A%E9%AB%98%E3%81%84%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%0A%20%20%20%20-%20**3-4%E7%A7%92**%3A%2080Hz%E3%81%A8120Hz%E4%BB%98%E8%BF%91%E3%81%AB2%E6%9C%AC%E3%81%AE%E6%98%8E%E3%82%8B%E3%81%84%E7%B7%9A%20%E2%86%92%20%E8%A4%87%E5%90%88%E6%8C%AF%E5%8B%95%E3%82%92%E6%98%8E%E7%A2%BA%E3%81%AB%E5%88%86%E9%9B%A2%0A%0A%20%20%20%20**STFT%E3%81%AE%E5%88%A9%E7%82%B9**%3A%0A%20%20%20%20-%20%E9%80%9A%E5%B8%B8%E3%81%AEFFT%E3%81%A7%E3%81%AF%E5%85%A8%E6%99%82%E9%96%93%E3%81%AE%E5%B9%B3%E5%9D%87%E7%9A%84%E3%81%AA%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E3%81%97%E3%81%8B%E5%BE%97%E3%82%89%E3%82%8C%E3%81%AA%E3%81%84%E3%81%8C%E3%80%81**STFT%E3%81%AF%E6%99%82%E9%96%93%E5%A4%89%E5%8C%96%E3%82%92%E6%8D%89%E3%81%88%E3%82%89%E3%82%8C%E3%82%8B**%0A%20%20%20%20-%20%E5%90%84%E6%99%82%E9%96%93%E7%AA%93%E3%81%A7%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%E3%82%92%E5%80%8B%E5%88%A5%E3%81%AB%E5%88%86%E6%9E%90%E3%81%A7%E3%81%8D%E3%82%8B%0A%20%20%20%20-%20%E9%81%8E%E6%B8%A1%E7%8F%BE%E8%B1%A1%E3%82%84%E9%9D%9E%E5%AE%9A%E5%B8%B8%E4%BF%A1%E5%8F%B7%E3%81%AE%E5%88%86%E6%9E%90%E3%81%AB%E4%B8%8D%E5%8F%AF%E6%AC%A0%0A%0A%20%20%20%20%E6%AC%A1%E3%81%AB%E3%80%81%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%A6%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%AE%E3%83%88%E3%83%AC%E3%83%BC%E3%83%89%E3%82%AA%E3%83%95%E3%82%92%E4%BD%93%E9%A8%93%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E5%A4%89%E6%9B%B4%E3%81%AB%E3%82%88%E3%82%8B%E5%88%86%E8%A7%A3%E8%83%BD%E6%AF%94%E8%BC%83%0A%0A%20%20%20%20STFT%E3%81%AE**%E7%AA%93%E3%82%B5%E3%82%A4%E3%82%BA%EF%BC%88%60n_fft%60%EF%BC%89**%E3%82%92%E5%A4%89%E3%81%88%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A7%E3%80%81%E6%99%82%E9%96%93-%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%AE%E3%83%88%E3%83%AC%E3%83%BC%E3%83%89%E3%82%AA%E3%83%95%E3%82%92%E5%AE%9F%E9%9A%9B%E3%81%AB%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20**%E6%AF%94%E8%BC%83%E3%81%99%E3%82%8B3%E3%81%A4%E3%81%AE%E8%A8%AD%E5%AE%9A**%3A%0A%20%20%20%201.%20**%E5%B0%8F%E7%AA%93%EF%BC%88%60n_fft%3D1024%60%EF%BC%89**%3A%20%E6%99%82%E9%96%93%E5%88%86%E8%A7%A3%E8%83%BD%E5%84%AA%E5%85%88%20-%20%E7%9E%AC%E6%99%82%E7%9A%84%E5%A4%89%E5%8C%96%E3%81%AB%E5%BC%B7%E3%81%84%0A%20%20%20%202.%20**%E4%B8%AD%E7%AA%93%EF%BC%88%60n_fft%3D2048%60%EF%BC%89**%3A%20%E3%83%90%E3%83%A9%E3%83%B3%E3%82%B9%E5%9E%8B%20-%20%E4%B8%80%E8%88%AC%E7%9A%84%E3%81%AA%E7%94%A8%E9%80%94%0A%20%20%20%203.%20**%E5%A4%A7%E7%AA%93%EF%BC%88%60n_fft%3D4096%60%EF%BC%89**%3A%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E5%84%AA%E5%85%88%20-%20%E8%BF%91%E6%8E%A5%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%AE%E5%88%86%E9%9B%A2%E3%81%AB%E5%BC%B7%E3%81%84%0A%0A%20%20%20%20%E3%81%9D%E3%82%8C%E3%81%9E%E3%82%8C%E3%81%AE%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%82%92%E4%B8%A6%E3%81%B9%E3%81%A6%E6%AF%94%E8%BC%83%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(plt%2C%20sampling_rate_1%2C%20time_varying_data_1)%3A%0A%20%20%20%20n_fft_sizes%20%3D%20%5B1024%2C%202048%2C%204096%5D%0A%20%20%20%20spectrograms%20%3D%20%7B%7D%0A%20%20%20%20for%20_n_fft%20in%20n_fft_sizes%3A%0A%20%20%20%20%20%20%20%20_hop_length%20%3D%20_n_fft%20%2F%2F%204%0A%20%20%20%20%20%20%20%20_freq_res%20%3D%20sampling_rate_1%20%2F%20_n_fft%0A%20%20%20%20%20%20%20%20time_res%20%3D%20_hop_length%20%2F%20sampling_rate_1%20*%201000%0A%20%20%20%20%20%20%20%20_spec%20%3D%20time_varying_data_1.stft(n_fft%3D_n_fft%2C%20hop_length%3D_hop_length)%0A%20%20%20%20%20%20%20%20spectrograms%5B_n_fft%5D%20%3D%20_spec%0A%20%20%20%20%20%20%20%20print(f%22n_fft%3D%7B_n_fft%7D%3A%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%3D%7B_freq_res%3A.1f%7D%20Hz%2C%20%E6%99%82%E9%96%93%E5%88%86%E8%A7%A3%E8%83%BD%3D%7Btime_res%3A.1f%7D%20ms%22)%0A%20%20%20%20(_fig%2C%20_axes)%20%3D%20plt.subplots(1%2C%203%2C%20figsize%3D(18%2C%205))%0A%20%20%20%20for%20_ax%2C%20(_n_fft%2C%20_spec)%20in%20zip(_axes%2C%20spectrograms.items())%3A%0A%20%20%20%20%20%20%20%20_freq_res%20%3D%20sampling_rate_1%20%2F%20_n_fft%0A%20%20%20%20%20%20%20%20time_res%20%3D%20_n_fft%20%2F%2F%204%20%2F%20sampling_rate_1%20*%201000%0A%20%20%20%20%20%20%20%20_spec.plot(%0A%20%20%20%20%20%20%20%20%20%20%20%20ax%3D_ax%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20title%3Df%22n_fft%3D%7B_n_fft%7D%5Cn(f_res%3D%7B_freq_res%3A.1f%7DHz%2C%20t_res%3D%7Btime_res%3A.1f%7Dms)%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20ylim%3D(0%2C%20200)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20vmin%3D-60%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20vmax%3D20%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20plt.tight_layout()%0A%20%20%20%20plt.show()%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20**%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E6%AF%94%E8%BC%83%E3%81%AE%E7%B5%90%E6%9E%9C**%3A%0A%0A%20%20%20%20**%E5%B0%8F%E7%AA%93%EF%BC%88%60n_fft%3D1024%60%EF%BC%89**%3A%0A%20%20%20%20-%20%E2%9C%85%20%E6%99%82%E9%96%93%E7%9A%84%E3%81%AA%E5%8C%BA%E5%88%87%E3%82%8A%E3%81%8C%E3%82%B7%E3%83%A3%E3%83%BC%E3%83%97%EF%BC%88%E5%90%84%E5%8C%BA%E9%96%93%E3%81%AE%E5%A2%83%E7%95%8C%E3%81%8C%E3%81%AF%E3%81%A3%E3%81%8D%E3%82%8A%EF%BC%89%0A%20%20%20%20-%20%E2%9D%8C%20%E5%91%A8%E6%B3%A2%E6%95%B0%E8%BB%B8%E6%96%B9%E5%90%91%E3%81%AB%E3%81%BC%E3%82%84%E3%81%91%E3%81%A6%E3%81%84%E3%82%8B%EF%BC%8880Hz%E3%81%A8120Hz%E3%81%AE%E5%88%86%E9%9B%A2%E3%81%8C%E4%B8%8D%E6%98%8E%E7%9E%AD%EF%BC%89%0A%20%20%20%20-%20**%E7%94%A8%E9%80%94**%3A%20%E6%80%A5%E6%BF%80%E3%81%AA%E5%91%A8%E6%B3%A2%E6%95%B0%E5%A4%89%E5%8C%96%E3%82%84%E9%81%8E%E6%B8%A1%E7%8F%BE%E8%B1%A1%E3%81%AE%E6%A4%9C%E5%87%BA%0A%0A%20%20%20%20**%E4%B8%AD%E7%AA%93%EF%BC%88%60n_fft%3D2048%60%EF%BC%89**%3A%0A%20%20%20%20-%20%E2%9C%85%20%E6%99%82%E9%96%93%E3%81%A8%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%AE%E3%83%90%E3%83%A9%E3%83%B3%E3%82%B9%E3%81%8C%E8%89%AF%E3%81%84%0A%20%20%20%20-%20%E2%9C%85%20%E5%A4%A7%E6%8A%B5%E3%81%AE%E3%82%B1%E3%83%BC%E3%82%B9%E3%81%A7%E5%8D%81%E5%88%86%E3%81%AA%E5%88%86%E8%A7%A3%E8%83%BD%0A%20%20%20%20-%20**%E7%94%A8%E9%80%94**%3A%20%E4%B8%80%E8%88%AC%E7%9A%84%E3%81%AA%E9%9F%B3%E9%9F%BF%E3%83%BB%E6%8C%AF%E5%8B%95%E5%88%86%E6%9E%90%EF%BC%88%E3%83%87%E3%83%95%E3%82%A9%E3%83%AB%E3%83%88%E3%81%A8%E3%81%97%E3%81%A6%E6%8E%A8%E5%A5%A8%EF%BC%89%0A%0A%20%20%20%20**%E5%A4%A7%E7%AA%93%EF%BC%88%60n_fft%3D4096%60%EF%BC%89**%3A%0A%20%20%20%20-%20%E2%9C%85%2080Hz%E3%81%A8120Hz%E3%82%92%E6%98%8E%E7%A2%BA%E3%81%AB%E5%88%86%E9%9B%A2%E3%81%A7%E3%81%8D%E3%82%8B%0A%20%20%20%20-%20%E2%9D%8C%20%E6%99%82%E9%96%93%E6%96%B9%E5%90%91%E3%81%AB%E3%81%BC%E3%82%84%E3%81%91%EF%BC%88%E5%8C%BA%E9%96%93%E3%81%AE%E5%A2%83%E7%95%8C%E3%81%8C%E4%B8%8D%E6%98%8E%E7%9E%AD%EF%BC%89%0A%20%20%20%20-%20**%E7%94%A8%E9%80%94**%3A%20%E8%BF%91%E6%8E%A5%E3%81%99%E3%82%8B%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%E3%81%AE%E7%B2%BE%E5%AF%86%E5%88%86%E9%9B%A2%E3%80%81%E5%AE%9A%E5%B8%B8%E4%BF%A1%E5%8F%B7%E3%81%AE%E5%88%86%E6%9E%90%0A%0A%20%20%20%20**%E5%AE%9F%E8%B7%B5%E7%9A%84%E3%81%AA%E9%81%B8%E6%8A%9E%E6%8C%87%E9%87%9D**%3A%0A%20%20%20%20-%20**%E9%81%8E%E6%B8%A1%E7%8F%BE%E8%B1%A1%E3%83%BB%E8%A1%9D%E6%92%83%E9%9F%B3%E5%88%86%E6%9E%90**%3A%20%E5%B0%8F%E7%AA%93%EF%BC%88%E9%AB%98%E6%99%82%E9%96%93%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%89%0A%20%20%20%20-%20**%E9%9F%B3%E5%A3%B0%E3%83%BB%E9%9F%B3%E6%A5%BD%E5%88%86%E6%9E%90**%3A%20%E4%B8%AD%E7%AA%93%EF%BC%88%E3%83%90%E3%83%A9%E3%83%B3%E3%82%B9%E5%9E%8B%EF%BC%89%0A%20%20%20%20-%20**%E6%A9%9F%E6%A2%B0%E8%A8%BA%E6%96%AD%E3%83%BB%E5%91%A8%E6%B3%A2%E6%95%B0%E5%90%8C%E5%AE%9A**%3A%20%E5%A4%A7%E7%AA%93%EF%BC%88%E9%AB%98%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%89%0A%0A%20%20%20%20%E6%AC%A1%E3%81%AE%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%A7%E3%81%AF%E3%80%81Welch%E6%B3%95%E3%81%AB%E3%82%88%E3%82%8B%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E6%8E%A8%E5%AE%9A%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E6%9C%80%E9%81%A9%E5%8C%96%E3%82%92%E5%AD%A6%E3%81%B3%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Welch%E6%B3%95%E3%81%AB%E3%82%88%E3%82%8B%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E6%9C%80%E9%81%A9%E5%8C%96%0A%0A%20%20%20%20%23%23%23%20%E3%81%AA%E3%81%9CWelch%E6%B3%95%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E8%AA%BF%E6%95%B4%E3%81%8C%E9%87%8D%E8%A6%81%E3%81%8B%0A%0A%20%20%20%20**Welch%E6%B3%95**%E3%81%AF%E3%80%81%E4%BF%A1%E5%8F%B7%E3%82%92%E9%87%8D%E8%A4%87%E3%81%99%E3%82%8B%E5%8C%BA%E9%96%93%E3%81%AB%E5%88%86%E5%89%B2%E3%81%97%E3%80%81%E5%90%84%E5%8C%BA%E9%96%93%E3%81%AE%E3%83%91%E3%83%AF%E3%83%BC%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E3%82%92%E5%B9%B3%E5%9D%87%E5%8C%96%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A7%E3%80%81%E3%83%8E%E3%82%A4%E3%82%BA%E3%81%AE%E5%BD%B1%E9%9F%BF%E3%82%92%E4%BD%8E%E6%B8%9B%E3%81%97%E3%80%81%E3%82%88%E3%82%8A%E5%AE%89%E5%AE%9A%E3%81%97%E3%81%9F%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E6%8E%A8%E5%AE%9A%E3%82%92%E5%AE%9F%E7%8F%BE%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20**02%E3%81%AEmarimo%E3%82%A2%E3%83%97%E3%83%AA**%E3%81%A7%E3%81%AF%E3%80%81Welch%E6%B3%95%E3%81%AE%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E4%BD%BF%E3%81%84%E6%96%B9%E3%81%A8FFT%E3%81%A8%E3%81%AE%E9%81%95%E3%81%84%E3%82%92%E5%AD%A6%E3%81%B3%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E3%81%93%E3%81%AE%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%A7%E3%81%AF%E3%80%81**%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E8%AA%BF%E6%95%B4%E3%81%AB%E3%82%88%E3%82%8B%E6%8E%A8%E5%AE%9A%E7%B2%BE%E5%BA%A6%E3%81%AE%E6%9C%80%E9%81%A9%E5%8C%96**%E3%82%92%E5%AE%9F%E8%B7%B5%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%23%23%23%20Welch%E6%B3%95%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%81%A8%E3%81%9D%E3%81%AE%E5%BD%B9%E5%89%B2%0A%0A%20%20%20%20**%E4%B8%BB%E8%A6%81%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF**%3A%0A%20%20%20%20-%20**%60n_fft%60**%3A%20%E5%90%84%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AEFFT%E3%82%B5%E3%82%A4%E3%82%BA%20-%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%82%92%E6%B1%BA%E5%AE%9A%0A%20%20%20%20-%20**%60hop_length%60**%3A%20%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E9%96%93%E3%81%AE%E3%82%AA%E3%83%BC%E3%83%90%E3%83%BC%E3%83%A9%E3%83%83%E3%83%97%20-%20%E6%8E%A8%E5%AE%9A%E3%81%AE%E5%AE%89%E5%AE%9A%E6%80%A7%E3%81%AB%E5%BD%B1%E9%9F%BF%0A%20%20%20%20-%20**%60window%60**%3A%20%E7%AA%93%E9%96%A2%E6%95%B0%E3%81%AE%E7%A8%AE%E9%A1%9E%20-%20%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E6%BC%8F%E3%82%8C%E3%81%AE%E6%8A%91%E5%88%B6%0A%0A%20%20%20%20**%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E9%96%93%E3%81%AE%E3%83%88%E3%83%AC%E3%83%BC%E3%83%89%E3%82%AA%E3%83%95**%3A%0A%20%20%20%20-%20**%60n_fft%60%E3%81%8C%E5%A4%A7%E3%81%8D%E3%81%84**%3A%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E2%86%91%E3%80%81%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E6%95%B0%E2%86%93%EF%BC%88%E5%B9%B3%E5%9D%87%E5%8C%96%E5%8A%B9%E6%9E%9C%E2%86%93%EF%BC%89%0A%20%20%20%20-%20**%60hop_length%60%E3%81%8C%E5%B0%8F%E3%81%95%E3%81%84**%3A%20%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E6%95%B0%E2%86%91%EF%BC%88%E5%B9%B3%E5%9D%87%E5%8C%96%E5%8A%B9%E6%9E%9C%E2%86%91%EF%BC%89%E3%80%81%E8%A8%88%E7%AE%97%E6%99%82%E9%96%93%E2%86%91%0A%20%20%20%20-%20**%E7%AA%93%E9%96%A2%E6%95%B0%E3%81%AE%E9%81%B8%E6%8A%9E**%3A%20%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E6%BC%8F%E3%82%8C%20vs%20%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%96%E5%B9%85%0A%0A%20%20%20%20%23%23%23%20%E5%AE%9F%E8%B7%B5%E7%9A%84%E3%81%AA%E6%9C%80%E9%81%A9%E5%8C%96%E6%88%A6%E7%95%A5%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%A7%E3%81%AF%E3%80%81**%E4%BD%8ESNR%E4%BF%A1%E5%8F%B7**%E3%81%AB%E5%AF%BE%E3%81%97%E3%81%A63%E3%81%A4%E3%81%AE%E7%95%B0%E3%81%AA%E3%82%8B%E5%88%86%E8%A7%A3%E8%83%BD%E8%A8%AD%E5%AE%9A%E3%82%92%E6%AF%94%E8%BC%83%E3%81%97%E3%80%81%E9%81%A9%E5%88%87%E3%81%AA%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E9%81%B8%E6%8A%9E%E3%81%AE%E6%8C%87%E9%87%9D%E3%82%92%E5%AD%A6%E3%81%B3%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E4%BD%8ESNR%E4%BF%A1%E5%8F%B7%E3%81%AE%E4%BD%9C%E6%88%90%0A%0A%20%20%20%20%E3%81%BE%E3%81%9A%E3%80%81%E3%83%8E%E3%82%A4%E3%82%BA%E3%81%AE%E5%A4%9A%E3%81%84%E4%BF%A1%E5%8F%B7%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%80%81Welch%E6%B3%95%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E6%9C%80%E9%81%A9%E5%8C%96%E3%81%AE%E5%8A%B9%E6%9E%9C%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20**%E4%BF%A1%E5%8F%B7%E3%81%AE%E6%A7%8B%E6%88%90**%3A%0A%20%20%20%20-%20**%E4%BF%A1%E5%8F%B7%E6%88%90%E5%88%86**%3A%20100Hz%EF%BC%88%E6%8C%AF%E5%B9%850.5%EF%BC%89%2B%20150Hz%EF%BC%88%E6%8C%AF%E5%B9%850.3%EF%BC%89%0A%20%20%20%20-%20**%E3%83%8E%E3%82%A4%E3%82%BA**%3A%20%E5%BC%B7%E3%81%84%E3%82%AC%E3%82%A6%E3%82%B7%E3%82%A2%E3%83%B3%E3%83%8E%E3%82%A4%E3%82%BA%EF%BC%88%E6%A8%99%E6%BA%96%E5%81%8F%E5%B7%AE2.0%EF%BC%89%0A%20%20%20%20-%20**SNR**%3A%20%E3%83%9E%E3%82%A4%E3%83%8A%E3%82%B9%E3%81%AESNR%EF%BC%88%E4%BF%A1%E5%8F%B7%E3%82%88%E3%82%8A%E3%83%8E%E3%82%A4%E3%82%BA%E3%81%8C%E5%BC%B7%E3%81%84%EF%BC%89%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E5%8E%B3%E3%81%97%E3%81%84%E6%9D%A1%E4%BB%B6%E4%B8%8B%E3%81%A7%E3%80%81Welch%E6%B3%95%E3%81%AE%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E8%AA%BF%E6%95%B4%E3%81%AB%E3%82%88%E3%81%A3%E3%81%A6%E4%BF%A1%E5%8F%B7%E6%88%90%E5%88%86%E3%82%92%E6%A4%9C%E5%87%BA%E3%81%A7%E3%81%8D%E3%82%8B%E3%81%8B%E3%82%92%E6%A4%9C%E8%A8%BC%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(np%2C%20sampling_rate_1%2C%20wd)%3A%0A%20%20%20%20np.random.seed(123)%0A%20%20%20%20_duration%20%3D%2010.0%0A%20%20%20%20time_2%20%3D%20np.linspace(0%2C%20_duration%2C%20int(sampling_rate_1%20*%20_duration))%0A%20%20%20%20_signal%20%3D%200.5%20*%20np.sin(2%20*%20np.pi%20*%20100%20*%20time_2)%20%2B%200.3%20*%20np.sin(2%20*%20np.pi%20*%20150%20*%20time_2)%0A%20%20%20%20noise%20%3D%202.0%20*%20np.random.randn(len(time_2))%0A%20%20%20%20noisy_signal%20%3D%20_signal%20%2B%20noise%0A%20%20%20%20noisy_data%20%3D%20wd.from_numpy(%0A%20%20%20%20%20%20%20%20data%3Dnoisy_signal.reshape(1%2C%20-1)%2C%20sampling_rate%3Dsampling_rate_1%2C%20ch_labels%3D%5B%22Low%20SNR%20Signal%22%5D%0A%20%20%20%20)%0A%20%20%20%20signal_power%20%3D%20_signal.var()%0A%20%20%20%20noise_power%20%3D%20noise.var()%0A%20%20%20%20snr_db%20%3D%2010%20*%20np.log10(signal_power%20%2F%20noise_power)%0A%20%20%20%20print(%22%E2%9C%85%20%E4%BD%8ESNR%E4%BF%A1%E5%8F%B7%E3%82%92%E4%BD%9C%E6%88%90%3A%22)%0A%20%20%20%20print(f%22%20%20%E7%90%86%E8%AB%96SNR%3A%20%7Bsnr_db%3A.1f%7D%20dB%22)%0A%20%20%20%20print(%22%20%20%E4%BF%A1%E5%8F%B7%E5%91%A8%E6%B3%A2%E6%95%B0%3A%20100Hz%2C%20150Hz%22)%0A%20%20%20%20print(%22%20%20%E3%83%8E%E3%82%A4%E3%82%BA%E3%83%AC%E3%83%99%E3%83%AB%3A%20%E5%BC%B7%EF%BC%88%CF%83%3D2.0%EF%BC%89%22)%0A%20%20%20%20print(f%22%20%20%E4%BF%A1%E5%8F%B7%E9%95%B7%3A%20%7Bnoisy_data.duration%3A.1f%7D%20%E7%A7%92%22)%0A%20%20%20%20return%20noisy_data%2C%20time_2%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%203%E3%81%A4%E3%81%AE%E5%88%86%E8%A7%A3%E8%83%BD%E8%A8%AD%E5%AE%9A%E3%81%A7%E6%AF%94%E8%BC%83%0A%0A%20%20%20%20%E7%95%B0%E3%81%AA%E3%82%8B%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E8%A8%AD%E5%AE%9A%E3%81%A7Welch%E6%B3%95%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%97%E3%80%81**%E6%8E%A8%E5%AE%9A%E7%B2%BE%E5%BA%A6%E3%81%AE%E9%81%95%E3%81%84**%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20**%E6%AF%94%E8%BC%83%E3%81%99%E3%82%8B3%E3%81%A4%E3%81%AE%E8%A8%AD%E5%AE%9A**%3A%0A%20%20%20%201.%20**%E4%BD%8E%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%E9%AB%98%E9%80%9F%EF%BC%89**%3A%20%60n_fft%3D2048%60%2C%20%60hop_length%3D1024%60%0A%20%20%20%20%20%20%20-%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%3A%20%E7%B4%8423.4%20Hz%0A%20%20%20%20%20%20%20-%20%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E6%95%B0%3A%20%E5%A4%9A%E3%81%84%EF%BC%88%E5%B9%B3%E5%9D%87%E5%8C%96%E5%8A%B9%E6%9E%9C%E5%A4%A7%EF%BC%89%0A%0A%20%20%20%202.%20**%E4%B8%AD%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%E3%83%90%E3%83%A9%E3%83%B3%E3%82%B9%EF%BC%89**%3A%20%60n_fft%3D4096%60%2C%20%60hop_length%3D2048%60%0A%20%20%20%20%20%20%20-%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%3A%20%E7%B4%8411.7%20Hz%0A%20%20%20%20%20%20%20-%20%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E6%95%B0%3A%20%E4%B8%AD%E7%A8%8B%E5%BA%A6%0A%0A%20%20%20%203.%20**%E9%AB%98%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%E7%B2%BE%E5%AF%86%EF%BC%89**%3A%20%60n_fft%3D8192%60%2C%20%60hop_length%3D4096%60%0A%20%20%20%20%20%20%20-%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%3A%20%E7%B4%845.9%20Hz%0A%20%20%20%20%20%20%20-%20%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E6%95%B0%3A%20%E5%B0%91%E3%81%AA%E3%81%84%EF%BC%88%E5%B9%B3%E5%9D%87%E5%8C%96%E5%8A%B9%E6%9E%9C%E5%B0%8F%EF%BC%89%0A%0A%20%20%20%20%E3%81%9D%E3%82%8C%E3%81%9E%E3%82%8C%E3%81%AE%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E3%82%92%E6%AF%94%E8%BC%83%E3%81%97%E3%81%A6%E3%80%81%E4%BF%A1%E5%8F%B7%E6%A4%9C%E5%87%BA%E8%83%BD%E5%8A%9B%E3%81%AE%E5%B7%AE%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(noisy_data%2C%20plt%2C%20sampling_rate_1)%3A%0A%20%20%20%20configs%20%3D%20%5B%0A%20%20%20%20%20%20%20%20%7B%22n_fft%22%3A%202048%2C%20%22hop_length%22%3A%201024%2C%20%22label%22%3A%20%22%E4%BD%8E%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%E9%AB%98%E9%80%9F%EF%BC%89%22%7D%2C%0A%20%20%20%20%20%20%20%20%7B%22n_fft%22%3A%204096%2C%20%22hop_length%22%3A%202048%2C%20%22label%22%3A%20%22%E4%B8%AD%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%E3%83%90%E3%83%A9%E3%83%B3%E3%82%B9%EF%BC%89%22%7D%2C%0A%20%20%20%20%20%20%20%20%7B%22n_fft%22%3A%208192%2C%20%22hop_length%22%3A%204096%2C%20%22label%22%3A%20%22%E9%AB%98%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%E7%B2%BE%E5%AF%86%EF%BC%89%22%7D%2C%0A%20%20%20%20%5D%0A%20%20%20%20_welch_results%20%3D%20%7B%7D%0A%20%20%20%20print(%22%F0%9F%94%A7%20Welch%E6%B3%95%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E6%AF%94%E8%BC%83%3A%22)%0A%20%20%20%20for%20config%20in%20configs%3A%0A%20%20%20%20%20%20%20%20_n_fft%20%3D%20config%5B%22n_fft%22%5D%0A%20%20%20%20%20%20%20%20_hop_length%20%3D%20config%5B%22hop_length%22%5D%0A%20%20%20%20%20%20%20%20label%20%3D%20config%5B%22label%22%5D%0A%20%20%20%20%20%20%20%20psd%20%3D%20noisy_data.welch(n_fft%3D_n_fft%2C%20hop_length%3D_hop_length)%0A%20%20%20%20%20%20%20%20_welch_results%5Blabel%5D%20%3D%20psd%0A%20%20%20%20%20%20%20%20_freq_res%20%3D%20sampling_rate_1%20%2F%20_n_fft%0A%20%20%20%20%20%20%20%20n_segments%20%3D%20int((noisy_data.n_samples%20-%20_n_fft)%20%2F%20_hop_length)%20%2B%201%0A%20%20%20%20%20%20%20%20print(f%22%5Cn%7Blabel%7D%3A%22)%0A%20%20%20%20%20%20%20%20print(f%22%20%20n_fft%3D%7B_n_fft%7D%2C%20hop_length%3D%7B_hop_length%7D%22)%0A%20%20%20%20%20%20%20%20print(f%22%20%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%3A%20%7B_freq_res%3A.2f%7D%20Hz%22)%0A%20%20%20%20%20%20%20%20print(f%22%20%20%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E6%95%B0%3A%20%7Bn_segments%7D%20(%E5%B9%B3%E5%9D%87%E5%8C%96)%22)%0A%20%20%20%20(_fig%2C%20_axes)%20%3D%20plt.subplots(1%2C%203%2C%20figsize%3D(18%2C%205))%0A%20%20%20%20for%20_ax%2C%20(label%2C%20psd)%20in%20zip(_axes%2C%20_welch_results.items())%3A%0A%20%20%20%20%20%20%20%20psd.plot(ax%3D_ax%2C%20title%3Dlabel%2C%20xlim%3D(0%2C%20300)%2C%20ylim%3D(-30%2C%200))%0A%20%20%20%20%20%20%20%20_ax.axvline(100%2C%20color%3D%22red%22%2C%20linestyle%3D%22--%22%2C%20alpha%3D0.7%2C%20linewidth%3D1%2C%20label%3D%22100Hz%22)%0A%20%20%20%20%20%20%20%20_ax.axvline(150%2C%20color%3D%22orange%22%2C%20linestyle%3D%22--%22%2C%20alpha%3D0.7%2C%20linewidth%3D1%2C%20label%3D%22150Hz%22)%0A%20%20%20%20%20%20%20%20_ax.legend()%0A%20%20%20%20plt.tight_layout()%0A%20%20%20%20plt.show()%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E6%AF%94%E8%BC%83%E3%81%AE%E7%B5%90%E6%9E%9C%E8%A7%A3%E9%87%88%0A%0A%20%20%20%20**%E4%BD%8E%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%60n_fft%3D2048%60%EF%BC%89**%3A%0A%20%20%20%20-%20%E2%9C%85%20%E5%A4%9A%E6%95%B0%E3%81%AE%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E3%81%AB%E3%82%88%E3%82%8B%E5%B9%B3%E5%9D%87%E5%8C%96%E5%8A%B9%E6%9E%9C%E3%81%A7%E3%83%8E%E3%82%A4%E3%82%BA%E3%81%8C%E6%BB%91%E3%82%89%E3%81%8B%0A%20%20%20%20-%20%E2%9C%85%20100Hz%E3%81%A8150Hz%E3%81%AE%E3%83%94%E3%83%BC%E3%82%AF%E3%81%8C%E6%98%8E%E7%A2%BA%E3%81%AB%E6%A4%9C%E5%87%BA%E3%81%A7%E3%81%8D%E3%82%8B%0A%20%20%20%20-%20%E2%9D%8C%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%8C%E7%B2%97%E3%81%84%E3%81%9F%E3%82%81%E3%80%81%E3%83%94%E3%83%BC%E3%82%AF%E3%81%8C%E5%BA%83%E3%81%8C%E3%81%A3%E3%81%A6%E3%81%84%E3%82%8B%0A%20%20%20%20-%20**%E7%94%A8%E9%80%94**%3A%20%E3%83%8E%E3%82%A4%E3%82%BA%E3%81%8C%E5%A4%9A%E3%81%8F%E3%80%81%E5%A4%A7%E3%81%BE%E3%81%8B%E3%81%AA%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%E3%82%92%E7%9F%A5%E3%82%8A%E3%81%9F%E3%81%84%E5%A0%B4%E5%90%88%0A%0A%20%20%20%20**%E4%B8%AD%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%60n_fft%3D4096%60%EF%BC%89**%3A%0A%20%20%20%20-%20%E2%9C%85%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%A8%E5%B9%B3%E5%9D%87%E5%8C%96%E3%81%AE%E3%83%90%E3%83%A9%E3%83%B3%E3%82%B9%E3%81%8C%E8%89%AF%E3%81%84%0A%20%20%20%20-%20%E2%9C%85%20%E3%83%94%E3%83%BC%E3%82%AF%E3%81%8C%E9%81%A9%E5%BA%A6%E3%81%AB%E3%82%B7%E3%83%A3%E3%83%BC%E3%83%97%E3%81%A7%E3%80%81%E3%83%8E%E3%82%A4%E3%82%BA%E3%83%AC%E3%83%99%E3%83%AB%E3%82%82%E8%A8%B1%E5%AE%B9%E7%AF%84%E5%9B%B2%0A%20%20%20%20-%20%E2%9C%85%20%E4%B8%80%E8%88%AC%E7%9A%84%E3%81%AA%E7%94%A8%E9%80%94%E3%81%AB%E6%9C%80%E9%81%A9%0A%20%20%20%20-%20**%E7%94%A8%E9%80%94**%3A%20%E6%A8%99%E6%BA%96%E7%9A%84%E3%81%AA%E4%BF%A1%E5%8F%B7%E5%88%86%E6%9E%90%EF%BC%88%E6%8E%A8%E5%A5%A8%E3%83%87%E3%83%95%E3%82%A9%E3%83%AB%E3%83%88%E8%A8%AD%E5%AE%9A%EF%BC%89%0A%0A%20%20%20%20**%E9%AB%98%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%60n_fft%3D8192%60%EF%BC%89**%3A%0A%20%20%20%20-%20%E2%9C%85%20%E6%9C%80%E3%82%82%E9%AB%98%E3%81%84%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%A7%E3%83%94%E3%83%BC%E3%82%AF%E3%81%8C%E3%82%B7%E3%83%A3%E3%83%BC%E3%83%97%0A%20%20%20%20-%20%E2%9C%85%20%E8%BF%91%E6%8E%A5%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%AE%E7%B2%BE%E5%AF%86%E5%88%86%E9%9B%A2%E3%81%AB%E5%84%AA%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%0A%20%20%20%20-%20%E2%9D%8C%20%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E6%95%B0%E3%81%8C%E5%B0%91%E3%81%AA%E3%81%84%E3%81%A8%E3%80%81%E3%83%8E%E3%82%A4%E3%82%BA%E3%81%AE%E5%A4%89%E5%8B%95%E3%81%8C%E5%A4%A7%E3%81%8D%E3%81%8F%E3%81%AA%E3%82%8A%E3%80%81%E5%BC%B1%E3%81%84%E4%BF%A1%E5%8F%B7%E3%81%8C%E5%9F%8B%E3%82%82%E3%82%8C%E3%82%84%E3%81%99%E3%81%84%0A%20%20%20%20-%20**%E7%94%A8%E9%80%94**%3A%20%E9%9F%B3%E3%81%8C%E9%95%B7%E3%81%8F%E3%80%81%E7%B2%BE%E5%AF%86%E3%81%AA%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E6%9E%90%E3%81%8C%E5%BF%85%E8%A6%81%E3%81%AA%E5%A0%B4%E5%90%88%0A%0A%20%20%20%20**%E5%AE%9F%E8%B7%B5%E7%9A%84%E3%81%AA%E9%81%B8%E6%8A%9E%E6%8C%87%E9%87%9D**%3A%0A%20%20%20%20-%20**%E3%83%8E%E3%82%A4%E3%82%BA%E3%81%8C%E5%A4%9A%E3%81%84%E5%A0%B4%E5%90%88**%3A%20%E4%BD%8E%E3%80%9C%E4%B8%AD%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%E5%B9%B3%E5%9D%87%E5%8C%96%E3%82%92%E5%84%AA%E5%85%88%EF%BC%89%0A%20%20%20%20-%20**%E4%BF%A1%E5%8F%B7%E3%81%8C%E5%AE%89%E5%AE%9A%E3%81%97%E3%81%A6%E3%81%84%E3%82%8B%E5%A0%B4%E5%90%88**%3A%20%E4%B8%AD%E3%80%9C%E9%AB%98%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%E5%88%86%E8%A7%A3%E8%83%BD%E3%82%92%E5%84%AA%E5%85%88%EF%BC%89%0A%20%20%20%20-%20**%E3%83%87%E3%83%BC%E3%82%BF%E9%95%B7%E3%81%8C%E7%9F%AD%E3%81%84%E5%A0%B4%E5%90%88**%3A%20%E4%BD%8E%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E6%95%B0%E3%82%92%E7%A2%BA%E4%BF%9D%EF%BC%89%0A%20%20%20%20-%20**%E3%83%87%E3%83%BC%E3%82%BF%E9%95%B7%E3%81%8C%E5%8D%81%E5%88%86%E3%81%82%E3%82%8B%E5%A0%B4%E5%90%88**%3A%20%E4%B8%AD%E3%80%9C%E9%AB%98%E5%88%86%E8%A7%A3%E8%83%BD%0A%0A%20%20%20%20%E6%AC%A1%E3%81%AE%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%A7%E3%81%AF%E3%80%81N-octave%E5%88%86%E6%9E%90%E3%81%AB%E3%82%88%E3%82%8B%E3%82%AA%E3%83%BC%E3%83%87%E3%82%A3%E3%82%AA%2F%E5%BB%BA%E7%AF%89%E9%9F%B3%E9%9F%BF%E3%81%AB%E7%89%B9%E5%8C%96%E3%81%97%E3%81%9F%E5%88%86%E6%9E%90%E6%89%8B%E6%B3%95%E3%82%92%E5%AD%A6%E3%81%B3%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20N-octave%E5%88%86%E6%9E%90%0A%0A%20%20%20%20%23%23%23%20%E3%81%AA%E3%81%9CN-octave%E5%88%86%E6%9E%90%E3%81%8C%E5%BF%85%E8%A6%81%E3%81%8B%0A%0A%20%20%20%20**N-octave%E5%88%86%E6%9E%90**%E3%81%AF%E3%80%81%E9%9F%B3%E9%9F%BF%E5%B7%A5%E5%AD%A6%E3%82%84%E5%BB%BA%E7%AF%89%E9%9F%B3%E9%9F%BF%E3%81%A7%E5%BA%83%E3%81%8F%E4%BD%BF%E3%82%8F%E3%82%8C%E3%82%8B%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E6%9E%90%E6%89%8B%E6%B3%95%E3%81%A7%E3%81%99%E3%80%82%E9%80%9A%E5%B8%B8%E3%81%AEFFT%E3%81%8C**%E7%AD%89%E9%96%93%E9%9A%94%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E3%83%93%E3%83%B3**%E3%82%92%E4%BD%BF%E3%81%86%E3%81%AE%E3%81%AB%E5%AF%BE%E3%81%97%E3%80%81N-octave%E5%88%86%E6%9E%90%E3%81%AF**%E5%AF%BE%E6%95%B0%E7%9A%84%E3%81%AB%E9%85%8D%E7%BD%AE%E3%81%95%E3%82%8C%E3%81%9F%E5%91%A8%E6%B3%A2%E6%95%B0%E5%B8%AF%E5%9F%9F**%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%23%23%23%20%E4%BA%BA%E9%96%93%E3%81%AE%E8%81%B4%E8%A6%9A%E7%89%B9%E6%80%A7%E3%81%A8%E3%81%AE%E5%AF%BE%E5%BF%9C%0A%0A%20%20%20%20**%E4%BA%BA%E9%96%93%E3%81%AE%E8%80%B3%E3%81%AF%E5%AF%BE%E6%95%B0%E7%9A%84**%E3%81%AB%E5%91%A8%E6%B3%A2%E6%95%B0%E3%82%92%E7%9F%A5%E8%A6%9A%E3%81%97%E3%81%BE%E3%81%99%EF%BC%9A%0A%20%20%20%20-%20100Hz%E3%81%A8200Hz%E3%81%AE%E5%B7%AE%EF%BC%88100Hz%EF%BC%89%E3%81%A8%E3%80%811000Hz%E3%81%A82000Hz%E3%81%AE%E5%B7%AE%EF%BC%881000Hz%EF%BC%89%E3%81%AF**%E5%90%8C%E3%81%98%E9%9F%B3%E7%A8%8B%E5%B7%AE**%EF%BC%881%E3%82%AA%E3%82%AF%E3%82%BF%E3%83%BC%E3%83%96%EF%BC%89%E3%81%A8%E3%81%97%E3%81%A6%E8%81%9E%E3%81%93%E3%81%88%E3%82%8B%0A%20%20%20%20-%20%E9%9F%B3%E6%A5%BD%E3%82%84%E9%9F%B3%E9%9F%BF%E3%81%A7%E3%81%AF%E3%80%81%E7%AD%89%E9%96%93%E9%9A%94%E3%81%A7%E3%81%AF%E3%81%AA%E3%81%8F**%E5%80%8D%E6%95%B0%E9%96%A2%E4%BF%82**%E3%81%A7%E5%91%A8%E6%B3%A2%E6%95%B0%E3%82%92%E6%89%B1%E3%81%86%0A%0A%20%20%20%20N-octave%E5%88%86%E6%9E%90%E3%81%AF%E3%80%81%E3%81%93%E3%81%AE%E4%BA%BA%E9%96%93%E3%81%AE%E8%81%B4%E8%A6%9A%E7%89%B9%E6%80%A7%E3%81%AB%E5%90%88%E3%82%8F%E3%81%9B%E3%81%9F%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E5%89%B2%E3%82%92%E6%8F%90%E4%BE%9B%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%23%23%23%201%2FN-octave%E3%83%90%E3%83%B3%E3%83%89%E3%81%A8%E3%81%AF%0A%0A%20%20%20%20**1%2FN-octave%E3%83%90%E3%83%B3%E3%83%89**%E3%81%AF%E3%80%81%E5%90%84%E5%B8%AF%E5%9F%9F%E3%81%AE%E4%B8%AD%E5%BF%83%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%8C%E4%BB%A5%E4%B8%8B%E3%81%AE%E9%96%A2%E4%BF%82%E3%82%92%E6%8C%81%E3%81%A1%E3%81%BE%E3%81%99%EF%BC%9A%0A%20%20%20%20%24%24f_%7B%5Ctext%7Bcenter%7D%2Ck%2B1%7D%20%3D%20f_%7B%5Ctext%7Bcenter%7D%2Ck%7D%20%5Ctimes%202%5E%7B1%2FN%7D%24%24%0A%0A%20%20%20%20%E4%B8%80%E8%88%AC%E7%9A%84%E3%81%AA%E8%A8%AD%E5%AE%9A%3A%0A%20%20%20%20-%20**1-octave**%3A%20%E7%B2%97%E3%81%84%E5%88%86%E6%9E%90%EF%BC%88%E5%BB%BA%E7%AF%89%E9%9F%B3%E9%9F%BF%E3%81%AE%E8%A9%95%E4%BE%A1%E3%80%81%E8%A6%8F%E6%A0%BC%E3%81%AB%E5%9F%BA%E3%81%A5%E3%81%8F%E4%B8%80%E8%88%AC%E7%9A%84%E3%81%AA%E9%A8%92%E9%9F%B3%E8%A9%95%E4%BE%A1%E3%80%81%E7%B0%A1%E6%98%93%E7%9A%84%E3%81%AA%E9%A8%92%E9%9F%B3%E6%BA%90%E7%89%B9%E5%AE%9A%EF%BC%89%0A%20%20%20%20-%20**1%2F3-octave**%3A%20%E4%B8%AD%E7%A8%8B%E5%BA%A6%E3%81%AE%E5%88%86%E8%A7%A3%E8%83%BD%EF%BC%88%E7%92%B0%E5%A2%83%E9%A8%92%E9%9F%B3%E3%81%AE%E8%A9%B3%E7%B4%B0%E5%88%86%E6%9E%90%E3%80%81%E9%A8%92%E9%9F%B3%E5%AF%BE%E7%AD%96%E3%81%AE%E5%8A%B9%E6%9E%9C%E6%A4%9C%E8%A8%BC%E3%80%81%E6%A9%9F%E6%A2%B0%E3%81%AE%E7%95%B0%E9%9F%B3%E8%A7%A3%E6%9E%90%E3%81%AA%E3%81%A9%E7%B2%BE%E5%AF%86%E3%81%AA%E8%A9%95%E4%BE%A1%EF%BC%89%0A%20%20%20%20-%20**1%2F12-octave**%3A%20%E7%B4%B0%E3%81%8B%E3%81%84%E5%88%86%E6%9E%90%EF%BC%88%E9%9F%B3%E6%A5%BD%E3%81%AE%E5%8D%8A%E9%9F%B3%E3%81%AB%E5%AF%BE%E5%BF%9C%EF%BC%89%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%A7%E3%81%AF%E3%80%81**1%2F3-octave%E5%88%86%E6%9E%90**%E3%82%92%E5%AE%9F%E8%B7%B5%E3%81%97%E3%80%81%E9%9F%B3%E9%9F%BF%E3%82%A8%E3%83%8D%E3%83%AB%E3%82%AE%E3%83%BC%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E5%B8%83%E3%82%92%E8%A6%96%E8%A6%9A%E5%8C%96%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E5%BA%83%E5%B8%AF%E5%9F%9F%E4%BF%A1%E5%8F%B7%E3%81%AE%E4%BD%9C%E6%88%90%0A%0A%20%20%20%20N-octave%E5%88%86%E6%9E%90%E3%81%AE%E5%8A%B9%E6%9E%9C%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%99%E3%82%8B%E3%81%9F%E3%82%81%E3%80%81**%E5%BA%83%E3%81%84%E5%91%A8%E6%B3%A2%E6%95%B0%E7%AF%84%E5%9B%B2**%E3%81%AB%E3%82%8F%E3%81%9F%E3%82%8B%E4%BF%A1%E5%8F%B7%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20**%E4%BF%A1%E5%8F%B7%E3%81%AE%E6%A7%8B%E6%88%90**%3A%0A%20%20%20%20-%20**63%20Hz**%3A%20%E4%BD%8E%E9%9F%B3%EF%BC%88%E3%83%90%E3%82%B9%E3%83%89%E3%83%A9%E3%83%A0%E7%9B%B8%E5%BD%93%EF%BC%89%0A%20%20%20%20-%20**250%20Hz**%3A%20%E4%B8%AD%E4%BD%8E%E9%9F%B3%EF%BC%88%E7%94%B7%E6%80%A7%E3%81%AE%E5%A3%B0%E7%9B%B8%E5%BD%93%EF%BC%89%0A%20%20%20%20-%20**1000%20Hz**%3A%20%E4%B8%AD%E9%9F%B3%EF%BC%88%E5%9F%BA%E6%BA%96%E5%91%A8%E6%B3%A2%E6%95%B0%EF%BC%89%0A%20%20%20%20-%20**4000%20Hz**%3A%20%E9%AB%98%E9%9F%B3%EF%BC%88%E3%82%B7%E3%83%B3%E3%83%90%E3%83%AB%E7%9B%B8%E5%BD%93%EF%BC%89%0A%20%20%20%20-%20**%E3%83%8E%E3%82%A4%E3%82%BA**%3A%20%E7%8F%BE%E5%AE%9F%E7%9A%84%E3%81%AA%E7%92%B0%E5%A2%83%E3%83%8E%E3%82%A4%E3%82%BA%E3%82%92%E6%A8%A1%E6%93%AC%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E4%BF%A1%E5%8F%B7%E3%81%AB%E3%82%88%E3%82%8A%E3%80%81N-octave%E5%88%86%E6%9E%90%E3%81%8C**%E5%BA%83%E5%B8%AF%E5%9F%9F%E4%BF%A1%E5%8F%B7%E3%82%92%E3%81%A9%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%E5%B8%AF%E5%9F%9F%E5%88%86%E5%89%B2%E3%81%99%E3%82%8B%E3%81%8B**%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(np%2C%20sampling_rate_1%2C%20time_2%2C%20wd)%3A%0A%20%20%20%20%23%20N-%E3%82%AA%E3%82%AF%E3%82%BF%E3%83%BC%E3%83%96%E5%88%86%E6%9E%90%E7%94%A8%E3%81%AE%E8%A4%87%E5%90%88%E5%91%A8%E6%B3%A2%E6%95%B0%E4%BF%A1%E5%8F%B7%E3%82%92%E4%BD%9C%E6%88%90%0A%20%20%20%20np.random.seed(456)%0A%20%20%20%20composite_signal%20%3D%20(%0A%20%20%20%20%20%20%20%201.0%20*%20np.sin(2%20*%20np.pi%20*%2063%20*%20time_2)%0A%20%20%20%20%20%20%20%20%2B%200.8%20*%20np.sin(2%20*%20np.pi%20*%20250%20*%20time_2)%0A%20%20%20%20%20%20%20%20%2B%200.6%20*%20np.sin(2%20*%20np.pi%20*%201000%20*%20time_2)%0A%20%20%20%20%20%20%20%20%2B%200.5%20*%20np.sin(2%20*%20np.pi%20*%204000%20*%20time_2)%0A%20%20%20%20%20%20%20%20%2B%200.3%20*%20np.sin(2%20*%20np.pi%20*%208000%20*%20time_2)%0A%20%20%20%20)%0A%20%20%20%20%23%20%E8%A4%87%E6%95%B0%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E6%88%90%E5%88%86%E3%82%92%E6%8C%81%E3%81%A4%E4%BF%A1%E5%8F%B7%0A%20%20%20%20%23%2048kHz%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%E3%81%A7%E3%81%AF%E3%80%81%E3%82%88%E3%82%8A%E5%BA%83%E3%81%84%E5%91%A8%E6%B3%A2%E6%95%B0%E7%AF%84%E5%9B%B2%E3%81%8C%E5%88%A9%E7%94%A8%E5%8F%AF%E8%83%BD%0A%20%20%20%20composite_signal%20%3D%20composite_signal%20%2B%200.05%20*%20np.random.randn(len(time_2))%0A%20%20%20%20composite_data%20%3D%20wd.from_numpy(%0A%20%20%20%20%20%20%20%20data%3Dcomposite_signal.reshape(1%2C%20-1)%2C%20sampling_rate%3Dsampling_rate_1%2C%20ch_labels%3D%5B%22Multi-Frequency%20Signal%22%5D%0A%20%20%20%20)%20%20%23%20%E4%BD%8E%E5%9F%9F%0A%20%20%20%20print(f%22%E8%A4%87%E5%90%88%E5%91%A8%E6%B3%A2%E6%95%B0%E4%BF%A1%E5%8F%B7%E4%BD%9C%E6%88%90%3A%20%7Bcomposite_data.shape%7D%22)%20%20%23%20%E4%B8%AD%E5%9F%9F%0A%20%20%20%20print(%22%E5%90%AB%E3%81%BE%E3%82%8C%E3%82%8B%E5%91%A8%E6%B3%A2%E6%95%B0%3A%2063Hz%2C%20250Hz%2C%201kHz%2C%204kHz%2C%208kHz%22)%20%20%23%20%E4%B8%AD%E9%AB%98%E5%9F%9F%0A%20%20%20%20%23%20%E8%BB%BD%E3%81%84%E3%83%8E%E3%82%A4%E3%82%BA%E3%82%92%E8%BF%BD%E5%8A%A0%0A%20%20%20%20%23%20ChannelFrame%E4%BD%9C%E6%88%90%0A%20%20%20%20print(f%22Nyquist%E5%91%A8%E6%B3%A2%E6%95%B0%3A%20%7Bsampling_rate_1%20%2F%202%7D%20Hz%22)%20%20%23%20%E9%AB%98%E5%9F%9F%20%20%23%20%E8%B6%85%E9%AB%98%E5%9F%9F%EF%BC%8848kHz%E3%81%A0%E3%81%8B%E3%82%89%E3%81%93%E3%81%9D%E5%8F%AF%E8%83%BD%EF%BC%89%0A%20%20%20%20return%20(composite_data%2C)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%201%2F3-octave%E5%88%86%E6%9E%90%E3%81%AE%E5%AE%9F%E8%A1%8C%0A%0A%20%20%20%20%E3%81%9D%E3%82%8C%E3%81%A7%E3%81%AF%E3%80%81%E4%BD%9C%E6%88%90%E3%81%97%E3%81%9F%E4%BF%A1%E5%8F%B7%E3%81%AB%E5%AF%BE%E3%81%97%E3%81%A61%2F3-octave%E5%88%86%E6%9E%90%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20**%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF**%3A%0A%20%20%20%20-%20**%60fraction%3D3%60**%3A%201%2F3-octave%E3%83%90%E3%83%B3%E3%83%89%EF%BC%88%E5%BB%BA%E7%AF%89%E9%9F%B3%E9%9F%BF%E3%81%AE%E6%A8%99%E6%BA%96%EF%BC%89%0A%20%20%20%20-%20%E5%90%84%E5%B8%AF%E5%9F%9F%E3%81%AE%E5%B8%AF%E5%9F%9F%E5%B9%85%E3%81%AF%E4%B8%AD%E5%BF%83%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%AB%E6%AF%94%E4%BE%8B%E3%81%99%E3%82%8B%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(composite_data%2C%20plt%2C%20sampling_rate_1)%3A%0A%20%20%20%20_noct_result%20%3D%20composite_data.noct_spectrum(fmin%3D25%2C%20fmax%3D20000%2C%20n%3D3)%0A%20%20%20%20print(%22N-%E3%82%AA%E3%82%AF%E3%82%BF%E3%83%BC%E3%83%96%E5%88%86%E6%9E%90%E7%B5%90%E6%9E%9C%3A%22)%0A%20%20%20%20print(f%22%20%20%E3%83%90%E3%83%B3%E3%83%89%E6%95%B0%3A%20%7Blen(_noct_result.freqs)%7D%22)%0A%20%20%20%20print(f%22%20%20%E5%91%A8%E6%B3%A2%E6%95%B0%E7%AF%84%E5%9B%B2%3A%20%7B_noct_result.freqs%5B0%5D%3A.1f%7D%20-%20%7B_noct_result.freqs%5B-1%5D%3A.1f%7D%20Hz%22)%0A%20%20%20%20print(f%22%20%20%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%3A%20%7B_noct_result.sampling_rate%7D%20Hz%22)%0A%20%20%20%20print(f%22%20%20Nyquist%E5%91%A8%E6%B3%A2%E6%95%B0%3A%20%7Bsampling_rate_1%20%2F%202%7D%20Hz%22)%0A%20%20%20%20(_fig%2C%20(_ax1%2C%20_ax2))%20%3D%20plt.subplots(2%2C%201%2C%20figsize%3D(12%2C%2010))%0A%20%20%20%20composite_data.plot(ax%3D_ax1%2C%20title%3D%22Original%20Multi-Frequency%20Signal%22)%0A%20%20%20%20_noct_result.plot(ax%3D_ax2%2C%20title%3D%221%2F3%20Octave%20Band%20Spectrum%22)%0A%20%20%20%20_ax2.set_xscale(%22log%22)%0A%20%20%20%20_ax2.grid(True%2C%20which%3D%22both%22%2C%20alpha%3D0.3)%0A%20%20%20%20for%20freq%20in%20%5B63%2C%20250%2C%201000%2C%204000%2C%208000%5D%3A%0A%20%20%20%20%20%20%20%20_ax2.axvline(freq%2C%20color%3D%22red%22%2C%20linestyle%3D%22--%22%2C%20alpha%3D0.5)%0A%20%20%20%20plt.tight_layout()%0A%20%20%20%20plt.show()%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20N-octave%E5%88%86%E6%9E%90%E7%B5%90%E6%9E%9C%E3%81%AE%E8%AA%AD%E3%81%BF%E6%96%B9%0A%0A%20%20%20%20**1%2F3-octave%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E3%81%AE%E7%89%B9%E5%BE%B4**%3A%0A%20%20%20%20-%20**%E6%A8%AA%E8%BB%B8**%3A%20%E4%B8%AD%E5%BF%83%E5%91%A8%E6%B3%A2%E6%95%B0%EF%BC%88%E5%AF%BE%E6%95%B0%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%EF%BC%89%0A%20%20%20%20-%20**%E7%B8%A6%E8%BB%B8**%3A%20%E5%90%84%E5%B8%AF%E5%9F%9F%E3%81%AE%E3%82%A8%E3%83%8D%E3%83%AB%E3%82%AE%E3%83%BC%E3%83%AC%E3%83%99%E3%83%AB%EF%BC%88dB%EF%BC%89%0A%20%20%20%20-%20**%E5%B8%AF%E5%9F%9F%E5%B9%85**%3A%20%E4%BD%8E%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%A7%E3%81%AF%E7%8B%AD%E3%81%8F%E3%80%81%E9%AB%98%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%A7%E3%81%AF%E5%BA%83%E3%81%84%0A%0A%20%20%20%20**%E8%A6%B3%E5%AF%9F%E3%81%95%E3%82%8C%E3%82%8B%E7%B5%90%E6%9E%9C**%3A%0A%20%20%20%20-%20**63%20Hz%E4%BB%98%E8%BF%91**%3A%20%E4%BD%8E%E9%9F%B3%E6%88%90%E5%88%86%E3%81%8C%E6%98%8E%E7%A2%BA%E3%81%AB%E3%83%94%E3%83%BC%E3%82%AF%E3%81%A8%E3%81%97%E3%81%A6%E7%8F%BE%E3%82%8C%E3%82%8B%0A%20%20%20%20-%20**250%20Hz%E4%BB%98%E8%BF%91**%3A%20%E4%B8%AD%E4%BD%8E%E9%9F%B3%E6%88%90%E5%88%86%E3%81%AE%E3%83%94%E3%83%BC%E3%82%AF%0A%20%20%20%20-%20**1000%20Hz%E4%BB%98%E8%BF%91**%3A%20%E4%B8%AD%E9%9F%B3%E6%88%90%E5%88%86%E3%81%AE%E3%83%94%E3%83%BC%E3%82%AF%EF%BC%88%E6%9C%80%E3%82%82%E5%BC%B7%E3%81%84%EF%BC%89%0A%20%20%20%20-%20**4000%20Hz%E4%BB%98%E8%BF%91**%3A%20%E9%AB%98%E9%9F%B3%E6%88%90%E5%88%86%E3%81%AE%E3%83%94%E3%83%BC%E3%82%AF%0A%0A%20%20%20%20**FFT%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E3%81%A8%E3%81%AE%E9%81%95%E3%81%84**%3A%0A%20%20%20%20-%20FFT%E3%81%AF%E7%AD%89%E9%96%93%E9%9A%94%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E3%83%93%E3%83%B3%20%E2%86%92%20%E9%AB%98%E5%91%A8%E6%B3%A2%E6%95%B0%E5%B8%AF%E5%9F%9F%E3%81%AE%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%8C%E7%9B%B8%E5%AF%BE%E7%9A%84%E3%81%AB%E9%AB%98%E3%81%84%0A%20%20%20%20-%20N-octave%E3%81%AF%E5%AF%BE%E6%95%B0%E7%9A%84%E3%81%AA%E5%B8%AF%E5%9F%9F%20%E2%86%92%20%E5%85%A8%E5%91%A8%E6%B3%A2%E6%95%B0%E7%AF%84%E5%9B%B2%E3%81%A7%E5%9D%87%E7%AD%89%E3%81%AA%E7%9B%B8%E5%AF%BE%E5%88%86%E8%A7%A3%E8%83%BD%0A%20%20%20%20-%20N-octave%E3%81%AF%E4%BA%BA%E9%96%93%E3%81%AE%E8%81%B4%E8%A6%9A%E7%89%B9%E6%80%A7%E3%81%AB%E5%90%88%E3%81%A3%E3%81%A6%E3%81%84%E3%82%8B%20%E2%86%92%20%E9%9F%B3%E9%9F%BF%E8%A9%95%E4%BE%A1%E3%81%AB%E9%81%A9%E3%81%97%E3%81%A6%E3%81%84%E3%82%8B%0A%0A%20%20%20%20**%E5%AE%9F%E7%94%A8%E4%BE%8B**%3A%0A%20%20%20%20-%20**%E5%BB%BA%E7%AF%89%E9%9F%B3%E9%9F%BF**%3A%20%E5%AE%A4%E5%86%85%E3%81%AE%E9%9F%B3%E9%9F%BF%E7%89%B9%E6%80%A7%E8%A9%95%E4%BE%A1%0A%20%20%20%20-%20**%E9%A8%92%E9%9F%B3%E6%B8%AC%E5%AE%9A**%3A%20%E7%92%B0%E5%A2%83%E9%A8%92%E9%9F%B3%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E5%B8%83%0A%20%20%20%20-%20**%E9%9F%B3%E6%A5%BD%E5%88%86%E6%9E%90**%3A%20%E6%A5%BD%E5%99%A8%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E7%89%B9%E6%80%A7%0A%20%20%20%20-%20**%E6%A9%9F%E6%A2%B0%E8%A8%BA%E6%96%AD**%3A%20%E5%9B%9E%E8%BB%A2%E6%A9%9F%E6%A2%B0%E3%81%AE%E6%8C%AF%E5%8B%95%E8%A9%95%E4%BE%A1%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20A%E7%89%B9%E6%80%A7%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%EF%BC%88%E6%99%82%E5%AE%9A%E6%95%B0%E4%BB%98%E3%81%8D%EF%BC%89%E3%81%AE%E8%A7%A3%E6%9E%90%0A%0A%20%20%20%20%23%23%23%20%E9%A8%92%E9%9F%B3%E8%A8%88%E3%81%AE%E6%99%82%E5%AE%9A%E6%95%B0%E3%81%A8%E3%81%AF%0A%0A%20%20%20%20**A%E7%89%B9%E6%80%A7%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%EF%BC%88LA%EF%BC%89**%E3%81%AF%E3%80%81%E4%BA%BA%E9%96%93%E3%81%AE%E8%81%B4%E8%A6%9A%E7%89%B9%E6%80%A7%E3%81%AB%E5%90%88%E3%82%8F%E3%81%9B%E3%81%9F%E5%91%A8%E6%B3%A2%E6%95%B0%E9%87%8D%E3%81%BF%E4%BB%98%E3%81%91%E3%82%92%E6%96%BD%E3%81%97%E3%81%9F%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%E3%81%A7%E3%80%81%E7%92%B0%E5%A2%83%E9%A8%92%E9%9F%B3%E3%81%AE%E8%A9%95%E4%BE%A1%E3%82%84%E9%A8%92%E9%9F%B3%E8%A6%8F%E5%88%B6%E3%81%AB%E5%BA%83%E3%81%8F%E4%BD%BF%E7%94%A8%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%E9%A8%92%E9%9F%B3%E8%A8%88%E3%81%A7%E3%81%AF%E3%80%81**%E6%99%82%E5%AE%9A%E6%95%B0%EF%BC%88Time%20Constant%EF%BC%89**%E3%81%AB%E3%82%88%E3%81%A3%E3%81%A6%E9%81%8E%E5%8E%BB%E3%81%AE%E9%9F%B3%E3%82%92%E3%81%A9%E3%81%AE%E7%A8%8B%E5%BA%A6%E5%8F%8D%E6%98%A0%E3%81%99%E3%82%8B%E3%81%8B%E3%82%92%E5%88%B6%E5%BE%A1%E3%81%97%E3%81%BE%E3%81%99%EF%BC%9A%0A%0A%20%20%20%20%7C%20%E8%A8%AD%E5%AE%9A%20%7C%20%E6%99%82%E5%AE%9A%E6%95%B0%20%7C%20%E8%A8%98%E5%8F%B7%20%7C%20%E7%94%A8%E9%80%94%20%7C%0A%20%20%20%20%7C------%7C--------%7C------%7C------%7C%0A%20%20%20%20%7C%20**Fast%EF%BC%88F%EF%BC%89**%20%7C%20125%20ms%20%7C%20LAF%20%7C%20%E7%9E%AC%E6%99%82%E7%9A%84%E3%81%AA%E9%A8%92%E9%9F%B3%E5%A4%89%E5%8B%95%E3%81%AE%E6%8A%8A%E6%8F%A1%20%7C%0A%20%20%20%20%7C%20**Slow%EF%BC%88S%EF%BC%89**%20%7C%201000%20ms%20%7C%20LAS%20%7C%20%E5%AE%89%E5%AE%9A%E3%81%97%E3%81%9F%E9%A8%92%E9%9F%B3%E3%83%AC%E3%83%99%E3%83%AB%E3%81%AE%E8%A9%95%E4%BE%A1%20%7C%0A%0A%20%20%20%20**%E6%99%82%E5%AE%9A%E6%95%B0%E3%81%AE%E5%8A%B9%E6%9E%9C**%EF%BC%9A%0A%20%20%20%20-%20**Fast**%3A%20%E7%9F%AD%E3%81%84%E6%99%82%E5%AE%9A%E6%95%B0%E3%81%AB%E3%82%88%E3%82%8A%E3%80%81%E9%A8%92%E9%9F%B3%E3%81%AE%E7%9E%AC%E6%99%82%E7%9A%84%E3%81%AA%E5%A4%89%E5%8C%96%E3%81%AB%E7%B4%A0%E6%97%A9%E3%81%8F%E5%BF%9C%E7%AD%94%0A%20%20%20%20-%20**Slow**%3A%20%E9%95%B7%E3%81%84%E6%99%82%E5%AE%9A%E6%95%B0%E3%81%AB%E3%82%88%E3%82%8A%E3%80%81%E9%A8%92%E9%9F%B3%E3%83%AC%E3%83%99%E3%83%AB%E3%81%AE%E5%A4%89%E5%8B%95%E3%82%92%E5%B9%B3%E6%BB%91%E5%8C%96%E3%81%97%E3%81%A6%E5%AE%89%E5%AE%9A%E8%A9%95%E4%BE%A1%0A%0A%20%20%20%20Wandas%E3%81%AE%60sound_level()%60%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%AF%E3%80%81%E3%81%93%E3%82%8C%E3%82%89%E3%81%AE%E9%A8%92%E9%9F%B3%E8%A8%88%E3%81%AE%E7%89%B9%E6%80%A7%E3%82%92%E5%BF%A0%E5%AE%9F%E3%81%AB%E5%86%8D%E7%8F%BE%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(np%2C%20wd)%3A%0A%20%20%20%20%23%20A%E7%89%B9%E6%80%A7%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%E8%A7%A3%E6%9E%90%E7%94%A8%E3%81%AE%E4%BF%A1%E5%8F%B7%E3%82%92%E4%BD%9C%E6%88%90%0A%20%20%20%20%23%20%E7%AA%81%E7%84%B6%E3%83%AC%E3%83%99%E3%83%AB%E3%81%8C%E5%A4%89%E5%8C%96%E3%81%99%E3%82%8B%E4%BF%A1%E5%8F%B7%E3%81%A7%E6%99%82%E5%AE%9A%E6%95%B0%E3%81%AE%E5%8A%B9%E6%9E%9C%E3%82%92%E7%A2%BA%E8%AA%8D%0A%20%20%20%20np.random.seed(789)%0A%20%20%20%20sr_sl%20%3D%2048000%0A%20%20%20%20duration_sl%20%3D%206.0%0A%20%20%20%20time_sl%20%3D%20np.linspace(0%2C%20duration_sl%2C%20int(sr_sl%20*%20duration_sl))%0A%0A%20%20%20%20%23%20%E6%AE%B5%E9%9A%8E%E7%9A%84%E3%81%AB%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%E3%81%8C%E5%A4%89%E5%8C%96%E3%81%99%E3%82%8B%E4%BF%A1%E5%8F%B7%EF%BC%88%E9%9F%B3%E9%9F%BF%E4%BF%A1%E5%8F%B7%E3%82%92%E6%A8%A1%E6%93%AC%EF%BC%89%0A%20%20%20%20%23%200-2%E7%A7%92%3A%20%E4%BD%8E%E3%83%AC%E3%83%99%E3%83%AB%EF%BC%8860%20dB%E7%9B%B8%E5%BD%93%EF%BC%89%0A%20%20%20%20%23%202-4%E7%A7%92%3A%20%E9%AB%98%E3%83%AC%E3%83%99%E3%83%AB%EF%BC%8880%20dB%E7%9B%B8%E5%BD%93%E3%80%81%E7%AA%81%E7%84%B6%E5%A2%97%E5%A4%A7%EF%BC%89%0A%20%20%20%20%23%204-6%E7%A7%92%3A%20%E5%86%8D%E3%81%B3%E4%BD%8E%E3%83%AC%E3%83%99%E3%83%AB%EF%BC%8860%20dB%E7%9B%B8%E5%BD%93%EF%BC%89%0A%20%20%20%20p_ref%20%3D%202e-5%20%20%23%20%E9%9F%B3%E5%9C%A7%E3%81%AE%E5%9F%BA%E6%BA%96%E5%80%A4%20%5BPa%5D%0A%0A%20%20%20%20%23%20%E5%90%84%E5%8C%BA%E9%96%93%E3%81%AE%E5%AE%9F%E5%8A%B9%E9%9F%B3%E5%9C%A7%0A%20%20%20%20p_low%20%3D%20p_ref%20*%2010%20**%20(60%20%2F%2020)%20%20%23%2060%20dB%20%E2%86%92%20%E7%B4%84%200.02%20Pa%0A%20%20%20%20p_high%20%3D%20p_ref%20*%2010%20**%20(80%20%2F%2020)%20%20%23%2080%20dB%20%E2%86%92%20%E7%B4%84%200.20%20Pa%0A%0A%20%20%20%20sound_signal%20%3D%20np.zeros(len(time_sl))%0A%20%20%20%20mask_low1%20%3D%20time_sl%20%3C%202.0%0A%20%20%20%20mask_high%20%3D%20(time_sl%20%3E%3D%202.0)%20%26%20(time_sl%20%3C%204.0)%0A%20%20%20%20mask_low2%20%3D%20time_sl%20%3E%3D%204.0%0A%0A%20%20%20%20%23%201000%20Hz%E6%AD%A3%E5%BC%A6%E6%B3%A2%EF%BC%88%E7%B4%94%E9%9F%B3%EF%BC%89%E3%81%AB%E5%90%84%E3%83%AC%E3%83%99%E3%83%AB%E3%81%AE%E6%8C%AF%E5%B9%85%E3%82%92%E8%A8%AD%E5%AE%9A%0A%20%20%20%20sound_signal%5Bmask_low1%5D%20%3D%20p_low%20*%20np.sqrt(2)%20*%20np.sin(2%20*%20np.pi%20*%201000%20*%20time_sl%5Bmask_low1%5D)%0A%20%20%20%20sound_signal%5Bmask_high%5D%20%3D%20p_high%20*%20np.sqrt(2)%20*%20np.sin(2%20*%20np.pi%20*%201000%20*%20time_sl%5Bmask_high%5D)%0A%20%20%20%20sound_signal%5Bmask_low2%5D%20%3D%20p_low%20*%20np.sqrt(2)%20*%20np.sin(2%20*%20np.pi%20*%201000%20*%20time_sl%5Bmask_low2%5D)%0A%0A%20%20%20%20%23%20ChannelFrame%E4%BD%9C%E6%88%90%EF%BC%88ch_units%3D'Pa'%20%E3%81%AB%E3%82%88%E3%82%8A%E5%9F%BA%E6%BA%96%E9%9F%B3%E5%9C%A7%202e-5%20Pa%20%E3%81%8C%E8%87%AA%E5%8B%95%E8%A8%AD%E5%AE%9A%E3%81%95%E3%82%8C%E3%82%8B%EF%BC%89%0A%20%20%20%20sound_data%20%3D%20wd.from_numpy(%0A%20%20%20%20%20%20%20%20data%3Dsound_signal.reshape(1%2C%20-1)%2C%20sampling_rate%3Dsr_sl%2C%20ch_labels%3D%5B%22Sound%20Pressure%22%5D%2C%20ch_units%3D%5B%22Pa%22%5D%0A%20%20%20%20)%0A%0A%20%20%20%20print(%22%E2%9C%85%20%E9%9F%B3%E5%9C%A7%E4%BF%A1%E5%8F%B7%E3%82%92%E4%BD%9C%E6%88%90%3A%22)%0A%20%20%20%20print(f%22%20%20%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%3A%20%7Bsound_data.sampling_rate%7D%20Hz%22)%0A%20%20%20%20print(f%22%20%20%E7%B6%99%E7%B6%9A%E6%99%82%E9%96%93%3A%20%7Bsound_data.duration%3A.1f%7D%20%E7%A7%92%22)%0A%20%20%20%20print(f%22%20%20%E5%9F%BA%E6%BA%96%E9%9F%B3%E5%9C%A7%3A%20%7Bsound_data._channel_metadata%5B0%5D.ref%7D%20Pa%22)%0A%20%20%20%20print(f%22%20%200-2%E7%A7%92%3A%20%7B20%20*%20np.log10(p_low%20%2F%20p_ref)%3A.0f%7D%20dB%20(%E4%BD%8E%E3%83%AC%E3%83%99%E3%83%AB)%22)%0A%20%20%20%20print(f%22%20%202-4%E7%A7%92%3A%20%7B20%20*%20np.log10(p_high%20%2F%20p_ref)%3A.0f%7D%20dB%20(%E9%AB%98%E3%83%AC%E3%83%99%E3%83%AB%E3%80%81%E7%AA%81%E7%84%B6%E5%A2%97%E5%A4%A7)%22)%0A%20%20%20%20print(f%22%20%204-6%E7%A7%92%3A%20%7B20%20*%20np.log10(p_low%20%2F%20p_ref)%3A.0f%7D%20dB%20(%E4%BD%8E%E3%83%AC%E3%83%99%E3%83%AB%E3%80%81%E7%AA%81%E7%84%B6%E6%B8%9B%E5%B0%91)%22)%0A%20%20%20%20return%20(sound_data%2C)%0A%0A%0A%40app.cell%0Adef%20_(plt%2C%20sound_data)%3A%0A%20%20%20%20%23%20A%E7%89%B9%E6%80%A7%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%E3%82%92Fast%E3%83%BBSlow%E6%99%82%E5%AE%9A%E6%95%B0%E3%81%A7%E8%A8%88%E7%AE%97%E3%81%97%E3%81%A6%E6%AF%94%E8%BC%83%0A%20%20%20%20%23%20Fast%EF%BC%88F%EF%BC%89%3A%20%E6%99%82%E5%AE%9A%E6%95%B0%20125ms%E3%80%81Slow%EF%BC%88S%EF%BC%89%3A%20%E6%99%82%E5%AE%9A%E6%95%B0%201000ms%0A%20%20%20%20laf%20%3D%20sound_data.sound_level(freq_weighting%3D%22A%22%2C%20time_weighting%3D%22Fast%22%2C%20dB%3DTrue)%0A%20%20%20%20%23%20Fast%E6%99%82%E5%AE%9A%E6%95%B0%EF%BC%88125ms%EF%BC%89%E3%81%A7%E3%81%AEA%E7%89%B9%E6%80%A7%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%0A%20%20%20%20las%20%3D%20sound_data.sound_level(freq_weighting%3D%22A%22%2C%20time_weighting%3D%22Slow%22%2C%20dB%3DTrue)%0A%20%20%20%20print(%22LAF%EF%BC%88A%E7%89%B9%E6%80%A7%E3%83%BBFast%EF%BC%89-%20%E6%99%82%E5%AE%9A%E6%95%B0%3A%20125%20ms%22)%0A%20%20%20%20print(f%22%20%20%E5%87%BA%E5%8A%9B%E5%BD%A2%E7%8A%B6%3A%20%7Blaf.data.shape%7D%22)%0A%20%20%20%20print(%22LAS%EF%BC%88A%E7%89%B9%E6%80%A7%E3%83%BBSlow%EF%BC%89-%20%E6%99%82%E5%AE%9A%E6%95%B0%3A%201000%20ms%22)%0A%20%20%20%20print(f%22%20%20%E5%87%BA%E5%8A%9B%E5%BD%A2%E7%8A%B6%3A%20%7Blas.data.shape%7D%22)%0A%20%20%20%20(_fig%2C%20_axes)%20%3D%20plt.subplots(2%2C%201%2C%20figsize%3D(12%2C%208)%2C%20sharex%3DTrue)%0A%20%20%20%20%23%20Slow%E6%99%82%E5%AE%9A%E6%95%B0%EF%BC%881000ms%EF%BC%89%E3%81%A7%E3%81%AEA%E7%89%B9%E6%80%A7%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%0A%20%20%20%20laf.plot(ax%3D_axes%5B0%5D%2C%20title%3D%22LAF%EF%BC%88A%E7%89%B9%E6%80%A7%E3%83%BBFast%E6%99%82%E5%AE%9A%E6%95%B0%3A%20125%20ms%EF%BC%89%22%2C%20ylabel%3D%22%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%20%5BdB%5D%22%2C%20ylim%3D(20%2C%2090))%0A%20%20%20%20_axes%5B0%5D.axvline(x%3D2.0%2C%20color%3D%22red%22%2C%20linestyle%3D%22--%22%2C%20alpha%3D0.7%2C%20label%3D%22%E3%83%AC%E3%83%99%E3%83%AB%E5%A4%89%E5%8C%96%E7%82%B9%22)%0A%20%20%20%20_axes%5B0%5D.axvline(x%3D4.0%2C%20color%3D%22red%22%2C%20linestyle%3D%22--%22%2C%20alpha%3D0.7)%0A%20%20%20%20_axes%5B0%5D.axhline(y%3D60%2C%20color%3D%22gray%22%2C%20linestyle%3D%22%3A%22%2C%20alpha%3D0.5%2C%20label%3D%2260%20dB%20(%E4%BD%8E%E3%83%AC%E3%83%99%E3%83%AB)%22)%0A%20%20%20%20_axes%5B0%5D.axhline(y%3D80%2C%20color%3D%22orange%22%2C%20linestyle%3D%22%3A%22%2C%20alpha%3D0.5%2C%20label%3D%2280%20dB%20(%E9%AB%98%E3%83%AC%E3%83%99%E3%83%AB)%22)%0A%20%20%20%20_axes%5B0%5D.legend(loc%3D%22upper%20right%22)%0A%20%20%20%20las.plot(ax%3D_axes%5B1%5D%2C%20title%3D%22LAS%EF%BC%88A%E7%89%B9%E6%80%A7%E3%83%BBSlow%E6%99%82%E5%AE%9A%E6%95%B0%3A%201000%20ms%EF%BC%89%22%2C%20ylabel%3D%22%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%20%5BdB%5D%22%2C%20ylim%3D(20%2C%2090))%0A%20%20%20%20_axes%5B1%5D.axvline(x%3D2.0%2C%20color%3D%22red%22%2C%20linestyle%3D%22--%22%2C%20alpha%3D0.7%2C%20label%3D%22%E3%83%AC%E3%83%99%E3%83%AB%E5%A4%89%E5%8C%96%E7%82%B9%22)%0A%20%20%20%20_axes%5B1%5D.axvline(x%3D4.0%2C%20color%3D%22red%22%2C%20linestyle%3D%22--%22%2C%20alpha%3D0.7)%0A%20%20%20%20_axes%5B1%5D.axhline(y%3D60%2C%20color%3D%22gray%22%2C%20linestyle%3D%22%3A%22%2C%20alpha%3D0.5%2C%20label%3D%2260%20dB%20(%E4%BD%8E%E3%83%AC%E3%83%99%E3%83%AB)%22)%0A%20%20%20%20_axes%5B1%5D.axhline(y%3D80%2C%20color%3D%22orange%22%2C%20linestyle%3D%22%3A%22%2C%20alpha%3D0.5%2C%20label%3D%2280%20dB%20(%E9%AB%98%E3%83%AC%E3%83%99%E3%83%AB)%22)%0A%20%20%20%20%23%20%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E6%AF%94%E8%BC%83%0A%20%20%20%20_axes%5B1%5D.legend(loc%3D%22upper%20right%22)%0A%20%20%20%20plt.tight_layout()%0A%20%20%20%20%23%20LAF%EF%BC%88Fast%EF%BC%89%0A%20%20%20%20plt.show()%0A%20%20%20%20print(%22%5Cn%F0%9F%93%8A%20%E5%AE%9A%E5%B8%B8%E7%8A%B6%E6%85%8B%E3%81%A7%E3%81%AE%E6%9C%80%E5%A4%A7%E5%80%A4%EF%BC%88%E9%AB%98%E3%83%AC%E3%83%99%E3%83%AB%E5%8C%BA%E9%96%93%EF%BC%89%3A%22)%0A%20%20%20%20print(f%22%20%20LAF%E6%9C%80%E5%A4%A7%E5%80%A4%3A%20%7Blaf.data.max()%3A.1f%7D%20dB%22)%0A%20%20%20%20%23%20LAS%EF%BC%88Slow%EF%BC%89%0A%20%20%20%20print(f%22%20%20LAS%E6%9C%80%E5%A4%A7%E5%80%A4%3A%20%7Blas.data.max()%3A.1f%7D%20dB%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20%E8%A7%A3%E6%9E%90%E7%B5%90%E6%9E%9C%E3%81%AE%E8%AA%AD%E3%81%BF%E6%96%B9%0A%0A%20%20%20%20**Fast%EF%BC%88F%EF%BC%89%E3%81%A8Slow%EF%BC%88S%EF%BC%89%E3%81%AE%E9%81%95%E3%81%84**%3A%0A%0A%20%20%20%20%7C%20%E7%89%B9%E6%80%A7%20%7C%20Fast%EF%BC%88LAF%EF%BC%89%20%7C%20Slow%EF%BC%88LAS%EF%BC%89%20%7C%0A%20%20%20%20%7C------%7C------------%7C------------%7C%0A%20%20%20%20%7C%20**%E6%99%82%E5%AE%9A%E6%95%B0**%20%7C%20125%20ms%20%7C%201000%20ms%20%7C%0A%20%20%20%20%7C%20**%E5%BF%9C%E7%AD%94%E9%80%9F%E5%BA%A6**%20%7C%20%E9%80%9F%E3%81%84%EF%BC%88%E7%9E%AC%E6%99%82%E5%A4%89%E5%8B%95%E3%82%92%E8%BF%BD%E8%B7%A1%EF%BC%89%20%7C%20%E9%81%85%E3%81%84%EF%BC%88%E5%A4%89%E5%8B%95%E3%82%92%E5%B9%B3%E6%BB%91%E5%8C%96%EF%BC%89%20%7C%0A%20%20%20%20%7C%20**%E3%83%AC%E3%83%99%E3%83%AB%E4%B8%8A%E6%98%87%E6%99%82**%20%7C%20%E7%B4%A0%E6%97%A9%E3%81%8F%E5%AE%9A%E5%B8%B8%E5%80%A4%E3%81%B8%E5%88%B0%E9%81%94%20%7C%20%E3%82%86%E3%81%A3%E3%81%8F%E3%82%8A%E5%AE%9A%E5%B8%B8%E5%80%A4%E3%81%B8%E5%8F%8E%E6%9D%9F%20%7C%0A%20%20%20%20%7C%20**%E3%83%AC%E3%83%99%E3%83%AB%E4%B8%8B%E9%99%8D%E6%99%82**%20%7C%20%E7%B4%A0%E6%97%A9%E3%81%8F%E4%BD%8E%E4%B8%8B%20%7C%20%E3%82%86%E3%81%A3%E3%81%8F%E3%82%8A%E6%B8%9B%E8%A1%B0%20%7C%0A%0A%20%20%20%20**%E8%A6%B3%E5%AF%9F%E3%81%95%E3%82%8C%E3%82%8B%E7%B5%90%E6%9E%9C**%3A%0A%20%20%20%20-%20**LAF%EF%BC%88Fast%EF%BC%89**%3A%202%E7%A7%92%E3%81%A84%E7%A7%92%E3%81%AE%E5%A4%89%E5%8C%96%E7%82%B9%E3%81%A7%E3%81%BB%E3%81%BC%E5%8D%B3%E5%BA%A7%E3%81%AB%E5%BF%9C%E7%AD%94%E3%81%97%E3%80%81%E7%B4%A0%E6%97%A9%E3%81%8F%E6%96%B0%E3%81%97%E3%81%84%E5%AE%9A%E5%B8%B8%E5%80%A4%E3%81%B8%E5%88%B0%E9%81%94%0A%20%20%20%20-%20**LAS%EF%BC%88Slow%EF%BC%89**%3A%20%E5%A4%89%E5%8C%96%E7%82%B9%E3%81%A7%E3%81%AE%E7%AB%8B%E3%81%A1%E4%B8%8A%E3%81%8C%E3%82%8A%E3%83%BB%E7%AB%8B%E3%81%A1%E4%B8%8B%E3%81%8C%E3%82%8A%E3%81%8C%E7%B7%A9%E3%82%84%E3%81%8B%E3%81%A7%E3%80%81%E5%AE%9A%E5%B8%B8%E5%80%A4%E3%81%B8%E3%81%AE%E5%8F%8E%E6%9D%9F%E3%81%AB%E6%99%82%E9%96%93%E3%81%8C%E3%81%8B%E3%81%8B%E3%82%8B%0A%0A%20%20%20%20**%E5%AE%9F%E7%94%A8%E7%9A%84%E3%81%AA%E4%BD%BF%E3%81%84%E5%88%86%E3%81%91**%3A%0A%20%20%20%20-%20**LAF%EF%BC%88Fast%EF%BC%89**%3A%20%E8%A1%9D%E6%92%83%E9%9F%B3%E3%83%BB%E9%96%93%E6%AC%A0%E9%A8%92%E9%9F%B3%E3%81%AE%E6%9C%80%E5%A4%A7%E5%80%A4%E8%A9%95%E4%BE%A1%EF%BC%88%E5%B7%A5%E5%A0%B4%E9%A8%92%E9%9F%B3%E3%80%81%E4%BA%A4%E9%80%9A%E9%A8%92%E9%9F%B3%E3%81%AE%E3%83%94%E3%83%BC%E3%82%AF%E6%B8%AC%E5%AE%9A%EF%BC%89%0A%20%20%20%20-%20**LAS%EF%BC%88Slow%EF%BC%89**%3A%20%E5%AE%89%E5%AE%9A%E3%81%97%E3%81%9F%E9%A8%92%E9%9F%B3%E3%83%AC%E3%83%99%E3%83%AB%E3%81%AE%E9%95%B7%E6%99%82%E9%96%93%E8%A9%95%E4%BE%A1%EF%BC%88%E7%92%B0%E5%A2%83%E9%A8%92%E9%9F%B3%E3%80%81%E7%94%9F%E6%B4%BB%E9%A8%92%E9%9F%B3%E3%81%AE%E5%85%A8%E4%BD%93%E8%A9%95%E4%BE%A1%EF%BC%89%0A%0A%20%20%20%20**%60sound_level()%60%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9**%3A%0A%20%20%20%20%60%60%60python%0A%20%20%20%20%23%20A%E7%89%B9%E6%80%A7%E3%83%BBFast%E6%99%82%E5%AE%9A%E6%95%B0%EF%BC%88%E9%A8%92%E9%9F%B3%E8%A8%88%E3%81%AELAF%E8%A8%AD%E5%AE%9A%EF%BC%89%0A%20%20%20%20laf%20%3D%20signal.sound_level(freq_weighting%3D%22A%22%2C%20time_weighting%3D%22Fast%22%2C%20dB%3DTrue)%0A%0A%20%20%20%20%23%20A%E7%89%B9%E6%80%A7%E3%83%BBSlow%E6%99%82%E5%AE%9A%E6%95%B0%EF%BC%88%E9%A8%92%E9%9F%B3%E8%A8%88%E3%81%AELAS%E8%A8%AD%E5%AE%9A%EF%BC%89%0A%20%20%20%20las%20%3D%20signal.sound_level(freq_weighting%3D%22A%22%2C%20time_weighting%3D%22Slow%22%2C%20dB%3DTrue)%0A%0A%20%20%20%20%23%20Z%E7%89%B9%E6%80%A7%EF%BC%88%E3%83%95%E3%83%A9%E3%83%83%E3%83%88%EF%BC%89%E3%83%BBFast%E6%99%82%E5%AE%9A%E6%95%B0%EF%BC%88%E7%B7%9A%E5%BD%A2RMS%E5%87%BA%E5%8A%9B%EF%BC%89%0A%20%20%20%20z_rms%20%3D%20signal.sound_level(freq_weighting%3D%22Z%22%2C%20time_weighting%3D%22Fast%22%2C%20dB%3DFalse)%0A%20%20%20%20%60%60%60%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%E3%83%87%E3%83%BC%E3%82%BF%E3%82%BB%E3%83%83%E3%83%88%E3%81%B8%E3%81%AE%E4%B8%80%E6%8B%AC%E5%87%A6%E7%90%86%E9%81%A9%E7%94%A8%0A%0A%20%20%20%20FrameDataset%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81**%E5%85%A8%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AB%E5%90%8C%E3%81%98%E5%87%A6%E7%90%86%E3%82%92%E4%B8%80%E5%BA%A6%E3%81%AB%E9%81%A9%E7%94%A8**%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%E3%81%93%E3%81%93%E3%81%A7%E3%81%AF%E3%80%81**Welch%E6%B3%95%E3%81%A8N-octave%E5%88%86%E6%9E%90%E3%82%92%E4%B8%80%E6%8B%AC%E9%81%A9%E7%94%A8**%E3%81%97%E3%80%81%E7%B5%90%E6%9E%9C%E3%82%92%E9%87%8D%E3%81%AD%E3%81%A6%E6%AF%94%E8%BC%83%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A7%E3%80%81%0A%20%20%20%20**%E7%95%B0%E3%81%AA%E3%82%8B%E5%88%86%E6%9E%90%E6%89%8B%E6%B3%95%E3%81%AE%E7%89%B9%E5%BE%B4%E3%81%A8%E7%9B%B8%E8%A3%9C%E6%80%A7%E3%82%92%E8%A6%96%E8%A6%9A%E7%9A%84%E3%81%AB%E7%A2%BA%E8%AA%8D**%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20**%E5%AE%9F%E8%B7%B5%E4%BE%8B**%3A%20%E6%AD%A3%E5%B8%B8%E3%83%BB%E8%BB%BD%E5%BA%A6%E7%95%B0%E5%B8%B8%E3%83%BB%E9%87%8D%E5%BA%A6%E7%95%B0%E5%B8%B8%E3%81%AE3%E3%81%A4%E3%81%AE%E6%9D%A1%E4%BB%B6%E3%81%AE%E6%8C%AF%E5%8B%95%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E6%AF%94%E8%BC%83%E5%88%86%E6%9E%90%0A%0A%20%20%20%203%E6%9D%A1%E4%BB%B6%E3%81%AF%E7%9B%B8%E5%AF%BE%E5%B7%AE%E3%82%92%E4%BF%9D%E3%81%A4%E5%85%B1%E9%80%9A%E4%BF%82%E6%95%B0%E3%81%A7%20%60%5B-0.95%2C%200.95%5D%60%20%E3%81%AB%E5%8F%8E%E3%82%81%E3%80%81%E6%98%8E%E7%A4%BA%E7%9A%84%E3%81%AAPCM16%20WAV%E3%81%A8%E3%81%97%E3%81%A6%E4%BF%9D%E5%AD%98%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%E5%86%8D%E8%AA%AD%E8%BE%BC%E5%80%A4%E3%81%AE%E5%8D%98%E4%BD%8D%E3%81%AF%20full%20scale%EF%BC%88FS%EF%BC%89%E3%81%A7%E3%80%81%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E3%81%AE0%20dB%E5%9F%BA%E6%BA%96%E3%81%AF%20%601%20FS%60%20%E3%81%A7%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(audio_contract)%3A%0A%20%20%20%20%23%203%E6%9D%A1%E4%BB%B6%E3%82%92%E5%85%B1%E9%80%9A%E4%BF%82%E6%95%B0%E3%81%A70.95%20FS%E4%BB%A5%E4%B8%8B%E3%81%AB%E5%8F%8E%E3%82%81%E3%80%81PCM16%20WAV%E3%81%A8%E3%81%97%E3%81%A6%E4%BF%9D%E5%AD%98%E3%83%BB%E5%86%8D%E8%AA%AD%E8%BE%BC%E3%81%99%E3%82%8B%0A%20%20%20%20import%20tempfile%0A%20%20%20%20from%20pathlib%20import%20Path%0A%0A%20%20%20%20temp_dir%20%3D%20Path(tempfile.mkdtemp(prefix%3D%22wandas_comparison_%22))%0A%20%20%20%20comparison_paths%20%3D%20audio_contract.write_comparison_pcm16(temp_dir)%0A%20%20%20%20signals%20%3D%20audio_contract.read_comparison_pcm16(comparison_paths)%0A%20%20%20%20print(%22%E2%9C%85%20PCM16%E3%81%A7%E4%BF%9D%E5%AD%98%E3%81%97%E3%80%81canonical%20float64%20full-scale%E5%80%A4%E3%81%A8%E3%81%97%E3%81%A6%E5%86%8D%E8%AA%AD%E8%BE%BC%3A%22)%0A%20%20%20%20for%20_signal%20in%20signals%3A%0A%20%20%20%20%20%20%20%20print(f%22%20%20%7B_signal.labels%5B0%5D%7D%3A%20%7B_signal.shape%7D%2C%20%7B_signal.sampling_rate%7D%20Hz%2C%20dtype%3D%7B_signal.data.dtype%7D%22)%0A%20%20%20%20from%20wandas.utils.frame_dataset%20import%20ChannelFrameDataset%0A%0A%20%20%20%20channel_frame_dataset%20%3D%20ChannelFrameDataset%0A%20%20%20%20return%20channel_frame_dataset%2C%20temp_dir%0A%0A%0A%40app.cell%0Adef%20_(audio_contract%2C%20channel_frame_dataset%2C%20np%2C%20plt%2C%20temp_dir)%3A%0A%20%20%20%20%23%20FrameDataset%E4%BD%9C%E6%88%90%0A%20%20%20%20dataset%20%3D%20channel_frame_dataset.from_folder(temp_dir%2C%20lazy_loading%3DTrue)%0A%20%20%20%20print(f%22%E2%9C%85%20FrameDataset%E4%BD%9C%E6%88%90%3A%20%7Blen(dataset)%7D%20%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%22)%0A%20%20%20%20_welch_results%20%3D%20dataset.apply(lambda%20x%3A%20x.welch(n_fft%3D2048%2C%20hop_length%3D1024))%0A%20%20%20%20%23%20Welch%E6%B3%95%E3%81%A8N-octave%E5%88%86%E6%9E%90%E3%82%92%E4%B8%80%E6%8B%AC%E9%81%A9%E7%94%A8%0A%20%20%20%20noct_results%20%3D%20dataset.apply(lambda%20x%3A%20x.noct_spectrum(fmin%3D25%2C%20fmax%3Daudio_contract.COMPARISON_NOCT_FMAX%2C%20n%3D3))%0A%20%20%20%20(fig1%2C%20_ax1)%20%3D%20plt.subplots(figsize%3D(12%2C%206))%0A%20%20%20%20for%20welch_result%20in%20_welch_results%3A%0A%20%20%20%20%20%20%20%20%23%20Welch%E6%B3%95%E3%81%A8N-octave%E5%88%86%E6%9E%90%E3%81%AE%E7%B5%90%E6%9E%9C%E3%82%92%E9%87%8D%E3%81%AD%E3%81%A6%E6%AF%94%E8%BC%83%0A%20%20%20%20%20%20%20%20%23%20Welch%E6%B3%95%E3%81%AE%E7%B5%90%E6%9E%9C%E3%82%921%E3%81%A4%E3%81%AE%E5%9B%B3%E3%81%AB%E3%81%BE%E3%81%A8%E3%82%81%E3%81%A6%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%0A%20%20%20%20%20%20%20%20welch_result.plot(ax%3D_ax1%2C%20alpha%3D0.8%2C%20label%3Dwelch_result.label)%0A%20%20%20%20_ax1.set_title(%22Welch%20Method%20Comparison%20Across%20Conditions%22%2C%20fontsize%3D14)%0A%20%20%20%20_ax1.set_xlim(20%2C%201000)%0A%20%20%20%20_ax1.set_ylabel(%22Spectrum%20level%20%5BdB%20re%201%20FS%5D%22)%0A%20%20%20%20_ax1.set_ylim(*audio_contract.COMPARISON_WELCH_YLIM)%0A%20%20%20%20(fig2%2C%20_ax2)%20%3D%20plt.subplots(figsize%3D(12%2C%206))%0A%20%20%20%20for%20_noct_result%20in%20noct_results%3A%0A%20%20%20%20%20%20%20%20_noct_result.plot(ax%3D_ax2%2C%20alpha%3D0.8%2C%20label%3D_noct_result.label)%0A%20%20%20%20_ax2.set_title(%22N-Octave%20Analysis%20Comparison%20Across%20Conditions%22%2C%20fontsize%3D14)%0A%20%20%20%20%23%20N-octave%E5%88%86%E6%9E%90%E3%81%AE%E7%B5%90%E6%9E%9C%E3%82%921%E3%81%A4%E3%81%AE%E5%9B%B3%E3%81%AB%E3%81%BE%E3%81%A8%E3%82%81%E3%81%A6%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%0A%20%20%20%20_ax2.set_xlim(20%2C%2010000)%0A%20%20%20%20_ax2.set_ylabel(%22Spectrum%20level%20%5BdB%20re%201%20FS%5D%22)%0A%20%20%20%20_ax2.set_ylim(*audio_contract.COMPARISON_NOCT_YLIM)%0A%20%20%20%20_ax2.set_xscale(%22log%22)%0A%20%20%20%20assert%20audio_contract.DB_REFERENCE_FS%20%3D%3D%201.0%0A%20%20%20%20for%20_result%2C%20_ylim%20in%20%5B%0A%20%20%20%20%20%20%20%20*%5B(_result%2C%20audio_contract.COMPARISON_WELCH_YLIM)%20for%20_result%20in%20_welch_results%5D%2C%0A%20%20%20%20%20%20%20%20*%5B(_result%2C%20audio_contract.COMPARISON_NOCT_YLIM)%20for%20_result%20in%20noct_results%5D%2C%0A%20%20%20%20%5D%3A%0A%20%20%20%20%20%20%20%20_values_db%20%3D%20np.asarray(_result.dB)%0A%20%20%20%20%20%20%20%20assert%20np.isfinite(_values_db).all()%0A%20%20%20%20%20%20%20%20assert%20_ylim%5B0%5D%20%3C%20float(_values_db.max())%20%3C%20_ylim%5B1%5D%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20_(temp_dir)%3A%0A%20%20%20%20%23%20%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%A2%E3%83%83%E3%83%97%0A%20%20%20%20import%20shutil%0A%0A%20%20%20%20shutil.rmtree(temp_dir)%0A%20%20%20%20print(f%22%E4%B8%80%E6%99%82%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%82%92%E5%89%8A%E9%99%A4%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%3A%20%7Btemp_dir%7D%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20Welch%E6%B3%95%E3%81%A8N-octave%E5%88%86%E6%9E%90%E3%81%AE%E6%AF%94%E8%BC%83%E7%B5%90%E6%9E%9C%0A%0A%20%20%20%20**Welch%E6%B3%95%E3%81%A8N-octave%E5%88%86%E6%9E%90%E3%81%AE%E7%89%B9%E5%BE%B4%E6%AF%94%E8%BC%83**%3A%0A%0A%20%20%20%20**Welch%E6%B3%95%E3%81%AE%E7%89%B9%E5%BE%B4**%3A%0A%20%20%20%20-%20**%E7%AD%89%E9%96%93%E9%9A%94%E5%91%A8%E6%B3%A2%E6%95%B0%E3%83%93%E3%83%B3**%3A%20%E9%AB%98%E5%91%A8%E6%B3%A2%E6%95%B0%E5%B8%AF%E5%9F%9F%E3%81%A7%E3%82%82%E4%B8%80%E5%AE%9A%E3%81%AE%E5%88%86%E8%A7%A3%E8%83%BD%0A%20%20%20%20-%20**%E8%A9%B3%E7%B4%B0%E3%81%AA%E3%83%94%E3%83%BC%E3%82%AF%E6%A4%9C%E5%87%BA**%3A%20100Hz%E3%81%A8200Hz%E3%81%AE%E3%83%94%E3%83%BC%E3%82%AF%E3%82%92%E6%98%8E%E7%A2%BA%E3%81%AB%E5%88%86%E9%9B%A2%0A%20%20%20%20-%20**%E3%83%8E%E3%82%A4%E3%82%BA%E3%81%AE%E5%BD%B1%E9%9F%BF**%3A%20%E5%B9%B3%E5%9D%87%E5%8C%96%E3%81%AB%E3%82%88%E3%82%8A%E5%AE%89%E5%AE%9A%E3%81%97%E3%81%9F%E6%8E%A8%E5%AE%9A%E3%81%8C%E5%8F%AF%E8%83%BD%0A%20%20%20%20-%20**%E7%94%A8%E9%80%94**%3A%20%E6%A9%9F%E6%A2%B0%E3%81%AE%E5%9B%BA%E6%9C%89%E5%91%A8%E6%B3%A2%E6%95%B0%E5%90%8C%E5%AE%9A%E3%80%81%E7%B2%BE%E5%AF%86%E3%81%AA%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E6%9E%90%0A%0A%20%20%20%20**N-octave%E5%88%86%E6%9E%90%E3%81%AE%E7%89%B9%E5%BE%B4**%3A%0A%20%20%20%20-%20**%E5%AF%BE%E6%95%B0%E9%96%93%E9%9A%94%E5%91%A8%E6%B3%A2%E6%95%B0%E5%B8%AF%E5%9F%9F**%3A%20%E4%BD%8E%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%A7%E5%BA%83%E3%81%84%E5%B8%AF%E5%9F%9F%E3%80%81%E9%AB%98%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%A7%E7%8B%AD%E3%81%84%E5%B8%AF%E5%9F%9F%0A%20%20%20%20-%20**%E4%BA%BA%E9%96%93%E8%81%B4%E8%A6%9A%E7%89%B9%E6%80%A7%E5%AF%BE%E5%BF%9C**%3A%20%E9%9F%B3%E9%9F%BF%E3%83%BB%E6%8C%AF%E5%8B%95%E3%81%AE%E8%A9%95%E4%BE%A1%E3%81%AB%E9%81%A9%E3%81%97%E3%81%9F%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%0A%20%20%20%20-%20**%E5%BA%83%E5%B8%AF%E5%9F%9F%E7%89%B9%E6%80%A7%E8%A9%95%E4%BE%A1**%3A%20%E5%85%A8%E4%BD%93%E7%9A%84%E3%81%AA%E3%82%A8%E3%83%8D%E3%83%AB%E3%82%AE%E3%83%BC%E5%88%86%E5%B8%83%E3%82%92%E6%8A%8A%E6%8F%A1%E3%81%97%E3%82%84%E3%81%99%E3%81%84%0A%20%20%20%20-%20**%E7%94%A8%E9%80%94**%3A%20%E9%A8%92%E9%9F%B3%E8%A9%95%E4%BE%A1%E3%80%81%E5%BB%BA%E7%AF%89%E9%9F%B3%E9%9F%BF%E3%80%81%E7%92%B0%E5%A2%83%E6%8C%AF%E5%8B%95%E6%B8%AC%E5%AE%9A%0A%0A%20%20%20%20**%E5%AE%9F%E8%B7%B5%E7%9A%84%E3%81%AA%E4%BD%BF%E3%81%84%E5%88%86%E3%81%91**%3A%0A%20%20%20%20-%20**%E7%B2%BE%E5%AF%86%E3%81%AA%E5%91%A8%E6%B3%A2%E6%95%B0%E5%90%8C%E5%AE%9A%E3%81%8C%E5%BF%85%E8%A6%81**%3A%20Welch%E6%B3%95%0A%20%20%20%20-%20**%E4%BA%BA%E9%96%93%E3%81%AE%E6%84%9F%E8%A6%9A%E3%81%AB%E5%90%88%E3%81%A3%E3%81%9F%E8%A9%95%E4%BE%A1**%3A%20N-octave%E5%88%86%E6%9E%90%0A%20%20%20%20-%20**%E4%B8%A1%E6%96%B9%E3%81%AE%E7%89%B9%E5%BE%B4%E3%82%92%E6%B4%BB%E3%81%8B%E3%81%99**%3A%20Welch%E6%B3%95%E3%81%A7%E3%83%94%E3%83%BC%E3%82%AF%E6%A4%9C%E5%87%BA%E3%80%81N-octave%E3%81%A7%E5%85%A8%E4%BD%93%E8%A9%95%E4%BE%A1%0A%0A%20%20%20%20%E3%81%93%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%E3%80%81FrameDataset%E3%82%92%E4%BD%BF%E3%81%86%E3%81%93%E3%81%A8%E3%81%A7**%E8%A4%87%E6%95%B0%E6%9D%A1%E4%BB%B6%E3%81%AE%E7%B3%BB%E7%B5%B1%E7%9A%84%E3%81%AA%E6%AF%94%E8%BC%83%E3%81%A8%E5%88%A4%E5%AE%9A%E5%9F%BA%E6%BA%96%E3%81%AE%E8%A8%AD%E5%AE%9A**%E3%81%8C%E5%8F%AF%E8%83%BD%E3%81%AB%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%E3%83%88%E3%83%A9%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%0A%0A%20%20%20%20%23%23%23%20%E3%82%88%E3%81%8F%E3%81%82%E3%82%8B%E5%95%8F%E9%A1%8C%E3%81%A8%E5%AE%9F%E8%B7%B5%E7%9A%84%E3%81%AA%E8%A7%A3%E6%B1%BA%E7%AD%96%0A%0A%20%20%20%20%23%23%23%23%201.%20STFT%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E9%81%B8%E6%8A%9E%E3%81%AE%E8%BF%B7%E3%81%84%0A%0A%20%20%20%20**%E7%97%87%E7%8A%B6**%3A%20%E3%81%A9%E3%81%AEFFT%E3%82%B5%E3%82%A4%E3%82%BA%E3%81%A8%E3%83%9B%E3%83%83%E3%83%97%E9%95%B7%E3%82%92%E9%81%B8%E3%81%B9%E3%81%B0%E3%81%84%E3%81%84%E3%81%8B%E3%82%8F%E3%81%8B%E3%82%89%E3%81%AA%E3%81%84%0A%0A%20%20%20%20**%E8%A7%A3%E6%B1%BA%E7%AD%96**%3A%0A%20%20%20%20%60%60%60python%0A%20%20%20%20%23%20%E3%81%BE%E3%81%9A%E6%A8%99%E6%BA%96%E8%A8%AD%E5%AE%9A%E3%81%A7%E8%A9%A6%E3%81%99%EF%BC%8848kHz%E7%94%A8%EF%BC%89%0A%20%20%20%20spec%20%3D%20signal.stft(n_fft%3D2048%2C%20hop_length%3D512)%0A%0A%20%20%20%20%23%20%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E9%9B%A2%E3%82%92%E5%84%AA%E5%85%88%E3%81%99%E3%82%8B%E3%81%AA%E3%82%89%0A%20%20%20%20spec_high_res%20%3D%20signal.stft(n_fft%3D4096%2C%20hop_length%3D1024)%0A%0A%20%20%20%20%23%20%E6%99%82%E9%96%93%E5%A4%89%E5%8C%96%E3%82%92%E7%B4%B0%E3%81%8B%E3%81%8F%E8%BF%BD%E3%81%84%E3%81%9F%E3%81%84%E3%81%AA%E3%82%89%0A%20%20%20%20spec_high_time%20%3D%20signal.stft(n_fft%3D1024%2C%20hop_length%3D256)%0A%20%20%20%20%60%60%60%0A%0A%20%20%20%20**%E5%88%A4%E6%96%AD%E5%9F%BA%E6%BA%96**%3A%0A%20%20%20%20-%20**%E8%BF%91%E6%8E%A5%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%AE%E5%88%86%E9%9B%A2%E3%81%8C%E5%BF%85%E8%A6%81**%20-%3E%20FFT%E3%82%B5%E3%82%A4%E3%82%BA%E3%82%92%E5%A4%A7%E3%81%8D%E3%81%8F%EF%BC%884096%2C%208192%EF%BC%89%0A%20%20%20%20-%20**%E6%80%A5%E6%BF%80%E3%81%AA%E6%99%82%E9%96%93%E5%A4%89%E5%8C%96%E3%82%92%E8%BF%BD%E8%B7%A1**%20-%3E%20%E3%83%9B%E3%83%83%E3%83%97%E9%95%B7%E3%82%92%E5%B0%8F%E3%81%95%E3%81%8F%EF%BC%88256%2C%20128%EF%BC%89%0A%20%20%20%20-%20**%E3%83%AA%E3%82%A2%E3%83%AB%E3%82%BF%E3%82%A4%E3%83%A0%E5%87%A6%E7%90%86**%20-%3E%20%E4%B8%A1%E6%96%B9%E3%82%92%E5%B0%8F%E3%81%95%E3%81%8F%EF%BC%881024%2F256%EF%BC%89%0A%0A%20%20%20%20%23%23%23%23%202.%20Welch%E6%B3%95%E3%81%AE%E8%A8%88%E7%AE%97%E3%81%8C%E9%81%85%E3%81%84%0A%0A%20%20%20%20**%E5%8E%9F%E5%9B%A0**%3A%20FFT%E3%82%B5%E3%82%A4%E3%82%BA%E3%81%A8%E9%87%8D%E8%A4%87%E5%BA%A6%E3%81%8C%E5%A4%A7%E3%81%8D%E3%81%99%E3%81%8E%E3%82%8B%E3%80%81%E3%81%BE%E3%81%9F%E3%81%AF%E3%82%BB%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88%E6%95%B0%E3%81%8C%E5%A4%9A%E3%81%84%0A%0A%20%20%20%20**%E5%AF%BE%E7%AD%96**%3A%0A%20%20%20%20%60%60%60python%0A%20%20%20%20%23%20%E9%AB%98%E9%80%9F%E5%8C%96%E3%81%AE%E3%83%9D%E3%82%A4%E3%83%B3%E3%83%88%0A%20%20%20%20welch%20%3D%20signal.welch(%0A%20%20%20%20%20%20%20%20n_fft%3D2048%2C%20%20%20%20%20%20%20%20%23%20%E5%B0%8F%E3%81%95%E3%82%81%E3%81%AEFFT%E3%82%B5%E3%82%A4%E3%82%BA%0A%20%20%20%20%20%20%20%20hop_length%3D1024%2C%20%20%20%23%2050%25%E3%82%AA%E3%83%BC%E3%83%90%E3%83%BC%E3%83%A9%E3%83%83%E3%83%97%EF%BC%8875%25%E3%82%88%E3%82%8A%E8%BB%BD%E3%81%84%EF%BC%89%0A%20%20%20%20%20%20%20%20win_length%3D2048%20%20%20%20%23%20n_fft%E3%81%A8%E5%90%8C%E3%81%98%E3%81%AB%E3%81%99%E3%82%8B%0A%20%20%20%20)%0A%20%20%20%20%60%60%60%0A%0A%20%20%20%20**48kHz%E3%81%A7%E3%81%AE%E6%8E%A8%E5%A5%A8%E8%A8%AD%E5%AE%9A**%3A%0A%20%20%20%20-%20**%E3%83%90%E3%83%A9%E3%83%B3%E3%82%B9%E5%9E%8B**%3A%20n_fft%3D2048%2C%20hop_length%3D1024%EF%BC%88%E3%81%93%E3%81%AEmarimo%E3%82%A2%E3%83%97%E3%83%AA%E6%8E%A1%E7%94%A8%EF%BC%89%0A%20%20%20%20-%20**%E9%AB%98%E9%80%9F%E5%9E%8B**%3A%20n_fft%3D1024%2C%20hop_length%3D512%0A%20%20%20%20-%20**%E9%AB%98%E7%B2%BE%E5%BA%A6%E5%9E%8B**%3A%20n_fft%3D8192%2C%20hop_length%3D4096%EF%BC%88%E9%95%B7%E3%81%84%E4%BF%A1%E5%8F%B7%E3%81%AE%E3%81%BF%EF%BC%89%0A%0A%20%20%20%20%23%23%23%23%203.%20N-octave%E5%88%86%E6%9E%90%E3%81%AE%E5%91%A8%E6%B3%A2%E6%95%B0%E7%AF%84%E5%9B%B2%E3%82%A8%E3%83%A9%E3%83%BC%0A%0A%20%20%20%20**%E7%97%87%E7%8A%B6**%3A%20%60ValueError%3A%20fmax%20exceeds%20Nyquist%20frequency%60%0A%0A%20%20%20%20**%E5%8E%9F%E5%9B%A0**%3A%20%E6%9C%80%E5%A4%A7%E5%91%A8%E6%B3%A2%E6%95%B0%E3%81%8CNyquist%E5%91%A8%E6%B3%A2%E6%95%B0%EF%BC%88sampling_rate%2F2%EF%BC%89%E3%82%92%E8%B6%85%E3%81%88%E3%81%A6%E3%81%84%E3%82%8B%0A%0A%20%20%20%20**%E8%A7%A3%E6%B1%BA%E7%AD%96**%3A%0A%20%20%20%20%60%60%60python%0A%20%20%20%20nyquist%20%3D%20signal.sampling_rate%20%2F%202%20%20%23%2048kHz%E3%81%AA%E3%82%8924kHz%0A%0A%20%20%20%20%23%20%E5%AE%89%E5%85%A8%E3%81%AA%E8%A8%AD%E5%AE%9A%0A%20%20%20%20noct%20%3D%20signal.noct_spectrum(%0A%20%20%20%20%20%20%20%20fmin%3D25%2C%0A%20%20%20%20%20%20%20%20fmax%3Dmin(20000%2C%20nyquist%20*%200.9)%2C%20%20%23%20Nyquist%E3%81%AE90%25%E3%81%BE%E3%81%A7%0A%20%20%20%20%20%20%20%20n%3D3%20%20%23%201%2F3%E3%82%AA%E3%82%AF%E3%82%BF%E3%83%BC%E3%83%96%0A%20%20%20%20)%0A%20%20%20%20%60%60%60%0A%0A%20%20%20%20%23%23%23%23%204.%20A%E7%89%B9%E6%80%A7%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%E3%81%A7Fast%E3%81%A8Slow%E3%81%AE%E5%B7%AE%E3%81%8C%E5%88%86%E3%81%8B%E3%82%8A%E3%81%AB%E3%81%8F%E3%81%84%0A%0A%20%20%20%20**%E7%97%87%E7%8A%B6**%3A%20LAF%E3%81%A8LAS%E3%81%8C%E4%BC%BC%E3%81%9F%E5%80%A4%E3%81%AB%E3%81%AA%E3%82%8A%E3%80%81%E6%99%82%E5%AE%9A%E6%95%B0%E3%81%AE%E5%8A%B9%E6%9E%9C%E3%81%8C%E8%A6%8B%E3%81%88%E3%81%AA%E3%81%84%0A%0A%20%20%20%20**%E5%8E%9F%E5%9B%A0**%3A%0A%20%20%20%20-%20%E3%83%AC%E3%83%99%E3%83%AB%E5%A4%89%E5%8C%96%E3%81%AE%E5%B0%91%E3%81%AA%E3%81%84%E5%AE%9A%E5%B8%B8%E4%BF%A1%E5%8F%B7%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%84%E3%82%8B%0A%20%20%20%20-%20%E5%A4%89%E5%8C%96%E5%8C%BA%E9%96%93%E3%81%8C%E7%9F%AD%E3%81%8F%E3%80%81Slow%EF%BC%881000ms%EF%BC%89%E3%81%AE%E8%BF%BD%E5%BE%93%E5%B7%AE%E3%81%8C%E5%87%BA%E3%81%AB%E3%81%8F%E3%81%84%0A%0A%20%20%20%20**%E5%AF%BE%E7%AD%96**%3A%0A%20%20%20%20%60%60%60python%0A%20%20%20%20%23%20%E6%AE%B5%E9%9A%8E%E7%9A%84%E3%81%AB%E3%83%AC%E3%83%99%E3%83%AB%E3%81%8C%E5%A4%89%E5%8C%96%E3%81%99%E3%82%8B%E4%BF%A1%E5%8F%B7%E3%82%92%E4%BD%BF%E3%81%86%0A%20%20%20%20laf%20%3D%20signal.sound_level(freq_weighting%3D%22A%22%2C%20time_weighting%3D%22Fast%22%2C%20dB%3DTrue)%0A%20%20%20%20las%20%3D%20signal.sound_level(freq_weighting%3D%22A%22%2C%20time_weighting%3D%22Slow%22%2C%20dB%3DTrue)%0A%0A%20%20%20%20%23%20%E5%A4%89%E5%8C%96%E7%82%B9%E3%82%92%E5%8F%AF%E8%A6%96%E5%8C%96%E3%81%97%E3%81%A6%E6%AF%94%E8%BC%83%0A%20%20%20%20ax.axvline(2.0%2C%20linestyle%3D%22--%22%2C%20color%3D%22red%22)%0A%20%20%20%20ax.axvline(4.0%2C%20linestyle%3D%22--%22%2C%20color%3D%22red%22)%0A%20%20%20%20%60%60%60%0A%0A%20%20%20%20%23%23%23%23%205.%20FrameDataset%E6%AF%94%E8%BC%83%E3%81%A7%E3%83%97%E3%83%AD%E3%83%83%E3%83%88%E3%83%A9%E3%83%99%E3%83%AB%E3%81%8C%E6%8F%83%E3%82%8F%E3%81%AA%E3%81%84%0A%0A%20%20%20%20**%E7%97%87%E7%8A%B6**%3A%20%E9%87%8D%E3%81%AD%E6%8F%8F%E3%81%8D%E3%81%97%E3%81%9F%E3%81%A8%E3%81%8D%E3%81%AB%E5%87%A1%E4%BE%8B%E5%90%8D%E3%82%84%E7%B3%BB%E5%88%97%E5%AF%BE%E5%BF%9C%E3%81%8C%E5%88%86%E3%81%8B%E3%82%8A%E3%81%AB%E3%81%8F%E3%81%84%0A%0A%20%20%20%20**%E5%8E%9F%E5%9B%A0**%3A%20%E5%85%A5%E5%8A%9B%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E5%90%8D%E3%82%84%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E3%83%A9%E3%83%99%E3%83%AB%E3%81%8C%E6%8F%83%E3%81%A3%E3%81%A6%E3%81%84%E3%81%AA%E3%81%84%0A%0A%20%20%20%20**%E5%AF%BE%E7%AD%96**%3A%0A%20%20%20%20%60%60%60python%0A%20%20%20%20%23%20%E4%BF%9D%E5%AD%98%E5%89%8D%E3%81%AB%E3%83%A9%E3%83%99%E3%83%AB%E5%91%BD%E5%90%8D%E8%A6%8F%E5%89%87%E3%82%92%E7%B5%B1%E4%B8%80%0A%20%20%20%20signal%20%3D%20wd.from_numpy(%0A%20%20%20%20%20%20%20%20data%3Ddata%2C%0A%20%20%20%20%20%20%20%20sampling_rate%3D48000%2C%0A%20%20%20%20%20%20%20%20ch_labels%3D%5B%22Normal%22%5D%20%20%23%20%E6%9D%A1%E4%BB%B6%E5%90%8D%E3%82%92%E6%98%8E%E7%A4%BA%0A%20%20%20%20)%0A%0A%20%20%20%20%23%20%E3%81%82%E3%82%8B%E3%81%84%E3%81%AF%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BF%E5%BE%8C%E3%81%AB%E3%83%A9%E3%83%99%E3%83%AB%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%A6%E3%81%8B%E3%82%89%E6%AF%94%E8%BC%83%0A%20%20%20%20for%20frame%20in%20dataset%3A%0A%20%20%20%20%20%20%20%20print(frame.label)%0A%20%20%20%20%60%60%60%0A%0A%20%20%20%20%23%23%23%20%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E3%81%AE%E3%83%92%E3%83%B3%E3%83%88%0A%0A%20%20%20%20**%E3%82%B9%E3%83%9A%E3%82%AF%E3%83%88%E3%83%AB%E3%81%8C%E6%9C%9F%E5%BE%85%E3%81%A8%E7%95%B0%E3%81%AA%E3%82%8B%E5%A0%B4%E5%90%88**%3A%0A%20%20%20%201.%20%E5%85%83%E4%BF%A1%E5%8F%B7%E3%82%92%E6%99%82%E9%96%93%E9%A0%98%E5%9F%9F%E3%81%A7%E7%A2%BA%E8%AA%8D%EF%BC%88plot()%EF%BC%89%0A%20%20%20%202.%20%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%88%E3%81%8C%E6%AD%A3%E3%81%97%E3%81%84%E3%81%8B%E7%A2%BA%E8%AA%8D%0A%20%20%20%203.%20%E7%AA%93%E9%96%A2%E6%95%B0%E3%81%AE%E5%BD%B1%E9%9F%BF%E3%82%92%E8%80%83%E6%85%AE%EF%BC%88Hann%2C%20Hamming%2C%20Blackman%E3%81%A7%E6%AF%94%E8%BC%83%EF%BC%89%0A%20%20%20%204.%20%E3%82%BC%E3%83%AD%E3%83%91%E3%83%87%E3%82%A3%E3%83%B3%E3%82%B0%E3%81%AE%E5%8A%B9%E6%9E%9C%E3%82%92%E7%A2%BA%E8%AA%8D%EF%BC%88n_fft%20%3E%20%E3%83%87%E3%83%BC%E3%82%BF%E9%95%B7%EF%BC%89%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(mo)%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20%E6%AC%A1%E3%81%AE%E3%82%B9%E3%83%86%E3%83%83%E3%83%97%0A%0A%20%20%20%20%E9%AB%98%E5%BA%A6%E3%81%AA%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E6%89%8B%E6%B3%95%E3%82%92%E5%AE%9F%E8%B7%B5%E7%9A%84%E3%81%AB%E7%BF%92%E5%BE%97%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%0A%0A%20%20%20%20**%E6%AC%A1%E3%81%AEmarimo%E3%82%A2%E3%83%97%E3%83%AA**%3A%20%5B05_custom_functions.py%5D(05_custom_functions.py)%0A%0A%20%20%20%20%E3%81%93%E3%81%93%E3%81%A7%E3%81%AF%E3%80%81Wandas%E3%81%AE%E5%87%A6%E7%90%86%E3%83%81%E3%82%A7%E3%83%BC%E3%83%B3%E3%81%AB**%E7%8B%AC%E8%87%AA%E9%96%A2%E6%95%B0%E3%82%92%E7%B5%84%E3%81%BF%E8%BE%BC%E3%82%80%E6%96%B9%E6%B3%95**%E3%82%92%E5%AD%A6%E3%81%B3%E3%80%81%0A%20%20%20%20%E7%8F%BE%E5%A0%B4%E8%AA%B2%E9%A1%8C%E3%81%AB%E5%90%88%E3%82%8F%E3%81%9B%E3%81%9F%E5%88%86%E6%9E%90%E3%83%91%E3%82%A4%E3%83%97%E3%83%A9%E3%82%A4%E3%83%B3%E3%82%92%E8%A8%AD%E8%A8%88%E3%81%99%E3%82%8B%E5%AE%9F%E8%B7%B5%E3%81%AB%E9%80%B2%E3%81%BF%E3%81%BE%E3%81%99%E3%80%82%0A%0A%20%20%20%20%23%23%23%20%E3%81%93%E3%81%AEmarimo%E3%82%A2%E3%83%97%E3%83%AA%E3%81%A7%E5%AD%A6%E3%82%93%E3%81%A0%E3%81%93%E3%81%A8%0A%0A%20%20%20%20**%E7%90%86%E8%AB%96%E3%81%A8%E5%AE%9F%E8%B7%B5%E3%81%AE%E4%B8%A1%E9%9D%A2**%3A%0A%20%20%20%20-%20STFT%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E8%AA%BF%E6%95%B4%3A%20%E6%99%82%E9%96%93-%E5%91%A8%E6%B3%A2%E6%95%B0%E5%88%86%E8%A7%A3%E8%83%BD%E3%81%AE%E3%83%88%E3%83%AC%E3%83%BC%E3%83%89%E3%82%AA%E3%83%95%E3%82%92%E4%BD%93%E9%A8%93%0A%20%20%20%20-%20Welch%E6%B3%95%E3%81%AE%E6%9C%80%E9%81%A9%E5%8C%96%3A%20%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%81%AB%E3%82%88%E3%82%8B%E6%80%A7%E8%83%BD%E3%81%AE%E9%81%95%E3%81%84%E3%82%92%E6%AF%94%E8%BC%83%0A%20%20%20%20-%20N-octave%E3%83%90%E3%83%B3%E3%83%89%E5%88%86%E6%9E%90%3A%20%E9%9F%B3%E9%9F%BF%E3%83%BB%E6%8C%AF%E5%8B%95%E8%A7%A3%E6%9E%90%E3%81%A7%E4%BD%BF%E3%81%86%E5%AF%BE%E6%95%B0%E5%B8%AF%E5%9F%9F%E5%88%86%E6%9E%90%0A%20%20%20%20-%20A%E7%89%B9%E6%80%A7%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB%3A%20%E6%99%82%E5%AE%9A%E6%95%B0%E4%BB%98%E3%81%8DLAF%2FLAS%E3%81%AE%E8%A8%88%E7%AE%97%E3%81%A8%E8%A7%A3%E9%87%88%0A%20%20%20%20-%20FrameDataset%E5%BF%9C%E7%94%A8%3A%20%E6%9D%A1%E4%BB%B6%E5%88%A5%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AE%E5%8A%B9%E7%8E%87%E7%9A%84%E3%81%AA%E6%AF%94%E8%BC%83%E5%88%86%E6%9E%90%0A%0A%20%20%20%20**03%E3%81%A8%E3%81%AE%E9%81%95%E3%81%84**%3A%20%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E5%87%A6%E7%90%86%E6%96%B9%E6%B3%95%E3%81%8B%E3%82%89%E3%80%81%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E8%AA%BF%E6%95%B4%E3%81%A8%E6%AF%94%E8%BC%83%E8%A9%95%E4%BE%A1%E3%81%AE%E5%AE%9F%E8%B7%B5%E3%81%B8%0A%0A%20%20%20%20%23%23%23%20%E6%AC%A1%E3%81%AE%E5%AD%A6%E7%BF%92%E7%9B%AE%E6%A8%99%0A%0A%20%20%20%2005%E3%81%A7%E3%81%AF%E4%BB%A5%E4%B8%8B%E3%82%92%E5%AD%A6%E3%81%B3%E3%81%BE%E3%81%99%3A%0A%20%20%20%20-%20%E7%8B%AC%E8%87%AA%E5%87%A6%E7%90%86%E9%96%A2%E6%95%B0%E3%81%AE%E4%BD%9C%E6%88%90%E3%81%A8%E9%81%A9%E7%94%A8%0A%20%20%20%20-%20%E6%97%A2%E5%AD%98%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%83%81%E3%82%A7%E3%83%BC%E3%83%B3%E3%81%B8%E3%81%AE%E5%AE%89%E5%85%A8%E3%81%AA%E7%B5%84%E3%81%BF%E8%BE%BC%E3%81%BF%0A%20%20%20%20-%20%E5%86%8D%E5%88%A9%E7%94%A8%E3%81%97%E3%82%84%E3%81%99%E3%81%84%E5%88%86%E6%9E%90%E5%87%A6%E7%90%86%E3%81%AE%E8%A8%AD%E8%A8%88%0A%0A%20%20%20%20%23%23%23%20%E7%99%BA%E5%B1%95%E7%9A%84%E3%81%AA%E3%83%88%E3%83%94%E3%83%83%E3%82%AF%EF%BC%88%E4%BB%8A%E5%BE%8C%E3%81%AE%E5%AE%9F%E8%A3%85%E4%BA%88%E5%AE%9A%EF%BC%89%0A%0A%20%20%20%20Wandas%E3%81%AF%E9%96%8B%E7%99%BA%E4%B8%AD%E3%81%AE%E3%81%9F%E3%82%81%E3%80%81%E4%BB%A5%E4%B8%8B%E3%81%AE%E6%A9%9F%E8%83%BD%E3%81%AF%E5%B0%86%E6%9D%A5%E5%AE%9F%E8%A3%85%E4%BA%88%E5%AE%9A%E3%81%A7%E3%81%99%3A%0A%20%20%20%20-%20%E3%82%A6%E3%82%A7%E3%83%BC%E3%83%96%E3%83%AC%E3%83%83%E3%83%88%E5%A4%89%E6%8F%9B%3A%20%E6%99%82%E9%96%93-%E5%91%A8%E6%B3%A2%E6%95%B0-%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%E8%A7%A3%E6%9E%90%0A%20%20%20%20-%20%E9%AB%98%E5%BA%A6%E3%81%AA%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E8%A8%AD%E8%A8%88%3A%20%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0FIR%2FIIR%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%0A%20%20%20%20-%20%E9%81%A9%E5%BF%9C%E7%9A%84%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%3A%20RLS%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0%E3%81%AA%E3%81%A9%0A%0A%20%20%20%20---%0A%0A%20%20%20%20**%E9%AB%98%E5%BA%A6%E3%81%AA%E4%BF%A1%E5%8F%B7%E5%87%A6%E7%90%86%E3%81%AE%E5%AE%9F%E8%B7%B5%E3%82%B9%E3%82%AD%E3%83%AB%E3%82%92%E7%BF%92%E5%BE%97%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E6%AC%A1%E3%81%AF%E7%8B%AC%E8%87%AA%E5%87%A6%E7%90%86%E3%81%AE%E5%AE%9F%E8%A3%85%E3%81%AB%E9%80%B2%E3%81%BF%E3%81%BE%E3%81%97%E3%82%87%E3%81%86%E3%80%82**%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0Aif%20__name__%20%3D%3D%20%22__main__%22%3A%0A%20%20%20%20app.run()%0A
26efc0073f40535f93bebb200835ce51