Algorithm 峰值查找算法-动态阈值或替代方法
我在寻求一些建议。抱歉,如果这样,或者你觉得属于另一个网站 我的任务是在一个信号中识别特定的社交电话(来自蝙蝠),我一直在玩弄我应该使用的方法来隔离不同的电话。首先,这是信号作为一个整体的样子: 该信号非常大,因此该信号被分为Algorithm 峰值查找算法-动态阈值或替代方法,algorithm,audio,signal-processing,threshold,Algorithm,Audio,Signal Processing,Threshold,我在寻求一些建议。抱歉,如果这样,或者你觉得属于另一个网站 我的任务是在一个信号中识别特定的社交电话(来自蝙蝠),我一直在玩弄我应该使用的方法来隔离不同的电话。首先,这是信号作为一个整体的样子: 该信号非常大,因此该信号被分为1024*100(每个大约10MB)的块,下面是一个块的示例: 该信号更理想,并且可以很容易地从视觉上识别峰值。以下是一些与此相关的问题: 1) 计算短期能量是确定峰值的适当方法吗 2) 是否有一种方法可以动态分配阈值?例如,为该块创建的算法可能适用于信号内的所有其他块
1024*100
(每个大约10MB)的块,下面是一个块的示例:
该信号更理想,并且可以很容易地从视觉上识别峰值。以下是一些与此相关的问题:
1) 计算短期能量是确定峰值的适当方法吗
2) 是否有一种方法可以动态分配阈值?例如,为该块创建的算法可能适用于信号内的所有其他块和输入的任何其他信号
3) 将该信号转换到频域(使用STFT方法)会有什么不同吗
以下是使用FFT算法的块:
预期产出:
如有任何建议,将不胜感激
可能有关于峰值检测算法的论文。但是如果你没有时间,你可以试着沿着一个时间窗口移动,用它的能量来计算treshold 也许您还可以查看峰值密度(如果在一段时间内有或多或少相同数量的峰值),以了解在给定的窗口中应该找到多少峰值。(好吧,如果没有沉默,但通常很容易用能量区分沉默和噪音)
我怀疑这会有帮助。从我们所看到的情况来看,没有明显的频率,任何类型的过滤都会污染峰值。我会调查频率,查看时频分析。也许小波变换或维格纳变换或简单的声像图会有所帮助
时间-频率表示通常会同时提供时间、能量和频率。好东西 我只是好奇:难道不能用101个统计数据过滤这些信号吗…@achingfingers我不知道这个概念?如果你指的是编程语言,我正在使用C++/Python来解决这个问题。。仅仅出于好奇,为什么使用101统计数据会有不同?我不想冒犯你。我对你的所作所为并不感兴趣。。。但对我来说,上面的模式似乎可以很容易地用标准偏差阈值进行过滤。。。当然是用你选择的语言来实现的。@achingfingers哦,如果我的回答让人觉得我很生气,我很抱歉,我真的没有(只是有压力!!)。谢谢你的回复:)我会查一下标准偏差阈值,看看我在哪里,我只是不知道这个概念而已!我会发回的@对不起,你们有关于标准偏差阈值的论文或教程吗?会有帮助的:)