在我的应用程序中,我想实时找到放置在移动车辆中的激光扫描仪检测到的物体的准确坐标。到目前为止,我已经找到了图中点的局部最小值,并给出了所有局部最小值,包括图中不需要的 2。但我只想要主要对象位置,如图中 1 所示的位置。
在 google 和 stackoverflow 中搜索后,我在 C# 中尝试了这些方法
我对曲线做了移动平均并找到了局部最小值。结果还可以。但是由于它是实时的,我担心这可能需要一些处理时间。
我还尝试找出曲线中不同点的斜率,并尝试用最大和最小斜率标记位置。它可以工作,但不能完全找到正确的位置。
我尝试标记满足两个标准的点,即具有高斜率的局部最小值。但它没有按预期工作。
我的最后一个选择是在第一次扫描中有一个参考,并从参考中减去其他对象图。然后我可以比较减去的范围和局部最小值以找到确切的位置。即第 1 部分和底部的黑色曲线。
扫描频率为50Hz,如果移动平均线时间不多。我会选择第一个选项。最后我将用 C++ 编写该算法。我正在 C# 中尝试不同的东西,因为它更容易查看和分析图表。
我终于找到解决办法了。我使用了前景分割和斑点检测算法。我提到了这个http://www.v2.nl/lab/projects/laser-measurement-system-object-for-max