如何追踪足球的位置?

How to track a football's position?

我开始研究跟踪橄榄球(美国的足球),我可以就哪种方法更可靠、更有效提出一些建议。

球需要转向以确定它是否在球门 posts 之间,如果它是一个球门(centre/left/right/top 右 corner/etc,大致会在哪一侧。 )

最初我在考虑一个嵌入式惯性测量单元(IMU,一个融合 os 传感器,例如 accelerometer/gyroscope/magnetometer,有时还有 GPS)能够支持低功耗蓝牙(BLE,4.0 版,它有一个比蓝牙经典更大的范围)以获得球的绝对 position,因此这可能是一个选项。由于我对 IMU 还不是很熟悉,一些关于 DO 和 DONT 的提示会很方便。

另一种选择是在目标 post 后面使用摄像机。使用 2D 相机,我想象这样的设置: 希望相机足够快,因为我认为运动模糊将是挑战之一,因为当球快速运动时形状和颜色会出现扭曲。

在检测方面,我正在考虑基于一些假设的天真的方法:

我也在考虑为足球检测训练级联,但我想事先检查一下这是否过大。

你可以使用像这样的简单算法的廉价 Kinect 相机:

  1. 检测 RGB 数据中的斑点(抗模糊)
  2. 在检测到斑点的点云中进行欧几里得聚类,用一个 threshold/bounding 框来表示你玩的球的大小(深度数据具有绝对测量值)
  3. 计算球的质心
  4. 计算质心到视图射线上相机中心的距离
  5. 查看距离是否小于同一射线上相机与目标的距离

在我看来,这些操作非常简单,算法应该 运行 在商用硬件上实时运行。

你唯一需要注意的是,Kinect 在一定距离后的精度几乎是垃圾,所以你必须稍微修改一下才能让它工作。或者,如果它不能覆盖所有目标,您可能不得不使用多个。