1
我有一个表格,其中一列的帧编号和另一列的相应颜色刻度。我发现他们使用openCV。 一些框架具有非常高的价值和非常低的休息。我怎样才能提取非常高的峰值帧?仅提取分布中的峰值
这是分布图,我试图使用高斯平滑,然后在下面的图上进行阈值处理。
我得到这个结果。
现在我应该怎么处理?
我有一个表格,其中一列的帧编号和另一列的相应颜色刻度。我发现他们使用openCV。 一些框架具有非常高的价值和非常低的休息。我怎样才能提取非常高的峰值帧?仅提取分布中的峰值
这是分布图,我试图使用高斯平滑,然后在下面的图上进行阈值处理。
我得到这个结果。
现在我应该怎么处理?
基本上你正在寻找一个峰值查找器... MATLAB有一个峰值查找功能来寻找峰值... 我没有在OpenCV中找到任何现成的API for this,所以我实现了MATLAB的峰值查找器...算法去这种方式...
尝试实现这一点,并检查MATLAB帮助的峰峰值。如果没有运气,我可以发布代码..
编辑编辑后看到你编辑的图形看起来图形有明确的最大峰值,因此你可以做的是跟踪图形的dy/dx的符号。最大峰值是dy/dx的符号从正向负变化的点...在代码语言中
vector<double> array_of_max_peak;
if (sign(x(n+1) - x(n))) > 0
array_of_max_peak.push(x(n));
几乎所有的峰值查找器都是这种算法的衍生物。 – 2013-03-10 18:36:29
@rotating_image我尝试了一些峰值发现的其他方法。首先,我做了平滑,然后进行阈值处理。我在上面的问题中添加了一个图表。 – 2013-03-28 06:07:55