有没有什么算法可以用Web Audio Api来隔离超声波?
我试过“高通”滤波器,但我需要分离出只是超声波(水平线)的声音,并忽略同样在较低可听频率(垂直线)上发声的噪声。
var highpass = audioContext.createBiquadFilter();
highpass.type = 'highpass';
highpass.frequency.value = 17500;
highpass.gain.value = -1下面是来自http://rtoy.github.io/webaudio-hacks/more/filter-design/filter-design.html的一个不错的测试片段,展示了可听噪声的频谱是如何干扰过滤后的超声波的:(有两个canvas,一个没有过滤器,另一个有filter https://jsfiddle.net/6gnyhvrk/3
不使用过滤器:

使用17.500高通滤波器:

发布于 2021-03-12 03:31:42
高通滤波器是你想要的,但有几件事需要考虑。首先,音频上下文必须具有足够高的采样率。其次,你必须决定“超声波”是什么意思。许多人可以听到高于15 kHz的频率(如您的示例所示)。单个高通滤波器可能不会有足够清晰的截止,所以你需要有一个更复杂的滤波器设置。
https://stackoverflow.com/questions/66588768
复制相似问题